:root{color-scheme:light;--ink:#29303b;--muted:#657080;--accent:#913a63;--line:#e3e5eb;--bg:#f6f7fa}*{box-sizing:border-box}body{margin:0;font:15px/1.6 system-ui,-apple-system,'Malgun Gothic',sans-serif;color:var(--ink);background:var(--bg)}a{color:var(--accent)}button,input,select{font:inherit}button,a,input,select{outline-offset:3px}button:disabled{opacity:.5;cursor:default}.skip{position:absolute;left:12px;top:-80px;background:white;padding:10px}.skip:focus{top:10px}.topbar{background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:20px max(24px,calc((100vw - 1120px)/2))}.brand{text-decoration:none;font-size:24px;font-weight:800;letter-spacing:.08em}.brand span{font-size:14px;letter-spacing:0;color:var(--muted);font-weight:500;margin-left:12px}.topbar nav{display:flex;gap:20px;align-items:center}.topbar nav a{text-decoration:none}.topbar form{margin:0}.container{max-width:1168px;padding:34px 24px 60px;margin:auto}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.13em;color:var(--accent);margin:0}h1{font-size:28px;letter-spacing:-.04em;line-height:1.35;margin:8px 0}h2{font-size:19px;margin-top:28px}p{margin:10px 0}.muted,.sub{color:var(--muted);font-size:13px}.sub{display:block;font-weight:400;margin-top:4px}.notice{background:#f2eaf0;border-left:3px solid #b05f84;padding:13px 16px;border-radius:4px;margin:20px 0;font-size:14px}.filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:24px 0;background:white;padding:20px;border:1px solid var(--line);border-radius:10px}.filters label{display:block;font-weight:600;font-size:13px;margin-bottom:6px}input,select{background:white;border:1px solid #c9cdd6;border-radius:6px;min-height:42px;padding:8px 10px;max-width:100%}.button{display:inline-block;min-height:42px;border:1px solid #cdd0d9;background:white;border-radius:6px;padding:8px 15px;text-decoration:none;color:var(--ink);cursor:pointer;white-space:nowrap}.primary{background:var(--accent);border-color:var(--accent);color:white}.text-button{border:0;padding:0;background:none;color:var(--accent);cursor:pointer}.table-wrap{overflow-x:auto;background:white;border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse;text-align:left;min-width:620px}caption{text-align:left;padding:16px 20px;font-weight:700;background:white}td,th{padding:16px 20px;border-top:1px solid var(--line);vertical-align:middle}thead th{color:var(--muted);font-size:13px;background:#fafafd}tbody th{font-weight:650}.badge{display:inline-block;border-radius:30px;font-size:12px;font-weight:600;padding:5px 11px;white-space:nowrap}.neutral{background:#edf0f5;color:#566172}.done{background:#e3f2eb;color:#246745}.pending{background:#f1e9f0;color:#84385f}.changed{background:#fff0d5;color:#8b5b08}.empty{text-align:center;padding:40px}.review-form{background:white;border:1px solid var(--line);border-radius:10px;padding:20px;margin:22px 0}.review-history{padding-left:20px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.stat{background:white;border:1px solid var(--line);border-radius:10px;padding:18px 22px}.stat strong{display:block;font-size:29px}.stat span{font-size:13px;color:var(--muted)}.demo{background:#273243;color:white;text-align:center;padding:9px 16px;font-size:13px}.demo button{margin-left:12px}.detail{margin-top:30px;background:white;padding:22px;border:1px solid var(--line);border-radius:10px}.detail[hidden]{display:none}#status{min-height:25px;color:#74304f}.demo-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.errorlist{color:#9c2444}@media(max-width:700px){.topbar{padding:16px}.brand span{display:block;margin:0;font-size:12px}.topbar nav{gap:12px;font-size:13px}.container{padding:24px 16px}.heading{align-items:start;flex-direction:column;gap:0}h1{font-size:25px}.filters{padding:16px}.filters>div{flex:1 1 140px}.filters input,.filters select{width:100%}.stats{gap:8px}.stat{padding:12px}.stat strong{font-size:25px}td,th{padding:13px 16px}.detail{padding:16px}}
[hidden]{display:none!important}.nav-button{border:0;background:transparent;color:var(--muted);font:inherit;padding:8px 0;cursor:pointer;white-space:nowrap}.nav-button[aria-pressed=true]{color:var(--accent);font-weight:700;border-bottom:2px solid var(--accent)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid label,.qr-panel label{display:block;font-size:13px;font-weight:650;margin:10px 0 6px}.form-grid input,.form-grid select,.qr-panel input{width:100%}.span-all{grid-column:1/-1}.action-row{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.danger{color:#9c2444;border-color:#d8aeba}.qr-panel{display:grid;grid-template-columns:232px minmax(0,1fr);gap:24px;border:1px solid var(--line);border-radius:10px;padding:20px;margin:20px 0}.qr-panel img{max-width:100%;height:auto;image-rendering:pixelated}.qr-panel>div{min-width:0}.qr-panel input{font-family:ui-monospace,monospace;font-size:13px}#patientStatus{min-height:25px;color:#74304f}.field-help{font-size:13px;color:var(--muted)}@media(max-width:700px){.form-grid{grid-template-columns:1fr}.qr-panel{grid-template-columns:1fr;padding:16px}.qr-panel img{margin:auto}.topbar{gap:12px}.action-row .button{white-space:normal}}
.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stat small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}.overview-table{min-width:1040px}.overview-table td,.overview-table th{padding:14px 12px}.overview-table td:not(:last-child){font-variant-numeric:tabular-nums}.overview-table td.count-cell{font-weight:650;text-align:center}.matrix{min-width:820px}.matrix td{text-align:center}.matrix td.received{background:#edf6f0;color:#246745;font-weight:650}.matrix td.outside{background:#fff2dc;color:#8b5b08}.analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.bar-chart{padding:16px;border:1px solid var(--line);border-radius:10px;background:white;margin-bottom:20px}.bar-row{display:grid;grid-template-columns:minmax(90px,1.1fr) 2fr 45px;gap:12px;align-items:center;margin:11px 0;font-size:13px}.bar-row meter{width:100%;height:16px}.bar-row meter::-webkit-meter-bar{background:#edf0f5;border:0}.bar-row meter::-webkit-meter-optimum-value{background:#a85b7f}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:67px;font:inherit;border:1px solid var(--line);background:#f8f9fb;border-radius:6px;text-decoration:none;color:var(--muted);cursor:pointer;padding:5px 2px}.calendar-cell span,.calendar-cell small{font-size:10px}.calendar-cell b{font-size:16px}.calendar-cell.recorded{background:#eaf4ed;color:#266b48}.calendar-cell[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:1px}.flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;gap:12px;margin:24px 0}.flow li{padding:18px;background:white;border:1px solid var(--line);border-radius:9px}.flow span{display:block;font-size:13px;color:var(--muted);margin-top:6px}.flow.compact li{background:#f8f9fb;padding:14px}.detail h3{font-size:17px;margin-top:26px}.demo-tools{margin:20px 0}#refundPanel{border-color:#d9acbc;background:#fff9fb}details summary{cursor:pointer;color:var(--accent)}details .review-form{min-width:260px}#ledgerRows .sub{font-size:11px}#entitlementForm input:invalid:not(:placeholder-shown){border-color:#c895a7}.topbar nav{gap:18px}.topbar{padding-top:16px;padding-bottom:16px}#patientRows td:nth-child(2){font-size:13px}#patientStatus{position:sticky;bottom:10px;background:#f2eaf0;border-radius:6px;padding:8px 12px}#patientStatus:empty{display:none}
@media(max-width:900px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-grid{grid-template-columns:1fr}.topbar{flex-wrap:wrap}.topbar nav{width:100%;justify-content:flex-start}.flow{grid-template-columns:1fr}.flow li{padding:12px 16px}.section-heading{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:500px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat strong{font-size:24px}.bar-row{grid-template-columns:minmax(80px,1.3fr) 1fr 35px;gap:7px}.calendar{gap:3px}.calendar-cell{min-height:60px}.table-wrap{max-width:100%}.demo-tools .button{font-size:12px}.flow{gap:6px}}.overview-table tbody th,.matrix tbody th{position:sticky;left:0;background:white;z-index:1;box-shadow:1px 0 0 var(--line)}.matrix td.corrected-zero,.calendar-cell.corrected-zero{background:#eef1f6;color:#586779;font-weight:500}textarea{font:inherit;background:white;color:var(--ink);border:1px solid #c9cdd6;border-radius:6px;padding:10px;max-width:100%;resize:vertical;outline-offset:3px}.form-grid textarea{width:100%;min-height:120px}.profile-card{background:#fafafd;border:1px solid var(--line);border-radius:10px;padding:18px 20px;margin:20px 0}.profile-card h2,.profile-card h3{margin:0 0 14px}.profile-card dl{display:grid;grid-template-columns:135px minmax(0,1fr);gap:12px 18px;margin:0}.profile-card dt{font-weight:650;font-size:13px;color:var(--muted)}.profile-card dd{margin:0;overflow-wrap:anywhere}.profile-memo{white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:600px){.profile-card{padding:16px}.profile-card dl{grid-template-columns:1fr;gap:6px}.profile-card dd{margin-bottom:12px}}
.staff-login-form > p {
  display: grid;
  grid-template-columns: 6rem minmax(0, 14rem);
  align-items: center;
  gap: .5rem;
}
.staff-login-form input { width: 100%; min-width: 0; }
