:root{color-scheme:light;--navy:#142337;--ink:#1a293d;--slate:#586b7a;--line:#dbe4e9;--paper:#f3f7f8;--white:#fff;--teal:#087f7b;--mint:#d9f3ee;--amber:#a15c0b;--red:#b53c3c}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}
h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.5rem,2.5vw,2.05rem);letter-spacing:-.035em;line-height:1.2}h2{font-size:1.2rem;letter-spacing:-.02em}h3{font-size:1rem}small,.muted{color:var(--slate)}a{color:#076f77;text-underline-offset:3px}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #67c9bc;outline-offset:2px}
.shell{min-height:100vh;display:grid;grid-template-columns:235px minmax(0,1fr)}
.side{display:flex;flex-direction:column;background:var(--navy);color:#d2e0ea;padding:26px 16px;position:sticky;top:0;height:100vh}
.brand{display:flex;gap:11px;align-items:center;color:#fff;text-decoration:none;font-size:1.3rem;font-weight:800;letter-spacing:-.04em;padding:0 8px 33px}.brand-icon{display:inline-flex;align-items:center;justify-content:center;background:#0fa696;color:#fff;width:34px;height:34px;border-radius:11px;font-weight:900}.brand-accent{color:#68d6c5}.brand small{display:block;font-size:.65rem;letter-spacing:.1em;font-weight:600;text-transform:uppercase;color:#9eb4c0}
.side nav{display:grid;gap:5px}.nav-item{display:flex;align-items:center;gap:12px;border-radius:9px;padding:10px 12px;color:#ccdae2;text-decoration:none;font-weight:600;font-size:.9rem}.nav-item span{font-size:1.18rem;width:20px;text-align:center}.nav-item:hover,.nav-item.selected{background:#29445a;color:#fff}.nav-item.selected{box-shadow:inset 3px 0 #29b7a7}.side-bottom{margin-top:auto;padding:15px 10px;border-top:1px solid #375064;color:#c2d9d7;font-size:.82rem}.side-bottom small{color:#9ab4bb}
.workspace{min-width:0}.top{display:flex;justify-content:space-between;align-items:center;gap:22px;background:#fff;border-bottom:1px solid var(--line);padding:25px clamp(18px,4vw,48px)}.top h1{margin:3px 0 0}.eyebrow{color:var(--teal);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.69rem}.account{display:flex;align-items:center;gap:14px}.account span{display:grid;font-size:.83rem}.account small{font-size:.73rem}.account form{margin:0}.link-btn{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:8px;padding:7px 11px;font-weight:600}
.workspace main{max-width:1360px;padding:28px clamp(18px,4vw,48px) 70px}.notice{padding:12px 16px;border-radius:9px;margin-bottom:20px;background:#e2f2ec;border:1px solid #b9e2d2}.notice.error{background:#fff0ed;border-color:#f4c5b9;color:#772d22}
.intro{max-width:770px;color:var(--slate);margin-bottom:24px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:18px 0}.toolbar form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #087f7b;background:var(--teal);color:#fff;border-radius:8px;padding:9px 14px;text-decoration:none;font-weight:700}.button:hover{background:#056d69;color:#fff}.button.secondary{background:#fff;color:var(--teal)}.button.ghost{background:transparent;border-color:var(--line);color:var(--ink)}
.grid{display:grid;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;box-shadow:0 2px 8px rgba(17,44,59,.03);min-width:0}.card p:last-child{margin-bottom:0}.card-title{display:flex;justify-content:space-between;align-items:center;gap:15px}.card .number{font-size:2.25rem;font-weight:800;letter-spacing:-.055em;line-height:1.15;margin:10px 0}.metric small{font-size:.84rem}.metric .number{color:var(--navy)}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:30px 0 12px}.section-head h2{margin:0}.field{display:grid;gap:6px;font-weight:700;font-size:.82rem;color:#354b5b;min-width:180px}.field input,.field select,.field textarea{width:100%;border:1px solid #cdd8df;border-radius:8px;background:#fff;color:var(--ink);padding:9px 10px;min-height:42px;font-weight:400}.field textarea{min-height:85px;resize:vertical}.field small{font-weight:400}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px}.form-actions small{max-width:580px}
.table-wrap{overflow-x:auto;border-radius:12px;border:1px solid var(--line);background:#fff}table{width:100%;border-collapse:collapse;font-size:.87rem}th,td{text-align:left;padding:12px 15px;border-bottom:1px solid #e9eff2;vertical-align:top}th{background:#f9fbfb;color:#465a68;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}tr:last-child td{border-bottom:0}tbody tr:hover{background:#f7fbfb}.badge{display:inline-block;padding:2px 9px;border-radius:30px;background:#e8eef2;color:#465869;font-weight:700;font-size:.73rem;white-space:nowrap}.badge.good{background:#d9f3e8;color:#076b56}.badge.warn{background:#fff0d8;color:#875205}.badge.bad{background:#fee3e1;color:#9e3030}
.empty{padding:45px 25px;border:1px dashed #b8cad2;border-radius:12px;text-align:center;color:var(--slate);background:#fff}.empty span{font-size:2rem;display:block;color:var(--teal)}.inline-form{display:inline}.plain-list{padding-left:18px}.plain-list li{margin-bottom:7px}.detail-list{display:grid;grid-template-columns:150px 1fr;gap:10px 18px;margin:0}.detail-list dt{color:var(--slate)}.detail-list dd{margin:0;font-weight:600;overflow-wrap:anywhere}.compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.changed{background:#fff5df}.status-panel{border-left:4px solid var(--teal);padding:13px 16px;background:#e8f6f4;border-radius:0 9px 9px 0}.status-panel.warn{border-color:#e59c28;background:#fff4e4}.status-panel.bad{border-color:#dd5f58;background:#fff0ed}
.login-shell{max-width:440px;margin:8vh auto;padding:20px}.login-brand{display:flex;gap:10px;align-items:center;font-size:1.6rem;font-weight:800;color:var(--navy);margin-bottom:35px}.login-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px;box-shadow:0 18px 50px rgba(29,52,64,.09)}.login-card .field{margin-top:17px}.login-card .button{width:100%;margin-top:24px}.login-card p{color:var(--slate)}
@media(max-width:1100px){.grid.four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.shell{display:block}.side{position:relative;width:auto;height:auto;padding:12px}.side .brand{padding:5px 8px 10px}.side nav{display:flex;overflow-x:auto}.nav-item{white-space:nowrap}.side-bottom{display:none}.top{padding:18px}.workspace main{padding:20px 18px 50px}.grid.three{grid-template-columns:1fr}}
@media(max-width:600px){.grid.two,.grid.four,.compare,.form-grid{grid-template-columns:1fr}.top{align-items:flex-start}.account{align-items:flex-end;flex-direction:column;gap:4px}.detail-list{grid-template-columns:1fr;gap:1px}.detail-list dd{margin-bottom:11px}}
@media print{.side,.toolbar,.account,.button,.link-btn{display:none!important}.shell{display:block}.workspace main{max-width:none;padding:0}.workspace .top{padding:0 0 12px}.card,.table-wrap{box-shadow:none;break-inside:avoid}.table-wrap{overflow:visible}body{background:#fff;color:#000}}
