@import "https://fonts.googleapis.com/css2?family=Sarabun:wght@400;500;600;700&family=Red+Hat+Mono:wght@500;600;700&display=swap";:root{color:#22212b;font-synthesis:none;--ink:#22212b;--muted:#5d5864;--stock:#f2eef0;--sheet:#fdfbfc;--rule:#e4d2da;--rule-strong:#c99bb0;--print:#8c2d55;--print-soft:#f7e9ef;--pen:#1f47a3;--pen-dark:#163679;--pen-soft:#e4ebfa;--red:#a8231b;--red-soft:#fbe4e1;--amber:#7f4d00;--amber-soft:#fbedd0;--green:#2b6639;--green-soft:#e0f0e3;--mono:"Red Hat Mono", ui-monospace, monospace;background:#f2eef0;font-family:Sarabun,system-ui,sans-serif}*{box-sizing:border-box}body{background:var(--stock);margin:0;font-size:15px;line-height:1.6}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}h1,h2,h3,p,ol,ul,dl,dd,fieldset{margin:0}ol,ul{padding:0;list-style:none}fieldset{border:0;min-width:0;padding:0}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--pen);outline-offset:2px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted);font-size:14px}.skip{z-index:50;background:var(--sheet);padding:12px 16px;position:fixed;top:-80px;left:12px}.skip:focus{top:12px}.masthead{background:var(--sheet);border-bottom:3px double var(--rule-strong);align-items:center;gap:24px;padding:10px 28px;display:flex}.brand{align-items:center;gap:12px;min-height:44px;text-decoration:none;display:flex}.brand-slip{border:2px solid var(--print);border-radius:3px;gap:3px;width:34px;padding:6px 5px;display:grid}.brand-slip i{border:1.5px solid var(--print);border-radius:1px;height:5px}.brand-slip i:first-child{background:var(--print)}.brand strong{color:var(--print);font-size:21px;line-height:1.3;display:block}.brand small{color:var(--muted);font-size:12px;display:block}.hosp{border-left:1px solid var(--rule);min-width:0;padding-left:22px}.hosp strong{font-size:15px;font-weight:600;display:block}.hosp span{color:var(--muted);font-size:13px}.clock{margin-left:auto;font-size:22px;font-weight:600}.modules{align-self:stretch;gap:2px;margin:-10px 0;display:flex}.modules a{min-height:44px;color:var(--muted);border-bottom:3px solid #0000;align-items:center;padding:0 16px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.modules a:hover{color:var(--ink)}.modules a[aria-current=page]{color:var(--print);border-bottom-color:var(--print);background:var(--print-soft)}.demo-line{background:var(--print-soft);color:var(--print);border-bottom:1px solid var(--rule);padding:6px 28px;font-size:13px}.route{z-index:10;background:var(--stock);border-bottom:1px solid var(--rule);position:sticky;top:0}.route ol{grid-template-columns:repeat(6,minmax(0,1fr));max-width:1320px;margin:0 auto;padding:0 20px;display:grid}.route li{position:relative}.route li+li:before{content:"";border-top:2px dashed var(--rule-strong);width:20px;position:absolute;top:50%;left:-10px}.route button{width:100%;min-height:56px;color:var(--muted);text-align:left;border-bottom:3px solid #0000;align-items:center;gap:10px;padding:6px 12px;display:flex}.route button:hover{color:var(--ink)}.route-no{border:2px solid var(--rule-strong);height:28px;color:var(--print);background:var(--sheet);border-radius:50%;flex:0 0 28px;place-items:center;font-size:13px;font-weight:700;display:grid}.route-name{white-space:nowrap;font-size:15px;font-weight:600}.route-count{background:var(--sheet);border:1px solid var(--rule);text-align:center;min-width:30px;color:var(--ink);border-radius:14px;margin-left:auto;padding:0 8px;font-size:13px;font-weight:600}.route button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--pen)}.route button[aria-pressed=true] .route-no{background:var(--pen);border-color:var(--pen);color:#fff}main{max-width:1320px;margin:0 auto;padding:20px 20px 40px}.banner{border-left:4px solid var(--red);background:var(--red-soft);color:var(--red);margin-bottom:16px;padding:12px 16px}.desk{grid-template-columns:minmax(290px,360px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.queue-head{padding:2px 4px 12px}.queue-head h1{font-size:24px;line-height:1.35}.queue-head h1:focus{outline:none}.queue-head p{color:var(--muted);font-size:13px}.empty{color:var(--muted);border:1px dashed var(--rule-strong);background:var(--sheet);padding:18px;font-size:14px}.tickets{gap:8px;display:grid}.ticket{background:var(--sheet);border:1px solid var(--rule);text-align:left;border-radius:4px;grid-template-columns:64px minmax(0,1fr) auto;width:100%;min-height:64px;display:grid}.ticket:hover{border-color:var(--rule-strong)}.t-q{border-right:2px dashed var(--rule);color:var(--print);place-items:center;font-size:20px;font-weight:700;display:grid}.t-body{min-width:0;padding:8px 10px}.t-body strong{overflow-wrap:anywhere;font-size:15px;line-height:1.45;display:block}.t-body small{color:var(--muted);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.t-side{flex-direction:column;justify-content:center;align-items:flex-end;gap:4px;padding:8px 10px 8px 0;display:flex}.ticket.on{border-color:var(--pen);box-shadow:inset 4px 0 0 var(--pen);background:var(--pen-soft)}.ticket.on .t-q{color:var(--pen-dark)}.ticket.void{opacity:.6}.ticket.void strong{text-decoration:line-through}.ticket.new .t-q{color:var(--pen);font-size:26px}.wait,.state{color:var(--muted);white-space:nowrap;font-size:12px}.lvl{white-space:nowrap;border-radius:3px;padding:0 7px;font-size:12px;font-weight:600;line-height:1.7}.lvl.emergency{background:var(--red);color:#fff}.lvl.urgent{background:var(--amber-soft);color:var(--amber);border:1px solid #e3c27a}.lvl.normal{background:var(--green-soft);color:var(--green)}.allergy-tag{background:var(--red-soft);color:var(--red);border:1px solid #efb3ac}.passed{margin-top:18px}.passed summary{cursor:pointer;min-height:44px;color:var(--muted);align-items:center;font-size:14px;font-weight:600;display:flex}.tickets.small .ticket{grid-template-columns:52px minmax(0,1fr) auto;min-height:52px}.tickets.small .t-q{font-size:16px}.card{background:var(--sheet);border:1px solid var(--rule-strong);border-top:6px solid var(--print);border-radius:2px;min-width:0;padding:20px 24px 22px}.card-empty{text-align:center;background:0 0;border:0;padding:40px 0}.form-head{border-bottom:1px solid var(--rule);margin-bottom:16px;padding-bottom:10px}.form-kicker{color:var(--print);font-size:12px;font-weight:600}.form-head h2{font-size:21px;line-height:1.4}.form-head h1{font-size:23px;line-height:1.4}.opd-head{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;gap:14px 24px;padding-bottom:14px;display:flex}.opd-id{flex:300px;align-items:flex-start;gap:14px;min-width:0;display:flex}.opd-id>.mono{border:2px solid var(--print);color:var(--print);border-radius:3px;flex:none;padding:4px 10px;font-size:26px;font-weight:700;line-height:1.2}.opd-id h2{overflow-wrap:anywhere;font-size:23px;line-height:1.4}.opd-id h2:focus{outline:none}.opd-id p{color:var(--muted);font-size:14px}.opd-codes{border:1px solid var(--rule-strong);align-self:flex-start;display:flex}.opd-codes div{padding:4px 12px}.opd-codes div+div{border-left:1px solid var(--rule-strong)}.opd-codes dt{color:var(--print);font-size:11px;font-weight:600}.opd-codes dd{white-space:nowrap;font-size:15px;font-weight:600}.allergy{color:var(--muted);border:1px dashed var(--rule-strong);margin:12px 0;padding:6px 12px;font-size:14px}.allergy.has{border:2px solid var(--red);background:var(--red-soft);color:var(--red);font-weight:600}.allergy b{background:var(--red);color:#fff;border-radius:2px;margin-right:6px;padding:0 6px}.stamps{border:1px solid var(--rule-strong);grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:14px;display:grid}.stamps li{text-align:center;grid-template-rows:auto 1fr;min-height:84px;padding:6px 6px 8px;display:grid}.stamps li+li{border-left:1px solid var(--rule-strong)}.st-name{color:var(--print);font-size:12px;font-weight:600}.stamps li.current{background:var(--pen-soft)}.stamp{border:2px solid var(--print);color:var(--print);box-shadow:inset 0 0 0 2px var(--sheet), inset 0 0 0 3px var(--print);border-radius:4px;place-self:center;padding:1px 8px 3px;line-height:1.3;display:inline-grid;transform:rotate(-5deg)}.stamp b{font-size:12px}.stamp .mono{font-size:14px;font-weight:700}.stamp.landing{animation:.28s cubic-bezier(.2,.8,.3,1.2) both stamp-land}@keyframes stamp-land{0%{opacity:0;transform:rotate(-12deg)scale(1.6)}60%{opacity:1}to{opacity:1;transform:rotate(-5deg)scale(1)}}@media (prefers-reduced-motion:reduce){.stamp.landing{animation:none}}.here{color:var(--pen);place-self:center;font-size:13px;font-weight:600}.skip-mark{color:var(--muted);place-self:center;font-size:12px}.complaint{border-bottom:1px solid var(--rule);flex-wrap:wrap;align-items:baseline;gap:10px;padding:8px 0 12px;display:flex}.complaint span{color:var(--print);font-size:12px;font-weight:600}.complaint strong{overflow-wrap:anywhere;font-size:16px;font-weight:500}.block{border-bottom:1px solid var(--rule);padding:12px 0}.block h3,.work h3{color:var(--print);margin-bottom:8px;font-size:13px;font-weight:700}.boxes{border:1px solid var(--rule-strong);grid-template-columns:repeat(8,minmax(0,1fr));display:grid}.box{min-width:0;padding:6px 8px}.box+.box{border-left:1px solid var(--rule-strong)}.box span{color:var(--print);font-size:11px;font-weight:700;display:block}.box strong{font-size:18px;line-height:1.35;display:block}.box small{color:var(--muted);font-size:11px;line-height:1.4;display:block}.box.watch{background:var(--amber-soft)}.box.watch small{color:var(--amber);font-weight:600}.box.high{background:var(--red-soft)}.box.high small,.box.high strong{color:var(--red)}.box.high small{font-weight:700}.level-box strong{font-family:inherit;font-size:15px}.level-box.urgent strong{color:var(--amber)}.level-box.emergency strong{color:var(--red)}.level-box.normal strong{color:var(--green)}.dx li{padding:2px 0}.dx .mono,.chips .mono{color:var(--print);margin-right:4px;font-weight:700}.note{border-left:3px solid var(--rule-strong);margin:6px 0;padding-left:12px;font-family:inherit}.rx{gap:6px;margin-top:8px;display:grid}.rx li{background:var(--stock);padding:6px 10px}.rx small{color:var(--muted);font-size:13px;display:block}.refer{border:1px solid var(--pen);color:var(--pen-dark);margin-top:8px;padding:8px 12px}.refer b{margin-right:6px}.bill{border-collapse:collapse;width:100%;font-size:14px}.bill td,.bill th{border-bottom:1px dotted var(--rule-strong);text-align:left;padding:6px 4px;font-weight:400}.bill .num{text-align:right;white-space:nowrap}.bill tfoot th{font-weight:600}.bill tfoot .pay th,.bill tfoot .pay td{border-bottom:3px double var(--rule-strong);font-size:16px;font-weight:700}.work{background:var(--pen-soft);border-left:4px solid var(--pen);gap:12px;margin-top:16px;padding:16px;display:grid}.work h3{color:var(--pen-dark);margin:0;font-size:16px}.field{gap:4px;min-width:0;display:grid}.field>span{font-size:13px;font-weight:600}.field small{color:var(--muted);font-size:12px}.field input,.field select,.field textarea{width:100%;min-height:46px;color:var(--pen-dark);background:#fff;border:1px solid #b9b3c2;border-radius:3px;padding:8px 12px;font-size:16px}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--pen);outline:2px solid var(--pen);outline-offset:0}.vital-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 12px;display:grid}.vital-grid input{font-family:var(--mono);font-weight:600}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.span2{grid-column:1/-1}.flags{flex-wrap:wrap;align-items:center;gap:6px;min-height:1em;font-size:14px;display:flex}.flag{border-radius:3px;padding:0 8px;font-weight:600}.flag.watch{background:var(--amber-soft);color:var(--amber)}.flag.high{background:var(--red-soft);color:var(--red)}.levels{flex-wrap:wrap;gap:8px;display:flex}.levels legend{width:100%;margin-bottom:6px;font-size:13px;font-weight:600}.level{position:relative}.level input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.level span{background:#fff;border:1px solid #b9b3c2;border-radius:3px;align-items:center;min-height:44px;padding:0 16px;font-weight:600;display:inline-flex}.level input:checked+span{border:2px solid var(--pen);background:var(--pen);color:#fff}.level input:focus-visible+span{outline:3px solid var(--pen);outline-offset:2px}.level.emergency input:not(:checked)+span{color:var(--red)}.level.urgent input:not(:checked)+span{color:var(--amber)}.check{cursor:pointer;align-items:flex-start;gap:10px;min-height:44px;padding:10px 0;display:flex}.check input{width:20px;height:20px;accent-color:var(--pen);flex:none;margin:2px 0 0}.check small{color:var(--muted);font-size:13px;display:block}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips li{border:1px solid var(--rule-strong);background:#fff;border-radius:3px;align-items:center;gap:4px;padding:2px 2px 2px 10px;font-size:14px;display:inline-flex}.chips button{width:44px;height:44px;color:var(--muted);place-items:center;display:grid}.chips li.muted{border-style:dashed;padding:6px 10px}.orders{gap:8px;display:grid}.orders li{border:1px solid var(--rule);background:#fff;padding:10px 12px}.o-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.o-fields{grid-template-columns:130px minmax(0,1fr);gap:10px;margin-top:6px;display:grid}.dispense li{border-bottom:1px dotted var(--rule-strong)}.dispense li.muted{border:0;padding:10px 0}.error{color:var(--red);font-size:14px;font-weight:600}.error:empty{display:none}.hint{color:var(--muted);margin:10px 0;font-size:14px}.pen-button{background:var(--pen);color:#fff;border-radius:3px;justify-self:start;min-height:48px;padding:0 22px;font-size:16px;font-weight:600}.pen-button:hover{background:var(--pen-dark)}.text-button{min-height:44px;color:var(--pen);text-underline-offset:3px;align-items:center;padding:0 4px;font-weight:600;text-decoration:underline;display:inline-flex}.text-button.danger{color:var(--red)}.card-foot{flex-wrap:wrap;gap:4px 18px;margin-top:14px;display:flex}.finds{gap:6px;margin-top:10px;display:grid}.find{border:1px solid var(--rule);text-align:left;background:#fff;border-radius:3px;grid-template-columns:auto minmax(0,1fr);gap:0 12px;width:100%;min-height:56px;padding:8px 12px;display:grid}.find .mono{color:var(--print);grid-row:span 2;align-self:center;font-weight:700}.find small{color:var(--muted);font-size:13px}.find.on{border-color:var(--pen);background:var(--pen-soft)}#visit-form{background:var(--pen-soft);border-left:4px solid var(--pen);gap:12px;margin-top:12px;padding:16px;display:grid}.who{flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:17px;display:flex}.who .mono{color:var(--print);font-weight:700}dialog{border:1px solid var(--rule-strong);border-top:6px solid var(--print);background:var(--sheet);width:min(640px,100vw - 24px);max-height:calc(100dvh - 24px);color:var(--ink);border-radius:2px;padding:22px}dialog::backdrop{background:#22212b73}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.allergy-set legend{font-size:13px;font-weight:600}.json{border:1px solid var(--rule);white-space:pre;background:#fff;max-height:52dvh;padding:12px;font-size:12px;line-height:1.5;overflow:auto}.history{display:grid}.history li{border-bottom:1px dotted var(--rule-strong);grid-template-columns:110px minmax(0,1fr);gap:12px;padding:10px 0;display:grid}.history .mono{color:var(--print);font-size:13px;font-weight:600}.history small{color:var(--muted);font-size:13px;display:block}.fine{color:var(--muted);margin-top:24px;font-size:13px}#toast{z-index:40;background:var(--ink);color:#fff;opacity:0;pointer-events:none;border-radius:3px;max-width:calc(100vw - 32px);padding:12px 18px;transition:opacity .2s,transform .2s;position:fixed;bottom:20px;left:50%;transform:translate(-50%,20px)}#toast.visible{opacity:1;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){#toast{transition:none}}@media (width<=1080px){.boxes{grid-template-columns:repeat(4,minmax(0,1fr))}.box:nth-child(4n+1){border-left:0}.box:nth-child(n+5){border-top:1px solid var(--rule-strong)}}@media (width<=900px){.desk{grid-template-columns:1fr}.masthead{flex-wrap:wrap;gap:8px 18px;padding:10px 16px}.hosp{border-left:0;flex-basis:100%;order:3;padding-left:0}.demo-line{padding:6px 16px}.route ol{padding:0 6px}.route li+li:before{display:none}.route button{text-align:center;flex-direction:column;gap:2px;min-height:64px;padding:6px 2px}.route-no{display:none}.route-name{font-size:14px}.route-count{margin:0}main{padding:14px 12px 32px}.card{padding:16px 14px;scroll-margin-top:76px}.vital-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.clock{display:none}.stamps li{min-height:76px;padding:4px 2px 6px}.st-name{font-size:11px}.stamp{padding:1px 4px 2px}.stamp b{font-size:11px}.stamp .mono{font-size:12px}.opd-id>.mono{font-size:20px}.grid2,.o-fields{grid-template-columns:1fr}.history li{grid-template-columns:1fr;gap:2px}.boxes{grid-template-columns:repeat(2,minmax(0,1fr))}.box:nth-child(n){border-left:0;border-top:1px solid var(--rule-strong)}.box:nth-child(2n){border-left:1px solid var(--rule-strong)}.box:nth-child(-n+2){border-top:0}}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.fine a{color:var(--pen)}.chips-row{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.chips-row button{border:1px solid var(--rule-strong);background:var(--sheet);min-height:44px;color:var(--muted);border-radius:3px;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.chips-row button[aria-pressed=true]{background:var(--pen);border-color:var(--pen);color:#fff}.ghost-button{border:2px solid var(--pen);min-height:44px;color:var(--pen);background:#fff;border-radius:3px;justify-self:start;align-items:center;padding:0 16px;font-weight:600;display:inline-flex}.ghost-button:hover{background:var(--pen-soft)}.sub{border:1px solid var(--rule);background:#fff;gap:10px;padding:12px;display:grid}.sub legend{color:var(--pen-dark);padding:0 6px;font-size:13px;font-weight:700}.lab-picks{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;display:grid}.lab-picks .check{padding:6px 0}.check input:disabled+span{opacity:.5}.lvl.crit-tag{background:var(--red);color:#fff}.lvl.result-tag{background:var(--pen-soft);color:var(--pen-dark);border:1px solid #b7c6ec}.lvl.appt-tag{background:var(--print-soft);color:var(--print)}.follow{border:1px dashed var(--print);color:var(--print);margin-top:8px;padding:8px 12px}.follow b{margin-right:6px}.tube{vertical-align:-2px;border:1px solid #00000040;border-radius:3px 3px 2px 2px;width:10px;height:16px;margin-right:6px;display:inline-block}.tube.purple{background:#6b3fa0}.tube.grey{background:#8a8f96}.tube.red{background:#c0392b}.tube.green{background:#2e7d4f}.lab-sheet{border:1px solid var(--rule-strong);margin-bottom:10px}.lab-sheet.pending{border-style:dashed;padding-bottom:6px}.lab-sheet.pending .muted{padding:0 10px}.lab-head{background:var(--stock);border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:6px 10px;display:flex}.lab-status{color:var(--muted);font-size:13px}.lab-status.resulted{color:var(--green);font-weight:600}.results{border-collapse:collapse;width:100%;font-size:14px}.results th,.results td{text-align:left;border-bottom:1px dotted var(--rule-strong);padding:6px 10px;font-weight:400}.results thead th{color:var(--print);font-size:12px;font-weight:700}.results .num{text-align:right;font-weight:700}.results .range{color:var(--muted);white-space:nowrap;font-size:13px}.results tr.flag-H td.num,.results tr.flag-L td.num,.results tr.flag-A td.num{color:var(--amber)}.results tr.flag-HH,.results tr.flag-LL{background:var(--red-soft)}.results tr.flag-HH td.num,.results tr.flag-LL td.num{color:var(--red)}.lab-flag{white-space:nowrap;border-radius:2px;padding:0 6px;font-size:12px;font-weight:700}.lab-flag.off{background:var(--amber-soft);color:var(--amber)}.lab-flag.crit{background:var(--red);color:#fff}.live-flag{color:var(--amber)}.live-flag.crit{color:var(--red)}.collect li{border-bottom:1px dotted var(--rule-strong)}.result-form h3 small{color:var(--muted);margin-left:6px;font-weight:500}.critical-ack{background:var(--red-soft);color:var(--red);padding:8px 12px;font-weight:600}.due-today{margin-bottom:16px}.due-today h3{color:var(--print);margin-bottom:6px;font-size:13px;font-weight:700}.due-list li{border-bottom:1px dotted var(--rule-strong);grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 0;display:grid}.due-list li.muted{display:block}.due-list .mono{color:var(--print);font-weight:700}.due-list small{color:var(--muted);font-size:13px;display:block}.days{gap:4px;max-height:70dvh;padding-right:4px;display:grid;overflow-y:auto}.day{background:var(--sheet);border:1px solid var(--rule);border-left:4px solid var(--rule-strong);text-align:left;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:48px;padding:6px 12px;font-size:14px;display:flex}.day b{color:var(--print);font-weight:700}.day.past{color:var(--muted)}.day.on{border-color:var(--pen);border-left-color:var(--pen);background:var(--pen-soft)}.day-count{white-space:nowrap;color:var(--muted);font-size:13px}.day-count em{color:var(--red);font-style:normal;font-weight:600}.day-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.capacity{border:1px solid var(--rule-strong);grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px;display:grid}.capacity div{padding:8px 10px}.capacity div+div{border-left:1px solid var(--rule-strong)}.capacity dt{color:var(--print);font-size:12px;font-weight:700}.capacity dd{gap:4px;font-size:16px;font-weight:600;display:grid}.meter{background:var(--stock);border:1px solid var(--rule);height:6px;display:block}.meter i{background:var(--print);height:100%;display:block}.appts li{border-bottom:1px dotted var(--rule-strong);grid-template-columns:58px minmax(0,1fr) auto;grid-template-areas:"time body state""time actions actions";gap:2px 12px;padding:10px 0;display:grid}.appt-time{color:var(--print);grid-area:time;font-size:16px;font-weight:700}.appt-body{grid-area:body;min-width:0}.appt-body strong{overflow-wrap:anywhere}.appt-body small{color:var(--muted);font-size:13px;display:block}.appt-state{white-space:nowrap;border-radius:2px;grid-area:state;align-self:start;padding:0 8px;font-size:12px;font-weight:700}.appt-state.booked{background:var(--pen-soft);color:var(--pen-dark)}.appt-state.arrived{background:var(--green-soft);color:var(--green)}.appt-state.missed{background:var(--red-soft);color:var(--red)}.appt-state.cancelled{background:var(--stock);color:var(--muted)}.appt.cancelled .appt-body strong{color:var(--muted);text-decoration:line-through}.appt-actions{flex-wrap:wrap;grid-area:actions;align-items:center;gap:4px 14px;display:flex}.appt-actions:empty{display:none}#appt-who{margin:8px 0 12px}@media (width<=1180px){.modules a{padding:0 10px}.hosp{display:none}}@media (width<=900px){.modules{border-top:1px solid var(--rule);flex-basis:100%;order:4;margin:0 -16px -10px}.modules a{flex:1;justify-content:center}.days{grid-auto-columns:168px;grid-auto-flow:column;max-height:none;padding-bottom:6px;overflow:auto hidden}.day{flex-direction:column;justify-content:center;align-items:flex-start;gap:0;min-height:64px}}@media (width<=520px){.route-name{font-size:12.5px}.route-count{min-width:26px;padding:0 4px;font-size:12px}.stamps{grid-template-columns:repeat(3,minmax(0,1fr))}.stamps li:nth-child(4){border-left:0}.stamps li:nth-child(n+4){border-top:1px solid var(--rule-strong)}.lab-picks,.capacity{grid-template-columns:1fr}.capacity div+div{border-left:0;border-top:1px solid var(--rule-strong)}.opd-codes{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.opd-codes div:nth-child(3){border-left:0}.opd-codes div:nth-child(n+3){border-top:1px solid var(--rule-strong)}.results .range,.results thead th:last-child{display:none}.due-list li{grid-template-columns:48px minmax(0,1fr)}.due-list .ghost-button{grid-column:2}}.hint a{min-height:44px;color:var(--pen);align-items:center;font-weight:600;display:inline-flex}.desk>*{min-width:0}.er-desk{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.er-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.level-tally{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-bottom:14px;display:grid}.level-tally li{background:var(--sheet);border:1px solid var(--rule);border-top:5px solid var(--tone);grid-template-rows:auto auto;grid-template-columns:auto 1fr;column-gap:6px;padding:6px 8px;display:grid}.level-tally b{grid-row:span 2;font-size:18px}.level-tally span{color:var(--muted);font-size:12px;line-height:1.3}.level-tally strong{font-size:16px}.lvl-red{--tone:#b3261e;--tone-ink:#fff}.lvl-pink{--tone:#c2185b;--tone-ink:#fff}.lvl-yellow{--tone:#e0a800;--tone-ink:#2b2100}.lvl-green{--tone:#2e7d4f;--tone-ink:#fff}.lvl-white{--tone:#fff;--tone-ink:#22212b}.tone-red{--tone:#b3261e}.tone-pink{--tone:#c2185b}.tone-yellow{--tone:#e0a800}.tone-green{--tone:#2e7d4f}.tone-white{--tone:#d8d3dc}.tone-none{--tone:transparent}.er-level{background:var(--tone);color:var(--tone-ink);white-space:nowrap;border:1px solid var(--tone);border-radius:3px;align-items:center;gap:4px;padding:0 8px 0 0;font-size:12px;font-weight:700;line-height:1.8;display:inline-flex}.er-level b{background:#0000002e;padding:0 6px}.er-level.lvl-white{border-color:#b9b3c2}.er-level.lvl-white b{background:var(--stock)}.er-level.none{background:var(--stock);color:var(--muted);border:1px dashed var(--rule-strong);padding:0 8px}.board-zone{margin-bottom:14px}.board-zone h2{color:var(--print);margin-bottom:4px;font-size:13px;font-weight:700}.board{border:1px solid var(--rule-strong);background:var(--sheet);display:grid}.board>li+li{border-top:1px solid var(--rule)}.board>li.muted{padding:10px 12px}.bed-row{text-align:left;border-left:8px solid var(--tone,transparent);grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:56px;padding:6px 10px 6px 0;display:grid}.bed-row.vacant{color:var(--muted);border-left-color:#0000}.bed-row.on{background:var(--pen-soft);box-shadow:inset 0 0 0 2px var(--pen)}.bed-code{color:var(--print);justify-self:center;font-size:16px;font-weight:700}.bed-body{gap:2px;min-width:0;display:grid}.bed-top{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.bed-top strong{overflow-wrap:anywhere}.bed-body small{color:var(--muted);overflow-wrap:anywhere;font-size:13px}.bed-tags{flex-wrap:wrap;gap:4px;display:flex}.bed-tags:empty{display:none}.bed-clock{color:var(--muted);text-align:right;white-space:nowrap;font-size:12px}.bed-clock.late{color:var(--red);font-weight:700}.er-times{grid-template-columns:repeat(4,minmax(0,1fr))}.mar li{border-bottom:1px dotted var(--rule-strong);justify-content:space-between;align-items:center;gap:10px;padding:8px 0;display:flex}.mar small{color:var(--muted);font-size:13px;display:block}.given{color:var(--green);white-space:nowrap;font-size:13px;font-weight:700}.er-levels .level span{border-left:8px solid var(--tone);flex-direction:column;justify-content:center;align-items:flex-start;gap:0;padding:4px 12px;line-height:1.4}.er-levels .level small{color:var(--muted);font-size:12px;font-weight:400}.er-levels .level input:checked+span small{color:#fff}.tools{align-items:flex-end;gap:10px;display:flex}.tools .field{flex:1}.dialog-actions.start{justify-content:flex-start;margin-top:0}optgroup{font-style:normal;font-weight:700}@media (width<=900px){.er-desk{grid-template-columns:1fr}}@media (width<=520px){.level-tally{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}.level-tally li{text-align:center;grid-template-columns:1fr;padding:4px}.level-tally b{color:var(--muted);grid-row:auto;font-size:11px;font-weight:600}.level-tally b:before{content:"ระดับ ";font-family:Sarabun,sans-serif}.level-tally strong{font-size:18px}.modules a{white-space:nowrap;padding:0 4px;font-size:14px}.level-tally span{display:none}.bed-row{grid-template-columns:40px minmax(0,1fr)}.bed-clock{text-align:left;grid-column:2}.er-times{grid-template-columns:repeat(2,minmax(0,1fr))}.er-times li:nth-child(3){border-left:0}.er-times li:nth-child(4){border-left:1px solid var(--rule-strong)}.er-times li:nth-child(n+3){border-top:1px solid var(--rule-strong)}.er-head{flex-direction:column}}.t-q.er-q{color:var(--red);align-content:center;justify-items:center;line-height:1.1;display:grid}.t-q.er-q small{letter-spacing:0;font-size:11px}.box .er-level{color:var(--tone-ink);margin-top:4px}.box .er-level b{color:inherit;font-size:12px;font-weight:700;display:inline}.t-q.ipd-q{color:var(--pen-dark)}.ward-desk{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}.here-ward{box-shadow:inset 0 0 0 2px var(--rule-strong)}.beds{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px;display:grid}.bed-tile{background:var(--sheet);border:1px solid var(--rule-strong);border-top:4px solid var(--print);text-align:left;align-content:start;gap:2px;width:100%;height:100%;min-height:96px;padding:8px 10px;display:grid}.bed-tile.vacant{border-top-color:var(--rule);color:var(--muted);border-style:dashed}.bed-tile.on{background:var(--pen-soft);box-shadow:inset 0 0 0 2px var(--pen)}.bed-tile strong{overflow-wrap:anywhere;line-height:1.4}.bed-tile small{color:var(--muted);font-size:13px;line-height:1.4}.tile-head{justify-content:space-between;align-items:baseline;display:flex}.tile-bed{color:var(--print);font-size:17px;font-weight:700}.tile-day{color:var(--muted);font-size:12px}.tpr svg{border:1px solid var(--rule-strong);background:#fff;width:100%;height:auto;display:block}.tpr .g{stroke:var(--rule);stroke-width:1px}.tpr .g.day{stroke:var(--rule-strong);stroke-dasharray:3 3}.tpr .axis{font:500 11px var(--mono);fill:var(--muted)}.tpr .axis.t{fill:var(--pen-dark)}.tpr .axis.p{fill:var(--print)}.tpr .fever{stroke:var(--amber);stroke-width:1.5px;stroke-dasharray:6 4}.tpr .fever-label{fill:var(--amber);font-family:Sarabun,sans-serif}.tpr .temp-line{fill:none;stroke:var(--pen);stroke-width:2.2px}.tpr .temp-dot{fill:var(--pen)}.tpr .pulse-line{fill:none;stroke:var(--print);stroke-width:1.6px;stroke-dasharray:5 3}.tpr .pulse-dot{fill:#fff;stroke:var(--print);stroke-width:1.5px}.tpr-key{flex-wrap:wrap;gap:4px 16px;margin-top:6px;font-size:13px;display:flex}.key-t:before,.key-p:before{content:"";vertical-align:middle;border-top:3px solid var(--pen);width:18px;height:0;margin-right:6px;display:inline-block}.key-p:before{border-top:2px dashed var(--print)}.sub-details{margin-top:10px}.sub-details>summary{cursor:pointer;min-height:44px;color:var(--pen);align-items:center;font-weight:600;display:flex}.table-scroll{overflow-x:auto}.vitals-table{border-collapse:collapse;width:100%;font-size:13px}.vitals-table th,.vitals-table td{border-bottom:1px dotted var(--rule-strong);text-align:right;white-space:nowrap;padding:4px 8px}.vitals-table th:first-child,.vitals-table td:first-child{text-align:left}.vitals-table th{color:var(--print);font-size:12px}.vitals-table .hot{color:var(--amber);font-weight:700}.work.compact{margin-top:12px;padding:12px}.mar-list{gap:8px;display:grid}.mar-list>li{border:1px solid var(--rule);background:#fff;padding:8px 10px}.mar-list>li.stopped{opacity:.65}.mar-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.mar-head small{color:var(--muted);font-size:13px;display:block}.rounds{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.round{border:1px solid var(--rule);border-radius:3px;flex-wrap:wrap;align-items:center;gap:4px 8px;min-height:32px;padding:2px 8px;font-size:13px;display:inline-flex}.round b{font-size:13px}.round.given{background:var(--green-soft);color:var(--green);border-color:#b9dcc2}.round.held{background:var(--stock);color:var(--muted)}.round.upcoming{color:var(--muted);border-style:dashed}.round.due{background:var(--amber-soft);color:var(--amber);border-color:#e3c27a}.round.late{background:var(--red-soft);color:var(--red);border-color:#efb3ac;font-weight:600}.ghost-button.small{min-height:44px;padding:0 12px}.notes li{border-bottom:1px dotted var(--rule-strong);grid-template-columns:110px minmax(0,1fr);gap:10px;padding:6px 0;display:grid}.notes li.muted{display:block}.notes .mono{color:var(--print);font-size:13px;font-weight:600}.note-form{gap:8px;margin-top:10px;display:grid}.work.dc>summary{cursor:pointer;min-height:44px;color:var(--pen-dark);align-items:center;font-weight:700;display:flex}.work.dc[open]>summary{margin-bottom:10px}#dc-form{gap:12px;display:grid}@media (width<=900px){.ward-desk{grid-template-columns:1fr}}@media (width<=520px){.notes li{grid-template-columns:1fr;gap:2px}.beds{gap:6px}}.records-desk{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.tally-strip{border:1px solid var(--rule-strong);background:var(--sheet);grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:10px;display:grid}.tally-strip div{padding:6px 10px}.tally-strip div+div{border-left:1px solid var(--rule-strong)}.tally-strip dt{color:var(--print);font-size:12px;font-weight:700}.tally-strip dd{font-size:16px;font-weight:700}.rec-actions{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.t-q.kind-opd{color:var(--print)}.t-q.kind-er{color:var(--red)}.t-q.kind-ipd{color:var(--pen-dark)}.t-q.kind-opd,.t-q.kind-er,.t-q.kind-ipd{font-size:16px}.kind-stamp{border:2px solid;border-radius:3px;padding:4px 10px;font-size:22px;font-weight:700;line-height:1.2}.kind-stamp.kind-opd{color:var(--print)}.kind-stamp.kind-er{color:var(--red)}.kind-stamp.kind-ipd{color:var(--pen-dark)}.summary-sheet{border:1px solid var(--rule-strong);background:#fff;gap:12px;margin-top:14px;padding:14px;display:grid}.summary-sheet h3{color:var(--print);font-size:13px;font-weight:700}.pdx-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.code-boxes{gap:2px;padding-bottom:2px;display:flex}.code-boxes span{border:1.5px solid var(--print);width:30px;height:40px;color:var(--pen-dark);background:var(--sheet);place-items:center;font-size:20px;font-weight:700;display:grid}.edits{gap:4px;display:grid}.edits li{border-left:4px solid;padding:6px 10px;font-size:14px}.edits li b{margin-right:6px}.edits .error{border-color:var(--red);background:var(--red-soft);color:var(--red)}.edits .warn{border-color:var(--amber);background:var(--amber-soft);color:var(--amber)}.edits .ok{border-color:var(--green);background:var(--green-soft);color:var(--green)}.drg{border:1px dashed var(--pen);background:var(--pen-soft);padding:10px 12px}.drg dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:6px 0;display:grid}.drg dt{color:var(--muted);font-size:12px}.drg dd{font-weight:700}.claim-facts{gap:6px;display:grid}.claim-facts div{grid-template-columns:130px minmax(0,1fr);gap:10px;display:grid}.claim-facts dt{color:var(--muted);font-size:13px}.claim-facts .denied dd{color:var(--red);font-weight:600}#send-one{margin-top:10px}dialog.wide{width:min(900px,100vw - 24px)}dialog.wide .chips-row{margin:10px 0}#x-text{max-height:46dvh}@media (width<=900px){.records-desk{grid-template-columns:1fr}.modules{scrollbar-width:none;overflow-x:auto}.modules a{flex:none;padding:0 12px}}@media (width<=520px){.tally-strip{grid-template-columns:1fr}.tally-strip div+div{border-left:0;border-top:1px solid var(--rule-strong)}.pdx-row{grid-template-columns:1fr}.drg dl{grid-template-columns:1fr 1fr}.claim-facts div{grid-template-columns:1fr;gap:0}}.badge-card{border:1px solid var(--rule-strong);background:#fff;border-radius:4px;align-items:center;gap:10px;min-width:0;padding:4px 4px 4px 0;display:flex}.badge-role{background:var(--print);color:#fff;white-space:nowrap;border-radius:3px 0 0 3px;align-self:stretch;place-items:center;padding:0 10px;font-size:14px;font-weight:600;display:grid}.badge-name{min-width:0;line-height:1.35;display:grid}.badge-name strong{overflow-wrap:anywhere;font-size:14px}.badge-name small{color:var(--muted);font-size:12px}.masthead.staff .clock{margin-left:0}.masthead.staff .badge-card{margin-left:auto}.route.few ol{grid-template-columns:repeat(auto-fit,minmax(160px,240px))}.restricted{border:1px dashed var(--rule-strong);background:var(--stock);padding:10px 12px}.amended{color:var(--print);margin-top:8px;font-size:13px;font-weight:600}.amended:before{content:"แก้ไข";border:1.5px solid var(--print);border-radius:3px;margin-right:8px;padding:0 6px;font-size:12px}.block-actions{flex-wrap:wrap;gap:0 16px;display:flex}.block-actions:not(:has(button:not([hidden]))){display:none}body[aria-busy=true] .pen-button{opacity:.6;cursor:progress}.signin{grid-template-columns:minmax(0,420px) minmax(0,1fr);align-items:start;gap:28px;display:grid}.signin form{gap:14px;display:grid}.signin .pen-button{justify-self:stretch}.accounts{font-size:14px}.accounts h2{margin-bottom:8px;font-size:17px}.accounts dl{border-top:1px solid var(--rule);grid-template-columns:auto minmax(0,1fr);display:grid}.accounts dt,.accounts dd{border-bottom:1px dotted var(--rule-strong);padding:6px 10px 6px 0}.accounts dt{font-family:var(--mono);color:var(--print);font-weight:600}.notice{border-left:4px solid var(--pen);background:var(--pen-soft);margin-bottom:4px;padding:10px 12px;font-size:14px}.ledger-tools{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:10px 14px;margin-bottom:14px;display:grid}.ledger-tools .actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px 16px;display:flex}.chain{font-size:14px}.chain.ok{color:var(--green);font-weight:600}.chain.broken{color:var(--red);font-weight:600}.ledger{border-collapse:collapse;background:#fff;width:100%;font-size:14px}.ledger th{text-align:left;color:var(--print);border-bottom:2px solid var(--print);white-space:nowrap;padding:6px 8px;font-size:12px;font-weight:600}.ledger td{border-bottom:1px solid var(--rule);vertical-align:top;padding:7px 8px}.ledger td small{color:var(--muted);font-size:12px;display:block}.ledger .detail{overflow-wrap:anywhere;max-width:360px;color:var(--muted)}.outcome{white-space:nowrap;border-radius:3px;padding:0 6px;font-size:13px;font-weight:600;display:inline-block}.outcome.ok{background:var(--green-soft);color:var(--green)}.outcome.denied,.outcome.error,.outcome.failed{background:var(--red-soft);color:var(--red)}.outcome.rejected,.outcome.conflict,.outcome.invalid,.outcome.expired{background:var(--amber-soft);color:var(--amber)}@media (width<=900px){.masthead.staff .badge-card{order:2}.signin{grid-template-columns:1fr}.ledger-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.ledger thead{display:none}.ledger,.ledger tbody,.ledger tr,.ledger td{display:block}.ledger tr{border-bottom:1px solid var(--rule-strong);padding:8px 0}.ledger td{border:0;grid-template-columns:88px minmax(0,1fr);gap:8px;padding:2px 10px;display:grid}.ledger td:before{content:attr(data-label);color:var(--print);font-size:12px;font-weight:600}.ledger .detail{max-width:none}}@media (width<=520px){.badge-role{padding:0 8px;font-size:13px}.ledger-tools{grid-template-columns:1fr}}
