:root{--brand:#0d9488;--brand-dark:#0f766e;--brand-light:#ccfbf1;--ink:#0f172a;--ink-2:#334155;--muted:#64748b;--line:#e2e8f0;--bg:#f1f5f9;--surface:#fff;--panel:#0f3f4a;--up:#059669;--down:#dc2626;--radius:12px;--shadow:0 1px 2px #0f172a0f, 0 1px 3px #0f172a1a}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:inherit;text-decoration:none}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:650}h1{font-size:1.5rem}h2{font-size:1rem}h3{font-size:.8rem}.muted{color:var(--muted);font-size:.875rem}.num{text-align:right;font-variant-numeric:tabular-nums}.layout{min-height:100vh}.layout-content{display:flex}.main-content{flex:1;min-width:0;margin-left:248px;padding:24px 28px 64px}.main-content--full{margin-left:0}.page-header{align-items:baseline;gap:12px;margin-bottom:20px;display:flex}.page-subtitle{color:var(--muted);font-size:.875rem}.topbar{z-index:20;background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:24px;height:60px;padding:0 20px;display:flex;position:sticky;top:0}.topbar-brand{align-items:center;gap:9px;width:208px;font-size:1.0625rem;font-weight:700;display:flex}.topbar-logo{background:var(--brand);color:#fff;border-radius:8px;place-items:center;width:28px;height:28px;font-size:.875rem;display:grid}.topbar-center{flex:1;align-items:center;gap:14px;display:flex}.mode-toggle{background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:2px;display:inline-flex}.mode-toggle button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:5px;padding:5px 12px;font-size:.8125rem;font-weight:600;display:inline-flex}.mode-toggle button.is-active{color:var(--brand-dark);background:var(--surface);box-shadow:0 1px 2px #0f172a14}.topbar-actions{align-items:center;gap:14px;display:flex}.topbar-link,.topbar-user{color:var(--muted);font-size:.875rem}.topbar-link:hover{color:var(--brand)}.trial-banner{color:#1e40af;background:#eff6ff;border-bottom:1px solid #bfdbfe;align-items:flex-start;gap:12px;padding:12px 24px;display:flex}.trial-banner strong{font-size:.875rem;display:block}.trial-banner p{opacity:.9;margin:2px 0 0;font-size:.8125rem}.trial-banner a{color:inherit;font-weight:600;text-decoration:underline}.trial-banner-icon{color:#fff;background:#2563eb;border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;margin-top:1px;font-size:.75rem;font-weight:700;display:grid}.trial-banner--urgent{color:#92400e;background:#fffbeb;border-bottom-color:#fde68a}.trial-banner--urgent .trial-banner-icon{background:#d97706}.trial-banner--expired{color:#991b1b;background:#fef2f2;border-bottom-color:#fecaca}.trial-banner--expired .trial-banner-icon{background:var(--down)}.notif{display:flex;position:relative}.notif-trigger{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;display:grid;position:relative}.notif-trigger:hover{background:var(--bg);border-color:var(--line);color:var(--brand)}.notif-badge{text-align:center;color:#fff;background:var(--down);border:2px solid var(--surface);border-radius:999px;min-width:17px;padding:0 4px;font-size:.625rem;font-weight:700;line-height:17px;position:absolute;top:-1px;right:-1px}.notif-panel{z-index:50;background:var(--surface);border:1px solid var(--line);border-radius:12px;width:320px;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 12px 32px #0f172a24}.notif-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:11px 14px;font-size:.875rem;display:flex}.notif-readall{font:inherit;color:var(--brand-dark);cursor:pointer;background:0 0;border:none;font-size:.75rem;font-weight:600}.notif-readall:hover{text-decoration:underline}.notif-list{max-height:340px;overflow-y:auto}.notif-empty{text-align:center;color:var(--muted);padding:26px 14px;font-size:.8125rem}.notif-item{width:100%;font:inherit;text-align:left;border:none;border-bottom:1px solid var(--line);cursor:pointer;background:0 0;gap:10px;padding:11px 14px;display:flex}.notif-item:last-child{border-bottom:none}.notif-item:hover{background:var(--bg)}.notif-item--unread{background:#f0fdfa}.notif-dot{background:var(--muted);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:6px}.notif-dot--success{background:var(--up,#16a34a)}.notif-dot--info{background:var(--brand)}.notif-dot--warning{background:#d97706}.notif-dot--error{background:var(--down)}.notif-body{flex-direction:column;gap:2px;min-width:0;display:flex}.notif-body strong{color:var(--ink);font-size:.8125rem}.notif-body span{color:var(--muted);font-size:.75rem}.notif-body time{color:var(--muted);opacity:.8;font-size:.6875rem}.user-menu{position:relative}.user-menu-trigger{font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:4px 4px 4px 10px;display:flex}.user-menu-trigger:hover{background:var(--bg);border-color:var(--line)}.user-menu-meta{flex-direction:column;align-items:flex-end;line-height:1.25;display:flex}.user-menu-name{color:var(--ink);font-size:.8125rem;font-weight:600}.user-menu-email{color:var(--muted);font-size:.75rem}.user-menu-avatar{background:var(--brand);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:.8125rem;font-weight:700;display:grid}.user-menu-panel{z-index:50;background:var(--surface);border:1px solid var(--line);border-radius:12px;width:250px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #0f172a24}.user-menu-head{border-bottom:1px solid var(--line);flex-direction:column;gap:2px;padding:10px 12px 12px;display:flex}.user-menu-head-label{color:var(--muted);font-size:.75rem}.user-menu-head strong{overflow-wrap:anywhere;font-size:.8125rem}.user-menu-plan{text-transform:capitalize;color:var(--brand-dark);background:var(--brand-light);border-radius:999px;align-self:flex-start;margin-top:4px;padding:1px 8px;font-size:.6875rem;font-weight:600}.user-menu-group{padding:6px 0}.user-menu-group+.user-menu-group{border-top:1px solid var(--line)}.user-menu-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:4px 12px;font-size:.6875rem;font-weight:600;display:block}.user-menu-group button{width:100%;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 12px;font-size:.875rem;display:block}.user-menu-group button:hover{background:var(--bg);color:var(--brand-dark)}.user-menu-danger{color:var(--down)!important}.user-menu-danger:hover{color:var(--down)!important;background:#fef2f2!important}@media (max-width:720px){.user-menu-meta{display:none}.user-menu-trigger{padding:4px}}.live-badge{background:var(--brand-light);color:var(--brand-dark);border-radius:999px;align-items:center;gap:7px;padding:5px 11px;font-size:.8125rem;font-weight:600;display:inline-flex}.live-dot{background:var(--brand);border-radius:50%;width:7px;height:7px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.range-picker{background:var(--bg);border-radius:9px;gap:2px;padding:3px;display:inline-flex}.range-btn{font:inherit;color:var(--muted);cursor:pointer;text-transform:capitalize;background:0 0;border:0;border-radius:7px;padding:6px 13px;font-size:.8125rem}.range-btn:hover{color:var(--ink)}.range-btn.active{background:var(--surface);color:var(--brand-dark);box-shadow:var(--shadow);font-weight:600}.sidebar{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;width:248px;padding:18px 12px;display:flex;position:fixed;top:60px;bottom:0;left:0;overflow-y:auto}.sidebar-site{border-bottom:1px solid var(--line);margin-bottom:12px;padding:12px 14px 16px}.sidebar-site-name{font-size:.9375rem;font-weight:650}.sidebar-site-domain{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.sidebar-nav{flex:1}.sidebar-section{margin-bottom:4px}.sidebar-link{color:var(--ink-2);border-radius:9px;align-items:center;gap:11px;margin-bottom:2px;padding:9px 14px;font-size:.875rem;display:flex}.sidebar-link:hover{background:var(--bg)}.sidebar-link.active{background:var(--brand-light);color:var(--brand-dark);font-weight:600}.sidebar-icon{text-align:center;width:18px;font-size:1rem}.sidebar-divider{background:var(--line);height:1px;margin:10px 14px}.sidebar-group{margin-bottom:2px}.sidebar-link--parent{cursor:pointer;text-align:left;background:0 0;border:none;width:100%;font-family:inherit}.sidebar-caret{color:var(--muted);margin-left:auto;font-size:.7rem;transition:transform .18s}.sidebar-caret.open{transform:rotate(180deg)}.sidebar-sublist{flex-direction:column;margin:2px 0 4px;padding-left:29px;display:flex}.sidebar-sublink{color:var(--ink-2);border-radius:8px;padding:7px 14px;font-size:.8125rem}.sidebar-sublink:hover{background:var(--bg)}.sidebar-sublink.active{background:var(--brand-light);color:var(--brand-dark);font-weight:600}.sidebar-footer{border-top:1px solid var(--line);padding:12px 14px 0}.sidebar-mode{justify-content:space-between;font-size:.75rem;display:flex}.sidebar-mode-label{color:var(--muted)}.sidebar-mode-value{color:var(--brand-dark);font-weight:600}.metric-tabs{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px;display:grid;overflow:hidden}.metric-tab{border:0;border-right:1px solid var(--line);font:inherit;text-align:left;cursor:pointer;background:0 0;flex-direction:column;gap:5px;padding:18px 20px;transition:background .15s;display:flex;position:relative}.metric-tab:last-child{border-right:0}.metric-tab:not(.is-static):hover{background:var(--bg)}.metric-tab.is-static{cursor:default}.metric-tab.is-active{background:var(--brand)}.metric-tab.is-active .metric-tab-label,.metric-tab.is-active .metric-tab-value{color:#fff}.metric-tab.is-active .metric-tab-change{color:#ffffffeb}.metric-tab-label{color:var(--muted);font-size:.8125rem}.metric-tab-value{letter-spacing:-.02em;font-size:1.625rem;font-weight:680}.metric-tab-change{font-size:.75rem;font-weight:600}.metric-tab-change.up{color:var(--up)}.metric-tab-change.down{color:var(--down)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:20px;padding:20px}.card-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.chart-title{text-transform:capitalize}.card--row{justify-content:space-between;align-items:center;gap:16px;display:flex}.card--danger{border-color:#fecaca}.card-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:20px;display:grid}.card-grid .card{margin-bottom:0}.granularity{color:var(--muted);align-items:center;gap:8px;font-size:.8125rem;display:inline-flex}.granularity select{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:7px;padding:5px 9px}.chart-wrap{position:relative}.chart{width:100%;height:auto;display:block;overflow:visible}.chart-grid{stroke:var(--line);stroke-width:1px}.chart-axis{fill:var(--muted);font-size:11px}.chart-crosshair{stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 3}.chart-line{fill:none;stroke:var(--brand);stroke-width:2.5px}.chart-dot{fill:#fff;stroke:var(--brand);stroke-width:2px}.chart-empty{height:200px;color:var(--muted);background:var(--bg);border-radius:9px;place-items:center;font-size:.875rem;display:grid}.chart-tooltip{background:var(--ink);color:#fff;white-space:nowrap;pointer-events:none;border-radius:8px;flex-direction:column;gap:3px;padding:8px 11px;font-size:.75rem;display:flex;position:absolute;transform:translate(-50%,-130%);box-shadow:0 4px 12px #0003}.chart-tooltip span{text-transform:capitalize;align-items:center;gap:6px;display:flex}.chart-tooltip i{border-radius:50%;width:8px;height:8px}.breakdown{border-collapse:collapse;width:100%;font-size:.875rem}.breakdown th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--line);padding:0 10px 8px;font-size:.6875rem;font-weight:600}.breakdown td{border-bottom:1px solid var(--bg);padding:9px 10px;position:relative}.breakdown tr:last-child td{border-bottom:0}.breakdown-bar{background:var(--brand-light);z-index:0;border-radius:5px;position:absolute;top:2px;bottom:2px;left:0}.breakdown-name{z-index:1;text-overflow:ellipsis;white-space:nowrap;max-width:260px;display:block;position:relative;overflow:hidden}.breakdown-pct{color:var(--muted);font-size:.8125rem}.breakdown-empty{padding:20px 0}.realtime-panel{background:var(--panel);color:#fff;border-radius:var(--radius);margin-bottom:20px;padding:22px}.realtime-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.realtime-panel h2{font-size:.9375rem}.realtime-panel h3{text-transform:uppercase;letter-spacing:.05em;color:#ffffffa6;margin-bottom:10px;font-size:.6875rem}.realtime-count{margin:4px 0 0;font-size:2.75rem;font-weight:700}.realtime-chart{margin:20px 0}.minibars{border-bottom:1px solid #ffffff2e;align-items:flex-end;gap:3px;height:80px;padding-top:4px;display:flex}.minibar{flex:1;align-items:flex-end;height:100%;display:flex}.minibar span{background:#5eead4;border-radius:2px 2px 0 0;width:100%;min-height:2px}.minibars-axis{color:#fff9;justify-content:space-between;margin-top:6px;font-size:.6875rem;display:flex}.realtime-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;display:grid}.realtime-panel .breakdown th{color:#fff9;border-bottom-color:#ffffff2e}.realtime-panel .breakdown td{border-bottom-color:#ffffff14}.realtime-panel .breakdown-bar{background:#5eead438}.realtime-panel .breakdown-pct,.realtime-panel .muted{color:#fff9}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:9px 17px;font-size:.875rem;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-dark)}.btn-secondary{background:var(--surface);color:var(--ink-2);border-color:var(--line)}.btn-secondary:hover{background:var(--bg)}.btn-light{color:#fff;background:#ffffff24}.btn-light:hover{background:#ffffff3d}.btn-danger{background:var(--down);color:#fff}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:.875rem}.btn-ghost:hover{color:var(--down)}.form{flex-direction:column;gap:14px;max-width:420px;display:flex}.form label{flex-direction:column;gap:6px;font-size:.875rem;font-weight:550;display:flex}.form input,.form select{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:9px;padding:10px 12px}.form input:focus,.form select:focus{outline:2px solid var(--brand-light);border-color:var(--brand)}.form-error{color:#b91c1c;background:#fef2f2;border-radius:9px;padding:10px 13px;font-size:.875rem}.form-success{background:var(--brand-light);color:var(--brand-dark);border-radius:9px;padding:10px 13px;font-size:.875rem}.code-block{background:var(--ink);color:#e2e8f0;white-space:pre-wrap;word-break:break-all;border-radius:9px;padding:14px 16px;font-size:.8125rem;overflow-x:auto}.auth-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;width:100%;max-width:400px;padding:32px;box-shadow:0 10px 30px #0f172a14}.auth-card h1{margin-bottom:6px}.auth-card .form{max-width:none}.auth-foot{color:var(--muted);text-align:center;margin-top:18px;font-size:.875rem}.auth-foot a{color:var(--brand-dark);font-weight:600}@media (max-width:900px){.sidebar{display:none}.main-content{margin-left:0;padding:18px}.topbar{gap:12px}.topbar-brand{width:auto}.topbar-user{display:none}}.daterange{position:relative}.daterange-trigger{border:1px solid var(--line);background:var(--surface);font:inherit;color:var(--ink-2);cursor:pointer;border-radius:9px;align-items:center;gap:10px;padding:7px 12px;font-size:.8125rem;font-weight:550;display:inline-flex}.daterange-trigger:hover{border-color:var(--brand);color:var(--brand-dark)}.daterange-icon{background:var(--brand);border-radius:50%;place-items:center;width:22px;height:22px;font-size:.6875rem;display:grid}.daterange-pop{z-index:60;background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:380px;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 12px 32px #0f172a29}.daterange-presets{border-right:1px solid var(--line);background:var(--bg);min-width:158px;margin:0;padding:8px;list-style:none}.daterange-presets button{width:100%;font:inherit;color:var(--ink-2);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 11px;font-size:.8125rem;display:block}.daterange-presets button:hover{background:var(--surface)}.daterange-presets button.is-active{background:var(--brand);color:#fff;font-weight:600}.daterange-custom{flex-direction:column;gap:10px;padding:14px;display:flex}.daterange-custom h4{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0;font-size:.6875rem}.daterange-custom label{color:var(--muted);flex-direction:column;gap:4px;font-size:.75rem;display:flex}.daterange-custom input{font:inherit;border:1px solid var(--line);color:var(--ink);border-radius:7px;padding:7px 9px;font-size:.8125rem}.daterange-custom input:focus{outline:2px solid var(--brand-light);border-color:var(--brand)}.daterange-custom .btn{margin-top:2px}.siteswitcher{position:relative}.siteswitcher-trigger{border:1px solid var(--line);background:var(--surface);font:inherit;cursor:pointer;border-radius:9px;align-items:center;gap:10px;max-width:280px;padding:6px 12px;display:inline-flex}.siteswitcher-trigger:hover{border-color:var(--brand)}.siteswitcher-globe{font-size:1rem}.siteswitcher-text{text-align:left;flex-direction:column;min-width:0;display:flex}.siteswitcher-text small{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.625rem}.siteswitcher-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;overflow:hidden}.siteswitcher-caret{color:var(--muted);font-size:.75rem}.siteswitcher-menu{z-index:60;background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:280px;max-height:340px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);left:0;overflow-y:auto;box-shadow:0 12px 32px #0f172a29}.siteswitcher-menu button{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;gap:2px;padding:9px 11px;display:flex}.siteswitcher-menu button:hover{background:var(--bg)}.siteswitcher-menu button.is-active{background:var(--brand-light)}.siteswitcher-menu strong{font-size:.875rem;font-weight:600}.siteswitcher-menu small{color:var(--muted);font-size:.75rem}.siteswitcher-empty{color:var(--muted);padding:12px;font-size:.8125rem}.siteswitcher-foot{border-top:1px solid var(--line);margin-top:6px;padding-top:4px}.siteswitcher-foot button{color:var(--brand-dark);font-size:.8125rem;font-weight:600}@media (max-width:900px){.siteswitcher-trigger{max-width:170px}.daterange-pop{flex-direction:column;min-width:280px;right:-60px}.daterange-presets{border-right:0;border-bottom:1px solid var(--line)}}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:20px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px}.stat-label{color:var(--muted);font-size:.8125rem}.stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:4px;font-size:1.625rem;font-weight:680}.stat-change{margin-top:2px;font-size:.75rem;font-weight:600}.stat-change.up{color:var(--up)}.stat-change.down{color:var(--down)}.plan-pill{background:var(--brand-light);color:var(--brand-dark);border-radius:999px;padding:4px 11px;font-size:.75rem;font-weight:600}.site-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-bottom:24px;display:grid}.site-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px;transition:border-color .15s,box-shadow .15s,transform .15s;display:block}.site-card:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:0 6px 18px #0d948824}.site-card-name{font-size:1rem;font-weight:650}.site-card-domain{color:var(--muted);margin-top:3px;font-size:.8125rem}.inline-form{flex-wrap:wrap;gap:10px;display:flex}.inline-form input{min-width:0;font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:9px;flex:180px;padding:9px 12px}.inline-form input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-light);outline:none}.auth-page{background:linear-gradient(160deg, var(--bg) 0%, #e2f5f2 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:16px;width:100%;max-width:400px;padding:32px;box-shadow:0 10px 34px #0f172a1a}.auth-logo{background:var(--brand);color:#fff;border-radius:12px;place-items:center;width:46px;height:46px;margin:0 auto 14px;font-size:1.25rem;font-weight:700;display:grid}.auth-sub{color:var(--muted);margin:6px 0 22px;font-size:.875rem}.auth-card form{text-align:left;flex-direction:column;gap:6px;display:flex}.auth-card label{color:var(--ink-2);font-size:.8125rem;font-weight:600}.auth-card input{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:9px;margin-bottom:8px;padding:10px 12px}.auth-card input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-light);outline:none}.auth-card .btn-primary{justify-content:center;width:100%;margin-top:6px}.auth-alt{color:var(--muted);margin:18px 0 0;font-size:.875rem}.auth-alt a{color:var(--brand-dark);font-weight:600}.auth-demo{color:var(--muted);margin:10px 0 0;font-size:.75rem}.auth-demo code{background:var(--bg);border-radius:5px;padding:1px 5px;font-size:.72rem}.account-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:20px;display:grid}.account-grid .card{margin-bottom:0}.account-grid .card h2{font-size:1.0625rem}.card-sub{color:var(--muted);margin:4px 0 18px;font-size:.875rem}.inline-form--stacked{flex-flow:column;gap:6px}.inline-form--stacked label{color:var(--ink-2);font-size:.8125rem;font-weight:600}.inline-form--stacked input{width:100%;margin-bottom:8px}.inline-form--stacked input:disabled{background:var(--bg);color:var(--muted);cursor:not-allowed}.inline-form--stacked .btn-primary{justify-content:center;width:100%;margin-top:6px}.field-hint{color:var(--muted);margin:-4px 0 6px;font-size:.75rem}.form-ok{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;margin:4px 0;padding:8px 11px;font-size:.8125rem}.pricing-page{max-width:1040px;margin:0 auto;padding:48px 24px 72px}.pricing-page h1{text-align:center;margin-bottom:32px;font-size:2rem}.pricing-plans{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.pricing-plan{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;padding:26px 24px;display:flex}.pricing-plan h2{font-size:1.125rem}.pricing-plan>p{letter-spacing:-.02em;margin:8px 0 18px;font-size:1.875rem;font-weight:700}.pricing-plan ul{flex:1;margin:0 0 22px;padding:0;list-style:none}.pricing-plan li{color:var(--ink-2);border-bottom:1px solid var(--line);padding:7px 0 7px 22px;font-size:.875rem;position:relative}.pricing-plan li:before{content:"✓";color:var(--brand);font-weight:700;position:absolute;left:0}.pricing-plan li:last-child{border-bottom:0}.pricing-plan button{font:inherit;border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;border-radius:9px;padding:11px 16px;font-weight:600;transition:background .15s}.pricing-plan button:hover{background:var(--brand-dark)}.data-table{border-collapse:collapse;width:100%;font-size:.875rem}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);padding:10px 12px}.data-table thead th{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-size:.75rem;font-weight:600}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--bg)}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.table-link{flex-direction:column;display:flex}.table-link strong{color:var(--ink)}.table-link small{color:var(--muted);font-size:.75rem}.table-link:hover strong{color:var(--brand)}.live-badge--sm{gap:4px;padding:1px 7px;font-size:.6875rem}.team-invite{grid-template-columns:2fr 1.5fr auto auto;align-items:center;gap:10px;display:grid}.team-invite input,.team-invite select{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:9px;padding:9px 11px}.team-invite input:focus,.team-invite select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-light);outline:none}.data-table select{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:7px;padding:5px 8px;font-size:.8125rem}.status-pill{text-transform:capitalize;border-radius:999px;padding:2px 9px;font-size:.6875rem;font-weight:600;display:inline-block}.status-pill--invited{color:#92400e;background:#fef3c7}.status-pill--active,.status-pill--completed{color:#065f46;background:#d1fae5}.status-pill--pending,.status-pill--processing{color:#92400e;background:#fef3c7}.status-pill--failed,.status-pill--revoked{color:#991b1b;background:#fee2e2}@media (max-width:640px){.team-invite{grid-template-columns:1fr}}.api-prefix{color:var(--ink-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem}.api-secret{border:1px dashed var(--brand);border-radius:var(--radius);background:var(--brand-light);margin-top:14px;padding:14px}.api-secret-row{align-items:center;gap:10px;margin-top:6px;display:flex}.api-secret-row code{background:var(--surface);border:1px solid var(--line);white-space:nowrap;border-radius:8px;flex:1;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem;overflow-x:auto}.import-form{flex-direction:column;gap:16px;margin-top:12px;display:flex}.import-form .field{flex-direction:column;gap:6px;display:flex}.import-form .field>span{color:var(--ink-2);font-size:.8125rem;font-weight:600}.import-form textarea,.import-form select,.import-form input[type=file]{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);font:inherit;border-radius:8px;padding:9px 11px}.import-form textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.import-actions{justify-content:flex-end;gap:10px;display:flex}.form-success{color:var(--up);margin-top:10px;font-size:.875rem}.preferences .field,form.card .field{flex-direction:column;gap:6px;max-width:360px;margin:10px 0 18px;display:flex}form.card .field>span{color:var(--ink-2);font-size:.8125rem;font-weight:600}form.card .field select{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;border-radius:8px;padding:9px 11px}.toggle-row{justify-content:space-between;align-items:center;gap:16px;max-width:420px;padding:12px 0 18px;display:flex}.toggle-row span{flex-direction:column;display:flex}.toggle-row span small{color:var(--muted);font-size:.8125rem}.switch{background:var(--line);cursor:pointer;border:none;border-radius:999px;flex:none;width:44px;height:24px;transition:background .15s;position:relative}.switch--on{background:var(--brand)}.switch-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0f172a4d}.switch--on .switch-knob{transform:translate(20px)}html[data-theme=dark]{--ink:#e2e8f0;--ink-2:#cbd5e1;--muted:#94a3b8;--line:#334155;--bg:#0b1220;--surface:#111a2e;--brand-light:#0f3f4a;--shadow:0 1px 2px #0006, 0 1px 3px #00000080}html[data-theme=dark] body{background:var(--bg);color:var(--ink)}.panel-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;display:flex;overflow:hidden}.panel-card__head{background:var(--panel);color:#fff;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.panel-card__title{align-items:center;gap:8px;font-size:.9375rem;font-weight:650;display:inline-flex}.panel-card__icon{opacity:.9;display:inline-flex}.panel-card__right{opacity:.95;font-size:.8125rem;font-weight:600}.panel-card__body{flex:1;padding:14px 18px}.panel-card__viewall{text-align:center;color:var(--brand);border-top:1px solid var(--line);padding:13px;font-size:.875rem;font-weight:600;display:block}.panel-card__viewall:hover{background:var(--bg)}.dash-grid-3{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:20px;display:grid}.dash-grid-2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:20px;margin-bottom:20px;display:grid}.donut{flex-direction:column;align-items:center;gap:16px;display:flex}.donut__chart{place-items:center;display:grid}.donut__legend{flex-direction:column;gap:10px;width:100%;margin:0;padding:0;list-style:none;display:flex}.donut__row{border:1px solid var(--line);border-radius:999px;align-items:center;gap:12px;padding:10px 14px;display:flex}.donut__icon{border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:.95rem;display:grid}.donut__label{font-size:.9rem;font-weight:600}.donut__value{margin-left:auto;font-weight:650}.donut__value em{color:var(--muted);font-style:normal;font-weight:500}.breakdown-empty-state{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:40px 0;display:flex}.breakdown-empty-icon{opacity:.5;filter:grayscale();font-size:2rem}.breakdown-empty-state p{margin:0;font-size:.9rem}.dash-map-row{grid-template-columns:1.6fr 1fr;gap:20px;margin-bottom:20px;display:grid}@media (max-width:900px){.dash-map-row{grid-template-columns:1fr}}.worldmap-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;position:relative;overflow:hidden}.worldmap-card__badge{z-index:2;color:#fff;background:var(--panel);border-radius:999px;padding:5px 12px;font-size:.75rem;font-weight:600;position:absolute;top:14px;left:14px}.worldmap{place-items:center;width:100%;height:100%;min-height:240px;display:grid;position:relative}.worldmap__svg{width:100%;height:auto;display:block}.worldmap__ocean{fill:#e8f2fb}.worldmap__land{fill:#cfe2f3;stroke:#bcd6ee;stroke-width:1px}.worldmap__dot{fill:var(--brand)}.worldmap__pulse{fill:var(--brand);opacity:.25;transform-origin:50%;animation:2.2s ease-out infinite worldmap-pulse}@keyframes worldmap-pulse{0%{opacity:.35}70%{opacity:0}to{opacity:0}}.worldmap__empty{color:var(--muted);font-size:.8125rem;position:absolute;bottom:14px}html[data-theme=dark] .worldmap__ocean{fill:#0e1b2e}html[data-theme=dark] .worldmap__land{fill:#1e3350;stroke:#27425f}.rt-pulse{vertical-align:middle;background:#22c55e;border-radius:50%;width:10px;height:10px;margin-right:8px;animation:1.6s infinite rt-pulse-ring;display:inline-block;box-shadow:0 0 #22c55e99}@keyframes rt-pulse-ring{0%{box-shadow:0 0 #22c55e8c}70%{box-shadow:0 0 0 9px #22c55e00}to{box-shadow:0 0 #22c55e00}}.rt-window{color:var(--muted,#64748b);align-items:center;gap:8px;font-size:.8125rem;display:inline-flex}.rt-window select{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:7px 10px;font-size:.8125rem}.rt-tabs{flex-wrap:wrap;gap:8px;margin:18px 0 20px;display:flex}.rt-tab{border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:9px 16px;font-size:.875rem;font-weight:550;transition:all .15s;display:inline-flex}.rt-tab:hover{border-color:var(--brand)}.rt-tab.active{background:var(--brand);border-color:var(--brand);color:#fff}.rt-overview-top{grid-template-columns:minmax(220px,1fr) 1.6fr 1.6fr;gap:16px;margin-bottom:16px;display:grid}@media (max-width:1100px){.rt-overview-top{grid-template-columns:1fr}}.rt-active-card{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;justify-content:center;align-items:center;padding:24px 16px;display:flex}.rt-active-label{color:var(--muted,#64748b);margin:0 0 4px;font-size:.9375rem}.rt-active-number{color:var(--ink);margin:6px 0;font-size:3.25rem;font-weight:700;line-height:1}.rt-active-sub{color:var(--muted,#64748b);margin:0 0 14px;font-size:.875rem}.rt-active-pulsebar{background:var(--line);border-radius:999px;width:80%;height:6px;overflow:hidden}.rt-active-pulsebar span{background:linear-gradient(90deg,#22c55e,#0ea5e9);border-radius:999px;height:100%;transition:width .4s;display:block}.rt-chart-card{padding:16px 18px}.rt-chart-card .panel-card__body{padding-top:10px}.rt-chart-title{margin:0 0 8px;font-size:.9375rem}.rt-chart-card--dark{padding:0}.rt-chart-card--dark .rt-chart-title{color:#fff}.live-chart{width:100%;height:auto;display:block}.rt-single{max-width:760px}.rt-dim-pills{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.rt-dim-pill{border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:8px 16px;font-size:.8125rem;font-weight:550;transition:all .15s;display:inline-flex}.rt-dim-pill:hover{border-color:var(--brand)}.rt-dim-pill.active{border-color:var(--brand);color:var(--brand);font-weight:650}.rt-dim-dot{background:var(--brand);border-radius:50%;width:9px;height:9px}.rt-overview-main{grid-template-columns:1.9fr 1fr;align-items:start;gap:16px;display:grid}@media (max-width:1000px){.rt-overview-main{grid-template-columns:1fr}}.rt-overview-rail{flex-direction:column;gap:16px;display:flex}.crumb-muted{color:var(--muted);font-weight:500}.crumb-link{color:var(--brand-dark)}.aud-hero-row{grid-template-columns:1.1fr 2fr;gap:16px;margin-bottom:18px;display:grid}@media (max-width:900px){.aud-hero-row{grid-template-columns:1fr}}.aud-hero{border-radius:var(--radius);color:#fff;min-height:220px;box-shadow:var(--shadow);background:linear-gradient(135deg,#0f3f4a 0%,#166d7e 100%);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.aud-hero-label{opacity:.95;font-size:1.5rem;font-weight:600}.aud-hero-value{font-size:2.5rem;font-weight:700}.aud-kpi-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:680px){.aud-kpi-grid{grid-template-columns:repeat(2,1fr)}}.aud-kpi{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:20px 12px;display:flex}.aud-kpi-label{color:var(--muted);font-size:.875rem}.aud-kpi-value{font-variant-numeric:tabular-nums;font-size:1.375rem;font-weight:680}.aud-overview-main{grid-template-columns:1fr 1.4fr;align-items:start;gap:16px;display:grid}@media (max-width:900px){.aud-overview-main{grid-template-columns:1fr}}.aud-selector{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.aud-selector-group-title{color:#fff;background:var(--panel);padding:12px 16px;font-size:.875rem;font-weight:650}.aud-selector-item{width:100%;font:inherit;text-align:left;color:var(--ink);background:var(--surface);border:none;border-bottom:1px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;padding:13px 16px;font-size:.9rem;display:flex}.aud-selector-item:hover{background:var(--bg)}.aud-selector-item.active{background:var(--brand-light);color:var(--brand-dark);font-weight:600}.aud-metric-pills{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.aud-metric-pill{border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:7px 16px;font-size:.8125rem;font-weight:550;display:inline-flex}.aud-metric-pill:hover{border-color:var(--brand)}.aud-metric-pill.active{background:var(--panel);border-color:var(--panel);color:#fff}.aud-report-table .aud-report-total td{border-top:2px solid var(--line);background:var(--bg)}.aud-report-tabbar{border-bottom:1px solid var(--line)}.aud-report-tab{color:var(--brand-dark);border-bottom:3px solid var(--brand);padding:10px 4px;font-size:.9rem;font-weight:600;display:inline-block}.aud-report{background:var(--surface);border:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow);overflow:hidden}.aud-report-head{background:var(--panel);color:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.aud-report-dim{font-size:1rem;font-weight:600}.aud-report-actions{gap:8px;display:flex}.aud-report-btn{font:inherit;color:#fff;cursor:pointer;background:#ffffff24;border:1px solid #ffffff38;border-radius:8px;padding:8px 14px;font-size:.8125rem;font-weight:600}.aud-report-btn:hover{background:#ffffff3d}.aud-report-toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.aud-report-toolbar-left,.aud-report-toolbar-right{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.aud-report-pill{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:8px;padding:9px 14px;font-size:.8125rem;font-weight:550}.aud-report-pill:hover{border-color:var(--brand)}.aud-report-pill--outline{color:var(--brand-dark);border-color:var(--brand)}.aud-report-search{border:1px solid var(--line);border-radius:8px;align-items:center;display:flex;overflow:hidden}.aud-report-search input{font:inherit;background:var(--surface);color:var(--ink);border:none;outline:none;padding:8px 12px;font-size:.8125rem}.aud-report-search button{background:var(--brand);color:#fff;cursor:pointer;border:none;padding:8px 12px}.aud-report-active{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:16px;padding:12px 20px;display:flex}.aud-report-active-label{color:var(--muted);white-space:nowrap;font-size:.8125rem;font-weight:600}.aud-report-chips{flex-wrap:wrap;gap:8px;display:flex}.aud-report-chip{color:var(--ink-2);background:var(--bg);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:.8125rem;display:inline-flex}.aud-report-chip b{color:var(--muted);cursor:pointer}.aud-report-tablewrap{overflow-x:auto}.aud-report-grid{border-collapse:collapse;width:100%;font-size:.875rem}.aud-report-grid thead th{text-align:left;color:#fff;background:var(--panel);white-space:nowrap;padding:14px 16px;font-size:.8125rem;font-weight:650}.aud-report-grid th.num,.aud-report-grid td.num{text-align:right;font-variant-numeric:tabular-nums}.aud-report-grid td{border-bottom:1px solid var(--line);padding:14px 16px}.aud-report-summary td{color:var(--ink);background:var(--surface);font-weight:650}.aud-report-grid--body tr:hover{background:var(--bg)}.aud-report-empty{text-align:center;color:var(--muted);padding:56px 0;font-size:.9rem}.aud-report-foot{flex-direction:column;align-items:center;gap:14px;padding:18px 20px 24px;display:flex}.aud-report-page{color:var(--brand-dark);border-bottom:2px solid var(--brand);padding:2px 8px;font-weight:600}.aud-report-perpage{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);align-items:center;gap:10px;font-size:.75rem;display:flex}.aud-report-perpage select{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:6px 10px}
.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}.layout{min-height:100vh}.layout-shell{flex-direction:column;min-width:0;min-height:100vh;display:flex}.layout--side .layout-shell{margin-left:248px}.layout .main-content{flex:1;margin-left:0;padding:20px 28px 64px}.layout .main-content--full{width:100%;max-width:1240px;margin:0 auto}.layout .sidebar{z-index:40;background:var(--surface);border-right:1px solid var(--line);width:248px;padding:0;top:0;bottom:0}.sidebar-head{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;height:64px;padding:0 18px;display:flex}.sidebar-brand{letter-spacing:-.01em;align-items:center;gap:10px;font-size:1.125rem;font-weight:700;display:inline-flex}.sidebar-close,.topbar-menu{width:38px;height:38px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;display:none}.sidebar-close:hover,.topbar-menu:hover{background:var(--bg)}.layout .sidebar-nav{flex:1;padding:14px 12px;overflow-y:auto}.layout .sidebar-section{margin-bottom:2px}.layout .sidebar-link{width:100%;font:inherit;color:var(--ink-2);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;gap:12px;margin-bottom:2px;padding:10px 14px;font-size:.9375rem;font-weight:500}.layout .sidebar-link:hover{background:var(--bg)}.layout .sidebar-link.active{background:var(--brand-light);color:var(--brand-dark);font-weight:650}.sidebar-icon{flex:none;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.sidebar-icon svg{width:20px;height:20px}.layout .sidebar-link--parent .sidebar-caret{color:var(--muted);margin-left:auto;transition:transform .15s;display:inline-flex}.layout .sidebar-link--parent .sidebar-caret.open{transform:rotate(180deg)}.layout .sidebar-sublist{border-left:1px solid var(--line);margin:2px 0 6px 22px;padding-left:12px}.layout .sidebar-sublink{color:var(--muted);border-radius:8px;padding:7px 12px;font-size:.875rem;display:block}.layout .sidebar-sublink:hover{background:var(--bg);color:var(--ink)}.layout .sidebar-sublink.active{color:var(--brand-dark);background:var(--brand-light);font-weight:650}.layout .sidebar-divider{margin:10px}.sidebar-footer{border-top:1px solid var(--line);flex:none;padding:14px 16px 18px}.sidebar-upgrade{background:var(--panel);color:#fff;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px 14px;font-size:.875rem;font-weight:600;display:flex}.sidebar-upgrade:hover{filter:brightness(1.12)}.sidebar-scrim{display:none}.layout .topbar{z-index:30;gap:16px;height:64px;padding:0 24px}.layout .topbar-center{gap:12px}.layout .topbar-actions{align-items:center;gap:12px;display:flex}.pagebar{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 28px;display:flex}.pagebar-crumbs{align-items:center;gap:12px;min-width:0;display:flex}.pagebar-home{color:var(--brand-dark);display:inline-flex}.pagebar-current{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.pagebar-range{flex:none}.alert{border-bottom:1px solid #0000;align-items:flex-start;gap:14px;padding:14px 28px;display:flex}.alert-icon{margin-top:1px;display:inline-flex}.alert strong{font-size:.9375rem;display:block}.alert p{margin:3px 0 0;font-size:.9375rem}.alert--warn{color:#854d0e;background:#fefce8;border-bottom-color:#fde68a}.alert-link{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.dash-top{grid-template-columns:minmax(0,1fr) 360px;align-items:stretch;gap:20px;margin-bottom:20px;display:grid}.dash-left{flex-direction:column;gap:20px;min-width:0;display:flex}.dash-left .metric-tabs{border-radius:14px;margin-bottom:0}.layout .metric-tab{gap:4px;padding:16px 18px}.layout .metric-tab-label{font-weight:500}.layout .metric-tab-value{font-size:1.5rem}.chart-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;flex:1;padding:18px 20px 12px}.chart-card-head{align-items:center;gap:14px;margin-bottom:8px;display:flex}.chart-card-head h2{font-size:1.125rem}.granularity{border:1px solid var(--line);color:var(--ink-2);border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:.8125rem;display:inline-flex}.granularity span{font-weight:600}.granularity select{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0}.live{background:var(--panel);color:#fff;min-width:0;box-shadow:var(--shadow);border-radius:14px;flex-direction:column;padding:22px;display:flex}.live h2{font-size:1rem;font-weight:650}.live h3{letter-spacing:0;text-transform:none;color:#fff;margin:0;font-size:.8125rem;font-weight:650}.live-count{letter-spacing:-.03em;margin:6px 0 22px;font-size:3.5rem;font-weight:700;line-height:1}.live-chart{gap:8px;height:150px;margin-top:12px;display:flex}.live-axis{text-align:right;color:#ffffffa6;flex-direction:column;justify-content:space-between;min-width:20px;font-size:.7rem;display:flex}.live-bars{background:linear-gradient(#ffffff14 1px,#0000 1px) 0 0/100% 33.33%;border-bottom:1px solid #fff3;border-left:1px solid #fff3;flex:1;align-items:flex-end;gap:3px;display:flex}.live-bar{flex:1;align-items:flex-end;height:100%;display:flex}.live-bar span{background:#5eead4;border-radius:2px 2px 0 0;width:100%;display:block}.live-x{color:#ffffffa6;justify-content:space-between;margin:6px 0 0 28px;font-size:.7rem;display:flex}.live-table-head{border-bottom:1px solid #ffffff40;justify-content:space-between;margin-top:26px;padding-bottom:8px;display:flex}.live-pages{margin:0;padding:0;list-style:none}.live-pages li{border-bottom:1px solid #ffffff1a;justify-content:space-between;gap:12px;padding:9px 0;font-size:.875rem;display:flex}.live-pages li span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.live-empty{color:#ffffffa6;margin:14px 0 0;font-size:.875rem}.live-btn{color:#fff;background:#ffffff24;border-radius:999px;align-self:center;align-items:center;gap:8px;margin-top:auto;padding:11px 22px;font-size:.9375rem;font-weight:600;display:inline-flex}.live>.live-pages+.live-btn,.live>.live-empty+.live-btn{margin-top:24px}.live-btn:hover{background:#ffffff38}.live-arrow{transform:rotate(-90deg)}.dash-stack{gap:20px;display:grid}.dash-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);min-width:0;box-shadow:var(--shadow);border-radius:14px;flex-direction:column;display:flex}.panel-head{background:var(--panel);color:#fff;border-radius:13px 13px 0 0;align-items:center;gap:12px;padding:12px 16px;display:flex}.panel-switch{position:relative}.panel-pill{color:#fff;font:inherit;cursor:pointer;background:#ffffff21;border:0;border-radius:10px;align-items:center;gap:9px;padding:9px 14px;font-size:.9375rem;font-weight:600;display:inline-flex}.panel-pill:disabled{cursor:default}.panel-pill:not(:disabled):hover{background:#fff3}.panel-pill:focus-visible{outline-offset:2px;outline:2px solid #5eead4}.panel-pill .is-flipped{transform:rotate(180deg)}.panel-value-label{text-align:center;flex:1;padding-right:8px;font-size:.9375rem;font-weight:600}.panel-menu{z-index:25;background:var(--surface);min-width:220px;color:var(--ink);border:1px solid var(--line);border-radius:12px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 14px 34px #0f172a33}.panel-menu button{width:100%;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:9px 12px;font-size:.9rem;display:block}.panel-menu button:hover{background:var(--bg)}.panel-menu button.is-active{background:var(--brand-light);color:var(--brand-dark);font-weight:650}.panel-body{flex:1;min-height:160px;padding:6px 16px 10px}.panel .breakdown{margin:0}.panel-viewall{text-align:center;border-top:1px solid var(--line);color:var(--brand-dark);padding:13px;font-size:.875rem;font-weight:600;display:block}.panel-viewall:hover{background:var(--bg);border-radius:0 0 13px 13px}.panel--light .panel-head--light{color:var(--ink);background:0 0;padding:16px 16px 0}.panel-pill--outline{border:1px solid var(--line);color:var(--ink-2);cursor:default;background:0 0}.panel-loading span{background:linear-gradient(90deg, var(--line), var(--bg), var(--line));background-size:200% 100%;border-radius:6px;height:14px;margin:18px 0;animation:1.2s linear infinite shimmer;display:block}.panel-loading span:nth-child(2){width:80%}.panel-loading span:nth-child(3){width:60%}@keyframes shimmer{to{background-position:-200% 0}}.panel .breakdown-empty-state{text-align:center;place-items:center;gap:12px;padding:44px 0 30px;display:grid}.panel .breakdown-empty-icon{color:#a9b4c0;font-size:0;display:inline-flex}.panel .breakdown-empty-state p{color:#94a3b8;margin:0;font-size:1.125rem;font-weight:650}.dash-row .worldmap-card{border:1px solid var(--line);background:#e6f4f1;border-radius:14px;align-items:center;min-height:380px;margin:0;padding:56px 12px 16px;display:flex;position:relative;overflow:hidden}.worldmap-card__badge{background:var(--panel);color:#fff;border-radius:10px;padding:8px 14px;font-size:.8125rem;font-weight:600;position:absolute;top:14px;left:14px}.worldmap{width:100%}.worldmap__svg{width:100%;height:auto;display:block}.worldmap__land{fill:#fff;stroke:#c3dedb;stroke-width:.6px}.worldmap__dot{fill:var(--brand);stroke:#fff;stroke-width:1.5px}.worldmap__pulse{fill:#0d948838}.worldmap__empty{text-align:center;color:var(--muted);margin:8px 0 0;font-size:.875rem}.modal-scrim{z-index:100;background:#0f172a8c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:16px;width:100%;max-width:580px;max-height:92vh;padding:28px;position:relative;overflow-y:auto;box-shadow:0 30px 80px #0f172a59}.modal h2{text-align:center;font-size:1.0625rem}.modal-close{color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px;display:inline-flex;position:absolute;top:14px;right:14px}.modal-close:hover{background:var(--bg)}.modal-badge{background:var(--brand-light);width:70px;height:70px;color:var(--brand-dark);border-radius:50%;place-items:center;margin:22px auto 18px;display:grid}.modal-badge.is-ok{color:#047857;background:#d1fae5}.modal-text{color:var(--ink-2);margin:0 0 14px;font-size:.9375rem;line-height:1.55}.modal-text code{background:var(--bg);border-radius:5px;padding:1px 5px;font-size:.85em}.modal-sub{margin:18px 0 6px;font-size:1rem}.codebox{border:1px solid var(--line);border-radius:12px;overflow:hidden}.codebox-head{background:var(--bg);border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding:8px 8px 8px 14px;font-size:.8125rem;display:flex}.codebox-copy{border:1px solid var(--line);background:var(--surface);height:34px;color:var(--ink);font:inherit;cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:.8125rem;font-weight:600;display:inline-flex}.codebox-copy:hover{background:var(--bg)}.codebox pre{white-space:pre-wrap;word-break:break-all;color:var(--ink);margin:0;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.65;overflow-x:auto}html[data-theme=dark] .alert--warn{color:#fde68a;background:#3a2f0b;border-bottom-color:#5b4a12}html[data-theme=dark] .dash-row .worldmap-card{background:#12303a}html[data-theme=dark] .worldmap__land{fill:#1d4452;stroke:#2a5a6b}html[data-theme=dark] .panel .breakdown-empty-state p{color:#64748b}@media (max-width:1180px){.dash-top{grid-template-columns:minmax(0,1fr)}.live{min-height:0}}@media (max-width:900px){.layout--side .layout-shell{margin-left:0}.layout .sidebar{box-shadow:none;transition:transform .2s;display:flex;transform:translate(-100%)}.layout .sidebar.is-open{transform:none;box-shadow:0 0 40px #0f172a59}.sidebar-close,.topbar-menu{display:inline-flex}.sidebar-scrim{z-index:35;background:#0f172a73;display:block;position:fixed;inset:0}.layout .topbar{gap:8px;padding:0 14px}.layout .topbar-center{gap:8px;min-width:0}.pagebar{padding:10px 16px}.alert{padding:12px 16px}.layout .main-content{padding:16px 14px 56px}.dash-row{grid-template-columns:minmax(0,1fr)}}@media (max-width:700px){.layout .topbar .mode-toggle,.layout .topbar .live-badge{display:none}.metric-tabs{grid-template-columns:repeat(2,1fr)}.live-count{font-size:3rem}.panel-value-label{display:none}}.panel .breakdown thead{display:none}.panel .breakdown tbody tr:first-child td{border-top:0}.layout .metric-tab:disabled{color:var(--ink);opacity:1}.layout .metric-tab.is-static .metric-tab-label{color:var(--muted)}.layout .metric-tab.is-static .metric-tab-value{color:var(--ink)}.dash-row .worldmap-card{min-height:340px}.layout .metric-tab{color:var(--ink)}.layout .metric-tab.is-active,.layout .metric-tab.is-active .metric-tab-label,.layout .metric-tab.is-active .metric-tab-value{color:#fff}.chart-card{flex-direction:column;display:flex}.chart-card .chart-wrap{flex-direction:column;flex:1;justify-content:center;display:flex}.skel{background:linear-gradient(90deg, var(--line) 0%, var(--surface) 50%, var(--line) 100%);border:1px solid var(--line);background-size:200% 100%;border-radius:14px;animation:1.3s linear infinite shimmer}.skel-kpis{height:96px}.skel-chart{flex:1;min-height:360px}.skel-live{min-height:470px}@media (prefers-reduced-motion:reduce){.skel{animation:none}}.ai-top{grid-template-columns:340px minmax(0,1fr);align-items:stretch;gap:20px;margin-bottom:20px;display:grid}.ai-top>.skel-live{min-height:470px}.ai-side{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;min-width:0;padding:24px 22px 18px;display:flex}.ai-side h2{justify-content:center;align-items:center;gap:10px;font-size:1.375rem;display:flex}.ai-side-count{text-align:center;color:var(--brand-dark);letter-spacing:-.02em;margin:22px 0 4px;font-size:2rem;font-weight:700}.ai-side-share{text-align:center;color:var(--muted);margin:0;font-size:.9375rem}.ai-side-share b{color:var(--ink)}.ai-side-empty{color:#a9b4c0;place-items:center;gap:10px;padding:34px 0 26px;display:grid}.ai-side-empty p{color:#94a3b8;text-align:center;margin:0;font-size:1.0625rem;font-weight:650}.ai-side-bar{background:var(--line);border-radius:99px;height:10px;margin:26px 0 22px;overflow:hidden}.ai-side-bar span{background:var(--brand);border-radius:99px;min-width:4px;height:100%;display:block}.ai-side-list{margin:auto 0 0;padding:0;list-style:none}.ai-side-list li{border-top:1px solid var(--line);align-items:center;gap:10px;padding:11px 0;display:flex}.ai-side-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.ai-side-list strong{color:var(--muted);font-weight:650}.ai-side-list li.has-data strong{color:var(--brand-dark)}.ai-badge{border-radius:50%;flex:none;place-items:center;display:inline-grid}.ai-table{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;margin-bottom:14px;overflow:hidden}.ai-table-head,.ai-table-row{grid-template-columns:minmax(0,2.2fr) repeat(3,minmax(0,1fr));align-items:center;gap:12px;padding:0 22px;display:grid}.ai-table-head{background:var(--panel);color:#fff;height:56px;font-size:.9375rem;font-weight:650}.ai-table-row{border-top:1px solid var(--line);font-variant-numeric:tabular-nums;min-height:62px;font-weight:600}.ai-table-row:first-of-type{border-top:0}.ai-table-row:hover{background:var(--bg)}.ai-table-name{align-items:center;gap:12px;min-width:0;font-size:1rem;display:flex}.ai-note{border-left:3px solid var(--brand);background:var(--brand-light);color:var(--ink-2);border-radius:0 10px 10px 0;margin:0 0 20px;padding:12px 16px;font-size:.875rem;line-height:1.55}.ai-note code{background:#0f172a12;border-radius:5px;padding:1px 5px;font-size:.85em}.ai-extra{margin-bottom:0}.panel-pill--static{cursor:default}@media (max-width:1180px){.ai-top{grid-template-columns:minmax(0,1fr)}}@media (max-width:700px){.ai-table-head,.ai-table-row{grid-template-columns:minmax(0,1.8fr) repeat(3,minmax(0,.9fr));gap:8px;padding:0 14px;font-size:.8125rem}.ai-table-name{gap:8px;font-size:.875rem}.ai-table-name .ai-badge{width:26px!important;height:26px!important}}.net-table{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;margin-top:20px;overflow:hidden}.net-head,.net-row{grid-template-columns:minmax(0,2.4fr) repeat(5,minmax(0,1fr)) 120px;align-items:center;gap:12px;padding:0 22px;display:grid}.net-head{background:var(--panel);color:#fff;height:56px;font-size:.9375rem;font-weight:650}.net-row{border-top:1px solid var(--line);min-height:68px;color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.net-row:first-of-type{border-top:0}.net-row:hover{background:var(--bg)}.net-site{align-items:center;gap:12px;min-width:0;display:flex}.net-avatar{color:#fff;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;font-weight:800;display:inline-grid}.net-site-text{min-width:0;display:grid}.net-site-text strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.net-site-text small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-weight:500;overflow:hidden}.net-trend{color:var(--brand)}.net-spark{display:block}.net-spark--empty{color:var(--muted)}.net-empty{text-align:center;background:var(--surface);border:1px solid var(--line);max-width:520px;box-shadow:var(--shadow);color:var(--muted);border-radius:16px;justify-items:center;gap:10px;margin:40px auto;padding:44px 28px;display:grid}.net-empty h2{color:var(--ink)}.net-empty p{margin:0 0 8px}@media (max-width:900px){.net-head,.net-row{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));padding:0 14px}.net-head span:nth-child(n+4),.net-row>span:nth-child(n+4){display:none}}.admin-card{background:var(--surface);border:1px solid var(--line);max-width:640px;box-shadow:var(--shadow);border-radius:16px;margin:24px auto;padding:30px}.admin-card h2{margin-bottom:10px}.admin-card p{color:var(--ink-2);line-height:1.6}.admin-facts{grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0;display:grid}.admin-facts div{border:1px solid var(--line);background:var(--bg);border-radius:12px;padding:14px}.admin-facts dt{color:var(--muted);font-size:.8125rem}.admin-facts dd{margin:4px 0 0;font-size:1.125rem;font-weight:700}.admin-btn{background:var(--brand);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:10px;align-items:center;gap:10px;padding:13px 22px;font-weight:650;display:inline-flex}.admin-btn:hover:not(:disabled){background:var(--brand-dark)}.admin-btn:disabled{opacity:.6;cursor:wait}.admin-ok{font-weight:600;color:#047857!important}.admin-warn{background:#fffbeb;border-left:3px solid #d97706;border-radius:0 10px 10px 0;margin-top:22px;padding:12px 14px;font-size:.9375rem;color:#78450a!important}@media (max-width:600px){.admin-facts{grid-template-columns:1fr}}.sites-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.sites-top h1{margin:0 0 4px;font-size:1.75rem}.sites-top p{color:var(--muted);margin:0}.sites-top .admin-btn{text-decoration:none}.admin-btn b,.admin-btn span[aria-hidden]{font-size:1.25rem;line-height:1}.usage-strip{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;grid-template-columns:.8fr 1fr 1.4fr;margin-bottom:26px;display:grid;overflow:hidden}.usage-cell{align-content:center;gap:6px;padding:18px 24px;display:grid}.usage-cell+.usage-cell{border-left:1px solid var(--line)}.usage-cell small{color:var(--muted);font-size:.8125rem;font-weight:600}.usage-cell strong{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.5rem}.usage-cell strong em{color:var(--muted);font-size:.9375rem;font-style:normal;font-weight:500}.usage-cell a{color:var(--brand-dark);font-size:.875rem;font-weight:650}.usage-bar{background:var(--line);border-radius:99px;height:8px;margin-top:4px;overflow:hidden}.usage-bar span{background:var(--brand);border-radius:99px;height:100%;display:block}.usage-bar.is-high span{background:#d97706}.site-tiles{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:20px;display:grid}.site-tile{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink);border-radius:16px;flex-direction:column;gap:14px;padding:22px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.site-tile:hover{border-color:var(--brand);transform:translateY(-3px);box-shadow:0 18px 36px #0f3f4a24}.site-tile-top{align-items:center;gap:14px;min-width:0;display:flex}.net-avatar--lg{border-radius:13px;width:46px;height:46px;font-size:1.2rem}.site-tile-text{flex:1;min-width:0;display:grid}.site-tile-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.125rem;overflow:hidden}.site-tile-text small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);overflow:hidden}.site-tile-chart{color:var(--brand);min-height:52px}.spark-fluid{width:100%;height:52px;display:block}.spark-fluid--empty{background:var(--bg);color:var(--muted);border-radius:10px;place-items:center;font-size:.8125rem;display:grid}.site-tile-stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:10px;padding-top:14px;display:grid}.site-tile-stats small{color:var(--muted);font-size:.75rem;display:block}.site-tile-stats b{font-variant-numeric:tabular-nums;font-size:1.1875rem}.site-add{min-height:230px;color:var(--ink);font:inherit;cursor:pointer;text-align:center;background:0 0;border:2px dashed #b9d8d4;border-radius:16px;place-content:center;justify-items:center;gap:6px;padding:24px;transition:background .15s,border-color .15s;display:grid}.site-add:hover:not(:disabled){background:color-mix(in srgb, var(--brand) 7%, transparent);border-color:var(--brand)}.site-add-icon{background:var(--brand-light);width:52px;height:52px;color:var(--brand-dark);border-radius:50%;place-items:center;margin-bottom:6px;display:grid}.site-add-icon b{font-size:1.9rem;font-weight:400;line-height:1}.site-add strong{font-size:1.0625rem}.site-add small{color:var(--muted)}.site-add.is-locked{cursor:default;background:#f59e0b0f;border-color:#e0b25a}.site-add.is-locked .site-add-icon{color:#92400e;background:#fef3c7}.site-add-link{color:var(--brand-dark);margin-top:6px;font-weight:650;text-decoration:underline}.add-site-done{color:#065f46;background:#ecfdf5;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;padding:12px 16px;display:flex}.add-site-done a{margin-left:auto;font-weight:650;text-decoration:underline}.modal--form{max-width:520px}.modal--form h2{text-align:left;margin:0 0 8px;font-size:1.25rem}.modal--form .modal-text{text-align:left;margin-bottom:18px}.add-site-form{gap:4px;display:grid}.add-site-form .field label{margin-bottom:6px;font-size:.875rem;font-weight:650;display:block}.add-site-form .field input{border:1px solid var(--line);background:var(--surface);width:100%;height:46px;color:var(--ink);font:inherit;border-radius:10px;padding:0 14px}.add-site-form .field input:focus{outline:3px solid color-mix(in srgb, var(--brand) 35%, transparent);border-color:var(--brand)}.add-site-form .field input[aria-invalid=true]{border-color:#dc2626}.field-hint,.field-error{min-height:20px;margin:6px 0 8px;font-size:.8125rem;line-height:1.4}.field-hint{color:var(--muted)}.field-error{color:#b42318;font-weight:600}.modal-actions{justify-content:flex-end;gap:12px;margin-top:10px;display:flex}.ghost-btn{border:1px solid var(--line);height:46px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:10px;padding:0 22px;font-weight:600}.ghost-btn:hover{background:var(--bg)}.modal-actions .admin-btn{height:46px}html[data-theme=dark] .add-site-done{color:#a7f3d0;background:#0b3b2d}html[data-theme=dark] .site-add{border-color:#2f5f66}@media (max-width:800px){.usage-strip{grid-template-columns:1fr}.usage-cell+.usage-cell{border-left:0;border-top:1px solid var(--line)}.site-tiles{grid-template-columns:1fr}.sites-top .admin-btn{justify-content:center;width:100%}}.bill2-banner{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;flex-wrap:wrap;align-items:center;gap:22px;margin-bottom:22px;padding:22px 26px;display:flex}.bill2-banner h2{margin:0 0 4px;font-size:1.1875rem}.bill2-banner p{max-width:620px;color:var(--ink-2);margin:0;line-height:1.55}.bill2-banner.is-wait{background:linear-gradient(135deg,#ecfdf9,#f4fbfa);border-color:#b7e4de}.bill2-banner.is-done{background:linear-gradient(135deg,#dcfce7,#ecfdf5);border-color:#86efac}.bill2-banner.is-late{color:#78450a;background:#fffbeb;border-color:#fcd34d}.bill2-banner.is-late p,.bill2-banner.is-late a{color:#78450a}.bill2-bigcheck{color:#fff;background:#16a34a;border-radius:50%;flex:none;place-items:center;width:56px;height:56px;display:grid;box-shadow:0 8px 20px #16a34a59}.bill2-banner-btn{color:#fff;background:#166534;border-radius:10px;margin-left:auto;padding:12px 22px;font-weight:650;text-decoration:none}.bill2-banner-btn:hover{background:#14532d}.bill2-steps{gap:10px;min-width:270px;margin:0 0 0 auto;padding:0;list-style:none;display:grid}.bill2-steps li{color:var(--muted);align-items:center;gap:12px;font-size:.9375rem;display:flex}.bill2-steps li.is-done,.bill2-steps li.is-now{color:var(--ink);font-weight:600}.bill2-step-dot{background:var(--line);width:26px;height:26px;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:700;display:inline-grid}.bill2-steps li.is-done .bill2-step-dot{color:#fff;background:#16a34a}.bill2-steps li.is-now .bill2-step-dot{background:var(--brand-light)}.bill2-spin{border:2px solid var(--brand);border-top-color:#0000;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite bill2spin}@keyframes bill2spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.bill2-spin{border-top-color:var(--brand);animation:none}}.bill2-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch;gap:20px;display:grid}.bill2-hero{color:#fff;background:radial-gradient(520px 260px at 100% 0, #2dd4bf47, transparent 70%), linear-gradient(145deg, var(--panel), #0b2f38);border-radius:18px;flex-direction:column;padding:30px;display:flex;box-shadow:0 20px 44px #0f3f4a47}.bill2-hero.is-paid{background:radial-gradient(520px 260px at 100% 0, #5eead459, transparent 70%), linear-gradient(145deg, #0f766e, var(--panel))}.bill2-hero-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.bill2-hero-top small{letter-spacing:.06em;text-transform:uppercase;color:#ffffffb3;font-size:.8125rem;font-weight:650}.bill2-pill{border-radius:999px;padding:5px 14px;font-size:.8125rem;font-weight:700}.bill2-pill.is-ok{color:#14532d;background:#bbf7d0}.bill2-pill.is-warn{color:#78350f;background:#fde68a}.bill2-pill.is-bad{color:#7f1d1d;background:#fecaca}.bill2-pill.is-muted{color:#fff;background:#ffffff2e}.bill2-hero-name{letter-spacing:-.03em;color:#fff;margin:10px 0 4px;font-size:2.75rem;line-height:1.05}.bill2-hero-price{color:#fffc;margin:0 0 20px}.bill2-hero-price b{color:#fff;font-size:1.5rem}.bill2-perks{border-top:1px solid #ffffff29;border-bottom:1px solid #ffffff29;gap:10px;margin:0 0 18px;padding:18px 0;list-style:none;display:grid}.bill2-perks li{color:#ffffffe0;align-items:center;gap:10px;display:flex}.bill2-perks svg{color:#5eead4;flex:none}.bill2-perks b{color:#fff}.bill2-hero-note{color:#ffffffd1;margin:0 0 18px;line-height:1.55}.bill2-hero-note b{color:#fff}.bill2-hero-actions{flex-wrap:wrap;gap:12px;margin-top:auto;display:flex}.bill2-btn-light{color:var(--panel);font:inherit;cursor:pointer;background:#fff;border:0;border-radius:11px;justify-content:center;align-items:center;padding:13px 22px;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex}.bill2-btn-light:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 22px #00000040}.bill2-btn-light:disabled{opacity:.7;cursor:wait}.bill2-usage{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:28px}.bill2-usage h2{margin:0 0 20px;font-size:1.1875rem}.bill2-usage-main{border-bottom:1px solid var(--line);align-items:center;gap:24px;margin-bottom:26px;padding-bottom:24px;display:flex}.bill2-ring{flex:none;width:132px;height:132px;position:relative}.bill2-ring svg{width:100%;height:100%}.bill2-ring circle{fill:none;stroke-width:12px}.bill2-ring-track{stroke:var(--line)}.bill2-ring-fill{stroke:var(--brand);stroke-linecap:round;transition:stroke-dasharray .6s}.bill2-ring-fill.is-high{stroke:#d97706}.bill2-ring-center{text-align:center;place-content:center;display:grid;position:absolute;inset:0}.bill2-ring-center b{letter-spacing:-.02em;font-size:1.75rem}.bill2-ring-center small{color:var(--muted)}.bill2-usage-text small{color:var(--muted);font-size:.8125rem;font-weight:600;display:block}.bill2-usage-text strong{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:2px 0 6px;font-size:1.75rem;display:block}.bill2-usage-text strong em{color:var(--muted);font-size:1rem;font-style:normal;font-weight:500}.bill2-usage-text p{color:var(--muted);margin:0;font-size:.875rem;line-height:1.5}.bill2-meter{margin-top:18px}.bill2-meter-row{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;font-size:.9375rem;display:flex}.bill2-meter-row span{align-items:center;gap:8px;display:inline-flex}.bill2-meter-row b{color:var(--ink);font-variant-numeric:tabular-nums}.bill2-info{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px;display:grid}.bill2-info>div{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px}.iconBox-lite{background:var(--brand-light);width:42px;height:42px;color:var(--brand-dark);border-radius:12px;place-items:center;display:inline-grid}.bill2-info h3{margin:14px 0 6px;font-size:1.0625rem}.bill2-info p{color:var(--muted);margin:0;font-size:.9375rem;line-height:1.6}.bill2-info a{color:var(--brand-dark);font-weight:600;text-decoration:underline}html[data-theme=dark] .bill2-banner.is-done{background:#0b3b2d;border-color:#166534}html[data-theme=dark] .bill2-banner.is-wait{background:#0d2f33;border-color:#1f5b5e}html[data-theme=dark] .bill2-banner.is-late{color:#fde68a;background:#3a2f0b;border-color:#8a6a1c}html[data-theme=dark] .bill2-banner.is-late p,html[data-theme=dark] .bill2-banner.is-late a{color:#fde68a}@media (max-width:1000px){.bill2-grid,.bill2-info{grid-template-columns:1fr}.bill2-steps,.bill2-banner-btn{margin-left:0}}@media (max-width:520px){.bill2-usage-main{flex-direction:column;align-items:flex-start}.bill2-hero-name{font-size:2.25rem}}.pagebar-sep{color:var(--muted);margin:0 8px}.pagebar-sub{color:var(--brand-dark);font-weight:650}.report-stack{gap:20px;display:grid}.pilltabs{flex-wrap:wrap;gap:6px;display:flex}.pilltab{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-weight:650;display:inline-flex}.pilltab:hover{background:var(--bg);color:var(--ink)}.pilltab.is-active{background:var(--panel);color:#fff}.pilltab:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.history-card{flex:none}.history-card .chart-card-head{flex-wrap:wrap}.history-metrics{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.history-metric{border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:6px 14px;font-size:.8125rem;font-weight:650}.history-metric:hover{color:var(--ink);background:var(--bg)}.history-metric.is-active{background:var(--brand);border-color:var(--brand);color:#fff}.report .panel-head{gap:14px}.report .panel-value-label{text-align:left;opacity:.85;flex:1;padding-left:4px;font-weight:500}.report-csv{color:#fff;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:9px;align-items:center;gap:6px;padding:7px 14px;font-size:.8125rem;font-weight:650;display:inline-flex}.report-csv:hover:not(:disabled){background:#ffffff24}.report-csv:disabled{opacity:.4;cursor:default}.report-tools{padding:14px 16px 6px;display:flex}.report-search{border:1px solid var(--line);background:var(--surface);width:min(360px,100%);height:40px;color:var(--muted);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex}.report-search:focus-within{border-color:var(--brand);outline:3px solid color-mix(in srgb, var(--brand) 25%, transparent)}.report-search input{min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;flex:1}.report-scroll{padding:4px 8px 6px;overflow-x:auto}.report-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.report-table th{border-bottom:1px solid var(--line);text-align:left;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);white-space:nowrap;padding:10px 12px;font-size:.75rem}.report-table th.num,.report-table td.num{text-align:right}.report-table th button{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:0}.report-table th button:hover{color:var(--ink)}.report-table td{border-bottom:1px solid var(--line);padding:10px 12px;font-size:.9375rem}.report-table tr:last-child td{border-bottom:0}.report-table tr.is-clickable{cursor:pointer}.report-table tr.is-clickable:hover td,.report-table tr.is-active td{background:color-mix(in srgb, var(--brand) 8%, transparent)}.report-table tr.is-active td:first-child{box-shadow:inset 3px 0 0 var(--brand)}.report-name{text-overflow:ellipsis;white-space:nowrap;background:linear-gradient(90deg, var(--brand-light) var(--w,0%), transparent var(--w,0%));border-radius:6px;max-width:460px;padding:6px 10px;display:block;position:relative;overflow:hidden}.report-empty{padding:36px 0 30px}.report-foot{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;font-size:.8125rem;display:flex}.report-pager{align-items:center;gap:12px;display:flex}.report-pager label{align-items:center;gap:8px;display:inline-flex}.report-pager select{border:1px solid var(--line);background:var(--surface);height:32px;color:var(--ink);font:inherit;border-radius:8px;padding:0 8px}.report-pager button{border:1px solid var(--line);background:var(--surface);width:32px;height:32px;color:var(--ink);cursor:pointer;border-radius:8px;font-size:1.1rem}.report-pager button:disabled{opacity:.4;cursor:default}.report--compact .report-table td,.report--compact .report-table th{padding-top:8px;padding-bottom:8px}.report--compact .report-name{max-width:300px}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.report-ratios{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;flex-wrap:wrap;gap:28px;padding:14px 22px;display:flex}.report-ratios div{gap:2px;display:grid}.report-ratios small{color:var(--muted);font-size:.8125rem}.report-ratios b{font-variant-numeric:tabular-nums;font-size:1.125rem}.chip{background:var(--brand-light);color:var(--brand-dark);border-radius:999px;align-items:center;gap:8px;padding:6px 8px 6px 14px;font-size:.875rem;font-weight:650;display:inline-flex}.chip button{width:22px;height:22px;color:inherit;cursor:pointer;background:#0f766e26;border:0;border-radius:50%;place-items:center;display:inline-grid}.chip-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.report-hint{color:var(--muted);margin:0;font-size:.875rem}@media (max-width:1100px){.report-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:700px){.history-metrics{margin-left:0}.report-foot{flex-direction:column;align-items:flex-start}}.rt2-title{align-items:center;gap:12px;margin:0 0 4px;font-size:1.75rem;display:flex}.rt2-top{grid-template-columns:340px minmax(0,1fr);align-items:stretch;gap:20px;display:grid}.rt2-top .report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rt2-active{justify-content:center}.rt2-meter{background:#ffffff26;border-radius:99px;height:8px;margin-top:18px;overflow:hidden}.rt2-meter span{background:#5eead4;border-radius:99px;height:100%;transition:width .4s;display:block}.panel--dark .panel-body{background:var(--panel);color:#fff;border-radius:0 0 13px 13px}@media (max-width:1180px){.rt2-top{grid-template-columns:1fr}}@media (max-width:700px){.rt2-top .report-grid{grid-template-columns:1fr}}@media print{.sidebar,.topbar,.pagebar,.sidebar-scrim,.report-actions .admin-btn,.report-csv,.report-hint,.alert{display:none!important}.layout--side .layout-shell{margin-left:0!important}.layout .main-content{max-width:none!important;padding:0!important}.report-grid{grid-template-columns:1fr 1fr!important}.panel,.metric-tabs{break-inside:avoid;box-shadow:none!important}.panel-head{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#0f3f4a!important}}.settings-stack{max-width:880px}.set-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:26px}.set-card h2{margin:0 0 4px;font-size:1.1875rem}.set-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:14px;display:flex}.set-head p{max-width:560px;color:var(--muted);margin:0;line-height:1.55}.set-head a,.set-note a{color:var(--brand-dark);text-decoration:underline}.set-key{border:1px solid var(--line);background:var(--bg);text-align:center;border-radius:10px;gap:2px;padding:8px 14px;display:grid}.set-key small{color:var(--muted);font-size:.75rem}.set-key b{letter-spacing:.04em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.set-verify{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.set-verify .ghost-btn{height:auto;min-height:42px;padding:9px 18px}.set-note{color:var(--muted);margin:14px 0 0;font-size:.9rem}.set-note code,.set-head code{background:var(--bg);border-radius:6px;padding:1px 6px;font-size:.85em}.set-badge{border-radius:10px;align-items:center;gap:8px;padding:8px 14px;font-size:.9rem;font-weight:600;display:inline-flex}.set-badge.is-ok{color:#166534;background:#dcfce7}.set-badge.is-warn{color:#92400e;background:#fef3c7}.set-form{gap:6px;display:grid}.set-form .field label{margin-bottom:6px;font-size:.875rem;font-weight:650;display:block}.set-form .field input,.set-form .field select,.modal--form .field input{border:1px solid var(--line);background:var(--surface);width:100%;height:46px;color:var(--ink);font:inherit;border-radius:10px;padding:0 14px}.set-form .field input:focus,.set-form .field select:focus,.modal--form .field input:focus{outline:3px solid color-mix(in srgb, var(--brand) 35%, transparent);border-color:var(--brand)}.set-form .field input[aria-invalid=true]{border-color:#dc2626}.set-actions{align-items:center;gap:14px;margin-top:6px;display:flex}.set-actions .admin-btn:disabled{opacity:.5;cursor:default}.set-card--danger{border-color:#f4c4c0}.set-card--danger h2{color:#b42318}.danger-btn{color:#b42318;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #e8a7a1;border-radius:10px;padding:11px 20px;font-weight:650}.danger-btn:hover:not(:disabled){background:#fef2f2}.danger-btn:disabled{opacity:.5;cursor:default}.danger-btn--solid{color:#fff;background:#b42318;border-color:#b42318;height:46px;padding:0 22px}.danger-btn--solid:hover:not(:disabled){background:#991b1b}html[data-theme=dark] .set-card--danger{border-color:#7a2d28}html[data-theme=dark] .set-badge.is-ok{color:#a7f3d0;background:#0b3b2d}html[data-theme=dark] .set-badge.is-warn{color:#fde68a;background:#3a2f0b}.pagebar-crumbs{min-width:0}.pagebar-current{flex:none}.pagebar-sub{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pagebar-sep{flex:none}.usage-banner{color:#78450a;background:#fffbeb;border:1px solid #fcd34d;border-radius:14px;align-items:center;gap:14px;margin-bottom:20px;padding:14px 18px;display:flex}.usage-banner svg{flex:none}.usage-banner-text{flex:1;gap:2px;min-width:0;line-height:1.5;display:grid}.usage-banner-text strong{font-size:1rem}.usage-banner-text span{font-size:.9375rem}.usage-banner-btn{color:#fff;white-space:nowrap;background:#b45309;border-radius:10px;flex:none;padding:9px 18px;font-weight:650;text-decoration:none}.usage-banner-btn:hover{background:#92400e}.usage-banner-close{width:30px;height:30px;color:inherit;cursor:pointer;background:#0000000f;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.usage-banner.is-over{color:#7c2d12;background:#fff1e6;border-color:#fdba74}.usage-banner.is-over .usage-banner-btn{background:#c2410c}.usage-banner.is-paused{color:#7f1d1d;background:#fef2f2;border-color:#fca5a5}.usage-banner.is-paused .usage-banner-btn{background:#b91c1c}.bill2-usage-warn.is-near{font-weight:600;color:#b45309!important}.bill2-usage-warn.is-over{font-weight:600;color:#c2410c!important}.bill2-usage-warn.is-paused{font-weight:700;color:#b91c1c!important}html[data-theme=dark] .usage-banner{color:#fde68a;background:#3a2f0b;border-color:#8a6a1c}html[data-theme=dark] .usage-banner.is-over{color:#fed7aa;background:#3b2012;border-color:#9a4a1c}html[data-theme=dark] .usage-banner.is-paused{color:#fecaca;background:#3b1414;border-color:#9a2b2b}@media (max-width:700px){.usage-banner{flex-wrap:wrap}.usage-banner-btn{text-align:center;width:100%}}
