@charset "UTF-8";
/* Logo aprovado: mesma composição nos dois temas, sem margens na navegação. */
.brand .brand-logo{position:relative;display:block;width:220px;aspect-ratio:300/64;overflow:hidden;flex:none}
.brand-logo img{display:block;width:100%;height:100%;object-fit:contain}
.brand-logo .brand-logo-dark{display:none}
html[data-theme=dark] .brand-logo .brand-logo-light{display:none}
html[data-theme=dark] .brand-logo .brand-logo-dark{display:block}
@media(min-width:761px){.auth-brand .brand .brand-logo{width:280px;max-width:100%}.auth-brand .brand-logo .brand-logo-light{display:none}.auth-brand .brand-logo .brand-logo-dark{display:block}}
@media(max-width:760px){.brand .brand-logo{width:170px}.auth-brand .brand .brand-logo{width:210px}}
@media(max-width:380px){.navbar .brand .brand-logo{width:145px}}
:root{--bg:#f5f7fb;--surface:#fff;--surface-alt:#f8faff;--sidebar:#fff;--text:#202c43;--muted:#7a869b;--border:#e9edf4;--primary:#4169e8;--primary-hover:#3055ca;--blue-soft:#edf2ff;--purple:#9781e9;--green:#19a986;--green-soft:#e8f8f2;--orange:#e89a45;--orange-soft:#fff5e8;--red-soft:#fdecee;--red:#d96371;--shadow:0 4px 20px #253c6410;--radius:18px;--chart-grid:#eef1f6;color-scheme:light}
html[data-theme=dark]{--bg:#10151f;--surface:#191f2c;--surface-alt:#1d2534;--sidebar:#151b27;--text:#edf2fc;--muted:#929eb4;--border:#2b3445;--primary:#7a9aff;--primary-hover:#a3baff;--blue-soft:#263451;--purple:#b39dfb;--green:#52d6b1;--green-soft:#193c36;--orange:#f0b66e;--orange-soft:#3c3024;--red-soft:#3f2429;--red:#fb93a0;--shadow:0 4px 20px #00000018;--chart-grid:#2b3341;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--primary);outline-offset:4px}input:focus,select:focus,textarea:focus{outline:2px solid #4169e849;border-color:var(--primary)}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1{font-size:32px;font-weight:700;letter-spacing:-1.3px;line-height:1.2;margin-bottom:9px}h2{font-size:16px;letter-spacing:-.35px;font-weight:650;margin-bottom:8px}h3{font-size:15px;margin-bottom:7px}p{margin-bottom:16px}.icon{vertical-align:middle;flex-shrink:0;display:inline-block}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--primary);display:block;margin-bottom:10px}.eyebrow.subtle{font-size:9px;letter-spacing:1.4px;color:var(--muted);margin-bottom:7px}.heading-dot,.brand-dot{color:var(--primary)}.button{border:1px solid var(--border);background:var(--surface);color:var(--text);padding:10px 16px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;font-size:12px;font-weight:600;transition:background .15s,transform .15s}.button:hover{background:var(--surface-alt);border-color:#9eafd1}.button:active{transform:translateY(1px)}.button.primary{background:#4169e8;border-color:#4169e8;color:#fff;box-shadow:0 3px 7px #4169e829}.button.primary:hover{background:#3157d2}.button.danger{color:var(--red);border-color:var(--red)}.button.small{font-size:11px;padding:7px 11px}.button.full{width:100%}.button .icon{width:16px;height:16px}.icon-button{background:none;border:0;width:34px;height:34px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);padding:0}.icon-button:hover{color:var(--primary);background:var(--blue-soft)}.tag{font-size:9px;letter-spacing:.65px;border-radius:6px;background:var(--blue-soft);color:var(--primary);font-weight:700;padding:5px 8px;white-space:nowrap;display:inline-flex;align-items:center}.tag.green{color:var(--green);background:var(--green-soft)}.tag.orange{color:var(--orange);background:var(--orange-soft)}.tag.neutral{color:var(--muted);background:var(--surface-alt)}
.tag.red{color:var(--red);background:var(--red-soft)}
.group-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.group-chip{display:inline-flex;gap:5px;align-items:baseline;font-size:10px;color:var(--muted);background:var(--surface-alt);border-radius:6px;padding:4px 8px}
.group-chip b{color:var(--text);font-weight:600}
.reason-list{margin:12px 0 0;display:flex;flex-direction:column;gap:6px}
.reason-row{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:var(--muted);border-bottom:1px solid var(--border);padding-bottom:6px}
.reason-row strong{color:var(--text)}
.table-note.warn{color:var(--red);border-left:2px solid var(--red);padding-left:10px}.tag.live{color:var(--green);background:var(--green-soft)}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px #1daf8812;flex-shrink:0}.brand{color:var(--text);display:flex;align-items:center;font-size:24px;letter-spacing:-1.25px;font-weight:750;line-height:1}.brand-light{font-weight:400}.brand-dot{font-size:30px;margin-top:-3px}.brand-mark{width:34px;height:34px;border-radius:10px;background:#4169e8;color:#fff;display:flex;align-items:center;justify-content:center;margin-right:10px;box-shadow:0 3px 9px #4169e826}.brand-mark .icon{width:24px;height:24px}.count-badge{padding:1px 6px;border-radius:5px;background:var(--orange-soft);color:var(--orange);font-size:10px}.avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#e7ecfa;color:#51658c;font-size:12px;font-weight:650;flex-shrink:0}.avatar.small{width:30px;height:30px;font-size:10px}.app-shell{margin-left:0}

/* Barra superior fixa: baixa, compacta, com os links à esquerda e a conta à direita. */
.navbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:26px;height:58px;padding:0 24px;background:var(--sidebar);border-bottom:1px solid var(--border)}
.navbar .brand{margin:0;font-size:15px;flex:none}
.nav-links{display:flex;align-items:center;gap:4px}
.nav-links a{font-size:12.5px;color:var(--muted);padding:7px 12px;border-radius:7px;white-space:nowrap;transition:color .15s,background .15s}
.nav-links a:hover{color:var(--text);background:var(--surface-alt)}
.nav-links a.active{color:var(--text);background:var(--surface-alt);font-weight:500}
.shared-title{font-size:12.5px;color:var(--text);font-weight:500}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:10px}

/* O menu da conta é um dropdown ancorado ao botão, e não uma segunda barra. */
.user-menu{position:relative}
.user-button{display:flex;align-items:center;gap:8px;background:none;border:0;cursor:pointer;color:var(--text);font-size:12.5px;font-family:inherit;padding:5px 8px;border-radius:8px;transition:background .15s}
.user-button:hover,.user-button[aria-expanded=true]{background:var(--surface-alt)}
.user-chevron{display:flex;color:var(--muted);transition:transform .18s}
.user-button[aria-expanded=true] .user-chevron{transform:rotate(180deg)}
.user-dropdown{position:absolute;top:calc(100% + 7px);right:0;min-width:208px;background:var(--surface);border:1px solid var(--border);border-radius:11px;box-shadow:0 12px 32px rgba(0,0,0,.22);padding:6px;display:flex;flex-direction:column;gap:1px;z-index:60;animation:dropdown-in .13s ease-out}
@keyframes dropdown-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.user-dropdown[hidden]{display:none}
.user-dropdown a,.user-dropdown button{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;border-radius:7px;font-size:12.5px;color:var(--text);background:none;border:0;cursor:pointer;font-family:inherit;text-align:left;transition:background .12s}
.user-dropdown a:hover,.user-dropdown button:hover,.user-dropdown a:focus-visible,.user-dropdown button:focus-visible{background:var(--surface-alt)}
.user-dropdown .icon{color:var(--muted);flex:none}
.user-dropdown span{flex:1}
.dropdown-divider{height:1px;background:var(--border);margin:5px 4px}
.dropdown-form{display:contents}

