:root{color-scheme:light;--green:#073d2f;--green2:#0c5e45;--leaf:#138257;--gold:#c69c4d;--text:#14231e;--muted:#7a8580;--line:#e4ebe7;--wash:#f4f6f5;--panel:#fff;--red:#ce514c;--shadow:0 9px 30px rgba(27,45,38,.035)}*{box-sizing:border-box}body{margin:0;background:var(--wash);color:var(--text);font:14px/1.5 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}button,input,select{font:inherit}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.shell{min-height:100vh;display:flex;align-items:stretch}.sidebar{background:linear-gradient(155deg,#042d24,#0b3b2e 62%,#05271f);width:226px;flex:none;color:#e6f0e9;min-height:100vh;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;padding:25px 14px}.brand{display:flex;align-items:center;gap:13px;margin:0 8px 25px;line-height:1.25;white-space:nowrap}.brand:hover{text-decoration:none}.brand strong{display:block;font-size:14px;letter-spacing:.04em}.brand small{font-size:13px;display:block;color:#eddfb8}.brand-mark{color:#dcad57;font-size:42px;font-family:Georgia,serif;font-weight:normal}.nav{display:flex;flex-direction:column;gap:5px}.nav a{padding:11px 13px;border-radius:8px;display:flex;gap:14px;align-items:center;color:#d2e2d9;font-size:13px}.nav a:hover,.nav a.selected{background:#15513c;text-decoration:none;color:white}.nav a.selected{font-weight:600}.nav-icon{font-size:20px;width:20px;line-height:1;text-align:center;color:#e2eddf}.sidebar-bottom{margin-top:auto;min-height:140px;display:flex;flex-direction:column;align-items:center;justify-content:end;gap:7px;letter-spacing:.24em;color:#d9b76c;font-size:9px;text-align:center;position:relative}.sidebar-bottom:before{content:'◬';position:absolute;top:0;font-size:62px;color:#bfa159;opacity:.8;line-height:1}.main{flex:1;min-width:0;padding:22px 28px 6px;max-width:1900px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.topbar h1{font-size:29px;letter-spacing:-.035em;margin:0;color:#1d2530;line-height:1.15}.topbar p{margin:4px 0 0;color:#7a8580}.top-actions{display:flex;align-items:center;gap:13px;color:#46584f}.top-date{border:1px solid var(--line);padding:10px 13px;border-radius:9px;background:white;white-space:nowrap}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;width:34px;height:34px;background:#0f573f;color:#fff;font-weight:700}.logout{background:none;border:0;cursor:pointer;color:#54685e;padding:5px}.logout:hover{color:#092c1e;text-decoration:underline}.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-bottom:16px}.kpis-three{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi,.panel{background:var(--panel);border:1px solid #edf0ef;border-radius:12px;box-shadow:var(--shadow)}.kpi{min-height:126px;padding:18px 13px;display:flex;align-items:flex-start;gap:13px}.kpi-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex:none;font-size:22px;font-weight:bold}.kpi-icon.green{background:#e4f2e9;color:#135f40}.kpi-icon.red{background:#ffebeb;color:#c23934}.kpi-icon.gold{background:#fff2d9;color:#a47517}.kpi-label{font-weight:650;font-size:12px;display:block;white-space:nowrap}.kpi strong{font-size:24px;display:block;line-height:1.45;letter-spacing:-.03em}.kpi small{display:block;color:#89958d;font-size:11px;margin-top:5px}.analytics-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(280px,1fr);gap:16px}.panel{min-width:0;padding:17px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.panel-heading h2,.panel>h2{font-size:15px;margin:0;letter-spacing:-.012em}.panel-heading p{margin:3px 0 0;color:#8a958e;font-size:12px}.muted{font-size:12px;color:var(--muted)}.chart-wrap{width:100%;min-height:225px}.chart-wrap svg{width:100%;height:230px;display:block;overflow:visible}.chart-legend{display:flex;justify-content:center;gap:20px;color:#687970;font-size:11px}.dot{width:10px;height:10px;display:inline-block;border-radius:50%;margin-right:6px;vertical-align:middle}.dot.verified{background:#0e7252}.dot.failed{background:#dc554e}.traffic-body{display:flex;gap:23px;align-items:center;justify-content:center;padding:12px 5px 14px}.donut{width:175px;height:175px;aspect-ratio:1;border-radius:50%;padding:23px;flex:none}.donut>div{width:100%;height:100%;border-radius:50%;background:white;display:flex;align-items:center;justify-content:center;flex-direction:column}.donut strong{font-size:17px}.donut small{color:var(--muted);font-size:11px}.legend{flex:1;min-width:100px}.legend-entry{display:flex;align-items:center;gap:6px;font-size:12px;padding:7px 0}.legend-entry>span:nth-child(2){flex:1}.legend-entry strong{font-size:11px}.legend-entry .dot{flex:none}.section{margin-top:16px}.table-scroll{max-width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:580px;font-size:12px}th{background:#f7f8f7;font-size:11px;font-weight:600;color:#748078;text-align:left;padding:11px}td{padding:11px;border-bottom:1px solid #edf1ee;vertical-align:middle}tbody tr:last-child td{border-bottom:0}td strong{font-weight:650}td small.subtext{display:block;color:#8c9790;margin-left:35px}.site-avatar{display:inline-grid;place-items:center;background:#1d5949;color:#e7f5ed;width:25px;height:25px;border-radius:6px;font-weight:700;margin-right:8px}.status{padding:4px 9px;border-radius:12px;font-size:11px;font-weight:650;display:inline-block}.status.active{background:#e3f5e9;color:#126b3f}.status.inactive{background:#fcebe6;color:#a34b2f}.status:before{content:'●';font-size:8px;margin-right:5px}.btn{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;cursor:pointer;border-radius:7px;padding:8px 12px;border:1px solid #d6e2db;font-weight:600;font-size:12px;background:#fff;color:#215841}.btn.primary{background:#084b35;color:white;border-color:#084b35}.btn.primary:hover{background:#126448;text-decoration:none}.btn.subtle{padding:6px 9px;font-size:11px}.btn:hover{filter:brightness(.98);text-decoration:none}.row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.row-actions form{display:inline-flex;gap:4px;align-items:center}.short-number{max-width:83px;padding:7px;border:1px solid var(--line);border-radius:6px}.small-link{color:#15593d;font-weight:600;font-size:12px}.bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.recent{max-height:400px;overflow-y:auto}.recent-row{display:flex;align-items:center;gap:11px;padding:9px 5px;border-bottom:1px solid #f1f2f1}.recent-row:last-child{border:0}.event-dot{width:9px;height:9px;border-radius:50%;flex:none;background:#138457}.event-danger{background:#cf4642}.recent-row>div{flex:1}.recent-row strong{font-size:12px;font-weight:650;display:block}.recent-row small{font-size:11px;color:#819188;display:block}.recent-row time{font-size:10px;color:#97a39b;white-space:nowrap}.empty{padding:30px;color:#7b8a80;text-align:center}.form-panel{max-width:960px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid label,.login-card label,.credential-panel label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:650}.form-grid input,.form-grid select,.login-card input,.credential-panel input{border:1px solid #d7e2dc;background:white;color:#1a2e25;border-radius:7px;padding:12px;max-width:100%;min-width:0;outline-offset:1px}.form-grid input:focus,.form-grid select:focus{outline:2px solid #97b7a5}.form-actions{display:flex;align-items:end}.alert{padding:12px 16px;border:1px solid;border-radius:8px;margin:14px 0;font-size:13px}.alert-danger{background:#fff2ee;color:#9a372d;border-color:#f3c7c0}.alert-success{background:#e6f5eb;color:#16583a;border-color:#b7ddc6}.credential-panel{border:1px solid #c8a25a;border-radius:10px;padding:20px;background:#fffbf0;margin-bottom:16px}.credential-panel h2{margin:0}.credential-panel p{font-size:13px}.credential-panel label{margin:12px 0}.credential-panel input{width:100%;font:12px/1.5 monospace}.prose{padding:23px;max-width:1000px}.prose h3{margin:20px 0 10px}.prose pre{background:#f6f8f6;color:#1d5439;padding:14px;overflow:auto;border-radius:7px}.prose code,td code{color:#166a48;font-size:12px}.prose dt{font-weight:700;margin-top:12px}.prose dd{margin:2px 0 8px;color:#697c71}.footer{color:#87968d;font-size:11px;text-align:center;padding:28px 0 16px}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#073528,#0c5942 55%,#f1f4ed 55.1%);padding:20px}.login-card{background:#fff;padding:35px 40px;border-radius:15px;max-width:410px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,.15)}.login-card h1{margin:0;font-size:23px;color:#094f37}.login-card>p{margin:2px 0 24px;color:#85958a}.login-card form{display:flex;flex-direction:column;gap:17px}.login-card label{font-size:13px}.login-card input{width:100%}.login-card small{display:block;text-align:center;margin-top:25px;color:#98a39c}.brand-logo{font-size:48px;color:#cb9c49;line-height:1.3}.btn.full{width:100%;padding:13px}@media(max-width:1250px){.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar{width:202px}.analytics-grid{grid-template-columns:1.4fr 1fr}.traffic-body{flex-direction:column}.donut{width:142px;height:142px}.legend{width:100%}}@media(max-width:900px){.sidebar{width:68px;padding:20px 9px}.brand{margin:0 0 20px;justify-content:center}.brand>span:last-child,.sidebar-bottom{display:none}.nav a{justify-content:center;padding:12px 5px;font-size:0}.nav-icon{font-size:22px}.main{padding:17px}.analytics-grid,.bottom-grid{grid-template-columns:1fr}.traffic-body{flex-direction:row}.topbar h1{font-size:25px}}@media(max-width:560px){.sidebar{width:56px;padding:15px 5px}.main{padding:15px 10px}.topbar{align-items:flex-start}.topbar h1{font-size:22px}.topbar p{font-size:11px}.top-date{display:none}.top-actions{gap:6px}.logout{font-size:11px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.kpi{padding:12px 8px;min-height:100px;gap:8px}.kpi-icon{height:29px;width:29px;font-size:15px;border-radius:7px}.kpi strong{font-size:18px}.kpi-label{white-space:normal;font-size:11px}.panel{padding:11px}.traffic-body{flex-direction:column}.form-grid{grid-template-columns:1fr}.recent-row time{display:none}.bottom-grid{gap:9px}}
