:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f9fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}h1,h2,p{overflow-wrap:anywhere}.shell,.app-shell{color:#172033;background:#f7f9fb;min-height:100svh}.shell{grid-template-rows:minmax(360px,48svh) auto;display:grid}.hero-band{color:#fff;background-color:#0000;background-image:linear-gradient(90deg,#10405bd1,#10405b47),url(https://images.unsplash.com/photo-1586773860418-d37222d8fce3?auto=format&fit=crop&w=1800&q=80);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;grid-template-columns:minmax(0,1fr) 320px;align-items:center;gap:48px;padding:48px clamp(20px,6vw,84px);display:grid}.hero-copy{max-width:760px}.hero-copy h1,.topbar h1{color:inherit;margin:0}.hero-copy h1{max-width:760px;font-size:clamp(2.25rem,5vw,5rem);line-height:.98}.hero-copy p:not(.eyebrow){color:#ffffffe0;max-width:650px;margin-top:22px;font-size:1.04rem}.eyebrow{color:#2f6f78;letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;font-size:.78rem;font-weight:800}.hero-band .eyebrow,.topbar .eyebrow{color:#8be0d8}.qr-panel,.login-panel,.sample-panel,.side-panel,.record-panel,.summary-band{background:#fff;border:1px solid #dbe4ea;border-radius:8px;box-shadow:0 18px 50px #1b283714}.qr-panel{color:#172033;justify-items:center;gap:10px;padding:24px;display:grid}.qr-panel span,.mini-qr span{color:#657386;font-size:.86rem}.qr-code{aspect-ratio:1;object-fit:contain;background:#fff;border:8px solid #ecf2f5;width:164px;padding:12px}.qr-code.small{border-width:5px;gap:3px;width:82px;padding:7px}.login-grid{grid-template-columns:minmax(0,440px) minmax(0,1fr);align-items:start;gap:24px;padding:32px clamp(20px,6vw,84px) 56px;display:grid}.login-panel,.sample-panel,.side-panel,.record-panel,.summary-band{padding:24px}.role-tabs{background:#edf3f6;border-radius:8px;grid-template-columns:1fr 1fr;gap:6px;padding:6px;display:grid}button,input{font:inherit}button{cursor:pointer;border:0;border-radius:6px;min-height:42px;font-weight:800}.role-tabs button{color:#607083;background:0 0}.role-tabs button.active,.primary{color:#fff;background:#11676d}.secondary{color:#17333a;background:#fff;border:1px solid #cbd9df}label{color:#526274;gap:8px;font-size:.9rem;font-weight:800;display:grid}.login-panel label,.side-panel label{margin-top:18px}input{box-sizing:border-box;color:#172033;background:#fff;border:1px solid #cbd9df;border-radius:6px;width:100%;padding:11px 12px}input:focus-visible,button:focus-visible{outline-offset:2px;outline:3px solid #11676d38}.login-panel .primary,.side-panel .primary{width:100%;margin-top:18px}.sample-panel h2,.side-panel h2,.record-panel h2{color:#172033;margin:0 0 16px}dl{gap:16px;margin:0;display:grid}dt{color:#172033;margin-bottom:5px;font-weight:900}dd{color:#526274;overflow-wrap:anywhere;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.notice{color:#10524f;background:#e7f6f2;border-radius:6px;margin:16px 0 0;padding:12px 14px;font-weight:800}.notice.error{color:#9d2f21;background:#fff0ed}.notice.floating{z-index:5;max-width:420px;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 30px #1b28372e}.app-shell{padding:28px clamp(18px,4vw,56px) 56px}.topbar{color:#fff;background:#12343b;border-radius:8px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding:22px 24px;display:flex}.topbar h1{font-size:clamp(1.5rem,3vw,2.8rem)}.workspace,.patient-grid{grid-template-columns:320px minmax(0,1fr);gap:24px;display:grid}.qr-consent-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:24px;display:grid}.mini-qr{align-items:center;gap:14px;margin-top:22px;display:flex}.record-header,.summary-band{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.record-header p,.summary-band p{color:#657386;margin:4px 0 0}.badge{color:#10524f;background:#e7f6f2;border-radius:999px;flex:none;padding:7px 10px;font-size:.82rem;font-weight:900}.badge.warn{color:#805600;background:#fff6d8}.consent-list{gap:12px;margin-top:20px;display:grid}.consent-row,.mode-toggle{color:#172033;border:1px solid #e1e9ee;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:14px;font-size:1rem;display:grid}.consent-row small,.mode-toggle small{color:#657386;margin-top:4px;font-weight:500;display:block}input[type=checkbox]{accent-color:#11676d;width:48px;height:28px}.otp-row{border-top:1px solid #e1e9ee;flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px;padding-top:20px;display:flex}.otp-row input{max-width:160px}.hint{color:#657386;font-weight:800}.empty-state{text-align:center;place-content:center;min-height:360px;display:grid}.empty-state.compact{gap:16px;min-height:260px}.empty-state p{color:#657386}.field-block{margin-top:18px}.form-action{width:100%;margin-top:20px}.qr-details{margin-top:18px}.patient-dashboard{gap:24px;display:grid}.summary-band{align-items:center}.summary-band h2{margin:0}.history{color:#526274;gap:12px;margin:0;padding-left:18px;display:grid}@media (width<=860px){.shell{display:block}.hero-band,.login-grid,.workspace,.qr-consent-layout,.patient-grid{grid-template-columns:1fr}.hero-band{gap:28px}.qr-panel{justify-self:start}.topbar,.record-header,.summary-band{display:grid}.topbar .secondary{justify-self:start}.notice.floating{bottom:16px;left:16px;right:16px}}
