@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700;800&family=Lato:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap");:root{--bg:#f0f0f5;--surface:#fff;--surface-2:#e6e6ef;--line:#dedee8;--ink:#1a1a2e;--ink-muted:#44445a;--ink-faint:#7a7a96;--dark:#110c1d;--dark-2:#1a1230;--dark-line:hsla(0,0%,100%,.12);--dark-ink-muted:#b7b2cc;--accent:#6c5ce7;--accent-strong:#5847c4;--accent-soft:#ece9fc;--good:#00875a;--good-soft:#e1f7ee;--warn:#b8790a;--warn-soft:#fbf0dc;--critical:#c23b3b;--critical-soft:#fbe4e4;--radius:6px;--radius-card:12px;--shadow:0 1px 2px rgba(26,26,46,.05),0 8px 24px rgba(26,26,46,.06)}*{box-sizing:border-box}body{background:var(--bg);font-family:Lato,Roboto,Segoe UI,sans-serif;font-size:15px;line-height:1.5}body,h1,h2,h3,h4{margin:0;color:var(--ink)}h1,h2,h3,h4{font-family:Playfair Display,Georgia,serif;font-weight:800}h3,h4{font-weight:700}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.mono,code{font-family:IBM Plex Mono,ui-monospace,monospace}.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.sidebar{background:linear-gradient(160deg,var(--dark) 0,var(--dark-2) 100%);color:#fff;padding:24px 16px;gap:24px;position:relative;z-index:2}.sidebar,.sidebar nav{display:flex;flex-direction:column}.sidebar nav{gap:2px}.sidebar nav a{color:var(--dark-ink-muted);padding:8px 10px;border-radius:var(--radius);font-size:.9rem;font-weight:500}.sidebar nav a:hover{background:hsla(0,0%,100%,.08);color:#fff;text-decoration:none}.userbar{margin-top:auto;border-top:1px solid var(--dark-line);padding-top:16px}.userbar select{width:100%;background:hsla(0,0%,100%,.06);color:#fff;border-color:var(--dark-line)}.userbar .label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--dark-ink-muted);margin-bottom:6px;display:block}main.content{padding:32px 40px 80px;max-width:1100px;position:relative;z-index:1}.watermark{position:fixed;top:50%;left:calc(50vw + 115px);transform:translate(-50%,-50%);width:480px;max-width:55vw;height:auto;opacity:.05;z-index:0;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.page-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.page-head h1{font-size:1.9rem}.page-head .sub{color:var(--ink-muted);font-size:.92rem;margin-top:4px;font-family:Lato,sans-serif}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:20px 22px;box-shadow:var(--shadow);margin-bottom:20px}.card h2,.card h3{margin-bottom:14px}.grid{display:grid;grid-gap:16px;gap:16px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:16px 18px}.stat .num{font-family:IBM Plex Mono,monospace;font-size:1.7rem;font-weight:600;color:var(--accent);display:block;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat .label{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint)}form.stacked{gap:12px}.field,form.stacked{display:flex;flex-direction:column}.field{gap:4px}.field label{font-size:.78rem;font-weight:600;color:var(--ink-muted)}input,select,textarea{font-family:Lato,sans-serif;font-size:.92rem;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:.88rem;font-weight:600;cursor:pointer;font-family:Lato,sans-serif;text-transform:uppercase;letter-spacing:.03em}.btn:hover{background:var(--surface-2)}.btn-sm{padding:4px 10px;font-size:.74rem;gap:4px}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-strong)}.btn-row{display:flex;gap:10px;flex-wrap:wrap}table{width:100%;border-collapse:collapse;font-size:.88rem}td,th{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{font-family:Lato,sans-serif;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);background:var(--surface-2)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface)}.table-wrap table{margin:0}tr:last-child td{border-bottom:none}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 8px;border-radius:999px;font-family:IBM Plex Mono,monospace;font-size:.74rem;font-weight:500;white-space:nowrap}.pill:before{content:"";width:6px;height:6px;border-radius:50%}.pill.good{background:var(--good-soft);color:var(--good)}.pill.good:before{background:var(--good)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.warn:before{background:var(--warn)}.pill.critical{background:var(--critical-soft);color:var(--critical)}.pill.critical:before{background:var(--critical)}.pill.progress{background:var(--accent-soft);color:var(--accent-strong)}.pill.progress:before{background:var(--accent)}.pill.neutral{background:var(--surface-2);color:var(--ink-muted)}.pill.neutral:before{background:var(--ink-faint)}.empty{color:var(--ink-faint);padding:20px;text-align:center}.empty,.notice{font-size:.88rem}.notice{background:var(--accent-soft);border:1px solid var(--accent);border-radius:var(--radius-card);padding:12px 16px;color:var(--accent-strong);margin-bottom:16px}.notice.error{background:var(--critical-soft);border-color:var(--critical);color:var(--critical)}.section-label{font-family:Lato,sans-serif;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin:28px 0 12px}.section-label:first-child{margin-top:0}@media (max-width:800px){.shell{grid-template-columns:1fr}.sidebar{align-items:center}.sidebar,.sidebar nav{flex-direction:row;flex-wrap:wrap}.userbar{margin-top:0;border-top:none}main.content{padding:20px}.watermark{left:50vw;max-width:80vw}}