:root{--bg:#f5f7fa;--panel:#fff;--ink:#172033;--muted:#657087;--line:#e4e8ef;--brand:#2457d6;--good:#067647;--warn:#b54708;--danger:#b42318}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:14px/1.45 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}.shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.sidebar{color:#dce5fa;background:#10192c;flex-direction:column;justify-content:space-between;padding:22px 14px;display:flex}.sidebar-footer{color:#8fa2c7;border-top:1px solid #27344f;margin:24px 10px 0;padding-top:14px;font-size:12px}.sidebar-footer a:hover{color:#fff;text-decoration:underline}.sidebar-footer form{margin-top:10px}.logout-button{color:#b9c6df;cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.logout-button:hover{color:#fff;text-decoration:underline}.login-main{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;width:min(100%,420px);padding:30px;box-shadow:0 14px 40px #15213a18}.login-card h1{margin:24px 0 4px;font-size:26px}.login-brand{color:var(--ink);font-size:19px;font-weight:800}.login-brand small{color:var(--muted);letter-spacing:.08em;margin-top:2px;font-size:11px;display:block}.login-form{gap:16px;margin-top:22px;display:grid}.login-form .button{min-height:42px;margin-top:4px}.success{color:var(--good);background:#edf9f2;border:1px solid #a7d8bf;border-radius:8px;margin-top:16px;padding:12px 14px}.release-list{gap:16px;display:grid}.release h2{margin:0}.release time{color:var(--muted);font-size:12px}.release li+li{margin-top:7px}.brand{color:#fff;margin:0 10px 30px;font-size:18px;font-weight:800}.brand small{color:#8fa2c7;letter-spacing:.08em;margin-top:3px;font-size:11px;font-weight:600;display:block}.nav a{color:#b9c6df;border-radius:7px;margin:2px 0;padding:10px 12px;display:block}.nav a:hover,.nav a.active{color:#fff;background:#223155}.main{width:100%;max-width:1440px;margin:auto;padding:30px}.top{justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px;display:flex}.top h1{letter-spacing:-.03em;margin:0;font-size:25px}.eyebrow{color:var(--muted);margin:3px 0 0;font-size:13px}.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.card,.table-wrap,.form-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:19px;box-shadow:0 1px 2px #15213a08}.metric .label{color:var(--muted);font-size:12px;font-weight:600}.metric .value{margin-top:8px;font-size:27px;font-weight:750}.metric .trend{color:var(--good);margin-top:5px;font-size:12px}.section{margin-top:25px}.section-head{justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px;display:flex}.section h2{margin:0;font-size:16px}.button{background:var(--brand);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:7px;padding:9px 13px;font-weight:650}.button.secondary{color:#244bb5;background:#eef2ff}.button.danger{background:#b42318}.button:disabled{opacity:.55;cursor:not-allowed}.table-wrap{padding:0;overflow:auto}table{border-collapse:collapse;white-space:nowrap;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);padding:13px 16px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;background:#fbfcfe;font-size:11px}tr:last-child td{border-bottom:0}tr[data-clickable]{cursor:pointer}tr[data-clickable]:hover{background:#f9fbff}.badge{color:#43516a;background:#edf1f7;border-radius:999px;align-items:center;padding:3px 8px;font-size:12px;font-weight:650;display:inline-flex}.badge.good{color:var(--good);background:#e8f7ef}.badge.warn{color:var(--warn);background:#fff3e8}.badge.danger{color:var(--danger);background:#ffeaeb}.empty,.notice{color:var(--muted);text-align:center;padding:25px}.error{color:#a5221b;background:#fff1f0;border:1px solid #f3b6b4;border-radius:8px;padding:12px 14px}.form-card{max-width:800px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.field{gap:6px;display:grid}.field.full{grid-column:1/-1}label{font-size:13px;font-weight:650}input,textarea,select{font:inherit;color:var(--ink);background:#fff;border:1px solid #cfd6e2;border-radius:7px;width:100%;padding:9px 10px}textarea{resize:vertical;min-height:92px}.hint{color:var(--muted);font-size:12px}.actions{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.toggle{align-items:center;gap:9px;display:flex}.toggle input{width:17px;height:17px}.detail-grid{grid-template-columns:1.2fr .8fr;gap:18px;display:grid}.key{border:1px solid var(--line);word-break:break-all;background:#f6f8fb;border-radius:7px;padding:10px;font:12px ui-monospace,SFMono-Regular,Menlo,monospace;display:block}.status-dot{background:#16a365;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.muted{color:var(--muted)}@media (max-width:850px){.shell{display:block}.sidebar{padding:14px;display:block}.sidebar-footer{margin:10px 8px 0}.brand{margin:0 8px 10px}.nav{gap:4px;display:flex;overflow:auto}.nav a{white-space:nowrap}.main{padding:20px 14px}.grid{grid-template-columns:repeat(2,1fr)}.detail-grid,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}@media (max-width:480px){.grid{grid-template-columns:1fr}.top{flex-direction:column;align-items:flex-start}}