/* Escolha de sites: mesmo dropdown do menu da conta, com caixas de seleção. */
.site-picker{position:relative}
.site-button{display:flex;align-items:center;gap:8px;background:none;border:0;cursor:pointer;color:var(--text);font-family:inherit;font-size:12px;padding:6px 8px;border-radius:7px;max-width:260px}
.site-button:hover,.site-button[aria-expanded=true]{background:var(--surface-alt)}
.site-button #site-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.site-dropdown{position:absolute;top:calc(100% + 7px);left:0;min-width:230px;max-height:300px;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:11px;box-shadow:0 12px 32px rgba(0,0,0,.22);padding:6px;z-index:60;animation:dropdown-in .13s ease-out}
.site-dropdown[hidden]{display:none}
.site-dropdown label{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:7px;font-size:12px;cursor:pointer}
.site-dropdown label:hover{background:var(--surface-alt)}
.site-dropdown .site-all{border-bottom:1px solid var(--border);border-radius:7px 7px 0 0;margin-bottom:4px;padding-bottom:10px}.topbar{height:72px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 36px;background:var(--surface);gap:12px}.breadcrumb{display:flex;align-items:center;gap:15px;font-size:11px;color:var(--muted)}.breadcrumb strong{font-weight:500;color:var(--text)}.crumb-separator{opacity:.45}.top-actions{display:flex;align-items:center;gap:11px}.status-pill{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted);margin-right:9px}.top-divider{height:20px;border-left:1px solid var(--border);margin:0 4px}.main-content{padding:26px 24px 0;max-width:1500px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:4px 0 24px}.page-heading .muted{font-size:12px;margin-bottom:0}.heading-actions{display:flex;gap:9px}.filter-bar{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border);background:var(--surface);border-radius:11px;min-height:51px;margin-bottom:22px;padding:4px 12px}.filter-group{display:flex;align-items:center;gap:15px}.filter-divider{height:19px;width:1px;background:var(--border)}.select-with-icon{display:flex;align-items:center;gap:8px;padding-left:4px;color:var(--muted)}.select-with-icon .icon{width:15px;height:15px}.select-with-icon select{border:0;background:transparent;color:var(--text);font-size:11px;max-width:200px;padding:5px 15px 5px 0;cursor:pointer}.filter-meta{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted)}.filter-meta .icon-button{border-left:1px solid var(--border);border-radius:0;margin-left:7px;padding-left:9px;width:38px}.custom-range{display:flex;align-items:end;gap:12px;margin:-10px 0 20px;padding:14px;background:var(--surface);border-radius:10px;border:1px solid var(--border)}.custom-range label{font-size:11px;color:var(--muted)}.custom-range input{margin-left:7px;padding:6px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text)}.active-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.active-filters:empty{display:none}.filter-chip{font-size:11px;border:1px solid var(--border);background:var(--blue-soft);color:var(--primary);border-radius:7px;padding:5px 10px}.block-controls{padding:18px;border-radius:12px;border:1px solid var(--border);background:var(--surface);margin-bottom:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.block-controls label{font-size:11px;display:flex;gap:9px}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:22px}.metric-card{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:19px 20px 17px;min-height:144px}.metric-top{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:11px;color:var(--muted);font-weight:500}.metric-icon{width:28px;height:28px;border-radius:9px;display:flex;align-items:center;justify-content:center}.metric-icon .icon{width:16px;height:16px}.metric-icon.blue{color:var(--primary);background:var(--blue-soft)}.metric-icon.purple{color:var(--purple);background:#9781e914}.metric-icon.orange{color:var(--orange);background:var(--orange-soft)}.metric-icon.green{color:var(--green);background:var(--green-soft)}.metric-value{font-size:33px;font-weight:650;line-height:1.3;letter-spacing:-1.5px;margin:8px 0 12px;font-variant-numeric:tabular-nums}.metric-bottom{font-size:9px;color:var(--muted);display:flex;align-items:center;gap:6px;position:relative;z-index:1}.change{font-size:9px;font-weight:650;border-radius:4px;color:var(--green);background:var(--green-soft);padding:2px 5px}.change.negative{color:var(--red);background:#d9637115}.change.neutral{color:var(--muted);background:var(--surface-alt)}.mini-spark{position:absolute;width:88px;height:40px;right:17px;bottom:43px;color:var(--primary);opacity:.6}.mini-spark svg{width:100%;height:100%;overflow:visible}.purple-spark{color:var(--purple)}.metric-decoration{position:absolute;right:19px;bottom:57px;font-size:8px;max-width:60px;color:var(--muted);text-align:right;line-height:1.4;opacity:.65}.online-card{background:linear-gradient(115deg,var(--surface) 50%,var(--green-soft));border-color:#19a98635}.live-waves{position:absolute;right:23px;bottom:50px;display:flex;align-items:center;gap:4px;height:38px;opacity:.5}.live-waves i{width:3px;background:var(--green);border-radius:2px;height:14px}.live-waves i:nth-child(3n){height:28px}.live-waves i:nth-child(4n){height:37px}.live-waves i:nth-child(5n){height:21px}.report-grid,.manage-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:22px;align-items:start}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-7{grid-column:span 7}.span-8{grid-column:span 8}.span-12{grid-column:span 12}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:23px 24px;min-width:0;overflow:hidden}.panel-heading{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:21px}.panel-heading h2{margin-bottom:4px}.panel-heading p{color:var(--muted);font-size:10px;margin-bottom:0}.panel-heading>.icon,.panel-icon{color:var(--muted)}.panel-heading h2 .live-dot{margin-right:7px}.panel-icon{height:34px;width:34px;border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center}.chart-legend{display:flex;gap:18px;align-items:center;font-size:9px;color:var(--muted);margin:5px 0 12px}.chart-legend>span{display:flex;align-items:center;gap:6px}.legend-end{margin-left:auto}.legend-dot{display:inline-block;width:7px;height:7px;border-radius:50%}.blue-dot{background:var(--primary)}.purple-dot{background:var(--purple)}.green-dot{background:var(--green)}.line-chart{height:216px;position:relative}.line-chart svg{width:100%;height:100%;overflow:visible}.chart-grid-line{stroke:var(--chart-grid);stroke-dasharray:3 4}.chart-label{fill:var(--muted);font-family:inherit;font-size:10px}.chart-dot{opacity:0;transition:opacity .2s;cursor:crosshair}.chart-dot:hover,.chart-dot:focus{opacity:1}.panel-foot{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--border);padding-top:14px;margin-top:10px;color:var(--muted);font-size:9px}.panel-foot span:first-child{color:var(--text)}.insight-panel{background:linear-gradient(150deg,var(--blue-soft),var(--surface) 80%);align-self:stretch}.insight-title{display:flex;gap:8px;align-items:center}.insight-title .icon{color:var(--primary);width:17px}.insight-title h2{font-size:13px;margin:0}.insight-panel .tag{font-size:8px;padding:4px 6px;background:var(--surface)}.projection-label{font-size:10px;color:var(--muted);margin-top:26px}.projection-value{font-size:35px;letter-spacing:-1.5px;font-weight:650;line-height:1.2;margin:8px 0}.projection-explain{font-size:10px;color:var(--muted);line-height:1.7;max-width:260px;margin:10px 0}.insight-divider{border-top:1px solid var(--border);margin:20px 0}.headline-totals{display:flex;gap:16px;justify-content:space-between}.headline-totals>div{min-width:0}.headline-totals strong{font-size:15px;letter-spacing:-.4px;display:block}.headline-totals small{font-size:9px;color:var(--muted);display:block;margin-bottom:3px}.headline-totals .change{font-size:8px;display:inline-block;margin-top:6px}.day-tabs{display:flex;gap:7px;margin-bottom:20px}.day-tabs button{border:1px solid transparent;border-radius:7px;background:var(--surface-alt);color:var(--muted);padding:6px 13px;font-size:10px;flex:1}.day-tabs button.active{background:var(--blue-soft);color:var(--primary);border-color:#4169e830;font-weight:650}.bar-chart{height:153px;margin-bottom:12px}.bar-chart svg{width:100%;height:100%;overflow:visible}.hour-bar{fill:var(--blue-soft);transition:fill .2s}.hour-bar.best{fill:var(--primary)}.hour-bar:hover{fill:var(--purple)}.best-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:18px}.best-slot{border:1px solid var(--border);background:var(--surface-alt);padding:10px 12px;border-radius:9px;display:flex;gap:9px;align-items:center}.best-slot:first-child{background:var(--blue-soft);border-color:#4169e830}.slot-rank{font-size:10px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:7px;background:var(--surface);color:var(--primary);font-weight:650}.best-slot strong{font-size:11px;display:block}.best-slot small{font-size:8px;color:var(--muted);display:block}.donut-wrap{height:148px;display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:16px}.donut{width:140px;height:140px;border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center}.donut:before{content:"";position:absolute;inset:17px;background:var(--surface);border-radius:50%}.donut-center{z-index:1;text-align:center}.donut-center strong{font-size:25px;letter-spacing:-1px;display:block}.donut-center small{font-size:9px;color:var(--muted)}.source-list{display:grid;gap:12px}.source-row{display:flex;align-items:center;gap:9px;font-size:10px}.source-row .swatch{width:7px;height:7px;border-radius:2px}.source-row button{flex:1;border:0;background:none;color:var(--text);text-align:left;padding:0;font-size:11px}.source-row button:hover{color:var(--primary)}.source-row>span:nth-last-child(2){color:var(--muted)}.source-row strong{font-size:10px;font-weight:550;min-width:34px;text-align:right}.table-scroll{overflow:auto}.data-table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left;font-size:11px}.data-table th{font-size:9px;font-weight:500;color:var(--muted);border-bottom:1px solid var(--border);padding:0 0 12px}.data-table td{border-bottom:1px solid var(--border);padding:14px 0;vertical-align:middle}.data-table tr:last-child td{border:0}.data-table th:not(:first-child),.data-table td:not(:first-child){text-align:right;padding-left:18px}.data-table td:first-child{max-width:220px;overflow:hidden;text-overflow:ellipsis}.data-table .page-link{padding:0;border:0;color:var(--text);font-size:11px;background:none;max-width:230px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.data-table .page-link:hover{color:var(--primary)}.page-rank{color:var(--muted);font-size:9px;margin-right:10px}.table-note{font-size:10px;color:var(--muted);margin:15px 0 0;line-height:1.7}.world-map{height:140px;position:relative;margin-top:-8px;margin-bottom:16px;background:radial-gradient(ellipse at 50% 50%,var(--blue-soft),transparent 65%)}.world-map svg{width:100%;height:100%}.map-country{fill:var(--border);stroke:var(--surface);stroke-width:.4}.map-bubble{fill:#4169e870;stroke:var(--primary);stroke-width:1}.ranking-list{display:grid;gap:14px}.ranking-row{position:relative}.ranking-heading{display:flex;align-items:center;font-size:10px;gap:7px;margin-bottom:7px}.ranking-heading button{flex:1;text-align:left;background:none;border:0;padding:0;color:var(--text);font:inherit}.ranking-heading button:hover{color:var(--primary)}.ranking-heading>strong{font-size:10px;font-weight:550}.ranking-heading>small{font-size:9px;color:var(--muted);min-width:35px;text-align:right}.ranking-track{height:4px;background:var(--surface-alt);border-radius:5px;overflow:hidden}.ranking-fill{height:100%;background:var(--primary);border-radius:5px}.flag{font-size:14px;line-height:1;min-width:19px}.panel[data-block=countries] .ranking-list{gap:11px}.panel[data-block=countries] .ranking-row:nth-child(n+5){display:none}.panel[data-block=countries].expanded .ranking-row{display:block}.recent-list{max-height:390px;overflow:auto}.recent-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--border)}.recent-row:last-child{border:0}.recent-row>div{flex:1;min-width:0}.recent-row strong{font-size:11px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.recent-row small{font-size:9px;color:var(--muted);display:block;margin-top:4px}.recent-row time{font-size:9px;color:var(--muted)}.big-stat{font-size:39px;line-height:1.2;letter-spacing:-1.6px;margin:16px 0 8px;font-weight:650}.segment-track{display:flex;height:10px;overflow:hidden;border-radius:5px;margin:24px 0 18px}.segment-track>span{height:100%}.health-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--border);font-size:11px}.health-row:last-child{border:0}.health-row>span:first-child{color:var(--muted)}.health-row strong{font-size:10px;font-weight:500}.health-site{display:flex;align-items:center;gap:10px;padding:11px 0}.health-site>div{flex:1}.health-site strong{display:block;font-size:11px;font-weight:550}.health-site small{display:block;font-size:9px;color:var(--muted)}.health-site .icon{color:var(--green);width:18px}.empty-state{text-align:center;padding:34px 20px;color:var(--muted)}.empty-state>.icon{width:34px;height:34px;color:var(--primary);opacity:.6;margin-bottom:12px}.empty-state h3{color:var(--text);font-size:13px;font-weight:550}.empty-state p{font-size:11px;max-width:300px;margin:0 auto;line-height:1.8}.chart-container .empty-state{padding:24px 12px}.chart-container .empty-state>.icon{width:24px;height:24px}.empty-action{text-align:center;margin:-6px 0 25px}.onboarding{text-align:center;padding:50px 20px;margin:20px 0;background:var(--surface);border:1px solid var(--border);border-radius:16px}.onboarding>.icon{width:45px;height:45px;color:var(--primary);margin-bottom:16px}.onboarding h2{font-size:22px}.onboarding p{color:var(--muted);font-size:12px}.page-footer{display:flex;justify-content:space-between;gap:12px;font-size:9px;color:var(--muted);padding:27px 0 24px;margin-top:8px}.page-footer>span:first-child{color:var(--text);display:flex;align-items:center;gap:5px}.footer-dot{width:6px;height:6px;background:var(--primary);border-radius:50%;margin-right:3px}.demo-banner,.impersonation{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;border:1px solid #4169e824;background:var(--blue-soft);font-size:10px;color:var(--primary);margin-bottom:23px}.demo-banner>span,.impersonation>span{flex:1}.demo-banner a{display:flex;align-items:center;gap:5px;white-space:nowrap;font-weight:650}.demo-banner .icon{width:16px}.impersonation{background:var(--orange-soft);color:var(--orange);border-color:#e89a4544}.notice{padding:15px 18px;border-radius:10px;background:var(--green-soft);color:var(--green);font-size:12px;margin:0 0 20px;border:1px solid #19a98630;display:flex;align-items:center;gap:12px;overflow-wrap:anywhere}.notice.error{background:#d9637110;border-color:#d9637140;color:var(--red)}.notice p{margin:5px 0}.notice code{font-size:11px}.loading-state{display:flex;align-items:center;justify-content:center;gap:13px;min-height:280px;color:var(--muted);font-size:12px}.loader{width:21px;height:21px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--text);color:var(--surface);padding:11px 20px;border-radius:10px;font-size:12px;z-index:100;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.2s}#toast.visible{opacity:1;transform:translate(-50%,0)}.summary-strip{display:flex;align-items:center;gap:15px;padding:20px 24px;background:var(--surface);border:1px solid var(--border);border-radius:14px;margin-bottom:22px}.summary-strip>div{flex:1}.summary-strip strong{font-size:13px}.summary-strip p{font-size:11px;color:var(--muted);margin:4px 0 0}.summary-icon{height:42px;width:42px;border-radius:12px;background:var(--blue-soft);display:flex;align-items:center;justify-content:center;color:var(--primary)}.search-field{display:flex;align-items:center;gap:8px;background:var(--surface-alt);border:1px solid var(--border);border-radius:8px;padding:7px 10px;color:var(--muted)}.search-field .icon{width:15px}.search-field input{border:0;background:transparent;outline:none;font-size:11px;width:180px;color:var(--text)}.management-table td{padding:18px 0}.site-title{display:flex;align-items:center;gap:13px;color:var(--text)}.site-title strong{display:block;font-size:12px;font-weight:550}.site-title small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.site-avatar{height:37px;width:37px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--blue-soft);color:var(--primary);font-size:15px;font-weight:650}.field{display:block;margin-bottom:19px;min-width:0}.field>span,.field-label{display:block;font-size:11px;font-weight:600;margin-bottom:7px}.field input,.field select,.field textarea{display:block;width:100%;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:11px 12px;color:var(--text);font-size:12px;min-width:0}.field input:disabled{background:var(--surface-alt);color:var(--muted)}.field small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.field textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.check-field{display:flex;align-items:start;gap:10px;margin:20px 0}.check-field input{margin-top:4px;accent-color:var(--primary)}.check-field strong{font-size:11px;display:block;font-weight:550}.check-field small{font-size:10px;color:var(--muted);display:block}.form-details{margin:24px 0;border-top:1px solid var(--border);padding-top:17px}.form-details summary{font-size:11px;color:var(--primary);cursor:pointer;display:flex;justify-content:space-between;margin-bottom:17px}.form-details summary .icon{width:15px;height:15px}.spaced{margin-top:22px}.step-number{color:var(--primary);font-size:24px;opacity:.4;font-weight:650;letter-spacing:-1px}.code-box{display:flex;align-items:center;gap:12px;background:var(--surface-alt);border:1px solid var(--border);border-radius:9px;padding:15px;margin:20px 0;overflow:auto}.code-box code{flex:1;font:11px/1.8 Consolas,monospace;color:var(--primary);overflow-wrap:anywhere;min-width:0}.panel>p{font-size:12px;color:var(--muted)}.install-steps{padding:0;list-style:none;margin:24px 0}.install-steps li{display:flex;gap:13px;margin-bottom:21px}.install-steps li>span{width:25px;height:25px;border-radius:50%;background:var(--blue-soft);color:var(--primary);font-size:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.install-steps strong{font-size:12px;font-weight:550}.install-steps p{font-size:11px;color:var(--muted);margin:4px 0 0}.installation-status{display:flex;align-items:center;gap:12px;padding:15px;background:var(--surface-alt);border-radius:10px;margin-bottom:20px}.installation-status>.icon{color:var(--orange)}.installation-status strong{font-size:11px;font-weight:550}.installation-status p{font-size:10px;color:var(--muted);margin:3px 0 0}.installation-status.connected{background:var(--green-soft)}.installation-status.connected>.icon{color:var(--green)}.danger-zone summary{color:var(--red);cursor:pointer;font-size:12px}.danger-zone>p{margin-top:15px}.intro-panel{padding:42px;background:linear-gradient(140deg,var(--blue-soft),var(--surface))}.large-icon{width:58px;height:58px;border-radius:16px;background:var(--surface);color:var(--primary);display:flex;align-items:center;justify-content:center;margin-bottom:24px}.large-icon .icon{width:33px;height:33px}.intro-panel h2{font-size:26px;letter-spacing:-.8px;line-height:1.4}.intro-panel p{font-size:12px;line-height:1.9;max-width:380px}.feature-list{padding:0;list-style:none;font-size:12px;display:grid;gap:16px;margin:26px 0 0}.feature-list .icon{color:var(--green);width:16px;margin-right:6px}.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:26px}.theme-option{position:relative;border:1px solid var(--border);border-radius:11px;padding:12px;cursor:pointer}.theme-option:has(input:checked){border-color:var(--primary);background:var(--blue-soft)}.theme-option input{position:absolute;top:13px;right:12px;accent-color:var(--primary)}.theme-option strong{font-size:11px;display:block;margin-top:9px}.theme-preview{display:flex;align-items:end;gap:6px;height:68px;border-radius:6px;background:#f3f6fb;padding:10px}.theme-preview.dark{background:#182030}.theme-preview.system{background:linear-gradient(90deg,#f3f6fb 50%,#182030 50%)}.theme-preview i{width:28%;height:40px;background:#4169e835;border-radius:3px}.theme-preview b{height:18px;flex:1;border-radius:3px;background:#4169e8}.theme-preview b:last-child{height:30px;background:#19a986}.alert-item{display:flex;align-items:start;gap:15px;padding:22px 0;border-bottom:1px solid var(--border)}.alert-item:last-child{border:0}.alert-item>.icon{color:var(--orange)}.alert-item>div{flex:1}.alert-item strong{font-size:12px}.alert-item p{font-size:12px;margin:6px 0;color:var(--muted)}.alert-item small{font-size:10px;color:var(--muted)}.user-link{display:flex;align-items:center;gap:11px;text-align:left;border:0;background:none;color:var(--text);padding:0}.user-link:hover strong{color:var(--primary)}.user-link strong{display:block;font-size:12px;font-weight:550}.user-link small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.inline-actions{display:flex;justify-content:end;gap:8px}.admin-metrics .metric-card{min-height:130px}.admin-metrics .metric-value{margin-bottom:0}.audit-list{max-height:330px;overflow:auto}.audit-list>div{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid var(--border);align-items:start}.audit-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);margin-top:7px;flex-shrink:0}.audit-list p{font-size:10px;margin:0;color:var(--muted)}.audit-list strong{color:var(--text);font-weight:550}.audit-list small{display:block;font-size:9px;opacity:.75;margin-top:4px}.achievements-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.achievement{border:1px solid var(--border);border-radius:12px;padding:25px 15px;text-align:center;opacity:.55}.achievement.unlocked{opacity:1;background:var(--green-soft);border-color:#19a98630}.achievement>span{font-size:30px;display:block;margin-bottom:12px}.achievement h3{font-size:12px}.achievement p{font-size:10px;color:var(--muted);margin:0}.auth-layout{min-height:100vh;display:grid;grid-template-columns:45% 55%}.auth-brand{background:#151e35;position:relative;overflow:hidden;padding:45px 55px;color:#fff;display:flex;flex-direction:column}.auth-brand .brand{color:#fff}.auth-pitch{margin:auto 0;padding-top:65px;position:relative}.auth-pitch .eyebrow{color:#a0b7ff;margin-bottom:26px}.auth-pitch h1{font-size:64px;line-height:1.12;font-weight:500;letter-spacing:-3px}.auth-pitch h1 em{color:#8dabff;font-style:normal}.auth-pitch>p{max-width:300px;font-size:13px;line-height:1.9;color:#98a8c7;margin-top:28px;position:relative;z-index:1}.auth-footer{font-size:10px;color:#8e9fbd;padding-top:45px;position:relative;z-index:1}.auth-footer .icon{width:16px;margin-right:6px}.orbital{position:absolute;width:410px;height:410px;right:-150px;bottom:-185px;display:flex;align-items:center;justify-content:center;opacity:.6}.orbital>div{border:1px solid #7d9dea36;position:absolute;border-radius:50%;inset:0}.orbital>div:nth-child(2){inset:55px}.orbital>div:nth-child(3){inset:110px;background:#4169e81a}.orbital>.icon{width:68px;height:68px;color:#94b2ff}.orbit-dot{position:absolute;height:9px;width:9px;border-radius:50%;background:#8babff;box-shadow:0 0 20px #8babff}.orbit-dot.one{top:30px;left:80px}.orbit-dot.two{top:153px;right:70px;background:#5fd7be}.orbit-dot.three{bottom:112px;left:122px;width:6px;height:6px}.auth-main{position:relative;display:flex;justify-content:center;align-items:center;padding:80px 50px;background:var(--surface)}.auth-form{max-width:360px;width:100%}.auth-form h2{font-size:27px;letter-spacing:-1px;line-height:1.3;margin-bottom:12px}.auth-form>.muted{font-size:12px;line-height:1.9;margin-bottom:30px}.auth-form .field{margin-bottom:20px}.auth-form .field input{padding:13px}.auth-form .button.full{padding:13px;margin-top:6px}.auth-theme{position:absolute;right:30px;top:25px}.auth-help{font-size:10px;color:var(--muted);line-height:1.8;margin:18px 0;text-align:center}.auth-switch{font-size:11px;text-align:center;margin-top:23px;color:var(--muted)}.auth-switch a{font-weight:600}.demo-link{display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;padding-top:24px;margin-top:25px;border-top:1px solid var(--border);color:var(--muted)}.demo-link:hover{color:var(--primary)}.demo-link .icon{width:16px}.auth-bottom{position:absolute;bottom:23px;font-size:9px;color:var(--muted)}
@media(min-width:1650px){.main-content{padding-top:38px}.panel{padding:27px 29px}.line-chart{height:245px}.bar-chart{height:180px}.metric-card{padding:23px 25px;min-height:160px}.metric-value{font-size:37px}.topbar{height:78px}}
@media(max-width:1200px){.app-shell{margin-left:210px}.main-content{padding:25px 24px 0}.topbar{padding:0 24px}.metrics-grid{gap:12px}.metric-card{padding:16px;min-height:139px}.metric-value{font-size:29px}.mini-spark{width:55px;right:12px}.metric-top{font-size:10px}.metric-bottom{font-size:8px}.metric-decoration{display:none}.live-waves{right:17px;gap:3px}.report-grid,.manage-grid{gap:16px}.panel{padding:20px}.panel-heading h2{font-size:14px}.day-tabs{gap:4px}.day-tabs button{padding:6px 8px}.best-slot{padding:9px 7px;gap:5px}.best-slot small{font-size:7px}.headline-totals{gap:8px}.headline-totals strong{font-size:13px}.headline-totals small{font-size:8px}.panel-foot{font-size:8px}.panel-foot span:last-child{display:none}.auth-brand{padding:40px}.auth-pitch h1{font-size:54px}.auth-main{padding:70px 40px}}
@media(max-width:1000px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.metric-value{font-size:34px}.metric-top{font-size:12px}.metric-bottom{font-size:10px}.mini-spark{width:90px}.report-grid>.span-8,.report-grid>.span-7,.report-grid>.span-5{grid-column:span 12}.report-grid>.span-4,.report-grid>.span-6{grid-column:span 6}.report-grid>[data-block=insights]{grid-column:span 12}.insight-panel .projection-label{margin-top:10px}.insight-panel .headline-totals{max-width:400px}.report-grid>[data-block=hours]{grid-column:span 12}.report-grid>[data-block=countries]{grid-column:span 6}.report-grid>[data-block=pages]{grid-column:span 12}.page-heading{align-items:start}.page-heading h1{font-size:28px}.heading-actions .button{font-size:0;padding:10px}.heading-actions .button .icon{width:17px}.main-content{padding:23px 20px 0}.filter-meta>span:not(.live-dot){display:none}.manage-grid>.span-5,.manage-grid>.span-7,.manage-grid>.span-8,.manage-grid>.span-4{grid-column:span 12}.world-map{height:120px}.auth-layout{grid-template-columns:40% 60%}.auth-brand{padding:30px}.auth-pitch h1{font-size:43px}.auth-pitch>p{font-size:12px}.achievements-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app-shell{margin-left:0}.topbar{height:62px;padding:0 17px}.breadcrumb{gap:9px}.breadcrumb>span:first-of-type{display:none}.crumb-separator{display:none}.top-actions{gap:5px}.status-pill{display:none}.main-content{padding:20px 16px 0}.page-heading{margin-bottom:19px;gap:10px}.page-heading .eyebrow{font-size:8px;margin-bottom:7px}.page-heading h1{font-size:28px}.page-heading .muted{font-size:11px}.metrics-grid{gap:10px;margin-bottom:16px}.metric-card{padding:14px;min-height:139px}.metric-top{font-size:10px}.metric-value{font-size:29px}.metric-bottom{font-size:8px;gap:4px}.mini-spark{width:59px;right:12px;opacity:.4}.live-waves{right:14px;gap:3px;opacity:.35}.filter-bar{padding:5px 9px;margin-bottom:17px}.filter-group{gap:9px}.select-with-icon select{font-size:10px;max-width:137px;padding-right:0}.select-with-icon .icon{width:14px}.select-with-icon{gap:5px;padding-left:0}.filter-meta{gap:0}.filter-meta>.live-dot{display:none}.filter-meta .icon-button{margin:0;padding:0;border:0;width:26px}.report-grid{gap:15px}.panel{padding:19px 17px;border-radius:14px}.panel-heading{margin-bottom:18px}.panel-heading h2{font-size:14px}.panel-heading p{font-size:9px}.report-grid>[class*=span-]{grid-column:span 12}.report-grid>[data-block=countries]{grid-column:span 12}.line-chart{height:215px}.day-tabs{gap:5px}.day-tabs button{padding:7px 5px;font-size:9px}.best-slot{padding:9px 8px}.best-slot strong{font-size:10px}.best-slot small{font-size:7px}.bar-chart{height:147px}.donut-wrap{height:148px}.source-list{grid-template-columns:1fr 1fr;gap:17px}.source-row{gap:7px}.world-map{height:170px}.ranking-list{gap:15px}.demo-banner{font-size:9px;gap:9px;padding:10px;margin-bottom:18px}.demo-banner>span strong{display:block}.demo-banner>a{font-size:10px}.demo-banner>a .icon{display:none}.demo-banner>.icon{display:none}.impersonation{flex-wrap:wrap;font-size:11px;padding:12px}.page-footer{flex-wrap:wrap;font-size:8px;padding:22px 0}.block-controls{grid-template-columns:1fr 1fr;padding:14px}.custom-range{flex-wrap:wrap;gap:9px}.custom-range input{padding:5px;margin-left:3px;max-width:140px}.search-field input{width:110px;font-size:10px}.summary-strip{padding:17px;gap:12px}.summary-strip strong{font-size:12px}.summary-strip p{font-size:10px}.summary-strip .tag{display:none}.field-row{grid-template-columns:1fr;gap:0}.intro-panel{padding:26px}.auth-layout{display:block}.auth-brand{min-height:0;padding:22px 25px;background:var(--surface);color:var(--text);border-bottom:1px solid var(--border)}.auth-brand .brand{color:var(--text);font-size:23px}.auth-pitch,.auth-footer{display:none}.auth-main{padding:65px 25px 70px;min-height:calc(100vh - 79px);align-items:start}.auth-theme{top:17px;right:20px}.auth-form{max-width:390px}.auth-form h2{font-size:26px}.auth-bottom{bottom:20px}.notice{font-size:11px;flex-wrap:wrap}.alert-item{flex-wrap:wrap}.alert-item>div{min-width:220px}.table-note{font-size:9px}.auth-form .notice{margin-top:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.block-option{display:flex;gap:6px;align-items:center;justify-content:space-between}
.block-option label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.block-size{flex:none;font-family:inherit;font-size:10px;color:var(--muted);background:var(--surface-alt);border:1px solid var(--border);border-radius:5px;padding:2px 4px;max-width:104px}
.block-size:hover{color:var(--text)}.reorder-button{border:1px solid var(--border);background:var(--surface-alt);color:var(--muted);border-radius:5px;font-size:12px;padding:0 6px}.ranking-heading button:disabled{cursor:default;opacity:1}.map-bubble{cursor:pointer}.management-table .user-link{max-width:250px}.management-table .user-link strong,.management-table .user-link small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:190px}
/* Dashboard: roomy, neutral surfaces and controls directly on each block. */
html[data-theme=dark]{--bg:#292e33;--surface:#16191c;--surface-alt:#22262b;--sidebar:#101215;--border:#343a40;--text:#e6e7e8;--muted:#a7b0ba;--chart-grid:#30363c}
.navbar{padding-inline:max(24px,calc((100vw - 1620px)/2));}
.nav-links a.active{background:transparent;font-weight:600}
.main-content{max-width:1680px;margin-inline:auto}
.report-grid>[data-block]{position:relative;min-width:0;scroll-margin-top:78px}
.block-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin:-8px -5px 12px;min-height:28px}
.block-toolbar button,.block-toolbar select{height:28px;color:var(--muted);background:var(--surface-alt);border:1px solid var(--border);border-radius:5px;font-size:11px}
.block-toolbar button{min-width:30px}
.block-toolbar select{max-width:116px;padding:2px 5px}
.block-toolbar button:hover{color:var(--text);border-color:var(--primary)}
.block-toolbar .block-drag{cursor:grab;touch-action:none;font-size:20px;line-height:1}
.block-dragging{outline:2px dashed var(--primary);opacity:.65}
.block-dragging .block-drag{cursor:grabbing}
.block-option{min-width:0}
@media(min-width:1001px){.report-grid>.span-12 .line-chart{height:300px}.report-grid>.span-12 .world-map{height:340px}}
@media(max-width:760px){.navbar{padding-inline:12px;gap:9px}.nav-links a{padding-inline:7px}.block-controls{grid-template-columns:1fr}.block-toolbar{margin-top:0}.nav-right{gap:3px}}
@media(max-width:760px){.navbar .brand-mark{width:26px;height:26px;margin-right:5px}.navbar .brand{font-size:14px}.navbar .user-button{padding:5px;gap:4px}.navbar .user-button>span:not(.avatar):not(.user-chevron){display:none}.navbar .status-pill{display:none}.filter-group{flex-wrap:wrap;gap:6px;min-width:0}.filter-bar{align-items:flex-start}.filter-meta{padding-top:6px}.filter-divider{display:none}.site-button{max-width:200px}}
/* Keep report text readable across wide cards, close to the reference proportions. */
@media(min-width:1001px){.navbar .brand{font-size:20px}.nav-links a,.user-button{font-size:14px}.report-grid .panel-heading h2{font-size:18px}.report-grid .panel-heading p,.report-grid .table-note{font-size:12px}.metric-value{font-size:40px}.report-grid .panel{border-radius:14px}.insight-panel{background:var(--surface)}}
/* Native controls must inherit the active palette, including their popup options. */
html[data-theme=dark]{color-scheme:dark}
html[data-theme=light]{color-scheme:light}
select,select option,select optgroup,input[type=date]{color:var(--text);background-color:var(--surface)}
html[data-theme=dark] select,html[data-theme=dark] input{color-scheme:dark}
select option:checked{background:var(--blue-soft);color:var(--text)}
#report-grid{grid-template-columns:repeat(120,minmax(0,1fr));align-items:start}
#report-grid>[data-block]{grid-column:span var(--block-columns,120);min-width:0;padding-bottom:30px;display:flex;flex-direction:column}
#report-grid>[data-block].has-custom-size{height:var(--block-height);min-height:220px}
.block-body{min-width:0;min-height:0;flex:1}
.has-custom-size>.block-body{overflow:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}
.block-resize{position:absolute;right:4px;bottom:3px;width:30px;height:28px;border:0;background:transparent;color:var(--muted);cursor:nwse-resize;touch-action:none;font-size:20px;line-height:1;z-index:2}
.block-resize:hover,.block-resize:focus-visible{color:var(--primary);background:var(--blue-soft);border-radius:5px}
.is-resizing{outline:2px solid var(--primary);user-select:none}
.block-toolbar{margin-bottom:10px;flex:none}
.has-custom-size .line-chart{height:clamp(110px,calc(var(--block-height) - 220px),1100px)!important}
.has-custom-size .world-map{height:clamp(140px,calc(var(--block-height) - 290px),1000px)!important}
.country-flag{display:inline-block;width:24px;height:18px;object-fit:cover;border-radius:3px;vertical-align:middle;box-shadow:0 0 0 1px #ffffff15;flex:none}
.live-feed-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px;margin-bottom:12px}
#live-connection{color:var(--green)}#live-connection.connection-error{color:var(--orange)}
.recent-list{max-height:470px;scrollbar-width:thin;scrollbar-color:var(--border) transparent;overflow-anchor:none}
.has-custom-size .recent-list{max-height:none}
.recent-row{min-height:57px;padding:12px 3px;gap:13px}
.visit-path{font:12px/1.5 Consolas,monospace;display:block;text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);border:0;background:none;padding:0}
.visit-path:hover{color:var(--primary);text-decoration:underline}
.recent-row time{white-space:nowrap;font-size:11px}.recent-row small{font-size:10px}
.visit-arrived{animation:visit-in 1.3s ease-out}
.metric-updated{animation:metric-flash .8s ease-out}
@keyframes visit-in{from{background:var(--green-soft);transform:translateY(-8px)}to{background:transparent;transform:none}}
@keyframes metric-flash{50%{color:var(--green);transform:translateY(-2px)}}
.bubble-modes{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}
.bubble-modes button{padding:6px 12px;border:1px solid var(--border);border-radius:20px;color:var(--muted);background:var(--surface);font-size:11px}
.bubble-modes button[aria-pressed=true]{color:var(--primary);background:var(--blue-soft);border-color:var(--primary)}
.country-bubbles{height:470px;position:relative;isolation:isolate;overflow:hidden;min-height:170px}
.has-custom-size .country-bubbles{height:clamp(170px,calc(var(--block-height) - 230px),1100px)}
.country-bubble{position:absolute;left:0;top:0;border-radius:50%;border:1px solid #458a7055;background:#204334;color:#f1f6f3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px;will-change:transform;cursor:grab;touch-action:none;box-shadow:inset 0 0 18px #ffffff05;transition:background .2s,border-color .2s}
.country-bubble:nth-child(3n+2){background:#213b58;border-color:#527faa55}
.country-bubble:nth-child(3n){background:#3d335a;border-color:#8570b555}
.country-bubble:hover,.country-bubble:focus-visible{background:#305e4b;border-color:#8ce2bd;z-index:3;box-shadow:0 0 24px #52d6b126}
.country-bubble:active{cursor:grabbing}
.country-bubble .country-flag{width:29%;height:auto;aspect-ratio:4/3;max-width:48px;min-width:16px;border-radius:3px}
.bubble-name{max-width:90%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:.8em;font-weight:600}
.country-bubble strong{font-size:1.18em;line-height:1.05}
.country-bubble.compact{gap:2px;padding:2px}.country-bubble.compact .bubble-name{display:none}
.bubble-empty{height:100%;display:grid;place-content:center;text-align:center;padding:25px;color:var(--muted);font-size:13px}
.ranking-fill{transition:width .6s ease-out}.map-bubble{transition:r .5s,fill .2s}.map-bubble:hover{fill:var(--green)}
@media(max-width:760px){#report-grid>[data-block]{grid-column:span 120}.country-bubbles{height:390px}.live-feed-meta{font-size:10px}.recent-row{gap:8px}.visit-path{font-size:11px}.recent-row small{font-size:9px}.block-resize{width:36px;height:32px}}
@media(prefers-reduced-motion:reduce){.visit-arrived,.metric-updated{animation:none}.ranking-fill,.map-bubble,.country-bubble{transition:none}}
#report-grid{column-gap:0;margin-right:-22px}
#report-grid>[data-block]{margin-right:22px}
@media(max-width:760px){#report-grid{margin-right:-15px}#report-grid>[data-block]{margin-right:15px}}
/* Proportions inspired by the supplied VizBird dashboard reference. */
.main-content{max-width:1668px;padding:32px 24px 0;margin-inline:auto}
.navbar{height:64px;padding-inline:max(24px,calc((100vw - 1620px)/2))}
.navbar .brand{font-size:22px}.nav-links a,.user-button{font-size:15px}
.filter-bar{background:transparent;border:0;border-radius:0;padding:0;gap:18px;margin-bottom:30px;flex-wrap:wrap}
.report-scope{margin-right:auto;min-width:180px}.report-scope h1{font-size:26px;letter-spacing:-.5px;margin:0 0 5px;line-height:1.3}.report-scope>span{font-size:14px}
.filter-group{gap:12px}.site-button,.select-with-icon{border:1px solid var(--border);border-radius:6px;padding:7px 10px;background:transparent}
.site-button,.select-with-icon select{font-size:14px}.filter-divider{display:none}
.filter-meta{font-size:11px}.metrics-grid{gap:22px;margin-bottom:28px}.metric-card{min-height:170px;padding:23px 20px;border-radius:14px}
.metric-top{font-size:13px}.metric-value{font-size:46px;margin-block:8px}.metric-bottom{font-size:11px}
.metric-icon,.mini-spark,.metric-decoration,.live-waves{display:none}.online-card{background:var(--green-soft);border-color:#25834666}
#report-grid{row-gap:22px}.panel-heading h2{font-size:18px}.panel-heading p{font-size:13px}.panel{box-shadow:none}
#report-grid>.panel{padding:24px 28px 30px}.block-toolbar{margin-top:-12px;margin-bottom:7px}
#report-grid .table-note,.projection-explain{font-size:13px;line-height:1.65}.projection-value{font-size:46px}
#report-grid .ranking-heading button,#report-grid .source-row,#report-grid .data-table{font-size:13px}
@media(min-width:1001px){.insight-panel>.block-body{display:grid;grid-template-columns:1fr 1fr;column-gap:35px}.insight-panel .panel-heading{grid-column:1/-1}.insight-divider{display:none}.insight-panel .headline-totals{align-items:center;margin:0;padding:0;max-width:none}.headline-totals strong{font-size:22px}.headline-totals small{font-size:12px}}
@media(max-width:1000px){.filter-meta{width:100%;justify-content:flex-end}.navbar{padding-inline:20px}.main-content{padding:24px 20px 0}}
@media(max-width:760px){.main-content{padding:20px 16px 0}.navbar{height:58px;padding-inline:12px}.navbar .brand{font-size:14px}.nav-links a,.user-button{font-size:12px}.report-scope{width:100%}.report-scope h1{font-size:23px}.filter-bar{gap:12px;margin-bottom:20px}.filter-group{width:100%;gap:7px}.site-button,.select-with-icon select{font-size:11px}.select-with-icon,.site-button{padding:5px}.metrics-grid{gap:10px}.metric-card{min-height:136px;padding:15px}.metric-value{font-size:32px}.metric-top{font-size:11px}.metric-bottom{font-size:9px}#report-grid>.panel{padding:20px 17px 30px}}
/* Centered canvas: side gutters remain visible even below a full-HD viewport. */
.main-content{width:90%;max-width:1720px;padding:30px 0 0;margin-inline:auto}
.navbar{padding-inline:max(5%,calc((100vw - 1720px)/2));height:64px}
.report-scope h1{font-size:27px;font-weight:600}.filter-group{gap:9px}.filter-bar{margin-bottom:28px}
html[data-theme=dark] .online-card{background:#16231e;border-color:#28682e}
.metric-card{min-height:168px;padding:20px;border-color:transparent}.metric-top{font-weight:400;font-size:14px}.metric-value{font-size:46px;font-weight:650;line-height:1.1;letter-spacing:-1px;margin:10px 0}.metric-bottom{font-size:12px}
#report-grid>.panel{padding:24px 26px 30px;border-color:transparent;border-radius:14px}
#report-grid .panel-heading h2{font-size:18px;font-weight:600}#report-grid .panel-heading p{font-size:14px;line-height:1.55}
.projection-explain{max-width:560px;font-size:14px!important}.projection-label{font-size:12px}.insight-panel .headline-totals{gap:24px}.insight-panel .headline-totals>div{flex:1}.block-toolbar{min-height:0;margin-bottom:3px;opacity:.65}.panel:hover>.block-toolbar,.panel:focus-within>.block-toolbar{opacity:1}
.live-dot{position:relative;background:#20c573;box-shadow:0 0 0 0 #20c57355;animation:live-beacon 2s ease-out infinite}
@keyframes live-beacon{0%{box-shadow:0 0 0 0 #20c57366}70%{box-shadow:0 0 0 7px #20c57300}100%{box-shadow:0 0 0 0 #20c57300}}
.map-pulse{fill:none;stroke:#398ee5;stroke-width:1.4;transform-box:fill-box;transform-origin:center;animation:map-beacon 2.6s ease-out infinite;pointer-events:none}
@keyframes map-beacon{0%{transform:scale(1);opacity:.65}100%{transform:scale(1.9);opacity:0}}
.map-pulse:nth-of-type(4n){animation-delay:-1.3s}.map-pulse:nth-of-type(6n){animation-delay:-.6s}
.map-bubble{fill:#3289dc88;stroke:#4297ed;stroke-width:1}.world-map{max-width:1000px;margin:0 auto 20px;width:100%}
.country-flag{width:27px;height:20px;border-radius:3px}.recent-row .flag{min-width:30px}.recent-row{padding-block:13px}.visit-path{font-size:14px}.recent-row time{font-size:12px}
.country-share{position:relative;height:330px;min-height:180px;overflow:hidden;border-radius:8px}
.has-custom-size .country-share{height:clamp(180px,calc(var(--block-height) - 165px),1100px)}
.country-tile{position:absolute;padding:2px;border:0;background:none;color:var(--text);min-width:0;overflow:hidden}
.country-tile>span{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;border:1px solid #40796288;background:var(--green-soft);border-radius:7px;padding:5px;overflow:hidden}
.country-tile:nth-child(3n)>span{background:var(--blue-soft);border-color:#587cb488}.country-tile:hover>span,.country-tile:focus-visible>span{border-color:var(--primary);filter:brightness(1.15)}
.tile-name{font-size:11px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.country-tile strong{font-size:14px}.country-tile .country-flag{width:23px;height:17px;flex-shrink:0}
@media(max-width:1000px){.main-content{width:92%}.navbar{padding-inline:4%}.metric-value{font-size:36px}.metric-bottom{font-size:11px}}
@media(max-width:760px){.main-content{width:calc(100% - 32px);padding-top:20px}.navbar{height:58px;padding-inline:12px}.metric-card{min-height:136px;padding:15px}.metric-value{font-size:32px}.metric-top{font-size:11px}.metric-bottom{font-size:9px}#report-grid>.panel{padding:20px 17px 30px}.visit-path{font-size:12px}.block-toolbar{opacity:1}.country-share{height:320px}}
@media(prefers-reduced-motion:reduce){.live-dot,.map-pulse{animation:none}.map-pulse{opacity:.25}}

/* Totais e resumo diário */
.metrics-grid .metric-top{text-transform:uppercase;justify-content:flex-start;gap:6px;font-size:13px}
.metrics-grid .metric-value{margin:9px 0 0;font-size:46px;line-height:1.08}
.metric-unit{font-size:13px;color:var(--muted);font-weight:600}
.metrics-grid .metric-bottom{margin-top:9px;font-size:16px;gap:5px;flex-wrap:wrap}
.metrics-grid .metric-bottom .change{font-size:inherit;background:none;padding:0}
.online-caption{font-weight:600;color:var(--muted)}
.insight-panel .projection-label{text-transform:uppercase;font-size:13px;margin-top:0}
.insight-panel .projection-value{font-size:46px;line-height:1.15;margin:7px 0 0}
.projection-comparison{font-size:16px;color:var(--muted)}
.projection-comparison .change{font-size:inherit;background:none;padding:0}
.insight-panel .projection-explain{max-width:none;margin:12px 0 0;line-height:1.55}
.insight-panel .panel-heading{margin-bottom:20px}
@media(max-width:760px){.metrics-grid .metric-value{font-size:34px}.metrics-grid .metric-bottom{font-size:12px}.metrics-grid .metric-top{font-size:11px}#typical-content{margin-top:24px}}
/* Layout do painel: coluna de 1620px centralizada, cartões e blocos espaçados. */
.main-content{width:min(1620px,90%);max-width:none;padding:32px 0 0}
.navbar{height:70px;padding-inline:max(5%,calc((100% - 1620px)/2))}
.filter-bar{margin-bottom:32px;gap:12px}
.report-scope h1{font-size:28px;font-weight:600;margin-bottom:6px}
.report-scope>span{font-size:16px}
.filter-group{gap:10px}
.site-button,.select-with-icon,.outline-button{box-sizing:border-box;display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 16px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:17px;cursor:pointer;transition:border-color .15s,color .15s,background .15s}
.site-button:hover,.select-with-icon:hover,.outline-button:hover,.outline-button[aria-expanded=true]{border-color:var(--muted);color:var(--text);background:var(--surface-alt)}
.site-button{max-width:280px;color:var(--muted)}
.site-button .icon,.select-with-icon .icon,.outline-button .icon{width:18px;height:18px}
.select-with-icon select{font-size:17px;color:inherit;height:100%;max-width:none;padding:0 2px 0 0}
.metrics-grid{gap:22px;margin-bottom:31px}
.metric-card{min-height:170px;padding:24px 20px 22px;border-radius:12px}
.metrics-grid .metric-top{font-size:14px;letter-spacing:.06em}
.metrics-grid .metric-value{font-size:50px}
.metrics-grid .metric-bottom{font-size:18px}
.blocks-bar{display:flex;justify-content:flex-end;align-items:center;gap:20px;margin-bottom:12px}
.link-button{display:inline-flex;align-items:center;gap:6px;border:0;background:none;color:var(--muted);font:inherit;font-size:17px;cursor:pointer;padding:6px 0}
.link-button:hover{color:var(--text)}.link-button .icon{width:17px;height:17px}
.blocks-menu{position:relative}
.blocks-menu .outline-button{height:38px;padding:0 10px}
.caret{border:5px solid transparent;border-top-color:currentColor;border-bottom:0;margin-left:4px}
.blocks-menu .block-controls{position:absolute;right:0;top:calc(100% + 4px);z-index:40;width:400px;max-width:calc(100vw - 32px);max-height:min(620px,calc(100vh - 160px));overflow:auto;display:block;margin:0;padding:18px 20px;border-radius:8px;box-shadow:0 18px 40px #0006;animation:menu-in .16s ease-out}
.blocks-menu .block-controls[hidden]{display:none}
.block-controls-intro{font-size:16px;line-height:1.6;color:var(--muted);margin:0 0 14px}
#block-options{display:grid;gap:4px}
.block-options .block-option,#block-options .block-option{display:flex;align-items:center;gap:12px;font-size:17px;padding:6px 0;cursor:pointer;white-space:normal}
#block-options input{width:18px;height:18px;accent-color:var(--primary);flex:none}
@keyframes menu-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
#report-grid{row-gap:42px}
#report-grid>.panel{padding:30px 30px 34px;border-radius:12px}
#report-grid .panel-heading h2{font-size:20px}
#report-grid .panel-heading p{font-size:16px}
/* Alça de mover e botão de ocultar: aparecem só ao passar o mouse, no topo central. */
#report-grid .block-toolbar{position:absolute;top:6px;left:50%;transform:translateX(-50%);margin:0;min-height:0;z-index:3;opacity:0;transition:opacity .15s}
#report-grid>.panel:hover>.block-toolbar,#report-grid>.panel:focus-within>.block-toolbar{opacity:1}
#report-grid .block-toolbar button{height:24px;min-width:26px}
.block-resize{opacity:0;transition:opacity .15s}.panel:hover .block-resize,.block-resize:focus-visible{opacity:1}
@media(max-width:1000px){.main-content{width:calc(100% - 40px)}.navbar{padding-inline:20px}}
@media(max-width:760px){.main-content{width:calc(100% - 32px);padding-top:20px}.navbar{height:58px;padding-inline:12px}.filter-group{width:100%}.select-with-icon,.site-picker{flex:1 1 0;min-width:0}.site-button{width:100%;max-width:none}.site-button,.select-with-icon,.select-with-icon select{height:40px;font-size:14px}.site-button,.select-with-icon{padding:0 10px}.metrics-grid .metric-value{font-size:34px}.metrics-grid .metric-bottom{font-size:13px}.metric-card{min-height:136px;padding:15px}#report-grid{row-gap:16px}#report-grid>.panel{padding:22px 17px 30px}#report-grid .block-toolbar{opacity:1}.link-button,.blocks-menu .outline-button{font-size:14px}.blocks-menu .block-controls{width:320px}}
.metric-card{min-height:170px;padding:22px 20px 18px}
.metrics-grid .metric-value{margin:4px 0 0;line-height:1.05}
.metrics-grid .metric-bottom{margin-top:8px}
.select-with-icon select{field-sizing:content;padding-right:22px}
/* Movimento: entrada dos blocos, hover dos cartões e bolhas vivas. */
.reveal{opacity:0;translate:0 18px;transition:opacity .6s ease-out var(--reveal-delay,0ms),translate .6s cubic-bezier(.2,.8,.2,1) var(--reveal-delay,0ms)}
.reveal.revealed{opacity:1;translate:none}
.metric-card{transition:translate .2s ease,box-shadow .2s ease,opacity .6s ease-out var(--reveal-delay,0ms)}
.metric-card.revealed:hover{translate:0 -3px;box-shadow:0 12px 28px #0000001f}
.country-bubble{--i:0;animation:bubble-breathe 5.5s ease-in-out calc(var(--i)*-.73s) infinite,bubble-pop .7s cubic-bezier(.2,1.5,.4,1) calc(var(--i)*55ms) backwards}
.country-bubble:hover{animation-play-state:paused}
.country-bubble .country-flag{transition:transform .25s ease}.country-bubble:hover .country-flag{transform:scale(1.12) rotate(-4deg)}
@keyframes bubble-breathe{0%,100%{scale:1}50%{scale:1.045}}
@keyframes bubble-pop{from{scale:0;opacity:0}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;translate:none;transition:none}.country-bubble{animation:none}.metric-card.revealed:hover{translate:none}}
/* Detalhe do país (clique na bolha). */
.country-dialog{width:min(1000px,calc(100vw - 32px));max-height:calc(100vh - 48px);padding:0;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);box-shadow:0 30px 80px #0008;overflow:auto}
.country-dialog[open]{animation:dialog-in .22s cubic-bezier(.2,.9,.3,1.2)}
.country-dialog::backdrop{background:#0009;backdrop-filter:blur(2px);animation:fade-in .2s ease-out}
.country-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--border)}
.country-dialog h2{display:flex;align-items:center;gap:10px;margin:0;font-size:20px;font-weight:600}
.country-dialog h2 .country-flag{width:28px;height:auto;border-radius:3px}
.country-dialog h2 .muted{font-weight:500}
.country-dialog-body{padding:24px 20px 22px}
.country-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:22px}
.country-stat span{display:block;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.country-stat strong{display:block;font-size:44px;font-weight:700;line-height:1.1;margin:6px 0 4px;font-variant-numeric:tabular-nums}
.country-stat small{font-size:16px;color:var(--muted)}.country-stat small .change{font-size:inherit;background:none;padding:0}
.country-chart{height:280px}
.country-dialog-note{font-size:16px;color:var(--muted);margin:16px 0 18px;line-height:1.6}.country-dialog-note strong{color:var(--text)}
.country-dialog .button .icon{width:16px;height:16px}
@keyframes dialog-in{from{opacity:0;transform:translateY(12px) scale(.97)}}
@keyframes fade-in{from{opacity:0}}
@media(max-width:760px){.country-stats{grid-template-columns:1fr 1fr;gap:16px}.country-stat strong{font-size:30px}.country-stat span{font-size:11px}.country-stat small{font-size:13px}.country-chart{height:210px}}
@media(prefers-reduced-motion:reduce){.country-dialog[open],.country-dialog::backdrop{animation:none}}
/* ===== Painel completo: blocos novos e melhorados ===== */
:root{--chart-1:#5279ed;--chart-2:#9d89e8;--chart-3:#25b698;--up-bg:#e3f5ee;--up-border:#19a98655;--down-bg:#fbe9eb;--down-border:#d9637155}
html[data-theme=dark]{--up-bg:#1f3d31;--up-border:#4f9c7c66;--down-bg:#43262a;--down-border:#b85f6a66}
.positive{color:var(--green)}.negative{color:var(--red)}.warning{color:var(--orange)}.accent{color:var(--primary)}
/* Cabeçalho dos blocos */
.panel-heading h2{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.panel-heading h2>.icon{width:20px;height:20px;color:var(--muted)}
.block-period{font-size:16px;color:var(--muted);white-space:nowrap}
.heading-tools{display:flex;align-items:center;gap:14px}
.info-tip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:none;color:var(--muted);cursor:help;font-size:15px;line-height:1;vertical-align:middle}
.info-tip .icon{width:17px;height:17px}
.info-tip:hover,.info-tip:focus-visible,.info-tip.open{color:var(--primary)}
.info-tip::after{content:attr(data-tip);position:absolute;left:50%;top:calc(100% + 8px);transform:translateX(-30%);width:max-content;max-width:300px;padding:10px 12px;border-radius:8px;background:var(--text);color:var(--surface);font-size:13px;font-weight:400;line-height:1.5;letter-spacing:0;text-align:left;text-transform:none;white-space:normal;box-shadow:0 10px 30px #0004;opacity:0;pointer-events:none;transition:opacity .15s,translate .15s;translate:0 -4px;z-index:30}
.info-tip:hover::after,.info-tip:focus-visible::after,.info-tip.open::after{opacity:1;translate:0 0}
#report-grid>.panel{overflow:visible}
/* Estatística grande */
.big-stat{font-size:48px;font-weight:700;line-height:1.05;letter-spacing:-1px;margin:6px 0 4px;font-variant-numeric:tabular-nums}
.stat-caption{font-size:16px;color:var(--muted);margin:0 0 14px;display:flex;align-items:center;gap:6px}
.stat-caption .icon{width:18px;height:18px}
.list-title{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:22px 0 8px;font-weight:600}
/* Legendas embaixo, com anel vazado */
.legend-below{justify-content:center;gap:18px;margin:12px 0 4px;font-size:15px}
.legend-ring{display:inline-block;width:14px;height:14px;border-radius:50%;border:2.5px solid var(--c);margin-right:6px;vertical-align:-2px}
/* Gráficos de linha: tooltip, linha de hover e marcador de agora */
.chart-container{position:relative}
.line-chart{height:300px}
.chart-line{animation:chart-in .8s ease-out both}
.chart-area{animation:chart-fade 1s ease-out both}
.muted-line{opacity:.85}
.hover-line{stroke:var(--muted);stroke-dasharray:3 4;opacity:.7}
.now-line{stroke:var(--muted);stroke-dasharray:3 4;opacity:.5}
.now-dot{fill:#fff;stroke:var(--primary);stroke-width:3;animation:now-pulse 1.8s ease-in-out infinite}
.now-badge rect{fill:#fff;filter:drop-shadow(0 2px 6px #0003)}.now-badge text{fill:#111;font-size:12px;font-weight:700}
.chart-label.strong{font-weight:700;fill:var(--text)}
.chart-tip{position:absolute;top:8px;transform:translateX(-50%);min-width:140px;padding:9px 12px;border-radius:8px;background:var(--surface);border:1px solid var(--border);box-shadow:0 12px 30px #0003;font-size:13px;pointer-events:none;z-index:5;display:grid;gap:4px}
.chart-tip[hidden]{display:none}
.chart-tip span{display:flex;align-items:center;gap:6px;color:var(--muted)}.chart-tip b{color:var(--text)}
.chart-tip i{width:8px;height:8px;border-radius:50%}
@keyframes chart-in{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}
@keyframes chart-fade{from{opacity:0}}
@keyframes now-pulse{50%{r:7}}
.record-line{display:flex;align-items:center;gap:8px;font-size:16px;color:var(--muted);margin:14px 0 0;flex-wrap:wrap}
.record-line .icon{width:18px;height:18px;color:var(--orange);fill:none;stroke:currentColor;stroke-width:1.6}.record-line strong{color:var(--text)}
/* Botões de imagem e compartilhar */
.block-actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.outline-button.small{height:38px;font-size:15px;padding:0 12px}
.outline-button.small .icon{width:16px;height:16px}
.outline-button:disabled{opacity:.5;cursor:progress}
/* Comparar sites */
.comparison-table th:not(:first-child),.comparison-table td:not(:first-child){text-align:right}
.comparison-table td:first-child{display:flex;align-items:center;gap:8px}
.comparison-table .page-link{color:var(--primary)}
.comparison-table td .change{background:none;padding:0;font-size:inherit}
.data-table{font-size:15px}.data-table th{font-size:13px}
/* Sites que pararam / Quem puxou */
.all-good{display:flex;align-items:center;gap:8px;color:var(--green);font-size:16px;margin:4px 0}
.all-good .icon,.stat-caption .icon{fill:none;stroke:currentColor;stroke-width:1.8}
.all-good .icon{width:20px;height:20px}
.contrib-list{display:grid;gap:12px;margin:10px 0 16px}
.contrib-row{display:grid;grid-template-columns:minmax(120px,1fr) 2fr 70px;align-items:center;gap:14px;font-size:15px}
.contrib-row small{text-align:right;font-size:14px}
.contrib-track{position:relative;height:16px;border-radius:4px;background:linear-gradient(var(--border),var(--border)) center/1px 100% no-repeat}
.contrib-track i{position:absolute;top:0;bottom:0;border-radius:3px;animation:grow-x .8s cubic-bezier(.2,.8,.2,1) both}
.contrib-track i.up{left:50%;background:var(--green);transform-origin:left}
.contrib-track i.down{right:50%;background:var(--red);transform-origin:right}
@keyframes grow-x{from{transform:scaleX(0)}}
/* Alcance e posição */
.flag-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.flag-row button{border:0;background:none;padding:0;cursor:pointer;transition:transform .2s}
.flag-row button:hover{transform:translateY(-3px) scale(1.1)}
.flag-row .country-flag{width:32px;height:auto;border-radius:3px;box-shadow:0 1px 3px #0003}
.position-band{display:flex;gap:4px;height:44px;margin-top:16px;border-radius:8px;overflow:hidden}
.position-band span{display:flex;align-items:center;gap:6px;min-width:0;padding:0 12px;background:var(--c);color:#fff;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:grow-x .9s cubic-bezier(.2,.8,.2,1) both;transform-origin:left}
.position-band b{font-weight:700}
/* Listas com variação */
.delta{font-size:12px;font-weight:600;padding:1px 6px;border-radius:5px;white-space:nowrap}
.delta.up{color:var(--green);background:var(--green-soft)}.delta.down{color:var(--red);background:var(--red-soft)}.delta.new{color:var(--primary);background:var(--blue-soft)}.delta.flat{color:var(--muted)}
.country-ranking .ranking-heading{gap:10px;font-size:15px}
.country-ranking .ranking-heading button{flex:1;text-align:left}
.ranking-fill{animation:grow-x .9s cubic-bezier(.2,.8,.2,1) both;transform-origin:left}
.more-countries{margin-top:10px}
/* Fonte do tráfego */
.stacked-bar{display:flex;gap:3px;height:30px;border-radius:6px;overflow:hidden;margin:6px 0 18px}
.stacked-bar span{min-width:3px;animation:grow-x .9s cubic-bezier(.2,.8,.2,1) both;transform-origin:left}
#sources-content .source-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px 28px}
#sources-content .source-row{font-size:15px;gap:10px}
#sources-content .source-row button{flex:1;text-align:left}
/* Páginas */
.pages-foot{display:flex;flex-direction:column;gap:6px;margin-top:16px;font-size:15px;color:var(--muted)}
.pages-foot strong{color:var(--text)}
/* Dispositivos */
.device-headline{font-size:18px;margin:4px 0 18px}
.device-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
.device-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 10px;border:1px solid transparent;border-radius:10px;background:none;color:var(--text);cursor:pointer;font:inherit;transition:background .2s,border-color .2s,transform .2s}
.device-card:hover{background:var(--surface-alt);border-color:var(--border);transform:translateY(-2px)}
.device-card .icon{width:30px;height:30px;color:var(--muted);fill:none;stroke:currentColor;stroke-width:1.5;margin-bottom:6px}
.device-card strong{font-size:20px}.device-card span{color:var(--muted);font-size:15px}.device-card small{color:var(--muted);opacity:.7}
.device-card em{font-style:normal;font-weight:700;font-size:15px}
/* Tiers */
.tier-list{display:grid;gap:16px}
.tier-name{display:flex;flex-direction:column;flex:1;font-size:16px}
.tier-name small{font-size:14px;color:var(--muted)}
.ranking-fill.tier-1{background:var(--primary)}.ranking-fill.tier-2{background:var(--chart-2)}.ranking-fill.tier-3{background:var(--chart-3)}
/* Participação por país com variação */
.country-tile.up>span{background:var(--up-bg);border-color:var(--up-border)}
.country-tile.down>span{background:var(--down-bg);border-color:var(--down-border)}
.country-tile.new>span{box-shadow:inset 0 0 0 2px var(--primary)}
.country-tile .delta{background:none;padding:0;font-size:11px}
.country-tile:not(:disabled):hover>span{filter:brightness(1.12)}
.other-globe{font-size:20px;color:var(--primary)}
.country-share{height:340px}
/* Novos e recorrentes */
.segment-track.big{height:30px;border-radius:6px;overflow:hidden;margin:14px 0 16px}
#returning-content .source-row{font-size:16px;gap:10px;margin-bottom:10px}
/* Bolhas coloridas pela variação */
.country-bubble.up{background:#1f4a37;border-color:#4fbf8d88}
.country-bubble.down{background:#4d2327;border-color:#d0707c88}
.country-bubble.flat{background:#213b58;border-color:#527faa55}
.country-bubble.new{box-shadow:0 0 0 3px var(--primary)}
/* Melhores horários: colunas com intensidade */
.hours-chart{height:260px}
.hour-bar{fill:var(--primary);fill-opacity:var(--i,.4);transform-box:fill-box;transform-origin:bottom;animation:bar-grow .7s cubic-bezier(.2,.8,.2,1) var(--d,0ms) both;cursor:pointer}
.hour-bar.best{fill:var(--primary);fill-opacity:1}
.hour-bar.current{stroke:var(--text);stroke-width:2}
.hour-bar:hover,.hour-bar:focus-visible{fill:var(--purple);fill-opacity:1}
.best-star{fill:var(--orange);font-size:12px;font-weight:700}
@keyframes bar-grow{from{transform:scaleY(0)}}
.hours-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:10px}
.best-hour{font-size:17px;margin:0}.best-hour .star{color:#f5b400}
.day-tabs button{font-size:14px;padding:8px 10px}
/* Idioma na barra do topo */
.lang-menu{position:relative}
.lang-button{height:38px;padding:0 10px;font-size:14px}
.lang-dropdown{right:0;left:auto;min-width:170px}
.lang-dropdown button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;color:var(--text);padding:9px 12px;border-radius:6px;cursor:pointer;font:inherit;font-size:14px}
.lang-dropdown button span{font-weight:700;color:var(--muted);width:24px}
.lang-dropdown button:hover,.lang-dropdown button[aria-current=true]{background:var(--surface-alt)}
@media(max-width:760px){.big-stat{font-size:36px}.block-period{font-size:13px}.contrib-row{grid-template-columns:90px 1fr 56px;gap:8px;font-size:13px}.position-band span{font-size:12px;padding:0 6px}.device-grid{grid-template-columns:repeat(2,1fr)}.line-chart{height:230px}.hours-chart{height:210px}.lang-button{padding:0 7px}.info-tip::after{max-width:230px;transform:translateX(-50%)}.country-share{height:300px}}
@media(prefers-reduced-motion:reduce){.chart-line,.chart-area,.hour-bar,.ranking-fill,.stacked-bar span,.position-band span,.contrib-track i,.now-dot{animation:none}}
/* Tamanhos de texto dos blocos: o CSS antigo usava 9–12px, pequeno para a nova escala. */
#report-grid .table-note,#report-grid .panel-foot{font-size:14px;line-height:1.6}
#reach-content p,#position-content p,#bots-content>p:not(.stat-caption):not(.table-note){font-size:16px;line-height:1.6;margin:0 0 6px}
#report-grid .ranking-heading{font-size:15px;align-items:center}
#report-grid .ranking-heading button{font-size:15px}
#report-grid .ranking-heading strong{font-size:14px}
#report-grid .ranking-heading small{font-size:13px;min-width:44px;text-align:right}
#report-grid .ranking-track{height:6px}
#report-grid .reason-row{font-size:15px;padding:9px 0}
#report-grid .data-table td,#report-grid .data-table .page-link{font-size:15px}
#report-grid .data-table th{font-size:13px}
#report-grid .bubble-modes button{font-size:13px;padding:7px 12px}
#report-grid .live-feed-meta{font-size:13px}
#report-grid .visit-path{font-size:15px}
#report-grid .recent-row small{font-size:13px}
#report-grid .best-slot strong{font-size:14px}#report-grid .best-slot small{font-size:12px}
#report-grid .chart-label{font-size:12px}
#report-grid .country-tile strong{font-size:15px}#report-grid .tile-name{font-size:12px}
#sources-content .source-row{display:flex;align-items:center;gap:10px;font-size:15px}
#sources-content .source-row span,#sources-content .source-row strong{font-size:14px;white-space:nowrap}
#sources-content .source-row strong{min-width:44px;text-align:right}
#sources-content .group-chips{margin-top:16px}
#sources-content .group-chip{font-size:13px}
.contrib-row>span{font-size:15px}
@media(max-width:760px){#report-grid .ranking-heading,#report-grid .data-table td,#report-grid .data-table .page-link,#sources-content .source-row{font-size:13px}#reach-content p,#position-content p{font-size:14px}}
#report-grid .tier-name small{min-width:0;text-align:left;font-size:14px}
#returning-content .source-row span,#returning-content .source-row strong{font-size:15px}
#returning-content .source-row strong{min-width:52px;text-align:right}
/* Visitas ao vivo: uma linha por visita, bandeira pequena, domínio e tempo à direita. */
#report-grid .recent-row{min-height:0;padding:9px 2px;gap:10px}
#report-grid .recent-row .flag{min-width:30px;display:inline-flex}
#report-grid .recent-row .visit-path{flex:1;min-width:0;font-size:15px}
#report-grid .visit-site{font-size:14px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40%}
#report-grid .recent-row time{font-size:14px;min-width:52px;text-align:right}
#report-grid .recent-list{max-height:460px}
@media(max-width:760px){#report-grid .visit-site{display:none}#report-grid .recent-row .visit-path{font-size:13px}}
/* Private account revenue, separate from the analytics filters. */
.adsense-settings{margin:20px 0}
.adsense-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px;margin-top:14px;padding-right:34px}.adsense-foot .outline-button{flex-shrink:0}
.adsense-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0}
.adsense-metrics article{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--border,#ddd);border-radius:12px}
.adsense-metrics strong{font-size:clamp(1.4rem,3vw,2rem);font-variant-numeric:tabular-nums}
.adsense-metrics small{opacity:.65}.adsense-warning{color:#ba7130}
.adsense-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.adsense-buttons form{margin:0}
.adsense-callback{overflow-wrap:anywhere}.adsense-instructions{padding-left:24px}.adsense-instructions li{margin:12px 0}
.adsense-history summary{cursor:pointer;padding:10px 0}.adsense-chart{display:grid;gap:8px;margin:15px 0;max-height:340px;overflow:auto}
.adsense-day{display:grid;grid-template-columns:48px minmax(30px,1fr) 120px;align-items:center;gap:14px;font-size:13px}.adsense-day strong{text-align:right;font-variant-numeric:tabular-nums}
.adsense-track{background:rgba(37,182,152,.1);height:12px;border-radius:5px;overflow:hidden}.adsense-track i{display:block;height:100%;background:#25b698;border-radius:5px}
@media(max-width:600px){.adsense-metrics{grid-template-columns:1fr;gap:8px}.adsense-panel .panel-heading{align-items:flex-start;gap:12px;flex-wrap:wrap}}
