@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap";:root{--navy: #112b3c;--navy-light: #1b3b52;--brand-blue: #205375;--brand-blue-light: #2f9fe0;--orange: #f66b0e;--orange-hover: #d95c07;--bg: #f2f3f4;--surface: #ffffff;--border: #e1e4e7;--text: #112b3c;--text-secondary: #435566;--primary: var(--brand-blue);--primary-text: #ffffff;--accent: var(--orange);--pass: #1e8e5a;--pass-bg: #e3f3eb;--fail: #d64545;--fail-bg: #fbe9e9;--warning: #c2540a;--warning-bg: #fbeee2;--muted-bg: #eaeef1;--font: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;color-scheme:light;font-family:var(--font);color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0}a{color:var(--primary)}.shell{display:flex;min-height:100vh}.sidebar{width:232px;flex-shrink:0;background:var(--navy);border-right:1px solid var(--navy);padding:20px 12px;display:flex;flex-direction:column;gap:4px}.brand{font-weight:800;font-size:15px;padding:4px 12px 18px;letter-spacing:-.2px;color:#fff}.brand small{display:block;font-weight:600;color:#8fa9bd;font-size:11px;margin-top:2px}.cross-app-link{display:flex;align-items:center;gap:7px;margin:0 4px 16px;padding:7px 10px;border-radius:8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#cfdae3;font-size:12px;font-weight:600;text-decoration:none}.cross-app-link:hover{background:#ffffff1f;color:#fff}.cross-app-link img{border-radius:5px;flex-shrink:0}.navlink{display:block;padding:9px 12px;border-radius:8px;text-decoration:none;color:#cfdae3;font-size:14px;font-weight:600}.navlink:hover{background:var(--navy-light);color:#fff}.navlink.active{background:var(--orange);color:#fff}.sidebar-foot{margin-top:auto;padding:12px;font-size:12px;color:#8fa9bd}.main{flex:1;padding:32px 36px 64px;max-width:1000px}h1{font-size:24px;font-weight:800;margin:0 0 6px;letter-spacing:-.3px}h2{font-size:16px;font-weight:700;margin:28px 0 10px}.subtitle{color:var(--text-secondary);font-size:14px;margin:0 0 24px;line-height:1.5;max-width:62ch}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:16px}.field{margin-bottom:14px}.field label{display:block;font-size:12px;font-weight:700;color:var(--text-secondary);margin-bottom:5px}.field .hint{font-size:12px;color:var(--text-secondary);margin-top:4px;line-height:1.4}input,select,textarea{width:100%;padding:9px 11px;border:1px solid var(--border);border-radius:8px;font-size:14px;font-family:inherit;background:var(--surface);color:var(--text)}input:focus,select:focus,textarea:focus{outline:2px solid var(--primary);outline-offset:-1px;border-color:var(--primary)}input:disabled,select:disabled{background:var(--bg);color:var(--text-secondary)}.row{display:flex;gap:12px;flex-wrap:wrap}.row>*{flex:1;min-width:180px}button{font-family:var(--font);font-size:14px;font-weight:700;padding:10px 16px;border-radius:8px;border:1px solid transparent;background:linear-gradient(135deg,var(--orange),var(--orange-hover));color:#fff;cursor:pointer;box-shadow:0 4px 14px color-mix(in srgb,var(--orange) 34%,transparent)}button:hover:not(:disabled){box-shadow:0 6px 18px color-mix(in srgb,var(--orange) 44%,transparent);transform:translateY(-1px)}button:active:not(:disabled){transform:scale(.985)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:var(--surface);color:var(--primary);border-color:var(--primary);box-shadow:none}button.ghost{background:transparent;color:var(--text-secondary);border-color:transparent;padding:8px 10px;box-shadow:none}button.danger{background:var(--fail);box-shadow:none}button.small{padding:6px 11px;font-size:13px}.banner{border-radius:8px;padding:11px 14px;font-size:13px;margin-bottom:16px;line-height:1.5}.banner.error{background:var(--fail-bg);color:var(--fail)}.banner.ok{background:var(--pass-bg);color:var(--pass)}.banner.warn{background:var(--warning-bg);color:var(--warning)}.pill{display:inline-block;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.3px}.pill.ok{background:var(--pass-bg);color:var(--pass)}.pill.bad{background:var(--fail-bg);color:var(--fail)}.pill.warn{background:var(--warning-bg);color:var(--warning)}.pill.muted{background:#eaebee;color:#8a8f98}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-secondary);padding:0 10px 8px}td{padding:11px 10px;border-top:1px solid var(--border);vertical-align:middle}tr.archived td{color:var(--text-secondary)}.empty{color:var(--text-secondary);font-size:14px;padding:22px 0}.auth{max-width:380px;margin:9vh auto;padding:0 20px}.auth--split{max-width:1040px;display:grid;grid-template-columns:1fr 380px;gap:56px;align-items:start;margin:7vh auto}.auth--split .auth-panel{max-width:380px}.auth-pitch{padding-top:6px}.auth-pitch h2{margin:0 0 14px;font-size:26px;line-height:1.25;letter-spacing:-.3px}.auth-pitch h3{margin:26px 0 8px;font-size:15px;text-transform:uppercase;letter-spacing:.6px;color:var(--brand-blue)}.auth-pitch p{margin:0 0 12px;line-height:1.65;color:var(--text-secondary)}.auth-pitch strong{color:var(--text)}.auth-pitch-list{margin:0 0 12px;padding-left:20px;line-height:1.65;color:var(--text-secondary)}.auth-pitch-list li{margin-bottom:8px}.auth-pitch-eyebrow{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--orange)}.auth-pitch-wins{list-style:none;margin:18px 0 4px;padding:0}.auth-pitch-wins li{position:relative;margin-bottom:12px;padding-left:26px;line-height:1.6;color:var(--text-secondary)}.auth-pitch-wins li:before{content:"✓";position:absolute;left:0;top:-1px;font-weight:800;color:var(--pass)}.auth-pitch-note{margin-top:18px;padding:12px 14px;background:var(--muted-bg);border-radius:10px;font-size:13px}.auth-pitch-links{font-size:13px}@media (max-width: 880px){.auth--split{grid-template-columns:1fr;gap:36px;max-width:420px;margin:5vh auto}.auth--split .auth-panel{order:-1;max-width:none}.auth-pitch h2{font-size:22px}}.auth h1,.auth .subtitle{text-align:center}.auth button[type=submit]{width:100%;margin-top:6px}.auth .alt{text-align:center;margin-top:18px;font-size:13px;color:var(--text-secondary)}.check-group{border:1px solid var(--border);border-radius:10px;margin-bottom:12px;overflow:hidden}.check-group>header{background:var(--bg);padding:9px 14px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--text-secondary);display:flex;justify-content:space-between;align-items:center}.check-item{display:flex;gap:10px;padding:10px 14px;border-top:1px solid var(--border);align-items:flex-start}.check-item input[type=checkbox]{width:16px;height:16px;margin-top:2px;flex-shrink:0}.check-item .body{flex:1}.check-item .body strong{font-size:14px;font-weight:600;display:block}.check-item .body span{font-size:12px;color:var(--text-secondary);line-height:1.45}.check-item.locked{background:var(--bg)}.sidebar-foot button.ghost{color:#cfdae3}.sidebar-foot button.ghost:hover{color:#fff}.toggle-row{display:flex;gap:10px;align-items:flex-start;padding:9px 0;cursor:pointer}.toggle-row input[type=checkbox]{width:17px;height:17px;margin-top:2px;flex-shrink:0}.toggle-row>span{display:block}.toggle-row strong{display:block;font-size:14px;font-weight:600}.toggle-row .hint{display:block;margin-top:2px}.fault-row{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;padding:12px 0;border-top:1px solid var(--border)}.fault-row .body{flex:1;min-width:0}.fault-row .body strong{font-size:14px}.fault-row.resolved{opacity:.72}.pill-stack{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.pill-stack .pill{white-space:nowrap}.danger-zone{border-color:var(--fail)}.danger-zone label strong{color:var(--text)}.fault-badge{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;margin-left:8px;border-radius:50%;background:var(--fail);color:#fff;font-size:13px;font-weight:800;line-height:1;vertical-align:middle}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
