:root{--ink:#17332f;--muted:#687a75;--line:#e2e8e3;--accent:#126c56;--bg:#f4f6f2;--nav:#102e29;--radius:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #72bfa9;outline-offset:3px}a{color:var(--accent)}h1,h2,p{margin:0}h1{font-size:32px;letter-spacing:-1.1px;line-height:1.3;margin:7px 0}h2{font-size:18px;letter-spacing:-.3px}.muted{color:var(--muted)}.small{font-size:12px}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:750;color:var(--muted)}.sidebar{background:var(--nav);color:#c1d3cc;width:228px;padding:32px 22px;position:fixed;height:100vh;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;color:white;text-decoration:none;font-size:24px;font-weight:700;line-height:1.2}.brandmark{display:inline-grid;place-items:center;background:#bbf0b1;color:#143d2d;width:42px;height:42px;border-radius:12px;font-weight:800;font-size:25px}.brand-sub{display:block;letter-spacing:1.7px;font-size:9px;font-weight:500;margin-top:3px}.nav-label{font-size:9px;letter-spacing:1.6px;margin:47px 12px 15px;color:#86a298}.nav{padding:12px 14px;margin-bottom:8px;color:#aac4b9;text-decoration:none;border-radius:9px}.nav.active{background:#24453a;color:#d5f0c8}.sidebar-bottom{margin-top:auto;padding:18px 12px 0;border-top:1px solid #345047}.sidebar-bottom p{color:#8ca99e;margin-top:5px}.led,.dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:#bae3aa;margin-right:6px}.logout{border:0;background:none;color:#c6d5cb;padding:15px 0 0}.workspace{margin-left:228px;padding:36px 40px;max-width:1700px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.primary,.secondary{border:0;border-radius:8px;padding:11px 17px;font-weight:650;white-space:nowrap}.primary{background:var(--accent);color:white}.primary:hover{background:#0b5844}.secondary{background:white;border:1px solid #d8e2db;color:var(--ink)}.secondary:hover{background:#edf5ee}.banner{background:#ecf2e4;border:1px solid #d5e1c4;border-radius:9px;padding:12px 17px;color:#52613d;font-size:12px}.banner strong{font-size:10px;letter-spacing:1px;margin-right:12px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:23px 0}.card,.panel{background:white;border:1px solid var(--line);border-radius:var(--radius)}.card{padding:22px 24px}.card-title{display:flex;align-items:center;justify-content:space-between}.dot.google{background:#6aa99b}.dot.domestic{background:#b4b972}.metric{font-size:36px;font-weight:700;line-height:1.4}.card h2{margin:15px 0 8px;font-size:20px}.panel-head{padding:23px 24px 17px;display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-head p{margin-top:4px}.pill{background:#eff3ec;color:#536d5a;font-size:10px;border-radius:6px;padding:4px 7px;margin-left:6px;font-weight:650;white-space:nowrap}.toolbar{display:flex;justify-content:space-between;align-items:center;padding:0 24px 20px;gap:15px}input,textarea{padding:11px 12px;border:1px solid #d5dfd8;border-radius:7px;background:#fbfcfa;color:var(--ink);min-width:0}input:focus,textarea:focus{outline:2px solid #91bba9;outline-offset:1px}input[type=search]{width:330px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left}th{background:#f8faf6;color:#7b8c81;letter-spacing:.8px;font-size:9px;font-weight:700;padding:13px 23px;border-block:1px solid var(--line);white-space:nowrap}td{padding:20px 23px;border-bottom:1px solid #edf0ea;font-size:12px;vertical-align:middle}td strong{display:block;font-size:13px}td small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.tag{display:inline-block;padding:3px 7px;border-radius:5px;background:#e7f3ee;color:#21715a;font-size:10px;margin:2px 4px 2px 0}.tag.domestik{background:#f1f0df;color:#79712a}.status{font-size:10px;padding:4px 7px;border-radius:5px;background:#fff2dc;color:#93672f;display:inline-block;max-width:190px}.status.up{background:#e6f4e8;color:#287245}.status.off{background:#edf0ed;color:#7a857d}.text-button{background:none;border:0;color:var(--accent);font-size:12px;font-weight:600;padding:6px}.panel-foot{padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.lower{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}.command-buttons{display:flex;gap:10px;padding:4px 24px}.hint{font-size:12px;color:var(--muted);padding:14px 24px 20px;line-height:1.7}.audit{padding:0 24px 20px;font-size:12px;max-height:230px;overflow:auto}.audit-row{display:flex;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid var(--line)}.audit-row small{display:block;font-size:10px}.diagnostics{margin-top:20px;padding:17px 24px}summary{cursor:pointer;font-size:12px;color:var(--muted)}footer{font-size:10px;color:#93a196;margin-top:24px}.notice{padding:12px 16px;border-radius:8px;margin-top:15px;font-size:13px}.danger{color:#a23535}.notice.danger{background:#faeaea}.good{color:#276943;background:#e2f2e5}dialog{border:1px solid #d7e2d8;border-radius:17px;padding:25px;width:min(650px,94vw);max-height:90vh;color:var(--ink);box-shadow:0 25px 100px #001b2440}dialog::backdrop{background:#102e2977;backdrop-filter:blur(3px)}#review{width:min(1000px,94vw)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.close{border:0;background:#f0f4ed;font-size:24px;line-height:1;width:32px;height:32px;border-radius:7px;color:#61746a}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{font-size:12px;font-weight:650;display:flex;flex-direction:column;gap:6px}.full{grid-column:1/-1}.check{display:inline-flex;flex-direction:row;align-items:center;margin-right:20px;font-weight:500}.check input{accent-color:var(--accent);width:16px;height:16px}fieldset{border:1px solid var(--line);border-radius:8px;padding:12px 15px}legend{font-size:12px;font-weight:650;padding:0 5px}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}pre{font:11px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre;overflow:auto;background:#142f29;color:#d6eadf;padding:20px;border-radius:9px;max-height:48vh;tab-size:4}.tabs{display:flex;gap:8px;margin-top:17px}.auth{min-height:100vh;display:grid;place-items:center;background:#edf2eb}.login{width:min(430px,92vw);padding:38px;background:white;border:1px solid var(--line);border-radius:18px;box-shadow:0 16px 60px #193e2c0a}.login .eyebrow{margin-top:24px}.login h1{font-size:27px}.login form{display:grid;gap:18px;margin:26px 0}.login .primary{padding:13px}#form-error{margin-top:16px}[hidden]{display:none!important}@media(min-width:1600px){.workspace{padding-inline:60px}}@media(max-width:1150px){.sidebar{width:190px;padding-inline:15px}.workspace{margin-left:190px;padding:26px}.lower{grid-template-columns:1fr}td,th{padding-inline:15px}.panel-foot{align-items:flex-start}}@media(max-width:800px){.sidebar{position:static;width:auto;height:auto;padding:16px 20px;flex-direction:row;align-items:center;justify-content:space-between}.sidebar .nav-label,.sidebar .nav,.sidebar-bottom p,.sidebar-bottom .led{display:none}.sidebar-bottom{margin:0;padding:0;border:0;font-size:11px}.sidebar-bottom form{display:inline}.logout{padding:0 0 0 20px}.brand{font-size:20px}.brandmark{width:35px;height:35px;font-size:22px}.workspace{margin:0;padding:22px 16px}header{align-items:flex-start}h1{font-size:25px}header>.secondary{font-size:11px;padding:9px}.cards{gap:10px;grid-template-columns:1fr}.card{padding:16px 20px}.metric{font-size:28px}.card h2{margin:8px 0 4px}.panel-head{padding:20px 18px}.panel-head h2{font-size:16px}.toolbar{padding-inline:18px;flex-wrap:wrap}.toolbar input{width:100%}.panel-foot{flex-direction:column;gap:5px;padding:15px 18px}.form-grid{grid-template-columns:1fr}.command-buttons{flex-wrap:wrap}.tabs{flex-wrap:wrap}.panel-head>.primary{font-size:11px;padding:10px}dialog{padding:20px}.login{padding:28px}}

#route-dialog{width:min(1250px,96vw)}.route-controls{display:grid;grid-template-columns:1fr 1.5fr auto;align-items:end;gap:12px}select{font:inherit;color:var(--ink);background:#fbfcfa;border:1px solid #d5dfd8;border-radius:7px;padding:11px 12px;min-width:0}.route-tabs .chosen{background:var(--accent);color:white;border-color:var(--accent)}#route-note{padding:13px 0}#route-summary{padding:8px 0 15px}#route-rows td{padding:12px;vertical-align:top;overflow-wrap:anywhere}#route-rows details pre{white-space:pre-wrap;min-width:270px;max-width:550px;max-height:220px}#route-dialog details{margin-top:10px}.card>.text-button{padding-left:0;margin-top:8px}@media(max-width:800px){.route-controls{grid-template-columns:1fr}.route-controls button{width:100%}}

.delete-button{background:#a53232;color:white;border:0;border-radius:8px;padding:11px 17px;font-weight:650}.delete-button:hover{background:#822626}#delete-dialog .hint{padding-inline:0}#delete-error{margin-top:12px}.text-button.danger{color:#a23535}

.cli-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}#cli-note{padding:12px 0 0}@media(max-width:800px){.cli-controls{grid-template-columns:1fr}}

.notice.warning{background:#fff5de;color:#7e5e24;border:1px solid #efddb0}.notice.neutral{background:#eef1ec;color:#687a75}.diag-summary{padding:0 24px 15px}.diagnostic-fields{display:grid;grid-template-columns:1fr 1.4fr;gap:9px 18px;margin:20px 0}.diagnostic-fields dt{font-size:12px;color:var(--muted)}.diagnostic-fields dd{margin:0;font:12px/1.6 ui-monospace,monospace;overflow-wrap:anywhere}.toolbar{flex-wrap:wrap}#route-notice{line-height:1.7}@media(max-width:800px){.diagnostic-fields{grid-template-columns:1fr}.diagnostic-fields dd{margin-bottom:8px}}
.network-panel{margin-top:24px;scroll-margin-top:20px}.network-panel .tabs{padding:0 24px}.network-panel>.hint,.network-panel>.notice{margin:16px 24px}.network-panel table{min-width:720px}#network-config{max-height:240px}#network-guides{max-height:320px}#network-review .check{margin:20px 0}#network-pending p{margin-top:0}

.cards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.dot.meta{background:#9969cc}.tag.meta{background:#eee5fa;color:#694498}

.tag.ggc{background:#fff0d6;color:#744600}.tag.google_pni{background:#e5efff;color:#254a7b}
