*{box-sizing:border-box;margin:0}:root{--bg: #f4f5f7;--card: #fff;--ink: #16181d;--muted: #6b7280;--line: #e5e7eb;--brand: #0f6b54;--danger: #dc2626}body{font-family:-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--ink);font-size:15px}.topbar{display:flex;align-items:center;gap:28px;padding:12px 24px;background:#10221d;color:#fff}.topbar .brand{font-weight:650}.topbar nav{display:flex;gap:4px}.topbar a{color:#cfd8d4;text-decoration:none;padding:6px 12px;border-radius:8px}.topbar a.active{background:#ffffff24;color:#fff}main{max-width:1240px;margin:24px auto;padding:0 20px;display:flex;flex-direction:column;gap:16px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 24px;display:flex;flex-direction:column;gap:14px}.card.narrow{max-width:640px;margin:0 auto;width:100%}h1{font-size:20px}h2{font-size:16px}.muted{color:var(--muted)}.small{font-size:12.5px}.mono{font-family:ui-monospace,Menlo,monospace;font-size:12.5px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.row.spread{justify-content:space-between}form{display:flex;flex-direction:column;gap:14px}label{display:flex;flex-direction:column;gap:6px;font-weight:550}input[type=text],input:not([type]){padding:10px 12px;border:1px solid var(--line);border-radius:8px;font-size:15px}input:focus{outline:2px solid var(--brand);border-color:transparent}.upload-page{max-width:680px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:16px}.page-head{display:flex;flex-direction:column;gap:6px;padding:0 2px}.upload-page form{gap:16px}.patient-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:14px;box-shadow:0 1px 2px #1018280a}.patient-head{display:flex;align-items:center;gap:10px}.patient-head h2{font-size:15px}.pnum{width:26px;height:26px;border-radius:999px;flex:none;background:#e6f4ef;color:var(--brand);font-weight:700;font-size:13px;display:grid;place-items:center}.pill{background:#f1f5f9;color:var(--muted);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.icon-btn{margin-left:auto;width:28px;height:28px;padding:0;flex:none;border-radius:8px;background:transparent;color:var(--muted);font-size:18px;line-height:1;display:grid;place-items:center}.icon-btn:hover{background:#fef2f2;color:var(--danger)}.icon-btn.small{margin-left:0;width:24px;height:24px;font-size:16px}.add-patient{border:2px dashed var(--brand);border-radius:12px;padding:15px;background:#f0faf7;color:var(--brand);font-weight:650;font-size:15px;transition:background .12s,transform .06s}.add-patient:hover{background:#e0f5ec}.add-patient:active{transform:scale(.99)}.add-patient .small{color:inherit;opacity:.75}.submit-bar{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.dropzone{border:2px dashed #c4cbd4;border-radius:12px;padding:22px;text-align:center;color:var(--muted);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;transition:border-color .12s,background .12s}.dropzone.over{border-color:var(--brand);background:#f0faf7;color:var(--brand)}.filelist{list-style:none;display:flex;flex-direction:column;gap:6px}.filelist li{display:flex;gap:12px;align-items:center;padding:6px 8px 6px 12px;background:#f8f9fb;border:1px solid var(--line);border-radius:8px}.filelist li span:first-child{flex:1;overflow-wrap:anywhere}button,.button{font-size:15px;border:none;border-radius:8px;cursor:pointer;padding:10px 18px;text-decoration:none;display:inline-block}button.primary,.button.primary{background:var(--brand);color:#fff;font-weight:600}button.primary:disabled{opacity:.55;cursor:default}button.ghost{background:transparent;border:1px solid var(--line)}button.link,.link{background:none;border:none;color:var(--brand);padding:0;text-decoration:underline;cursor:pointer}.link.danger{color:var(--danger)}.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca;border-radius:8px;padding:10px 14px}.chip{color:#fff;border-radius:999px;padding:3px 12px;font-size:12.5px;font-weight:600;text-transform:capitalize}.chip.big{font-size:14px;padding:5px 16px}.chip.warn{background:#b45309;margin-left:6px}.stats{display:flex;gap:28px;flex-wrap:wrap}.stats div{display:flex;flex-direction:column}.stats b{font-size:22px}.stats span{color:var(--muted);font-size:12.5px}table{border-collapse:collapse;width:100%;font-size:13.5px}th,td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:600;font-size:12px;text-transform:uppercase}.results tr.clickable{cursor:pointer}.results tr.clickable:hover{background:#f0faf7}.results td{padding:10px}.patient-link{color:var(--brand);font-weight:600}.flags{list-style:none;display:flex;flex-direction:column;gap:6px}.flags li{padding:8px 12px;background:#f8f9fb;border-radius:8px}.flags li.hard{background:#fef2f2}.compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.compare figure{display:flex;flex-direction:column;gap:6px}.compare figcaption{color:var(--muted);font-size:12.5px}.compare img{width:100%;border:1px solid var(--line);border-radius:6px}@media(max-width:900px){.compare{grid-template-columns:1fr}}details{border:1px solid var(--line);border-radius:8px;padding:10px 14px}details summary{cursor:pointer;font-weight:550}details table{margin-top:10px}
