@import "https://fonts.googleapis.com/css2?family=Inter:wght@500;600;700&family=Noto+Sans+Thai:wght@400;500;600;700&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--pine:#0b5d4b;--pine-strong:#07483b;--canvas:#f4f8f5;--surface:#fff;--ink:#17332a;--muted:#5f746d;--line:#cfe0d9;--mint:#dff3eb;--mint-soft:#edf8f4;--amber:#f2b544;--amber-soft:#fff6df;--danger:#b42318;--danger-soft:#fff0ee;--focus:#1879b9;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;color:var(--ink);background:var(--canvas);font-synthesis:none;font-family:Noto Sans Thai,Leelawadee UI,Tahoma,sans-serif;font-size:18px;line-height:1.6}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:#8aa79d var(--canvas);scrollbar-width:auto}body{background:var(--canvas);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--pine)}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.02em;line-height:1.25}h1{font-size:clamp(1.9rem,4vw,3rem)}h2{font-size:clamp(1.4rem,2.5vw,1.85rem)}h3{font-size:1.18rem}svg{flex:none}::-webkit-scrollbar{width:14px;height:14px}::-webkit-scrollbar-track{background:var(--canvas)}::-webkit-scrollbar-thumb{border:3px solid var(--canvas);background:#8aa79d;border-radius:999px}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:999;background:var(--surface);border:2px solid var(--pine);border-radius:var(--radius-sm);padding:.6rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.site-header{background:var(--surface);border-bottom:1px solid var(--line);z-index:20;justify-content:space-between;align-items:center;gap:24px;min-height:82px;padding:12px max(20px,50vw - 620px);display:flex;position:relative}.brand{color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{background:var(--pine);color:#fff;border-radius:15px 15px 15px 5px;place-items:center;width:48px;height:48px;display:grid}.brand-mark svg{width:27px;height:27px}.brand strong,.brand small{display:block}.brand strong{font:700 1.08rem/1.2 Inter,Noto Sans Thai,sans-serif}.brand small{color:var(--muted);font-size:.78rem}.site-header nav{align-items:center;gap:8px;display:flex}.site-header nav a{min-height:48px;color:var(--muted);border-radius:var(--radius-sm);align-items:center;gap:8px;padding:10px 16px;font-weight:600;text-decoration:none;display:flex}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--pine-strong);background:var(--mint-soft)}.site-header nav svg{width:20px}.mobile-menu{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);place-items:center;width:48px;height:48px;display:none}.site-footer{color:var(--muted);text-align:center;border-top:1px solid var(--line);background:var(--surface);padding:30px 20px;font-size:.85rem}.button{border-radius:var(--radius-md);border:2px solid #0000;justify-content:center;align-items:center;gap:9px;min-height:52px;padding:11px 20px;font-weight:700;line-height:1.3;transition:background-color .15s,border-color .15s,transform .15s;display:inline-flex}.button svg{width:21px;height:21px}.button:hover:not(:disabled){transform:translateY(-1px)}.button-primary{background:var(--pine);color:#fff;border-color:var(--pine)}.button-primary:hover:not(:disabled){background:var(--pine-strong);border-color:var(--pine-strong)}.button-secondary{background:var(--surface);color:var(--pine-strong);border-color:var(--line)}.button-secondary:hover:not(:disabled),.button-quiet:hover:not(:disabled){background:var(--mint-soft);border-color:var(--pine)}.button-quiet{color:var(--pine-strong);background:0 0;border-color:#0000}.button-dangerQuiet{color:var(--danger);background:var(--surface);border-color:#ecc7c2}.button-dangerQuiet:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger)}.spin{animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.eyebrow{color:var(--pine);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font:700 .76rem/1.4 Inter,Noto Sans Thai,sans-serif}.public-main{width:min(100% - 32px,800px);min-height:70vh;margin:0 auto;padding:60px 0 80px}.public-hero{text-align:center;margin-bottom:34px}.public-hero h1{margin-bottom:12px}.public-hero>p:not(.eyebrow){max-width:650px;color:var(--muted);margin:0 auto 18px;font-size:1.08rem}.trust-row{color:var(--pine-strong);flex-wrap:wrap;justify-content:center;gap:10px 24px;font-size:.87rem;font-weight:600;display:flex}.trust-row span{align-items:center;gap:7px;display:flex}.trust-row svg{width:19px}.care-steps{grid-template-columns:repeat(4,1fr);gap:5px;margin:0 0 26px;padding:0;list-style:none;display:grid;position:relative}.care-steps:before{content:"";z-index:0;background:var(--line);height:4px;position:absolute;top:20px;left:12%;right:12%}.care-steps li{z-index:1;color:var(--muted);text-align:center;justify-items:center;gap:7px;font-size:.78rem;display:grid}.care-steps li>span{background:var(--surface);border:3px solid var(--line);border-radius:999px;place-items:center;width:42px;height:42px;font:700 .83rem Inter,sans-serif;display:grid}.care-steps li>span svg{width:19px}.care-steps li.active,.care-steps li.done{color:var(--pine-strong)}.care-steps li.active>span{background:var(--pine);color:#fff;border-color:var(--pine)}.care-steps li.done>span{background:var(--mint);color:var(--pine);border-color:var(--pine)}.booking-panel,.confirmation-card,.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(24px,5vw,44px)}.section-heading{align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.section-heading h2{margin-bottom:6px}.section-heading p:last-child{color:var(--muted);margin-bottom:0}.icon-box{width:50px;height:50px;color:var(--pine);background:var(--mint);border-radius:14px 14px 14px 5px;place-items:center;display:grid}.icon-box svg{width:26px}.choice-grid,.slot-list{border:0;gap:12px;margin:0;padding:0;display:grid}.month-picker{background:var(--mint-soft);border:1px solid var(--line);border-radius:var(--radius-md);grid-template-columns:190px minmax(220px,1fr);align-items:center;gap:6px 14px;margin-bottom:18px;padding:16px;display:grid}.month-picker label{font-weight:700}.month-picker select{border:2px solid var(--line);border-radius:var(--radius-md);background:#fff;min-height:52px;padding:9px 13px;font-weight:700}.month-picker small{color:var(--muted);grid-column:2}.choice-card,.slot-card{border:2px solid var(--line);border-radius:var(--radius-md);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;min-height:96px;padding:18px;transition:border-color .15s,background-color .15s;display:grid;position:relative}.choice-card:hover,.slot-card:hover{background:var(--mint-soft);border-color:#8ebbad}.choice-card.selected,.slot-card.selected{border-color:var(--pine);background:var(--mint-soft)}.choice-card input,.slot-card input{opacity:0;pointer-events:none;position:absolute}.choice-check,.radio-mark{color:#0000;background:#fff;border:2px solid #8aa79d;border-radius:8px;place-items:center;width:29px;height:29px;display:grid}.radio-mark{border-radius:999px}.choice-check svg{width:18px}.selected .choice-check{color:#fff;background:var(--pine);border-color:var(--pine)}.selected .radio-mark{border:8px solid var(--pine)}.choice-card strong,.choice-card small,.slot-card strong,.slot-card small{display:block}.choice-card small,.slot-card small{color:var(--muted)}.choice-card .product-type{color:var(--pine);margin:3px 0 1px;font-weight:700}.slot-card small{align-items:center;gap:5px;margin-top:4px;display:flex}.slot-card small svg{width:17px}.choice-card b,.slot-card b{color:var(--pine-strong);white-space:nowrap}.future-service{background:var(--amber-soft);border-radius:var(--radius-md);border:1px solid #ead59d;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;margin-top:22px;padding:18px;display:grid}.future-service>svg{color:#8b5d00}.future-service p{color:#6e6040;margin:2px 0 0;font-size:.85rem}.future-service>span{color:#654400;background:#ffe6a7;border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:700}.form-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.field{flex-direction:column;gap:7px;display:flex}.field label{font-weight:700}.field input,.field select,.field textarea,.staff-filters input,.export-controls input,.hn-action input{border:2px solid var(--line);border-radius:var(--radius-md);background:#fff;width:100%;min-height:54px;padding:11px 14px}.field textarea{resize:none;min-height:108px}.calendar-toggle{background:#e8efeb;border-radius:11px;gap:3px;width:fit-content;padding:3px;display:flex}.calendar-toggle button{min-width:72px;min-height:40px;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:6px 14px;font-weight:700}.calendar-toggle button:hover{color:var(--pine-strong);background:#fff9}.calendar-toggle button.active{color:#fff;background:var(--pine)}.field input:hover,.field select:hover,.field textarea:hover{border-color:#8ebbad}.field input[aria-invalid=true],.field-error input{border-color:var(--danger);background:var(--danger-soft)}.field small{color:var(--muted);font-size:.78rem}.required,.error-text{color:var(--danger)!important}.error-text{align-items:flex-start;gap:5px;font-weight:600;display:flex}.error-text svg{width:18px;margin-top:4px}.block-error{margin:10px 0 0}.form-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:12px;margin-top:30px;padding-top:22px;display:flex}.form-actions .button-primary{min-width:170px}.review-list{border:1px solid var(--line);border-radius:var(--radius-md);margin:0;overflow:hidden}.review-list div{border-bottom:1px solid var(--line);grid-template-columns:190px 1fr;gap:12px;padding:13px 17px;display:grid}.review-list div:last-child{border:0}.review-list dt{color:var(--muted)}.review-list dd{margin:0;font-weight:700}.consent-box{background:var(--mint-soft);border:2px solid var(--line);border-radius:var(--radius-md);cursor:pointer;align-items:flex-start;gap:13px;margin-top:20px;padding:18px;display:flex}.consent-box.has-error{border-color:var(--danger);background:var(--danger-soft)}.consent-box input{width:24px;height:24px;accent-color:var(--pine);margin-top:3px}.consent-box strong,.consent-box small{display:block}.consent-box small{color:var(--muted)}.inline-error{color:var(--danger);background:var(--danger-soft);border-left:5px solid var(--danger);border-radius:var(--radius-sm);margin:16px 0;padding:13px 16px;font-weight:600}.confirmation-page{place-items:start center;display:grid}.confirmation-card{text-align:center;width:100%}.confirmation-icon{background:var(--mint);width:74px;height:74px;color:var(--pine);border:3px solid var(--pine);border-radius:999px;place-items:center;margin:0 auto 18px;display:grid}.confirmation-icon svg{width:39px;height:39px}.confirmation-code-label{color:var(--muted);margin-bottom:2px}.confirmation-code{color:var(--pine-strong);letter-spacing:.08em;margin-bottom:22px;font:700 clamp(1.7rem,7vw,2.7rem)/1.2 Inter,sans-serif;display:block}.appointment-summary{background:var(--mint-soft);border:1px solid var(--line);border-radius:var(--radius-md);text-align:left;justify-content:center;align-items:center;gap:13px;max-width:520px;margin:0 auto 20px;padding:17px;display:flex}.appointment-summary svg{color:var(--pine)}.appointment-summary small,.appointment-summary strong{display:block}.plain-list{text-align:left;width:fit-content;margin:0 auto 25px}.loading{min-height:220px;color:var(--muted);justify-content:center;align-items:center;gap:12px;display:flex}.loading svg{width:30px;height:30px;color:var(--pine)}.state-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);align-items:flex-start;gap:16px;min-height:150px;padding:25px;display:flex}.state-panel>svg{width:30px;height:30px;color:var(--pine)}.state-panel h2{margin-bottom:4px}.state-panel p{color:var(--muted);margin-bottom:14px}.state-error{background:var(--danger-soft);border-color:#ecc7c2}.state-error>svg{color:var(--danger)}.staff-auth{align-content:start;justify-items:center;gap:16px;min-height:72vh;padding:60px 20px;display:grid}.auth-card{text-align:center;width:min(100%,540px)}.auth-card>p:not(.eyebrow){color:var(--muted)}.auth-card .button{width:100%;margin:10px 0 15px}.auth-card>small{color:var(--muted);display:block}.auth-icon{background:var(--pine);color:#fff;border-radius:20px 20px 20px 6px;place-items:center;width:65px;height:65px;margin:0 auto 16px;display:grid}.auth-icon svg{width:34px}.staff-shell{background:#edf3ef;grid-template-columns:235px minmax(0,1fr);min-height:calc(100vh - 82px);display:grid}.staff-sidebar{color:#fff;background:var(--pine-strong);padding:25px 14px}.staff-sidebar>p{color:#bcd7ce;text-transform:uppercase;letter-spacing:.07em;margin:0 11px 10px;font-size:.76rem;font-weight:700}.staff-sidebar nav{gap:6px;display:grid}.staff-sidebar button{color:#d8e9e3;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:56px;padding:12px;font-weight:600;display:flex}.staff-sidebar button:hover{background:#ffffff14}.staff-sidebar button.active{color:var(--pine-strong);background:#fff}.staff-sidebar svg{width:23px}.staff-workspace{min-width:0}.staff-topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:20px;min-height:94px;padding:18px clamp(20px,4vw,45px);display:flex}.staff-topbar h1{margin:0;font-size:1.55rem}.staff-identity{align-items:center;gap:15px;display:flex}.staff-identity span{text-align:right}.staff-identity strong,.staff-identity small{display:block}.staff-identity small{color:var(--muted);font-size:.78rem}.staff-content{width:min(100%,1260px);margin:0 auto;padding:34px clamp(18px,4vw,45px) 80px}.view-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.view-heading h2{margin-bottom:5px}.view-heading p:last-child{color:var(--muted)}.staff-filters,.export-controls{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;grid-template-columns:245px 1fr;align-items:end;gap:14px;margin-bottom:16px;padding:16px;display:grid}.staff-filters label,.export-controls label{gap:5px;font-size:.8rem;font-weight:700;display:grid}.search-field{border:2px solid var(--line);border-radius:var(--radius-md);background:#fff;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;min-height:54px;padding:0 12px;display:grid}.search-field:focus-within{outline:3px solid var(--focus);outline-offset:2px}.search-field>svg{color:var(--muted)}.search-field input{background:0 0;border:0;outline:0;min-width:0}.search-field button{background:0 0;border:0;border-radius:8px;place-items:center;width:40px;height:40px;display:grid}.search-field button:hover{background:var(--mint)}.search-field button svg{width:20px}.result-summary{color:var(--muted);justify-content:space-between;margin:10px 3px 13px;display:flex}.result-summary strong{color:var(--ink)}.patient-list{gap:14px;transition:opacity .15s;display:grid}.patient-list.is-refreshing{opacity:.65}.patient-card{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;grid-template-columns:16px minmax(0,1fr);min-width:0;display:grid;overflow:hidden}.patient-order{background:var(--mint);position:relative}.patient-order:before,.patient-order:after{content:"";background:var(--pine);width:4px;height:calc(50% - 8px);position:absolute;left:6px}.patient-order:before{top:0}.patient-order:after{bottom:0}.patient-order span{z-index:1;border:3px solid var(--pine);background:#fff;border-radius:999px;width:10px;height:10px;position:absolute;top:calc(50% - 5px);left:3px}.patient-main{min-width:0;padding:20px}.patient-title{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.patient-title h3{margin-bottom:2px}.patient-title p{color:var(--muted);overflow-wrap:anywhere;margin-bottom:0}.patient-title p strong{color:var(--pine);font-family:Inter,sans-serif}.status{width:fit-content;color:var(--ink);white-space:nowrap;background:#eef2f0;border:1px solid #c8d4d0;border-radius:999px;padding:4px 11px;font-size:.76rem;font-weight:700}.status.good{color:#075542;background:var(--mint);border-color:#9fcfbe}.status.attention{color:#704b00;background:var(--amber-soft);border-color:#e5c677}.status.danger{color:var(--danger);background:var(--danger-soft);border-color:#ecc7c2}.patient-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 20px;margin:18px 0 0;display:grid}.patient-details div{min-width:0}.patient-details dt{color:var(--muted);font-size:.76rem}.patient-details dd{overflow-wrap:anywhere;margin:0;font-weight:600}.quality-note,.permission-note{color:#704b00;background:var(--amber-soft);border-radius:var(--radius-sm);margin:15px 0 0;padding:9px 12px;font-size:.8rem}.permission-note{color:var(--muted);background:#eef2f0}.dose-guidance{background:var(--mint-soft);border:1px solid #9fcfbe;border-radius:12px;margin-top:15px;padding:14px}.dose-guidance>strong{color:var(--pine-strong);align-items:center;gap:8px;margin-bottom:8px;display:flex}.dose-guidance>strong svg{width:21px}.dose-guidance>div{border-top:1px solid #c8ddd5;grid-template-columns:minmax(180px,1fr) auto;gap:2px 14px;padding:9px 0;display:grid}.dose-guidance span,.dose-guidance b{font-weight:800}.dose-guidance b{color:var(--pine-strong);font-size:1.05rem}.dose-guidance small{color:var(--muted);grid-column:1/-1}.patient-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:9px;margin-top:18px;padding-top:17px;display:flex}.patient-actions .button{min-height:50px}.hn-action{grid-template-columns:minmax(150px,240px) auto;align-items:end;gap:7px 10px;width:100%;display:grid}.hn-action label{grid-column:1/-1;font-weight:700}.load-more{text-align:center;margin-top:20px}.toast{z-index:100;color:#fff;background:var(--pine-strong);border-radius:var(--radius-md);opacity:0;align-items:center;gap:9px;max-width:min(400px,100vw - 48px);padding:14px 18px;transition:all .2s;display:flex;position:fixed;bottom:24px;right:24px;transform:translateY(150%);box-shadow:0 8px 30px #07483b40}.toast-show{opacity:1;transform:translateY(0)}.vaccine-day-panel,.product-panel{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;margin-bottom:24px;padding:clamp(20px,3vw,30px)}.vaccine-day-controls{grid-template-columns:minmax(220px,1fr) minmax(180px,260px);gap:16px;margin-bottom:20px;display:grid}.vaccine-day-controls label,.product-form label,.offering-fields label{color:var(--ink);gap:6px;font-size:.82rem;font-weight:800;display:grid}.offering-list{gap:10px;margin-bottom:20px;display:grid}.offering-row{opacity:.75;background:#f6f8f7;border:2px solid #0000;border-radius:14px;grid-template-columns:minmax(240px,1.25fr) minmax(380px,1fr);align-items:center;gap:18px;padding:16px;display:grid}.offering-row.is-active{background:var(--mint-soft);opacity:1;border-color:#9fcfbe}.offering-toggle{cursor:pointer;align-items:center;gap:13px;min-width:0;display:flex}.offering-toggle input,.apply-future input{width:24px;height:24px;accent-color:var(--pine);flex:none}.offering-toggle strong,.offering-toggle small,.apply-future strong,.apply-future small{display:block}.offering-toggle strong{font-size:1rem}.offering-toggle small,.apply-future small{color:var(--muted)}.offering-fields{grid-template-columns:repeat(3,minmax(95px,1fr));gap:10px;display:grid}.offering-fields input{min-height:48px}.apply-future{background:var(--amber-soft);cursor:pointer;border-radius:12px;align-items:center;gap:13px;margin-bottom:18px;padding:15px;display:flex}.product-panel>div{margin-bottom:20px}.product-panel h2{margin-bottom:5px}.product-panel p:last-child{color:var(--muted)}.product-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:15px;display:grid}.product-form select{border:2px solid var(--line);border-radius:var(--radius-md);min-height:54px;font:inherit;background:#fff;padding:10px 13px}.product-form .button{justify-self:start}.export-controls{grid-template-columns:minmax(210px,270px) auto auto;justify-content:start}.print-sheet{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;margin-top:20px;padding:28px;overflow-x:auto}.print-title{justify-content:space-between;align-items:center;gap:24px;margin-bottom:14px;display:flex}.print-brand{align-items:center;gap:13px;display:flex}.print-brand>img{object-fit:contain;width:62px;height:62px;display:block}.print-title h1{margin:0;font-size:1.65rem}.print-title p{color:var(--muted);margin:0;font-weight:700}.print-date{text-align:right;background:var(--mint-soft);border:1px solid var(--line);border-radius:12px;min-width:260px;padding:11px 15px}.print-date small,.print-date strong,.print-date span{display:block}.print-date small{color:var(--muted);font-weight:700}.print-date strong{color:var(--pine-strong);font-size:1.22rem}.print-date span{font-weight:700}.print-instruction{border-left:5px solid var(--pine);background:#f2f5f3;border-radius:6px;gap:12px;margin-bottom:12px;padding:9px 13px;display:flex}.print-instruction strong{white-space:nowrap}.print-instruction span{color:var(--muted)}.print-sheet table{table-layout:fixed;border-collapse:collapse;width:100%;min-width:1080px;font-size:.82rem;line-height:1.45}.print-sheet th,.print-sheet td{text-align:left;vertical-align:middle;overflow-wrap:anywhere;border:1px solid #7f928b;padding:9px 8px}.print-sheet th{color:#092f26;text-align:center;background:#dcebe5;font-weight:800}.print-sheet th small{font-weight:600}.print-sheet td small{color:var(--muted);display:block}.col-order{width:5%}.col-person{width:19%}.col-id{width:13%}.col-birth{width:11%}.col-phone{width:12%}.col-service{width:22%}.col-hn{width:12%}.col-check{width:6%}.print-number{font-variant-numeric:tabular-nums lining-nums;letter-spacing:.025em;font-family:Inter,Noto Sans Thai,sans-serif}.id-number,.phone-number,.hn-number{white-space:nowrap}.name-cell>strong{font-size:1.02rem;display:block}.order-cell,.check-cell{text-align:center!important}.order-cell strong{font:800 1.05rem/1 Inter,sans-serif}.check-cell span{font:400 1.55rem/1 Inter,sans-serif;display:inline-block}.print-foot{color:var(--muted);justify-content:space-between;gap:20px;margin:9px 0 0;font-size:.7rem;display:flex}@media (width<=820px){.mobile-menu{display:grid}.site-header nav{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;padding:10px;display:none;position:absolute;top:76px;left:12px;right:12px;box-shadow:0 12px 30px #17332a26}.site-header nav.nav-open{display:grid}.staff-shell{grid-template-columns:1fr}.staff-sidebar{z-index:10;padding:9px;position:sticky;top:0;overflow-x:auto}.staff-sidebar>p{display:none}.staff-sidebar nav{gap:6px;width:max-content;display:flex}.staff-sidebar button{white-space:nowrap;width:auto;min-height:50px}.staff-sidebar button.active{background:var(--mint)}.staff-topbar{min-height:78px}.staff-topbar>div:first-child{display:none}.staff-identity{justify-content:space-between;width:100%}.staff-identity span{text-align:left}.staff-filters{grid-template-columns:1fr}.patient-details,.export-controls{grid-template-columns:1fr 1fr}.export-controls label{grid-column:1/-1}.offering-row,.product-form{grid-template-columns:1fr}}@media (width<=580px){:root{font-size:17px}.site-header{min-height:72px}.brand-mark{width:44px;height:44px}.public-main{width:min(100% - 22px,800px);padding-top:38px}.booking-panel{padding:22px 16px}.care-steps li strong{font-size:.7rem}.care-steps:before{left:10%;right:10%}.section-heading{gap:11px}.icon-box{width:44px;height:44px}.choice-card,.slot-card{grid-template-columns:auto 1fr}.choice-card b,.slot-card b{grid-column:2}.future-service{grid-template-columns:auto 1fr}.future-service>span{grid-column:2;width:fit-content}.form-grid,.month-picker{grid-template-columns:1fr}.month-picker small{grid-column:auto}.review-list div{grid-template-columns:1fr;gap:2px}.form-actions{flex-direction:column-reverse}.form-actions .button{width:100%}.view-heading{display:block}.view-heading .button{width:100%}.staff-content{padding:26px 11px 60px}.staff-identity .button{padding-inline:10px}.staff-identity .button span{display:none}.patient-title{display:grid}.patient-details{grid-template-columns:1fr}.patient-actions{display:grid}.patient-actions .button{width:100%}.hn-action{grid-template-columns:1fr}.hn-action label{grid-column:auto}.export-controls{grid-template-columns:1fr}.export-controls label{grid-column:auto}.export-controls .button{width:100%}.vaccine-day-controls,.offering-fields{grid-template-columns:1fr}}@media print{@page{size:A4 landscape;margin:9mm}:root{font-size:13px}body{background:#fff}.no-print,.state-panel,.toast{display:none!important}.staff-shell,.staff-workspace,.staff-content{background:#fff;width:100%;margin:0;padding:0;display:block}.print-sheet{border:0;margin:0;padding:0;overflow:visible}.print-title{margin-bottom:3mm}.print-brand>img{width:17mm;height:17mm}.print-title h1{font-size:19pt}.print-title p{font-size:11pt}.print-date{border:1px solid #789289;min-width:62mm;padding:2.5mm 4mm}.print-date small{font-size:9pt}.print-date strong{font-size:15pt}.print-date span{font-size:10pt}.print-instruction{border-left-width:1.5mm;margin-bottom:3mm;padding:2mm 3mm;font-size:9.5pt}.print-sheet table{min-width:0;font-size:9.5pt}.print-sheet thead{display:table-header-group}.print-sheet th{font-size:9pt;line-height:1.25}.print-sheet th,.print-sheet td{border-color:#526760;padding:2.2mm 1.7mm}.print-sheet tbody tr{min-height:13mm}.name-cell>strong{font-size:10.5pt}.id-number,.phone-number,.hn-number{letter-spacing:.035em;font-size:10pt}.order-cell strong{font-size:11pt}.check-cell span{font-size:18pt}.print-foot{margin-top:2mm;font-size:7.5pt}.print-sheet tr{break-inside:avoid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.button,.choice-card,.slot-card,.status,.patient-card{border:2px solid buttontext}.choice-card.selected,.slot-card.selected{outline:3px solid highlight}}
