:root{--vf-red: #e60000;--vf-red-dark: #b30000;--bg: #f4f5f7;--panel: #ffffff;--ink: #1a1a1a;--muted: #6b6b6b;--line: #e2e4e8;--ok: #1e8e3e;--warn: #f59e0b;--down: #d93025;--info: #1a73e8;--radius: 10px;--shadow: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .04)}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.5}a{color:var(--info);text-decoration:none}a:hover{text-decoration:underline}.topbar{background:var(--vf-red);color:#fff;display:flex;align-items:center;gap:24px;padding:0 24px;height:56px;box-shadow:var(--shadow);position:sticky;top:0;z-index:10}.topbar .brand{font-weight:700;font-size:16px;letter-spacing:.2px;display:flex;align-items:center;gap:10px}.topbar .brand .dot{width:12px;height:12px;border-radius:50%;background:#fff;display:inline-block}.topbar nav{display:flex;gap:4px;margin-left:12px}.topbar nav a{color:#fff;padding:8px 14px;border-radius:6px;font-weight:500;opacity:.9}.topbar nav a:hover{background:#ffffff26;text-decoration:none;opacity:1}.topbar nav a.active{background:#0000002e;opacity:1}.topbar .spacer{flex:1}.topbar .mode{font-size:12px;background:#0003;padding:4px 10px;border-radius:20px}.container{max-width:1200px;margin:0 auto;padding:24px}.page-title{font-size:22px;font-weight:700;margin:0 0 4px}.page-sub{color:var(--muted);margin:0 0 20px}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}@media (max-width: 900px){.grid-2,.grid-3{grid-template-columns:1fr}}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.card>header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--line);background:#fafbfc}.card>header h3{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted)}.card .body{padding:16px}.kv{display:grid;grid-template-columns:150px 1fr;gap:6px 12px}.kv dt{color:var(--muted)}.kv dd{margin:0;word-break:break-word}.badge{display:inline-block;padding:2px 9px;border-radius:20px;font-size:12px;font-weight:600;border:1px solid transparent;white-space:nowrap}.badge.up,.badge.ok,.badge.resolved,.badge.closed{background:#e6f4ea;color:var(--ok)}.badge.down,.badge.p1{background:#fce8e6;color:var(--down)}.badge.warn,.badge.with_olo,.badge.in_progress{background:#fef7e0;color:#b06000}.badge.info,.badge.new,.badge.acknowledged{background:#e8f0fe;color:var(--info)}.badge.p2{background:#fff0e6;color:#c05600}.badge.p3,.badge.neutral,.badge.grey{background:#eef0f2;color:#555}table.tbl{width:100%;border-collapse:collapse}table.tbl th,table.tbl td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}table.tbl th{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-weight:600}table.tbl tr:last-child td{border-bottom:none}table.tbl tr:hover td{background:#fafbfc}.clickable{cursor:pointer}.btn{display:inline-flex;align-items:center;gap:6px;cursor:pointer;border:1px solid var(--line);background:#fff;color:var(--ink);padding:8px 14px;border-radius:8px;font-size:14px;font-weight:500}.btn:hover{background:#f4f5f7}.btn.primary{background:var(--vf-red);color:#fff;border-color:var(--vf-red)}.btn.primary:hover{background:var(--vf-red-dark)}.btn.sm{padding:5px 10px;font-size:13px}.btn:disabled{opacity:.5;cursor:not-allowed}label.field{display:block;margin-bottom:12px}label.field span{display:block;font-size:13px;color:var(--muted);margin-bottom:4px}input,select,textarea{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit;background:#fff;color:var(--ink)}textarea{min-height:70px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid rgba(230,0,0,.25);border-color:var(--vf-red)}.checklist{list-style:none;margin:0;padding:0}.checklist li{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px dashed var(--line)}.checklist li:last-child{border-bottom:none}.checklist input{width:auto}.checklist li.done label{color:var(--muted);text-decoration:line-through}.checklist label{flex:1;cursor:pointer}.log{list-style:none;margin:0;padding:0}.log li{padding:10px 0;border-bottom:1px solid var(--line)}.log li:last-child{border-bottom:none}.log .meta{font-size:12px;color:var(--muted);display:flex;gap:8px;align-items:center;margin-bottom:3px}.muted{color:var(--muted)}.small{font-size:12px}.mono{font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;font-size:12.5px}.pre{background:#0f1115;color:#d7dae0;padding:10px 12px;border-radius:8px;overflow-x:auto;white-space:pre-wrap;font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;font-size:12px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.between{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:4px}.empty{color:var(--muted);font-style:italic;padding:6px 0}.error-banner{background:#fce8e6;color:var(--down);padding:10px 14px;border-radius:8px;margin-bottom:16px}.loading{color:var(--muted);padding:40px;text-align:center}.section-alert{background:#fff4e5;border:1px solid #ffd8a8;color:#a05a00;padding:8px 12px;border-radius:8px;font-size:13px}.pill-row{display:flex;gap:8px;flex-wrap:wrap}.back-link{display:inline-block;margin-bottom:12px;font-size:13px}.topo-layer{border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#fafbfc}.topo-head{margin-bottom:6px}.topo-row{display:flex;align-items:center;overflow-x:auto;padding-bottom:4px}.topo-node{border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 10px;min-width:130px;text-align:center;flex:0 0 auto}.topo-link{flex:0 0 26px;height:2px;background:var(--vf-red);align-self:center}.topsearch{display:flex;gap:6px;align-items:center}.topsearch input{width:160px;padding:6px 9px}.hero{max-width:820px}.hero-search{display:flex;gap:8px;max-width:560px}.hero-search input{font-size:16px;padding:12px 14px}button.example{text-align:left;cursor:pointer;padding:14px 16px;display:block;width:100%;font:inherit;color:var(--ink)}button.example:hover{border-color:var(--vf-red)}.prov-h{margin:0 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-weight:600}.login-wrap{min-height:78vh;display:flex;align-items:center;justify-content:center}.login-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px;width:360px}.login-head{display:flex;align-items:center;gap:12px;color:var(--vf-red);margin-bottom:18px}.login-title{font-size:24px;font-weight:800;letter-spacing:1px;color:var(--ink);line-height:1}.login-sub{font-size:13px;color:var(--muted);margin-top:2px}.topbar .brand svg{display:block}.split-2{grid-template-columns:2fr 1fr}@media (max-width: 900px){.split-2{grid-template-columns:1fr}.topbar{height:auto;flex-wrap:wrap;padding:8px 14px;gap:8px}.topbar nav{flex-wrap:wrap;margin-left:0}.topsearch{order:3}.container{padding:16px 12px}.kv{grid-template-columns:120px 1fr}}@media print{.topbar,.btn,.back-link,.topsearch,.no-print{display:none!important}.container{padding:0;max-width:none}.card{box-shadow:none;border-color:#ccc;break-inside:avoid}.split-2{grid-template-columns:1fr 1fr}a{color:#000;text-decoration:none}}
