@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-vietnamese-400-normal-CRcqvyg1.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-400-normal-BuGn0gnm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-latin-ext-400-normal-CiZNW1ec.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-400-normal-DYBYyMQr.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-latin-400-normal-PpnXBOrz.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-400-normal-bXgqVju9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-vietnamese-500-normal-DREgrEoJ.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-500-normal-CfdwVo8-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-latin-ext-500-normal-h0Fp6aX0.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-500-normal-CK0UkkKf.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-latin-500-normal-B6LVzGNe.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-500-normal-BJkVuMHw.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-vietnamese-600-normal-nyU-ZL2p.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-600-normal-DkpCIyan.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-latin-ext-600-normal-BNd8euf0.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-600-normal-BeUwKxhG.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-latin-600-normal-BZDkUTrt.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-600-normal-5IO4e7bK.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-vietnamese-700-normal-Csr0PCuG.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-700-normal-By_5yT39.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-latin-ext-700-normal-C8_gqRu2.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-700-normal-4Hjo2OtD.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-latin-700-normal-DlW1Zbsh.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-700-normal-C2EtzaOi.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-navy-900:#111844;--color-indigo-600:#4b5694;--color-blue-400:#7288ae;--color-neutral-100:#ebebeb;--color-white:#fff;--color-border:#d8d8d8;--color-text-muted:#11184499;--color-success:#2e7d4f;--color-warning:#b7791f;--color-danger:#c62828;--font-family-base:"Be Vietnam Pro", system-ui, -apple-system, sans-serif;--font-weight-body:400;--font-weight-body-strong:500;--font-weight-display:600;--font-weight-display-strong:700;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-xxl:32px;--radius-card:12px;--radius-control:8px;--radius-pill:9999px;--row-min-height:40px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-family-base);font-weight:var(--font-weight-body);color:var(--color-navy-900);background:var(--color-neutral-100);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{font-weight:var(--font-weight-display);margin:0 0 var(--space-sm)}.tabular-nums{font-variant-numeric:tabular-nums}a{color:var(--color-indigo-600)}button{font-family:inherit}#root{min-height:100svh}.login-page{background:var(--color-neutral-100);min-height:100%;padding:var(--space-xl);justify-content:center;align-items:center;display:flex}.login-page__card{background:var(--color-white);border-radius:var(--radius-card);width:100%;max-width:360px;padding:var(--space-xxl) var(--space-xl);gap:var(--space-lg);flex-direction:column;display:flex;box-shadow:0 1px 3px #1118441f}.login-page__card h1{color:var(--color-navy-900);font-size:18px}.login-page__card h2{margin-top:calc(-1 * var(--space-md));font-size:22px}.login-page__field{gap:var(--space-xs);font-weight:var(--font-weight-body-strong);flex-direction:column;display:flex}.login-page__field input{min-height:var(--row-min-height);border-radius:var(--radius-control);border:1px solid var(--color-border);padding:0 var(--space-md);font-family:inherit;font-size:16px}.login-page__field input:focus{outline:2px solid var(--color-indigo-600);outline-offset:1px}.login-page__error{color:var(--color-warning);background:var(--color-neutral-100);border:1px solid var(--color-warning);border-radius:var(--radius-control);padding:var(--space-sm) var(--space-md);font-size:14px}.login-page__submit{min-height:var(--row-min-height);border-radius:var(--radius-control);background:var(--color-navy-900);color:var(--color-white);font-weight:var(--font-weight-body-strong);cursor:pointer;border:none;font-size:16px}.login-page__submit:disabled{opacity:.6;cursor:default}.login-page__submit:not(:disabled):hover{background:var(--color-indigo-600)}.page-shell{flex-direction:column;min-height:100%;display:flex}.page-shell__nav{background:var(--color-navy-900);color:var(--color-white);justify-content:space-between;align-items:center;gap:var(--space-lg);padding:var(--space-md) var(--space-xl);min-height:var(--row-min-height);display:flex}.page-shell__brand{font-weight:var(--font-weight-display-strong)}.page-shell__links{gap:var(--space-lg);flex-wrap:wrap;display:flex}.page-shell__link{color:var(--color-blue-400);font-weight:var(--font-weight-body-strong);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-control);text-decoration:none}.page-shell__link:hover{color:var(--color-white)}.page-shell__link--active{background:var(--color-indigo-600);color:var(--color-white)}.page-shell__account{align-items:center;gap:var(--space-md);display:flex}.page-shell__staff-name{color:var(--color-white);font-weight:var(--font-weight-body-strong);white-space:nowrap}.page-shell__logout{min-height:36px;padding:0 var(--space-md);border-radius:var(--radius-control);border:1px solid var(--color-blue-400);color:var(--color-white);font-weight:var(--font-weight-body-strong);cursor:pointer;background:0 0}.page-shell__logout:hover{background:var(--color-indigo-600);border-color:var(--color-indigo-600)}.page-shell__content{padding:var(--space-xl);flex:1;width:100%;max-width:960px;margin:0 auto}.async-state{align-items:center;gap:var(--space-sm);min-height:var(--row-min-height);padding:var(--space-lg);border-radius:var(--radius-card);font-weight:var(--font-weight-body-strong);display:flex}.async-state--loading{color:var(--color-text-muted)}.async-state--empty{color:var(--color-text-muted);background:var(--color-white);border:1px dashed var(--color-border);text-align:center;justify-content:center}.async-state--error{color:var(--color-warning);background:var(--color-white);border:1px solid var(--color-warning)}.async-state__spinner{border:2px solid var(--color-border);border-top-color:var(--color-indigo-600);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite async-state-spin}@keyframes async-state-spin{to{transform:rotate(360deg)}}.dashboard-page__card{background:var(--color-white);border-radius:var(--radius-card);padding:var(--space-xl);margin-bottom:var(--space-xl)}.dashboard-page__greeting{margin:0 0 var(--space-xs);font-size:18px}.dashboard-page__meta{color:var(--color-text-muted);margin:0}.dashboard-page__links{gap:var(--space-md);flex-wrap:wrap;display:flex}.dashboard-page__link{min-height:var(--row-min-height);padding:0 var(--space-lg);border-radius:var(--radius-control);background:var(--color-navy-900);color:var(--color-white);font-weight:var(--font-weight-body-strong);align-items:center;text-decoration:none;display:flex}.dashboard-page__link:hover{background:var(--color-indigo-600)}.queue-page__table{background:var(--color-white);border-radius:var(--radius-card);margin-bottom:var(--space-lg);overflow:hidden}.queue-page__row{align-items:center;gap:var(--space-md);min-height:var(--row-min-height);padding:0 var(--space-lg);grid-template-columns:96px 1fr 128px 112px;display:grid}.queue-page__row--header{background:var(--color-navy-900);color:var(--color-white);font-weight:var(--font-weight-body-strong);text-transform:uppercase;letter-spacing:.02em;font-size:13px}.queue-page__row+.queue-page__row{border-top:1px solid var(--color-border)}.queue-page__status-badge{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-pill);font-size:13px;font-weight:var(--font-weight-body-strong);display:inline-block}.queue-page__status-badge--expected{background:var(--color-neutral-100);color:var(--color-navy-900)}.queue-page__status-badge--done{background:var(--color-success);color:var(--color-white)}.checkin-page__station{margin:0 0 var(--space-lg);color:var(--color-text-muted)}.checkin-page__feedback{border-radius:var(--radius-control);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-lg);font-size:14px}.checkin-page__feedback--success{background:var(--color-white);border:1px solid var(--color-success);color:var(--color-success)}.checkin-page__feedback--error{background:var(--color-neutral-100);border:1px solid var(--color-warning);color:var(--color-warning)}.checkin-page__list{background:var(--color-white);border-radius:var(--radius-card);margin:0;padding:0;list-style:none;overflow:hidden}.checkin-page__row{align-items:center;gap:var(--space-md);min-height:var(--row-min-height);padding:0 var(--space-lg);display:flex}.checkin-page__row+.checkin-page__row{border-top:1px solid var(--color-border)}.checkin-page__patient{font-weight:var(--font-weight-body-strong)}.checkin-page__wait{color:var(--color-text-muted);margin-left:auto}.checkin-page__action{min-height:var(--row-min-height);padding:0 var(--space-md);border-radius:var(--radius-control);background:var(--color-navy-900);color:var(--color-white);font-weight:var(--font-weight-body-strong);cursor:pointer;border:none;font-size:14px}.checkin-page__action:not(:disabled):hover{background:var(--color-indigo-600)}.checkin-page__action:disabled{opacity:.6;cursor:default}.patient-record{gap:var(--space-lg);flex-direction:column;display:flex}.patient-record__section{background:var(--color-white);border-radius:var(--radius-card);padding:var(--space-lg)}.patient-record__section h2{color:var(--color-indigo-600);text-transform:uppercase;letter-spacing:.02em;font-size:15px}
