:root{--color-primary:#2e5d8b;--color-primary-hover:#24496e;--color-bg:#f9fafb;--color-surface:#fff;--color-text:#1d2939;--color-text-muted:#667085;--color-border:#d0d5dd;--color-divider:#eaecf0;--color-success:#039855;--color-success-bg:#e3f5e6;--color-warning:#f79009;--color-warning-bg:#fef0e6;--color-danger:#d92d20;--color-danger-bg:#fdeceb;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:22px;--font-size-2xl:28px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius:8px;--shadow:0 4px 16px #0000000f;--control-height:40px;--sidebar-width:240px;--sidebar-bg:#12233a;--sidebar-text:#e5e9f0;--sidebar-text-muted:#93a2b8;--sidebar-active-bg:#ffffff14;--sidebar-border:#ffffff14;--source-meta-ads:#0070e0;--source-meta-ads-bg:#eaf3fe;--source-google-ads:#34a853;--source-google-ads-bg:#e9f7ee;--source-cardapio-web:#f90;--source-cardapio-web-bg:#fff4e5;--source-ifood:#ea1d2c;--source-ifood-bg:#fdeceb}*{box-sizing:border-box}body{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-bg);margin:0;line-height:1.5}h1,h2,h3{color:var(--color-text);line-height:1.25}.back-link{align-items:center;gap:var(--space-1);margin-bottom:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:500;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--color-primary)}button{cursor:pointer;border:1px solid var(--color-primary);border-radius:var(--radius);height:var(--control-height);padding:0 var(--space-4);background:var(--color-primary);color:#fff;font-family:inherit;font-size:var(--font-size-base);font-weight:500}button:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}button:disabled{opacity:.6;cursor:not-allowed}button.btn-secondary{color:var(--color-primary);border:1px solid var(--color-primary);background:0 0}button.btn-secondary:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-primary-hover);color:var(--color-primary-hover)}button.btn-danger{background:var(--color-danger);border-color:var(--color-danger)}button.btn-danger:hover:not(:disabled){background:#b3261e;border-color:#b3261e}input,select{font-family:inherit;font-size:var(--font-size-base);height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);background:var(--color-surface)}input:focus,select:focus{outline:2px solid var(--color-primary);outline-offset:1px}input[type=checkbox]:focus,input[type=radio]:focus{outline:none}input[type=checkbox],input[type=radio]{width:auto;height:auto;accent-color:var(--color-primary);border:none;padding:0}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow)}.empty-state{align-items:center;gap:var(--space-2);text-align:center;padding:var(--space-8) var(--space-4);color:var(--color-text-muted);flex-direction:column;display:flex}.empty-state p{font-size:var(--font-size-base);margin:0}.login-page{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-form{gap:var(--space-2);width:320px;padding:var(--space-8);flex-direction:column;display:flex}.login-form h1{font-size:var(--font-size-lg);margin:0 0 var(--space-4);text-align:center}.login-form label{font-size:var(--font-size-sm);margin-top:var(--space-2);font-weight:500}.login-form button{margin-top:var(--space-6)}.form-error{color:var(--color-danger);font-size:var(--font-size-sm);margin:var(--space-1) 0 0}.app-shell{min-height:100vh;display:flex}.app-sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);color:var(--sidebar-text);padding:var(--space-6) var(--space-4);flex-direction:column;flex-shrink:0;display:flex}.app-sidebar-brand{font-weight:700;font-size:var(--font-size-md);color:#fff;margin-bottom:var(--space-8);padding:0 var(--space-2)}.app-sidebar-nav{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.app-sidebar-nav a{align-items:center;gap:var(--space-3);color:var(--sidebar-text-muted);font-size:var(--font-size-base);padding:var(--space-3) var(--space-3);border-radius:var(--radius);font-weight:500;text-decoration:none;display:flex}.app-sidebar-nav a:hover{color:var(--sidebar-text)}.app-sidebar-nav a.active{color:#fff;background:var(--sidebar-active-bg)}.app-sidebar-footer{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--sidebar-border);flex-direction:column;display:flex}.app-sidebar-user{font-size:var(--font-size-sm);color:var(--sidebar-text);padding:0 var(--space-2);font-weight:600}.app-sidebar-footer a{align-items:center;gap:var(--space-2);color:var(--sidebar-text-muted);font-size:var(--font-size-sm);padding:var(--space-2);border-radius:var(--radius);text-decoration:none;display:flex}.app-sidebar-footer a:hover{color:var(--sidebar-text)}.app-sidebar-footer button{align-items:center;gap:var(--space-2);width:auto;height:auto;padding:var(--space-2) var(--space-3);color:var(--sidebar-text-muted);border-color:var(--sidebar-border);background:0 0;justify-content:center;display:inline-flex}.app-sidebar-footer button:hover:not(:disabled){color:var(--sidebar-text);background:var(--sidebar-active-bg);border-color:var(--sidebar-border)}.app-content{min-width:0;padding:var(--space-6);flex:1}.page-header{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;display:flex}.page-header a{text-decoration:none}.page-header-actions{align-items:center;gap:var(--space-3);display:flex}.page-header-actions input{width:auto}.clients-table{border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:100%;overflow:hidden}.clients-table th,.clients-table td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-divider);font-size:var(--font-size-base)}.clients-table tr:last-child td{border-bottom:none}.clients-table th{background:var(--color-bg);color:var(--color-text-muted);font-weight:600;font-size:var(--font-size-sm)}.clients-table a{color:var(--color-primary)}.clients-table--highlighted-rows{border-collapse:separate;border-spacing:0 var(--space-2);background:0 0;border:none}.clients-table--highlighted-rows thead th{padding-left:var(--space-4);background:0 0;border-bottom:none}.clients-table--highlighted-rows tbody tr{background:#efefef}.clients-table--highlighted-rows tbody td{border-bottom:none}.clients-table--highlighted-rows .row-actions{gap:var(--space-2);display:flex}.clients-table--highlighted-rows .row-actions a{text-decoration:none}.clients-table--highlighted-rows tbody td:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.clients-table--highlighted-rows tbody td:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.settings-tabs{gap:var(--space-2);border-bottom:1px solid var(--color-divider);margin-bottom:var(--space-6);display:flex}.settings-tabs a,.settings-tabs button{padding:var(--space-2) var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-base);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;height:auto;font-weight:500;text-decoration:none}.settings-tabs a.active,.settings-tabs button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.settings-tabs button:hover:not(:disabled){color:var(--color-primary);background:0 0;border-color:#0000}.settings-tabs button.active:hover:not(:disabled){border-bottom-color:var(--color-primary)}.client-form{gap:var(--space-1);max-width:960px;padding:var(--space-8);border-top:4px solid var(--color-primary);flex-direction:column;display:flex;box-shadow:0 12px 32px #2e5d8b1a,0 2px 8px #1018280d}.client-form label{font-size:var(--font-size-sm);margin-top:var(--space-3);margin-bottom:var(--space-1);font-weight:500;display:block}.client-form input,.client-form select{width:100%}.client-form h2{font-size:var(--font-size-md);margin:var(--space-6) 0 var(--space-2)}.field-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:var(--space-1) 0 0}.client-form button{margin-top:var(--space-6);align-self:flex-start}.form-grid{gap:0 var(--space-6);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.logo-field{grid-column:1/-1}.logo-upload{align-items:center;gap:var(--space-4);display:flex}.logo-preview,.logo-placeholder{border-radius:var(--radius);background:var(--color-bg);flex-shrink:0;width:64px;height:64px}.logo-preview{object-fit:contain;border:1px solid var(--color-border);padding:var(--space-1)}.logo-placeholder{border:1px dashed var(--color-border);color:var(--color-text-muted);justify-content:center;align-items:center;display:flex}.logo-upload-trigger{align-items:center;gap:var(--space-2);height:var(--control-height);padding:0 var(--space-4);border:1px solid var(--color-primary);border-radius:var(--radius);color:var(--color-primary);font-size:var(--font-size-base);cursor:pointer;background:0 0;width:auto;font-weight:500;display:inline-flex}.logo-upload-trigger:hover:not(:disabled){background:var(--color-primary);border-color:var(--color-primary);color:#fff}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.data-source-fields{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;display:grid}.data-source-block{column-gap:var(--space-3);row-gap:var(--space-3);padding:var(--space-4);border-left:4px solid var(--source-accent,var(--color-border));background:var(--source-accent-bg,var(--color-surface));grid-template-columns:auto 1fr;align-items:start;transition:transform .15s,box-shadow .15s;display:grid}.data-source-block:hover{transform:translateY(-2px);box-shadow:0 12px 28px #1018281f}.data-source-block--meta_ads{--source-accent:var(--source-meta-ads);--source-accent-bg:var(--source-meta-ads-bg)}.data-source-block--google_ads{--source-accent:var(--source-google-ads);--source-accent-bg:var(--source-google-ads-bg)}.data-source-block--cardapio_web{--source-accent:var(--source-cardapio-web);--source-accent-bg:var(--source-cardapio-web-bg)}.data-source-block--ifood{--source-accent:var(--source-ifood);--source-accent-bg:var(--source-ifood-bg)}.data-source-checkbox{grid-area:1/1;align-self:center;width:auto}label.data-source-name{font-size:var(--font-size-md);color:var(--source-accent,var(--color-text));cursor:pointer;grid-area:1/2;align-self:center;margin:0;font-weight:700;display:block}.data-source-details{grid-column:2}.mode-toggle{gap:var(--space-4);margin-bottom:var(--space-2);font-size:var(--font-size-base);display:flex}.mode-toggle label{align-items:center;gap:var(--space-1);margin:0;font-weight:400;display:flex}.mode-toggle input{width:auto}.report-toolbar{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.report-toolbar label{font-size:var(--font-size-sm);font-weight:500}.report-toolbar input{width:auto}.validation-banner{border-radius:var(--radius);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);font-size:var(--font-size-base)}.validation-banner.complete{background:var(--color-success-bg);color:var(--color-success);font-weight:500}.validation-banner.incomplete{background:var(--color-danger-bg);color:var(--color-danger)}.validation-banner ul{padding-left:var(--space-4);margin:0}.form-success{color:var(--color-success);font-size:var(--font-size-sm);margin:var(--space-1) 0 var(--space-3)}.metrics-form{gap:var(--space-3);flex-direction:column;max-width:640px;display:flex}.metrics-fields{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.metrics-fields>div{flex:180px}.metrics-fields label{font-size:var(--font-size-sm);margin-bottom:var(--space-1);font-weight:500;display:block}.report-actions{gap:var(--space-3);margin-top:var(--space-2);display:flex}.inline-reset-form{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;display:flex}.inline-reset-form label{font-size:var(--font-size-sm);font-weight:500}.inline-reset-form input{width:auto}.agency-dashboard-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.agency-metric-card{padding:var(--space-4) var(--space-4)}.agency-metric-card .card-label{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-1)}.agency-metric-card .card-value{font-size:var(--font-size-xl);margin-bottom:var(--space-3);font-weight:700}.chart-labels{color:var(--color-text-muted);margin-top:var(--space-1);justify-content:space-between;font-size:9px;display:flex}
