:root{--bg:#071019;--panel:#0d1824;--panel2:#101e2c;--text:#e7f0f7;--muted:#8fa3b5;--border:#1e3345;--accent:#38bdf8;--accent2:#14b8a6;--danger:#fb7185;--shadow:0 20px 60px #00000047;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=light]{--bg:#f2f7fa;--panel:#fff;--panel2:#f7fbfd;--text:#13202a;--muted:#667887;--border:#dbe6ec;--shadow:0 20px 60px #2038481f}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}button,input,textarea{font:inherit}.app{grid-template-columns:245px 1fr;min-height:100vh;display:grid}aside{border-right:1px solid var(--border);background:linear-gradient(180deg,var(--panel),color-mix(in srgb,var(--bg) 88%,transparent));flex-direction:column;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;padding:4px 7px 22px;display:flex}.brand small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.brand-mark{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#03232b;border-radius:12px;place-items:center;width:38px;height:38px;display:grid;box-shadow:0 8px 30px #38bdf833}nav{gap:5px;display:grid}nav button,.aside-bottom button{color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:11px;align-items:center;gap:10px;padding:11px 12px;display:flex}nav button:hover,nav button.active,.aside-bottom button:hover{color:var(--text);background:#38bdf814}nav button.active{box-shadow:inset 3px 0 var(--accent)}.aside-bottom{border-top:1px solid var(--border);margin-top:auto;padding-top:10px;display:grid}main{width:100%;max-width:1500px;margin:auto;padding:26px 34px}header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}header h1{margin:3px 0;font-size:28px}.eyebrow{color:var(--accent);letter-spacing:.12em;font-weight:800}.status{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.status span{background:#22c55e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #22c55e1a}.metrics{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.metric,.panel,.patient-hero{border:1px solid var(--border);background:linear-gradient(180deg,var(--panel),color-mix(in srgb,var(--panel2) 65%,var(--panel)));box-shadow:var(--shadow);border-radius:18px}.metric{padding:18px}.metric-icon{width:36px;height:36px;color:var(--accent);background:#38bdf81a;border-radius:11px;place-items:center;display:grid}.metric strong{margin-top:15px;font-size:29px;display:block}.metric span{color:var(--muted);font-size:12px}.panel{margin-bottom:18px;padding:18px}.panel-head,.toolbar,.patient-hero{justify-content:space-between;align-items:center;gap:16px;display:flex}.panel-head h2,.patient-hero h2{margin:0;font-size:18px}.panel-head p,.patient-hero p{color:var(--muted);margin:5px 0 0;font-size:12px}.toolbar{margin-bottom:15px}.primary,.ghost,.icon{border:1px solid var(--border);cursor:pointer;border-radius:11px;align-items:center;gap:8px;padding:10px 13px;display:inline-flex}.primary{color:#fff;background:linear-gradient(135deg,#0ea5e9,#14b8a6);border-color:#0000;font-weight:750}.ghost,.icon{color:var(--text);background:0 0}.icon{padding:7px}.search{border:1px solid var(--border);min-width:360px;color:var(--muted);background:var(--panel2);border-radius:11px;align-items:center;gap:8px;padding:0 11px;display:flex}.search input{color:var(--text);background:0 0;border:0;outline:0;width:100%;padding:10px 0}.table{margin-top:8px}.tr{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);text-align:left;background:0 0;grid-template-columns:1.3fr 1fr 1.3fr 30px;align-items:center;gap:14px;padding:12px;display:grid}.tr:not(.th){cursor:pointer}.tr:not(.th):hover{background:#38bdf80a}.tr span{text-overflow:ellipsis;min-width:0;overflow:hidden}.tr b,.tr small{display:block}.tr small{color:var(--muted);margin-top:3px}.th{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:800}.patient-hero{margin-bottom:18px;padding:20px}.pill{color:#86efac;background:#22c55e14;border:1px solid #22c55e4d;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.record-grid{grid-template-columns:2fr 1fr;gap:18px;display:grid}.facts{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.facts>div{border:1px solid var(--border);background:var(--panel2);border-radius:12px;padding:11px}.facts small,.facts b{display:block}.facts small{color:var(--muted);text-transform:uppercase;font-size:10px}.facts b{margin-top:4px;font-size:13px}.boundary{border:1px dashed var(--border);color:var(--muted);background:#38bdf80a;border-radius:12px;padding:14px;font-size:12px;line-height:1.5}.boundary.warning{background:#f59e0b0f;border-color:#f59e0b59}.timeline{padding:5px 0}.tl{grid-template-columns:16px 1fr;gap:10px;padding:9px 0;display:grid}.dot{background:var(--accent);border-radius:50%;width:9px;height:9px;margin-top:5px;box-shadow:0 0 0 4px #38bdf81a}.tl small,.tl b{display:block}.tl small{color:var(--muted);font-size:10px}.tl b{margin-top:3px;font-size:13px}.flow{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:28px;display:flex}.flow span{background:var(--panel2);border:1px solid var(--border);border-radius:11px;padding:10px 12px;font-size:12px}.login{background:radial-gradient(circle at 50% 20%,#38bdf81f,transparent 35%),var(--bg);place-items:center;min-height:100vh;display:grid}.login-card{border:1px solid var(--border);background:var(--panel);width:min(430px,92vw);box-shadow:var(--shadow);text-align:center;border-radius:24px;padding:34px}.login-card .brand-mark{margin:auto}.login-card h1{margin:18px 0 8px}.login-card p{color:var(--muted);line-height:1.5}.login-card .primary{justify-content:center;width:100%;margin-top:16px}.error{color:#fda4af;background:#fb718514;border:1px solid #fb718540;border-radius:11px;margin-top:12px;padding:10px;font-size:12px}.top-error{margin-bottom:15px}.backdrop{z-index:100;background:#000000ad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--border);background:var(--panel);width:min(820px,100%);max-height:90vh;box-shadow:var(--shadow);border-radius:20px;padding:18px;overflow:auto}.modal-head{justify-content:space-between;align-items:center;display:flex}.form{gap:12px;margin-top:18px;display:grid}.form.two{grid-template-columns:1fr 1fr}.form label small{color:var(--muted);margin-bottom:6px;font-size:11px;display:block}.form input,.form textarea{border:1px solid var(--border);background:var(--panel2);width:100%;color:var(--text);border-radius:10px;outline:none;padding:10px}.form textarea{resize:vertical;min-height:85px}.wide{grid-column:1/-1}.actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.empty{text-align:center;color:var(--muted);padding:25px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}@media (width<=950px){.app{grid-template-columns:72px 1fr}.brand>div:last-child,nav button:not(.active){font-size:0}nav button{justify-content:center}.aside-bottom button{justify-content:center;font-size:0}main{padding:20px}.metrics{grid-template-columns:1fr 1fr}.record-grid{grid-template-columns:1fr}.search{min-width:0}.tr{grid-template-columns:1fr 1fr}.tr>:nth-child(3),.tr>:nth-child(4){display:none}}@media (width<=600px){.metrics,.facts,.form.two,.app{grid-template-columns:1fr}aside{z-index:50;border-right:0;border-top:1px solid var(--border);width:100%;height:64px;padding:5px;display:block;position:fixed;top:auto;bottom:0}.brand,.aside-bottom{display:none}nav{grid-template-columns:repeat(5,1fr)}nav button,nav button:not(.active){justify-content:center;padding:12px;font-size:0}main{padding:18px 14px 80px}header .status{display:none}.toolbar{flex-direction:column;align-items:stretch}}.booking-list,.candidate-list{gap:12px;display:grid}.booking,.candidate{border:1px solid var(--border);background:var(--panel2);border-radius:14px;grid-template-columns:minmax(240px,1fr) minmax(180px,280px) auto;align-items:center;gap:12px;padding:14px;display:grid}.booking>div:first-child,.candidate>div:first-child{gap:5px;display:grid}.booking span{color:var(--muted);font-size:12px}select,input[type=file]{min-height:42px}.import-form{grid-template-columns:1.2fr 1fr 1.5fr auto;gap:10px;margin:16px 0;display:grid}.candidate pre{white-space:pre-wrap;word-break:break-word;max-height:220px;color:var(--muted);margin:8px 0 0;font-size:12px;overflow:auto}.actions.right{justify-content:flex-end}@media (width<=900px){.booking,.candidate,.import-form{grid-template-columns:1fr}.booking .primary{width:100%}}.commercial-box{gap:10px;display:grid}.commercial-row{grid-template-columns:1fr auto auto;gap:8px;display:grid}.commercial-summary{border:1px solid var(--border);background:var(--panel2);border-radius:12px;justify-content:space-between;gap:12px;padding:10px 12px;display:flex}@media (width<=700px){.commercial-row{grid-template-columns:1fr}}select,input[type=file]{border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:10px;padding:8px 10px}select option{background:var(--panel);color:var(--text)}
