:root{--bg:#f5f7fb;--white:#fff;--navy:#0a1935;--navy2:#10244a;--text:#1b2b48;--muted:#8090aa;--blue:#287cf6;--blue-light:#e9f2ff;--line:#e7ebf3;--green:#24bd92;--red:#ef6876;--yellow:#efb659;--shadow:0 10px 35px rgba(19,42,79,.035);--radius:16px}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:14px}body{margin:0;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.03em}h1{font-size:clamp(26px,3vw,34px);line-height:1.2;margin-bottom:10px;font-weight:800}h1 span{font-weight:550;color:#7184a3}h2{font-size:18px;font-weight:760;margin-bottom:6px}p{line-height:1.6}small{font-size:11px}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8fbafe;outline-offset:2px}[hidden]{display:none!important}
.shell{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;width:255px;flex:0 0 255px;background:linear-gradient(175deg,#0a1935 0%,#102345 100%);color:#fff;display:flex;flex-direction:column;padding:28px 17px 16px;z-index:50;overflow-y:auto}.sidebar-brand,.brand-row{display:flex;align-items:center;gap:11px;padding:0 12px}.logo-mark{height:39px;width:39px;flex:0 0 39px;display:grid;place-items:center;color:white;font-size:23px;font-weight:800;border-radius:12px;background:linear-gradient(135deg,#1c6df7,#50a3ff);box-shadow:0 7px 20px rgba(15,107,247,.28);position:relative}.logo-mark:after{content:"";width:7px;height:7px;border-radius:50%;background:#f26470;position:absolute;right:-3px;top:-2px;border:2px solid #0a1935}.sidebar-brand strong,.brand-row strong{display:block;font-size:16px;letter-spacing:.025em}.sidebar-brand strong span,.brand-row strong span{color:#67adff}.sidebar-brand small,.brand-row small{display:block;color:#98a9c7;font-size:9px;letter-spacing:.19em;margin-top:3px;font-weight:700}.sidebar-label{color:#7188ab;font-size:10px;letter-spacing:.19em;font-weight:800;margin:56px 15px 13px}.nav{display:grid;gap:5px}.nav-link{display:flex;align-items:center;gap:12px;padding:13px 15px;color:#9aabca;border-radius:10px;font-weight:620;transition:background .2s,color .2s}.nav-link:hover{color:white;background:#192f57}.nav-link.active{background:#2678ed;color:#fff;box-shadow:0 7px 17px rgba(31,113,236,.2)}.nav-ic{width:21px;text-align:center;font-size:19px;line-height:1}.sidebar-end{margin-top:auto}.side-help{background:#172e56;padding:18px;border:1px solid #29416a;border-radius:13px;color:white;margin-bottom:22px}.side-help span{color:#64aaff;font-size:19px}.side-help b{display:block;margin-top:8px}.side-help p{font-size:12px;color:#9dafcb;margin:6px 0 0;line-height:1.5}.sidebar-user{padding:18px 4px 3px;display:flex;align-items:center;border-top:1px solid #2b3d5b;gap:10px}.avatar{height:36px;width:36px;border-radius:11px;background:#304f7d;display:grid;place-items:center;font-weight:800}.user-detail{min-width:0;flex:1}.user-detail b,.user-detail small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.user-detail b{font-size:12px}.user-detail small{margin-top:4px;color:#8fa3c2}.logout{color:#adc2e4;background:transparent;border:0;font-size:24px}.logout:hover{color:white}.workspace{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:77px;display:flex;align-items:center;justify-content:space-between;padding:0 35px;background:white;border-bottom:1px solid var(--line)}.breadcrumbs{font-size:12px;color:#a3aec1;font-weight:600}.breadcrumbs span{padding:0 10px;color:#bec7d4}.breadcrumbs strong{color:#334563}.top-right{display:flex;align-items:center;gap:18px}.live-tag{font-size:11px;color:#237b64;background:#e8faf3;padding:8px 10px;border-radius:9px;font-weight:700}.live-tag i,.hero-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#28bc8e;margin-right:5px;box-shadow:0 0 0 3px rgba(40,188,142,.13)}.top-date{font-size:12px;color:#8a9ab0}.mobile-toggle{display:none;background:transparent;border:0;font-size:22px}.content{padding:32px 35px 42px;width:100%;max-width:1660px;margin:auto;flex:1}.app-footer{padding:16px 35px 24px;display:flex;justify-content:space-between;color:#9aa7bc;font-size:11px;gap:20px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:26px}.page-heading p{color:#8a98af;font-size:13px;margin-bottom:0}.page-heading p a{color:var(--blue)}.page-actions{display:flex;gap:10px;align-items:center}.eyebrow{letter-spacing:.14em;font-size:10px;font-weight:800;color:#528bea;margin-bottom:8px}.eyebrow a:hover{text-decoration:underline}.btn{appearance:none;display:inline-flex;justify-content:center;align-items:center;gap:9px;border-radius:10px;padding:11px 16px;border:1px solid transparent;font-weight:720;font-size:12px;white-space:nowrap;transition:filter .15s,transform .15s;box-shadow:none}.btn:hover{filter:brightness(.96);transform:translateY(-1px)}.btn.primary{background:#2477f4;color:white;box-shadow:0 7px 17px rgba(36,119,244,.16)}.btn.secondary{border-color:#dbe5f3;background:white;color:#40618c}.btn.subtle{padding:10px 12px;background:#edf4ff;color:#2b75df}.btn.big{font-size:14px;padding:15px 20px}.btn.big span{margin-left:auto;font-size:19px}.hero-strip{height:197px;display:flex;justify-content:space-between;position:relative;overflow:hidden;background:linear-gradient(103deg,#0b1d3d,#183c7e);border-radius:17px;padding:27px 36px;color:white;margin-bottom:21px}.hero-strip h2{font-size:25px;line-height:1.22;letter-spacing:-.035em;margin:13px 0 8px}.hero-strip em{font-style:normal;color:#80b8ff}.hero-strip p{color:#9fb8df;font-size:12px;max-width:580px}.hero-label{font-size:9px;letter-spacing:.21em;color:#9bc2f6;font-weight:800}.hero-art{position:absolute;right:10%;top:0;bottom:0;width:280px;display:grid;place-items:center}.orb{position:absolute;border:1px solid rgba(141,184,247,.14);border-radius:50%;aspect-ratio:1}.orb-one{width:300px}.orb-two{width:215px}.orb-three{width:132px;background:#214e9d44;border-color:#478ff455}.orb-center{width:62px;height:62px;border-radius:18px;background:#2f7dff;display:grid;place-items:center;font-size:37px;font-weight:850;box-shadow:0 0 45px #3178eb88;transform:rotate(-8deg)}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:21px}.kpi-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi-card{background:white;padding:20px 21px;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);min-height:142px}.kpi-top{display:flex;align-items:center;justify-content:space-between;color:#74859f;font-size:12px;font-weight:670;gap:12px}.kpi-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;font-size:20px;font-weight:bold}.kpi-icon.indigo{background:#e9efff;color:#4a6de5}.kpi-icon.emerald{background:#dcf9ee;color:#16b58b}.kpi-icon.coral{background:#fff0f0;color:#e66a7f}.kpi-icon.sky{background:#e9f7ff;color:#258bd5}.kpi-value{font-size:31px;font-weight:850;letter-spacing:-.045em;margin:14px 0 8px;line-height:1}.kpi-unit{font-size:15px;font-weight:600;color:#9aa5b7;letter-spacing:0}.kpi-foot{color:#9ca8bb;font-size:11px}.pill-mini{padding:3px 7px;border-radius:6px;font-size:10px;font-weight:800}.pill-mini.green{background:#e6f9f1;color:#25a57d}.two-columns{display:grid;grid-template-columns:1fr 1.35fr;gap:20px}.bottom-row{grid-template-columns:1.2fr 1fr;margin-top:20px}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;overflow:hidden}.panel.pad{padding:24px}.panel-head{padding:22px 23px 12px;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.panel.pad .panel-head{padding:0 0 19px}.panel-head h2{margin-bottom:3px;font-size:16px}.panel-head p{font-size:11px;color:#93a0b4;margin:0}.panel-chip{background:#f3f6fc;color:#8698af;font-size:10px;border-radius:6px;padding:6px 8px;font-weight:650;white-space:nowrap}.donut-area{display:flex;align-items:center;justify-content:center;gap:35px;padding:12px 20px 35px}.donut{height:181px;width:181px;border-radius:50%;display:grid;place-items:center;flex:0 0 181px;transition:background 300ms}.donut-hole{height:135px;width:135px;background:#fff;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 2px 7px #e9edf4}.donut-hole strong{font-size:32px;letter-spacing:-.06em}.donut-hole small{color:#9aa8bd;margin-top:5px}.donut-legend{flex:1;max-width:170px;display:grid;gap:17px}.donut-legend>div{display:flex;align-items:center;gap:8px;font-size:11px;color:#7a8da8}.donut-legend strong{margin-left:auto;color:#223657;font-size:12px}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex:0 0 8px}.legend-dot.up{background:#24bd92}.legend-dot.slow{background:#f3b755}.legend-dot.down{background:#fa6c70}.legend-dot.pending{background:#dfe5ef}.bars-legend{display:flex;align-items:center;gap:7px;color:#8e9db4;font-size:10px;padding:5px 25px}.bars-legend i:nth-child(2){margin-left:15px}.bars-chart{height:204px;display:flex;align-items:flex-end;justify-content:space-between;gap:7px;margin:5px 22px 17px;padding-bottom:22px;position:relative;border-bottom:1px solid #e8edf4;background:repeating-linear-gradient(to top,transparent,transparent 44px,#eff2f6 45px)}.bar-group{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;position:relative;gap:5px;min-width:0}.bar-stack{height:calc(100% - 8px);min-height:1px;width:100%;max-width:28px;display:flex;flex-direction:column;justify-content:flex-end;gap:0}.bar-ok{width:100%;background:#4a93ef;border-radius:4px 4px 0 0;min-height:0}.bar-fail{width:100%;background:#f37f88;border-radius:4px 4px 0 0;min-height:0}.bar-group>span{font-size:9px;color:#a4b0c1;white-space:nowrap;position:absolute;bottom:-20px}.chart-empty{color:#8d9bb0;text-align:center;font-size:11px;margin:-2px 8px 15px}.text-link{color:var(--blue);font-weight:720;font-size:11px;white-space:nowrap}.site-list{padding:3px 15px 13px}.site-row{display:flex;align-items:center;gap:10px;padding:13px 8px;border-top:1px solid #edf0f5;transition:background .15s}.site-row:hover{background:#f8faff}.site-monogram,.site-logo{height:37px;width:37px;flex:0 0 37px;display:grid;place-items:center;background:#eaf1ff;color:#3c75c9;border-radius:11px;font-weight:850}.site-info{min-width:0;flex:1}.site-info strong,.site-info span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-info strong{font-size:11px}.site-info span{font-size:10px;color:#96a3b6;margin-top:4px}.site-latency{color:#8290a5;font-size:11px;white-space:nowrap}.status-pill{display:inline-flex;align-items:center;gap:6px;border-radius:7px;padding:6px 8px;font-size:10px;font-weight:750;white-space:nowrap}.status-pill i{width:6px;height:6px;border-radius:50%;background:currentColor}.status-pill.up{background:#e5f8f0;color:#27ab80}.status-pill.slow{background:#fff4df;color:#c28a24}.status-pill.down{background:#ffebef;color:#dc6072}.status-pill.pending{background:#eff2f7;color:#8a9ab0}.row-arrow{font-size:17px;color:#9cb0ce}.alert-list{padding:0 22px 15px}.alert-item{display:flex;align-items:flex-start;gap:12px;border-top:1px solid #edf0f5;padding:14px 2px}.alert-symbol{border-radius:10px;background:#fff0f2;color:#e36a77;padding:8px 12px;font-size:18px;font-weight:800}.alert-item strong{font-size:12px}.alert-item p{font-size:11px;color:#8290a7;margin:3px 0}.alert-item small{color:#b2bece}.empty-alert{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:225px;text-align:center;padding:20px}.empty-icon{font-size:23px;display:grid;place-items:center;color:#29b58c;background:#e7faef;width:53px;height:53px;border-radius:50%;margin-bottom:12px}.empty-alert h3{font-size:13px;margin-bottom:4px}.empty-alert p{font-size:11px;color:#95a3b8;max-width:260px}.info-ribbon{display:flex;align-items:center;gap:9px;font-size:11px;color:#8d9eb4;margin:24px 1px}.info-dot{background:#e4efff;color:#3979d0;font-weight:800;border-radius:50%;width:21px;height:21px;display:grid;place-items:center;flex-shrink:0}.info-ribbon strong{color:#617895}.sites-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.site-card{background:white;border:1px solid var(--line);border-radius:15px;padding:22px;box-shadow:var(--shadow);min-width:0}.site-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.site-card h2{font-size:16px;line-height:1.2;margin-bottom:5px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.site-domain{font-size:11px;color:#8a9ab0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-bottom:18px}.site-meta{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);padding-bottom:18px;font-size:11px;color:#8192ae}.priority{font-weight:750}.priority.critical{color:#dc6677}.priority.high{color:#cc962d}.priority.standard{color:#5896d8}.site-card-stats{display:flex;gap:18px;margin:18px 0}.site-card-stats div{flex:1}.site-card-stats small,.tech-grid small{display:block;color:#a0adbd;margin-bottom:8px}.site-card-stats strong{font-size:13px}.site-card-foot{display:flex;align-items:center;justify-content:space-between}.icon-link{border:1px solid #dce7f7;border-radius:9px;width:34px;height:34px;display:grid;place-items:center;color:#5186d6;font-size:19px}.form-panel{padding:20px 23px;margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full{grid-column:1 / -1}.form-stack{display:flex;flex-direction:column;gap:16px}.form-grid label,.form-stack label,.month-filter label{font-size:11px;font-weight:750;color:#50617c;display:flex;flex-direction:column;gap:8px}input:not([type=checkbox]),select,textarea{width:100%;min-width:0;border:1px solid #dfe6f0;background:white;padding:11px 12px;border-radius:9px;outline:none;color:#283c5c;font-weight:540;font-size:12px}input:focus,select:focus,textarea:focus{border-color:#7baaf4;box-shadow:0 0 0 3px #2477f41a}textarea{resize:vertical}.checklabel{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;font-size:12px!important}.checklabel input{width:15px;height:15px;accent-color:#287cf6}.form-grid button{justify-self:start}.form-grid+.fineprint{margin-top:16px}.table-wrap{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;color:#9aaaBE;font-size:10px;font-weight:800;letter-spacing:.03em;background:#fafbfd;padding:15px 18px;border-bottom:1px solid var(--line)}td{font-size:11px;color:#5d7090;padding:14px 18px;border-bottom:1px solid #f0f2f6;vertical-align:middle}tr:last-child td{border-bottom:0}td b{color:#34435e}.table-empty{text-align:center;color:#9cabc0;padding:32px!important}.table-link{color:#2277e9;font-weight:760}.table-link:hover{text-decoration:underline}.subline{display:block;font-size:9px;margin-top:5px;color:#a2aec0}.incident-type{white-space:normal;min-width:180px;max-width:280px}.inline-actions{display:flex;gap:5px}.mini-btn{background:#edf3ff;color:#3877c9;border:1px solid #dce8fa;border-radius:7px;padding:7px 9px;font-size:10px;font-weight:750}.mini-btn:hover{background:#dfeaff}.audit-action{font-size:10px;color:#4d70a8;background:#edf3fb;padding:4px 6px;border-radius:5px}.detail-lines p{font-size:13px;color:#61728d}.detail-lines b{color:#253b5e}.connector-state{display:flex;align-items:center;gap:11px;padding:13px;background:#f2f7ff;border-radius:11px;margin-bottom:20px}.connector-icon{height:39px;width:39px;display:grid;place-items:center;border-radius:9px;background:#e1edff;color:#327aea;font-size:22px}.connector-state strong,.connector-state small{display:block}.connector-state small{margin-top:5px;color:#94a4bc}.tech-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;padding:4px 0 18px}.tech-grid b{font-size:14px}.connector-instructions{background:#f8faff;padding:16px;border:1px solid #e9eff8;border-radius:11px;margin:0 0 18px}.connector-instructions b{font-size:12px}.connector-instructions p{font-size:11px;color:#7b8ca5;margin:10px 0 0}.secret-box{background:#fff8e9;border:1px solid #f6db9e;border-radius:10px;padding:14px;margin:15px 0}.secret-box strong{font-size:12px}.secret-box code{display:block;margin:10px 0;font-size:11px;word-break:break-all;color:#795a1e}.fineprint{color:#98a6ba;font-size:11px;line-height:1.6}.muted-block{font-size:12px;color:#7a89a0;line-height:1.7}.notice{margin:0 0 22px;padding:13px 16px;border-radius:10px;font-size:12px;font-weight:650}.notice.success{background:#e8f9f1;color:#188660;border:1px solid #c7f0da}.notice.danger{background:#fff0f0;color:#bc4f63;border:1px solid #ffd3dc}.month-filter{display:flex;align-items:flex-end;gap:15px}.month-filter label{width:240px}.report-cover{margin-top:20px;margin-bottom:20px;padding:27px 29px;background:linear-gradient(100deg,#ffffff 65%,#eff6ff 100%)}.report-kicker{letter-spacing:.15em;font-weight:850;color:#3c80de;font-size:10px;margin-bottom:9px}.report-cover h2{font-size:25px}.report-cover h2 span{color:#7c99bf}.report-cover p{color:#8c9aac;font-size:12px;max-width:650px}.report-snapshot{display:flex;gap:50px;margin-top:23px}.report-snapshot small,.report-snapshot strong{display:block}.report-snapshot small{color:#90a0b5}.report-snapshot strong{font-size:25px;margin-top:6px}.metric-progress{height:5px;width:85px;background:#e5edf8;border-radius:6px;margin-bottom:7px;overflow:hidden}.metric-progress div{height:100%;background:#2d80e9}.report-note{color:#a0abc0;font-size:10px;margin:17px 4px}.user-edit-form{padding:15px 8px}.code-sample{padding:15px;background:#0d1f3c;color:#b8d8fc;font:11px/1.7 ui-monospace,monospace;border-radius:9px;overflow:auto;white-space:nowrap}.settings-info{display:flex;gap:25px;margin:22px 0}.settings-info div{flex:1}.settings-info b,.settings-info span{display:block;font-size:11px}.settings-info b{color:#637995}.settings-info span{color:#2b405f;margin-top:7px;word-break:break-word}
.login-body{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:30px 15px;background:radial-gradient(circle at 15% 10%,#183c7d 0,transparent 32%),radial-gradient(circle at 85% 90%,#1c3973 0,transparent 28%),#07152f}.login-card,.install-card{background:#fff;border:1px solid #e6ecf6;padding:34px 38px;border-radius:20px;width:100%;max-width:440px;box-shadow:0 30px 100px #040b1e70}.install-card{max-width:610px;margin:25px auto}.login-card .brand-row,.install-card .brand-row{padding:0}.login-card .brand-row strong,.install-card .brand-row strong{color:#15294a}.login-card .brand-row small,.install-card .brand-row small{color:#98a9bc}.login-title{margin:41px 0 30px}.login-icon{background:#eaf2ff;width:45px;height:45px;border-radius:13px;display:grid;place-items:center;font-size:23px;color:#2279ee;margin-bottom:18px}.login-title h1{font-size:27px}.login-title p{color:#9ba9bd;font-size:12px}.login-body .form-stack label{font-size:12px}.login-body .form-stack input{padding:14px 13px;font-size:13px}.footnote{color:#a4b0c0;text-align:center;font-size:10px;margin:28px 0 0}.install-card h1{margin:30px 0 10px}.install-card .muted{color:#899ab2;font-size:12px}.install-card h3{font-size:12px;margin:10px 0 0;color:#2e4f80}
@media(max-width:1380px){.two-columns{grid-template-columns:1fr 1fr}.donut-area{gap:17px}.donut{height:158px;width:158px;flex-basis:158px}.donut-hole{height:116px;width:116px}.donut-hole strong{font-size:27px}.sites-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid{gap:12px}.content{padding:27px 23px}.topbar{padding:0 23px}}
@media(max-width:1120px){.sidebar{width:220px;flex-basis:220px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-columns{grid-template-columns:1fr}.bottom-row{margin-top:20px}.donut-area{justify-content:flex-start;gap:35px}.hero-art{right:2%}}
@media(max-width:800px){.sidebar{position:fixed;top:0;left:0;bottom:0;width:270px;transform:translateX(-105%);transition:transform .22s;box-shadow:10px 0 40px #091f4140}.sidebar.open{transform:translateX(0)}.mobile-toggle{display:block}.topbar{height:64px;padding:0 17px;gap:12px}.breadcrumbs{flex:1;font-size:10px}.top-date{display:none}.content{padding:23px 16px}.app-footer{padding:17px}.page-heading{align-items:flex-start;flex-direction:column;gap:15px}.page-actions{flex-wrap:wrap}.hero-strip{padding:22px 25px;height:190px}.hero-strip h2{font-size:22px}.hero-art{opacity:.25;right:-95px}.site-row{gap:7px}.settings-info{flex-direction:column;gap:16px}}
@media(max-width:590px){.kpi-grid,.kpi-grid.three{grid-template-columns:1fr 1fr;gap:10px}.kpi-card{min-height:128px;padding:16px}.kpi-value{font-size:25px}.kpi-top{font-size:11px}.kpi-unit{font-size:11px}.sites-grid{grid-template-columns:1fr}.donut-area{gap:18px;padding:15px 12px 30px}.donut{height:137px;width:137px;flex-basis:137px}.donut-hole{height:102px;width:102px}.donut-hole strong{font-size:23px}.donut-legend{gap:12px}.donut-legend>div{font-size:10px}.panel-head{padding:18px 16px 14px}.panel.pad{padding:18px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.kpi-icon{width:28px;height:28px;font-size:16px}.site-latency{display:none}.site-info strong{font-size:10px}.status-pill{font-size:9px;padding:6px}.bars-chart{gap:4px;margin-left:10px;margin-right:10px}.bar-group>span{font-size:7px;transform:rotate(-45deg);bottom:-17px}.page-heading .btn{flex:1}.report-snapshot{gap:18px}.report-snapshot strong{font-size:18px}.login-card,.install-card{padding:25px 20px}.login-body{align-items:flex-start}.month-filter label{width:160px}}
@media print{body{background:white}.sidebar,.topbar,.app-footer,.no-print,.btn,.page-actions{display:none!important}.workspace{display:block}.content{max-width:100%;padding:0}.page-heading{margin-bottom:20px}.panel{break-inside:avoid;box-shadow:none;border-color:#ddd}.page-heading h1{font-size:27px}table{white-space:normal}th,td{font-size:10px;padding:10px}.report-cover{background:white;margin-top:10px}}
/* Audience & Performance — V1.2 */
.audience-filter{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}.audience-filter label{display:grid;gap:7px;min-width:195px;font-size:11px;color:#607394;font-weight:750}.audience-section-title{display:flex;align-items:center;gap:10px;margin:24px 2px 13px}.audience-section-title h2{margin:0}.audience-section-title small{margin-left:auto;color:#8999b2}.audience-source-dot{width:12px;height:12px;border-radius:50%}.audience-source-dot.ga{background:linear-gradient(145deg,#fbba35,#e9714e)}.audience-source-dot.fb{background:#1877f2}.audience-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.audience-kpis.three{grid-template-columns:repeat(3,minmax(0,1fr))}.audience-kpi{background:#fff;border:1px solid #e5ebf4;border-radius:15px;padding:22px 19px;display:flex;flex-direction:column;min-height:137px;box-shadow:var(--shadow)}.audience-kpi small{font-size:12px;color:#8696b0;font-weight:700}.audience-kpi strong{font-size:29px;color:#172c50;margin:14px 0 9px;font-variant-numeric:tabular-nums}.audience-kpi span{color:#8191aa;font-size:10px;line-height:1.4}.audience-charts{display:grid;grid-template-columns:1.35fr 1fr;gap:18px;margin-bottom:20px}.audience-barplot{display:flex;align-items:flex-end;height:210px;gap:4px;padding:16px 1px 19px;border-bottom:1px solid #dfe7f4;margin-top:10px}.audience-column{display:flex;flex:1;align-items:center;flex-direction:column;justify-content:flex-end;height:100%;position:relative;min-width:2px}.audience-bar{min-height:2px;width:min(100%,22px);background:linear-gradient(180deg,#68b2fd,#2a79e7);border-radius:4px 4px 0 0}.audience-bar.meta{background:linear-gradient(180deg,#69bafd,#1877f2)}.audience-column small{position:absolute;bottom:-17px;color:#8b9ab1;font-size:7px}.audience-empty{height:205px;display:grid;place-items:center;color:#92a2b9;font-size:12px;background:#f7f9fd;border-radius:12px}.audience-donut-layout{display:flex;align-items:center;gap:20px;min-height:240px}.audience-donut{width:174px;height:174px;border-radius:50%;display:grid;place-items:center;flex:0 0 174px}.audience-donut>div{height:126px;width:126px;background:#fff;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}.audience-donut b{font-size:24px}.audience-donut small{color:#8a9ab3}.audience-legend{display:grid;gap:11px;flex:1;min-width:0}.audience-legend>div{display:flex;align-items:center;gap:7px;min-width:0;font-size:10px;color:#647998}.audience-legend i{width:9px;height:9px;flex:0 0 9px;border-radius:3px}.audience-legend span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.audience-legend strong{color:#273e62;font-size:10px}.audience-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-top:18px}.audience-config-grid form{background:#f8faff;border:1px solid #e8eef8;border-radius:12px;padding:19px}.audience-config-grid h3{font-size:15px;margin:0}.audience-sync-actions{border-top:1px solid #e7ecf4;margin-top:23px;padding-top:17px}.audience-sync-actions h3{font-size:14px}
@media(max-width:1240px){.audience-charts{grid-template-columns:1fr}.audience-donut-layout{justify-content:center}}
@media(max-width:800px){.audience-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.audience-kpis.three{grid-template-columns:repeat(2,minmax(0,1fr))}.audience-config-grid{grid-template-columns:1fr}.audience-filter label{flex:1}}
@media(max-width:520px){.audience-kpis{gap:8px}.audience-kpi{padding:17px 11px;min-height:126px}.audience-kpi strong{font-size:25px}.audience-donut-layout{flex-direction:column;gap:18px;padding:15px 0}.audience-legend{width:100%}.audience-section-title{flex-wrap:wrap}.audience-section-title small{margin-left:0;width:100%;padding-left:22px}}
/* GECOMS Digital Care V1.3 — score de maintenance */
.health-dashboard{margin:0 0 23px}.health-dashboard-grid{padding:8px 22px 17px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.health-tile{display:block;text-decoration:none;color:inherit;border:1px solid #e2eaf3;border-radius:15px;padding:14px;background:linear-gradient(145deg,#f9fcff,#fff);transition:box-shadow .2s}
.health-tile:hover{box-shadow:0 8px 24px rgba(30,57,90,.1)}.health-tile-top,.health-tile-bottom,.site-health>div:first-child{display:flex;justify-content:space-between;gap:10px;align-items:center}
.health-tile-top b{font-size:13px;line-height:1.4}.health-value{font-weight:800;color:#163e65;white-space:nowrap}.health-tile-bottom{margin-top:9px;color:#66788f}
.health-track{height:8px;border-radius:20px;background:#dfe8f2;overflow:hidden;margin-top:10px}.health-track>div{height:100%;background:linear-gradient(90deg,#236cba,#21b7bc);border-radius:20px}
.site-health{border-top:1px solid #e9eef4;padding:12px 0 10px;margin:13px 0 0}.site-health b{font-size:12px}.site-health strong{font-size:13px;color:#163e65}.site-health small{color:#7a8899;font-size:11px}
.health-overview{display:grid;grid-template-columns:100px minmax(0,1fr);gap:22px;align-items:center;padding:7px 0 24px}.health-overview p{margin:6px 0 12px;color:#667b90;line-height:1.5}.health-overview small{color:#72839a;font-size:11px}
.health-big{background:#eef4fb;color:#2a527e;aspect-ratio:1;border-radius:22px;display:flex;justify-content:center;align-items:center;gap:3px}.health-big strong{font-size:35px}.health-big small{font-size:12px}.health-good{background:#e1f5ee;color:#11835f}.health-risk{background:#fee9e7;color:#b53f45}
.health-criteria{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0 20px}.health-criterion{padding:15px;border:1px solid #e4ebf4;border-radius:14px;background:#f9fbfe}.health-criterion-head{display:flex;gap:12px;justify-content:space-between}.health-criterion-head b{font-size:13px}.health-criterion-head span{font-size:12px;color:#235a8e;white-space:nowrap}.health-criterion small{display:block;color:#6b7d92;line-height:1.45;margin-top:9px}
.health-criterion-bar{background:#dfe8f1;height:7px;border-radius:10px;overflow:hidden;margin-top:10px}.health-criterion-bar>div{height:100%;border-radius:10px;background:linear-gradient(90deg,#2996cb,#27b5a2)}
.health-form-head{border-top:1px solid #e2eaf4;padding-top:20px;margin-top:22px}.health-form-head h3{margin:0 0 4px}.health-form-head p{font-size:13px;color:#718197;margin:0 0 18px}.health-double{display:grid;grid-template-columns:1fr 1fr;gap:12px}.health-double label{display:flex;flex-direction:column}
@media(max-width:980px){.health-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.health-dashboard-grid,.health-criteria{grid-template-columns:1fr}.health-overview{grid-template-columns:80px 1fr;gap:12px}.health-big strong{font-size:28px}.health-double{grid-template-columns:1fr}}
