@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-cyrillic-ext-400-normal-BjDhGU6t.woff2)format("woff2"),url(/assets/noto-sans-cyrillic-ext-400-normal-d9FrwbiD.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-cyrillic-400-normal-CHP_ranX.woff2)format("woff2"),url(/assets/noto-sans-cyrillic-400-normal-BDYvNhAR.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-devanagari-400-normal-C3FccbrF.woff2)format("woff2"),url(/assets/noto-sans-devanagari-400-normal-g9fsM2jL.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-greek-ext-400-normal-i2oSBwXz.woff2)format("woff2"),url(/assets/noto-sans-greek-ext-400-normal-L11LEhi4.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-greek-400-normal-DCESwnT1.woff2)format("woff2"),url(/assets/noto-sans-greek-400-normal-Be2BcUUc.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-vietnamese-400-normal-D2wP-Vm-.woff2)format("woff2"),url(/assets/noto-sans-vietnamese-400-normal-C3Al4sv4.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:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-latin-ext-400-normal-CVf-LbaS.woff2)format("woff2"),url(/assets/noto-sans-latin-ext-400-normal-CNh9dRW_.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:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-latin-400-normal-BTkUljjl.woff2)format("woff2"),url(/assets/noto-sans-latin-400-normal-DPpKfCgK.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:Noto Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-cyrillic-ext-600-normal-DlWr7wnj.woff2)format("woff2"),url(/assets/noto-sans-cyrillic-ext-600-normal-Cwz1867h.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-cyrillic-600-normal-KpAl9xZA.woff2)format("woff2"),url(/assets/noto-sans-cyrillic-600-normal-BRIw9PIU.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-devanagari-600-normal-Ewgvvq1j.woff2)format("woff2"),url(/assets/noto-sans-devanagari-600-normal-Bly84zfI.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-greek-ext-600-normal-B4z4a2vi.woff2)format("woff2"),url(/assets/noto-sans-greek-ext-600-normal-BjvVOqxV.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-greek-600-normal-CT9U7UAD.woff2)format("woff2"),url(/assets/noto-sans-greek-600-normal-C0bz_iEd.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-vietnamese-600-normal-mhyQDSzg.woff2)format("woff2"),url(/assets/noto-sans-vietnamese-600-normal-D0HZFEqa.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:Noto Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-latin-ext-600-normal-Has_8ph9.woff2)format("woff2"),url(/assets/noto-sans-latin-ext-600-normal-B3lLaxXr.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:Noto Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-latin-600-normal-Dkgu5AE5.woff2)format("woff2"),url(/assets/noto-sans-latin-600-normal-DVJMj_t0.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:Noto Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-cyrillic-ext-700-normal-OK-fZO_i.woff2)format("woff2"),url(/assets/noto-sans-cyrillic-ext-700-normal-D83T7awq.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-cyrillic-700-normal-DYZmzPmX.woff2)format("woff2"),url(/assets/noto-sans-cyrillic-700-normal-D8UNalU-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-devanagari-700-normal-DVs0dmkg.woff2)format("woff2"),url(/assets/noto-sans-devanagari-700-normal-CT12sGlc.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-greek-ext-700-normal-Dq1WA5-1.woff2)format("woff2"),url(/assets/noto-sans-greek-ext-700-normal-BOmIwFkq.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-greek-700-normal-x3kNWF-0.woff2)format("woff2"),url(/assets/noto-sans-greek-700-normal-DDNJsN3F.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-vietnamese-700-normal-DayJ0F-f.woff2)format("woff2"),url(/assets/noto-sans-vietnamese-700-normal-1GL2JyGE.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:Noto Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-latin-ext-700-normal-BypTtJma.woff2)format("woff2"),url(/assets/noto-sans-latin-ext-700-normal-CgsG9aVh.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:Noto Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-latin-700-normal-CrvTEWhy.woff2)format("woff2"),url(/assets/noto-sans-latin-700-normal-ZyrKABVF.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:Noto Sans Lao;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-lao-lao-400-normal-CNKshTz3.woff2)format("woff2"),url(/assets/noto-sans-lao-lao-400-normal-DjxqBYpY.woff)format("woff");unicode-range:U+E81-EDF,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Lao;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-lao-latin-ext-400-normal-D5FhfCQj.woff2)format("woff2"),url(/assets/noto-sans-lao-latin-ext-400-normal-DAlyoKux.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:Noto Sans Lao;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-lao-latin-400-normal-Dumpcsbb.woff2)format("woff2"),url(/assets/noto-sans-lao-latin-400-normal-CljpFdXI.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:Noto Sans Lao;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-lao-lao-600-normal-imeIRcX2.woff2)format("woff2"),url(/assets/noto-sans-lao-lao-600-normal-COf01H3R.woff)format("woff");unicode-range:U+E81-EDF,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Lao;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-lao-latin-ext-600-normal-CUdMivwN.woff2)format("woff2"),url(/assets/noto-sans-lao-latin-ext-600-normal-LtNWmrIs.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:Noto Sans Lao;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-lao-latin-600-normal-CcIEflBP.woff2)format("woff2"),url(/assets/noto-sans-lao-latin-600-normal-BP_QczdS.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:Noto Sans Lao;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-lao-lao-700-normal-nTQCf4Ae.woff2)format("woff2"),url(/assets/noto-sans-lao-lao-700-normal-Vt5iUzXy.woff)format("woff");unicode-range:U+E81-EDF,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Lao;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-lao-latin-ext-700-normal-X548cXkI.woff2)format("woff2"),url(/assets/noto-sans-lao-latin-ext-700-normal-DCi3WdRr.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:Noto Sans Lao;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-lao-latin-700-normal-MiFNiZ43.woff2)format("woff2"),url(/assets/noto-sans-lao-latin-700-normal-Czr7sIaL.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:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-thai-thai-400-normal-BEOmKAI1.woff2)format("woff2"),url(/assets/noto-sans-thai-thai-400-normal-Dxb_unuU.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-thai-latin-ext-400-normal-nBP59pVw.woff2)format("woff2"),url(/assets/noto-sans-thai-latin-ext-400-normal-B-1H0YkH.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:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-thai-latin-400-normal-BaWBrqFP.woff2)format("woff2"),url(/assets/noto-sans-thai-latin-400-normal-Dh_FJjOB.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:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-thai-thai-600-normal-Cs73sVjl.woff2)format("woff2"),url(/assets/noto-sans-thai-thai-600-normal-CmgB8_JK.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-thai-latin-ext-600-normal-maHHBsez.woff2)format("woff2"),url(/assets/noto-sans-thai-latin-ext-600-normal-PkMZo0xa.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:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-thai-latin-600-normal-CemcjnVR.woff2)format("woff2"),url(/assets/noto-sans-thai-latin-600-normal-Dbc-dNO6.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:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-thai-thai-700-normal-Cm52XUnT.woff2)format("woff2"),url(/assets/noto-sans-thai-thai-700-normal-C9ISMlQq.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-thai-latin-ext-700-normal-uJk63onE.woff2)format("woff2"),url(/assets/noto-sans-thai-latin-ext-700-normal-xdwl2Xg6.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:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-thai-latin-700-normal-_dn-40wb.woff2)format("woff2"),url(/assets/noto-sans-thai-latin-700-normal-C4AMFKt5.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{--font-family:Inter, "Noto Sans", "Noto Sans Lao", "Noto Sans Thai", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--shadow-sm:0 1px 2px #0000000f;--shadow-md:0 6px 24px #0000001f;--sidebar-w:248px;--topbar-h:60px;--bottomnav-h:64px;--gap:16px;--control-h:40px;--fs-base:15px}:root[data-density=compact]{--gap:12px;--control-h:34px;--fs-base:14px}:root[data-mode=dark]{--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 28px #00000080}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-family);font-size:var(--fs-base);color:var(--c-text);background:var(--c-background);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;line-height:1.55}:lang(lo),:lang(th){line-height:1.7}a{color:var(--c-primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0;font-weight:650;line-height:1.3}h1{font-size:1.5rem}h2{font-size:1.15rem}h3{font-size:1rem}p{margin:0}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}.muted{color:var(--c-text-muted)}.small{font-size:.85em}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.nowrap{white-space:nowrap}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.shell{grid-template-columns:var(--sidebar-w) 1fr;min-height:100%;display:grid}.sidebar{background:var(--c-sidebar);height:100vh;color:var(--c-on-sidebar);flex-direction:column;gap:2px;padding:14px 10px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar .brand{color:var(--c-on-sidebar);align-items:center;gap:10px;padding:6px 10px 18px;font-size:1.05rem;font-weight:700;display:flex}.brand-logo{background:var(--c-primary);width:34px;height:34px;color:var(--c-on-primary);border-radius:9px;flex:none;place-items:center;display:grid}.nav-section{text-transform:uppercase;letter-spacing:.06em;opacity:.65;margin:14px 10px 6px;font-size:.72rem}.nav-link{border-radius:var(--radius-md);color:var(--c-on-sidebar);opacity:.88;align-items:center;gap:12px;padding:9px 12px;font-weight:500;display:flex}.nav-link:hover{opacity:1;background:#ffffff12;text-decoration:none}.nav-link.active{opacity:1;background:var(--c-sidebar-active)}.nav-link svg{flex:none}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;height:var(--topbar-h);background:color-mix(in srgb, var(--c-surface) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--c-border);align-items:center;gap:10px;padding:0 20px;display:flex;position:sticky;top:0}.topbar .spacer{flex:1}.topbar .mobile-brand{align-items:center;gap:8px;font-weight:700;display:none}.content{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:24px}.bottom-nav{display:none}.shell{transition:grid-template-columns .22s}@media (width>=761px){.shell.nav-collapsed{grid-template-columns:72px 1fr}.shell.nav-collapsed .sidebar .label,.shell.nav-collapsed .sidebar .nav-section,.shell.nav-collapsed .sidebar .brand span,.shell.nav-collapsed .sidebar .nav-toggle,.shell.nav-collapsed .sidebar .nav-children{display:none}.shell.nav-collapsed .sidebar .nav-link{justify-content:center;padding:11px}.shell.nav-collapsed .sidebar .brand{justify-content:center;padding-inline:0}}.sidebar-toggle{flex:none}@media (width<=760px){.shell{grid-template-columns:1fr}.sidebar{display:none}.topbar{padding:0 12px;padding-top:env(safe-area-inset-top);height:calc(var(--topbar-h) + env(safe-area-inset-top))}.topbar .mobile-brand{display:flex}.topbar .sidebar-toggle,.topbar .hide-mobile{display:none}.content{padding:14px 12px calc(var(--bottomnav-h) + 20px + env(safe-area-inset-bottom))}.bottom-nav{z-index:30;height:calc(var(--bottomnav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--c-surface);border-top:1px solid var(--c-border);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;inset:auto 0 0}.bottom-nav a,.bottom-nav button{color:var(--c-text-muted);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;padding:4px 2px;font-size:.7rem;display:flex}.bottom-nav span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bottom-nav a.active{color:var(--c-primary);text-decoration:none}}.drawer-backdrop{z-index:60;background:#00000073;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:var(--c-sidebar);width:min(320px,88vw);height:100%;color:var(--c-on-sidebar);padding:16px 10px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:2px;display:flex;overflow-y:auto}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.page-header .subtitle{color:var(--c-text-muted);margin-top:4px}.page-header .actions{flex-wrap:wrap;gap:8px;display:flex}.stack{gap:var(--gap);flex-direction:column;display:flex}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row.between{justify-content:space-between}.grid{gap:var(--gap);display:grid}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.kpis{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.span-2{grid-column:span 2}.span-all{grid-column:1/-1}@media (width<=900px){.grid.cols-3,.grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1000px){.grid.cols-2.panels{grid-template-columns:1fr}}@media (width<=600px){.grid.cols-2,.grid.cols-3,.grid.cols-4{grid-template-columns:1fr}.span-2{grid-column:auto}.grid.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);min-width:0}.card-header{border-bottom:1px solid var(--c-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;display:flex}.card-body{padding:18px}.card-body.flush{padding:0}.kpi{flex-direction:column;gap:6px;padding:16px 18px;display:flex}.kpi .label{color:var(--c-text-muted);align-items:center;gap:8px;font-size:.85rem;display:flex}.kpi .value{font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:700}.kpi .icon{background:var(--c-primary-soft);width:30px;height:30px;color:var(--c-primary);border-radius:8px;place-items:center;display:grid}.btn{min-height:var(--control-h);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;background:var(--c-surface-alt);color:var(--c-text);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:600;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.btn:hover{border-color:var(--c-border)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{background:var(--c-primary);color:var(--c-on-primary)}.btn.primary:hover{filter:brightness(1.07)}.btn.ghost{background:0 0}.btn.ghost:hover{background:var(--c-surface-alt)}.btn.danger{background:var(--c-danger);color:#fff}.btn.outline{border-color:var(--c-border);background:0 0}.btn.sm{min-height:30px;padding:0 10px;font-size:.85rem}.btn.icon{width:var(--control-h);padding:0}.btn.sm.icon{width:30px}.btn .spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>label,.field>.label{font-size:.86rem;font-weight:600}.field .req{color:var(--c-danger);margin-left:2px}.field .hint{color:var(--c-text-muted);font-size:.8rem}.field .error{color:var(--c-danger);font-size:.8rem}.input,.select,.textarea{width:100%;min-height:var(--control-h);border-radius:var(--radius-md);border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text);padding:8px 12px}.textarea{resize:vertical;min-height:96px;line-height:1.5}.input:focus,.select:focus,.textarea:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--c-primary) 22%, transparent);outline:none}.field.invalid .input,.field.invalid .select,.field.invalid .textarea{border-color:var(--c-danger)}.input-group{align-items:center;gap:0;display:flex;position:relative}.input-group .input{padding-left:38px}.input-group>svg{color:var(--c-text-muted);pointer-events:none;position:absolute;left:12px}.checkbox{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:inline-flex}.checkbox input{width:18px;height:18px;accent-color:var(--c-primary)}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}fieldset{border:0;min-width:0;margin:0;padding:0}legend{margin-bottom:10px;padding:0;font-weight:650}.badge{white-space:nowrap;background:var(--c-surface-alt);color:var(--c-text-muted);border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:.78rem;font-weight:600;display:inline-flex}.badge.success{background:var(--c-success-soft);color:var(--c-success)}.badge.warning{background:var(--c-warning-soft);color:var(--c-warning)}.badge.danger{background:var(--c-danger-soft);color:var(--c-danger)}.badge.info{background:var(--c-info-soft);color:var(--c-info)}.badge.primary{background:var(--c-primary-soft);color:var(--c-primary)}.table-wrap{overflow-x:auto}table.table{border-collapse:collapse;width:100%}.table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--c-text-muted);border-bottom:1px solid var(--c-border);white-space:nowrap;padding:10px 14px;font-size:.78rem;font-weight:650}.table td{border-bottom:1px solid var(--c-border);vertical-align:middle;padding:11px 14px}.table tr:last-child td{border-bottom:0}.table tr.clickable{cursor:pointer}.table .num{text-align:right;font-variant-numeric:tabular-nums}@media (width<=760px){.table.responsive thead{display:none}.table.responsive,.table.responsive tbody,.table.responsive tr,.table.responsive td{width:100%;display:block}.table.responsive tr{border-bottom:1px solid var(--c-border);padding:10px 14px}.table.responsive td{text-align:right;border:0;justify-content:space-between;gap:12px;padding:3px 0;display:flex}.table.responsive td:before{content:attr(data-label);color:var(--c-text-muted);text-align:left;font-size:.82rem}.table.responsive td.primary-cell{text-align:left;font-weight:650}.table.responsive td.primary-cell:before{display:none}.table.responsive .num{text-align:right}}.tabs{border-bottom:1px solid var(--c-border);scrollbar-width:none;gap:4px;margin-bottom:16px;display:flex;overflow-x:auto}.tab{color:var(--c-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 14px;font-weight:600}.tab.active{color:var(--c-primary);border-bottom-color:var(--c-primary)}.segmented{background:var(--c-surface-alt);border-radius:var(--radius-md);flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.segmented button{color:var(--c-text-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 12px;font-weight:600}.segmented button.active{background:var(--c-surface);color:var(--c-text);box-shadow:var(--shadow-sm)}.modal-backdrop{z-index:70;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;width:100%;max-width:560px;max-height:calc(100vh - 32px);display:flex}.modal.lg{max-width:820px}.modal.xl{max-width:1080px}.modal-header{border-bottom:1px solid var(--c-border);justify-content:space-between;align-items:center;gap:10px;padding:16px 20px;display:flex}.modal-body{padding:20px;overflow-y:auto}.modal-footer{border-top:1px solid var(--c-border);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}@media (width<=600px){.modal-backdrop{align-items:flex-end;padding:0}.modal,.modal.lg,.modal.xl{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-width:none;max-height:92vh;padding-bottom:env(safe-area-inset-bottom)}}.toasts{z-index:90;flex-direction:column;gap:8px;max-width:min(420px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.toast{background:var(--c-text);color:var(--c-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-md);align-items:flex-start;gap:10px;padding:12px 16px;animation:.18s ease-out toast-in;display:flex}.toast.error{background:var(--c-danger);color:#fff}.toast.success{background:var(--c-success);color:#fff}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media (width<=760px){.toasts{bottom:calc(var(--bottomnav-h) + 12px + env(safe-area-inset-bottom));left:12px;right:12px}}.empty{text-align:center;color:var(--c-text-muted);flex-direction:column;align-items:center;gap:8px;padding:36px 16px;display:flex}.alert{border-radius:var(--radius-md);background:var(--c-info-soft);color:var(--c-info);align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.alert.danger{background:var(--c-danger-soft);color:var(--c-danger)}.alert.warning{background:var(--c-warning-soft);color:var(--c-warning)}.alert.success{background:var(--c-success-soft);color:var(--c-success)}.divider{background:var(--c-border);height:1px;margin:4px 0}.dl{grid-template-columns:max-content 1fr;gap:8px 18px;display:grid}.dl dt{color:var(--c-text-muted)}.dl dd{overflow-wrap:anywhere;min-width:0;margin:0}@media (width<=480px){.dl{grid-template-columns:1fr;gap:2px}.dl dd{margin-bottom:8px}}.avatar{background:var(--c-primary-soft);width:36px;height:36px;color:var(--c-primary);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.avatar.lg{width:56px;height:56px;font-size:1.2rem}.popover{z-index:50;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-md);min-width:240px;box-shadow:var(--shadow-md);padding:6px;position:absolute;top:calc(100% + 6px);right:0}.menu-item{text-align:left;cursor:pointer;width:100%;color:var(--c-text);background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:9px 10px;display:flex}.menu-item:hover{background:var(--c-surface-alt);text-decoration:none}.menu-item.active{color:var(--c-primary);font-weight:650}.relative{position:relative}.dot{background:var(--c-danger);color:#fff;border-radius:999px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:.68rem;font-weight:700;display:grid;position:absolute;top:4px;right:4px}.combo-list{z-index:40;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:280px;padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.patient-banner{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.allergy-strip{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip-list{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--c-border);background:var(--c-surface);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-weight:500;display:inline-flex}.chip.selected{background:var(--c-primary-soft);border-color:var(--c-primary);color:var(--c-primary)}.note{border:1px solid var(--c-border);border-radius:var(--radius-md);background:var(--c-surface);padding:12px 14px}.note pre{white-space:pre-wrap;margin:8px 0 0;font-family:inherit}.note.amended{opacity:.6}.theme-swatch{border:2px solid var(--c-border);border-radius:var(--radius-md);cursor:pointer;background:var(--c-surface);text-align:left;flex-direction:column;gap:8px;padding:10px;display:flex}.theme-swatch.selected{border-color:var(--c-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--c-primary) 25%, transparent)}.theme-swatch .preview{border:1px solid #00000014;border-radius:8px;grid-template-columns:26% 1fr;height:54px;display:grid;overflow:hidden}.accent-dot{border:3px solid var(--c-surface);width:32px;height:32px;box-shadow:0 0 0 1px var(--c-border);cursor:pointer;border-radius:50%}.accent-dot.selected{box-shadow:0 0 0 2px var(--c-text)}.ticket-big{letter-spacing:.02em;font-variant-numeric:tabular-nums;font-size:2.6rem;font-weight:800}.queue-display{background:var(--c-sidebar);min-height:100vh;color:var(--c-on-sidebar);grid-template-columns:2fr 1fr;gap:32px;padding:32px;display:grid}.queue-display .now{background:var(--c-primary);color:var(--c-on-primary);border-radius:20px;padding:28px}.queue-display .ticket-huge{font-size:clamp(3rem,9vw,8rem);font-weight:800;line-height:1}@media (width<=760px){.queue-display{grid-template-columns:1fr;padding:16px}}.login-page{grid-template-columns:1.1fr 1fr;min-height:100%;display:grid}.login-hero{background:linear-gradient(150deg, var(--c-sidebar), var(--c-primary));color:#fff;flex-direction:column;justify-content:space-between;padding:48px;display:flex}.login-form-wrap{justify-content:center;align-items:center;padding:32px 20px;display:flex}.login-card{width:100%;max-width:400px}@media (width<=860px){.login-page{grid-template-columns:1fr}.login-hero{min-height:0;padding:28px 24px}.login-hero .hero-extra{display:none}}.trans-row textarea{min-height:40px}.diff{background:var(--c-surface-alt);white-space:pre-wrap;word-break:break-word;border-radius:8px;max-height:220px;padding:8px;font-size:.8rem;overflow:auto}.skeleton{background:linear-gradient(90deg, var(--c-surface-alt), var(--c-border), var(--c-surface-alt));background-size:200% 100%;border-radius:8px;min-height:16px;animation:1.2s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}@media print{.sidebar,.topbar,.bottom-nav,.no-print,.toasts{display:none!important}.shell{display:block}.content{padding:0}.card{box-shadow:none;border:0}body{color:#000;background:#fff}}:root{--shadow-card:0 1px 2px #1018280a, 0 4px 14px #1018280d;--shadow-card-hover:0 2px 4px #1018280f, 0 10px 28px #1018281a}:root[data-mode=dark]{--shadow-card:0 1px 2px #0006, 0 6px 18px #00000040;--shadow-card-hover:0 2px 6px #00000080, 0 14px 32px #00000059}body{background:radial-gradient(1200px 500px at 100% -10%, color-mix(in srgb, var(--c-primary) 7%, transparent), transparent 60%), var(--c-background);background-attachment:fixed}.sidebar{background:linear-gradient(180deg, var(--c-sidebar), color-mix(in srgb, var(--c-sidebar) 88%, #000));border-right:1px solid #ffffff0a}.sidebar .brand{letter-spacing:.01em;font-size:1.15rem}.brand-logo{box-shadow:0 6px 16px color-mix(in srgb, var(--c-primary) 45%, transparent)}.nav-link{transition:background .15s,opacity .15s,transform .15s;position:relative}.nav-link.active{background:color-mix(in srgb, var(--c-primary) 22%, var(--c-sidebar));box-shadow:inset 0 0 0 1px #ffffff0f}.nav-link.active:before{content:"";background:var(--c-primary);border-radius:0 4px 4px 0;width:4px;position:absolute;top:8px;bottom:8px;left:-10px}.card{box-shadow:var(--shadow-card);border-color:color-mix(in srgb, var(--c-border) 80%, transparent);transition:box-shadow .2s,transform .2s}.card[role=button]:hover,.card.hoverable:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.card-header h2{align-items:center;gap:8px;font-size:1.02rem;display:flex}.page-header h1{letter-spacing:-.01em;font-size:1.65rem}.btn.primary{box-shadow:0 4px 12px color-mix(in srgb, var(--c-primary) 30%, transparent)}.btn.primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn{transition:background .15s,border-color .15s,transform .15s,box-shadow .15s}.input,.select,.textarea{transition:border-color .15s,box-shadow .15s}.input-icon{align-items:center;display:flex;position:relative}.input-icon>.lead{color:var(--c-text-muted);pointer-events:none;display:grid;position:absolute;left:13px}.input-icon>.input{min-height:46px;padding-left:42px}.input-icon>.trail{position:absolute;right:4px}.input-icon:focus-within>.lead{color:var(--c-primary)}.table thead th{background:var(--c-surface-alt);z-index:1;position:sticky;top:0}.table tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--c-surface-alt) 45%, transparent)}.table tr.clickable:hover td{background:var(--c-primary-soft)}.card-body.flush .table-wrap{border-radius:0 0 var(--radius-lg) var(--radius-lg)}.kpi{position:relative;overflow:hidden}.kpi:after{content:"";background:var(--c-primary);opacity:.85;width:4px;position:absolute;inset:0 auto 0 0}.kpi .value{letter-spacing:-.01em}.trend{border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.8rem;font-weight:650;display:inline-flex}.trend.up{color:var(--c-success);background:var(--c-success-soft)}.trend.down{color:var(--c-danger);background:var(--c-danger-soft)}.trend.flat{color:var(--c-text-muted);background:var(--c-surface-alt)}.pager{border-top:1px solid var(--c-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.pager-info{color:var(--c-text-muted);font-size:.85rem}.pager-controls{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.pager-size{color:var(--c-text-muted);align-items:center;gap:8px;font-size:.85rem;display:flex}.pager-size .select{width:auto;min-height:32px;padding:4px 8px}.pager-buttons{align-items:center;gap:4px;display:flex}.pager-btn{border:1px solid var(--c-border);background:var(--c-surface);width:34px;height:34px;color:var(--c-text);cursor:pointer;border-radius:9px;place-items:center;transition:background .15s,border-color .15s;display:grid}.pager-btn:hover:not(:disabled){border-color:var(--c-primary);color:var(--c-primary);background:var(--c-primary-soft)}.pager-btn:disabled{opacity:.4;cursor:not-allowed}.pager-num{font-variant-numeric:tabular-nums;width:auto;min-width:34px;padding:0 8px;font-size:.88rem;font-weight:500}.pager-num.active{border-color:var(--c-primary);background:var(--c-primary);color:var(--c-on-primary);cursor:default;box-shadow:0 2px 8px color-mix(in srgb, var(--c-primary) 30%, transparent);font-weight:700}.pager-num.active:hover:not(:disabled){background:var(--c-primary);color:var(--c-on-primary)}.pager-gap{color:var(--c-text-muted);background:0 0;border-color:#0000}.pager-gap .arrows,.pager-gap:hover .dots,.pager-gap:focus-visible .dots{display:none}.pager-gap:hover .arrows,.pager-gap:focus-visible .arrows{display:block}.pager-page{color:var(--c-text-muted);align-items:center;gap:6px;font-size:.85rem;display:flex}.pager-page .input{text-align:center;font-variant-numeric:tabular-nums;width:56px;min-height:34px;padding:4px 6px}@media (width<=600px){.pager,.pager-controls{justify-content:center}.pager-edge{display:none}.pager-info{text-align:center;width:100%}}.login-hero{background:radial-gradient(600px 400px at 85% 15%, #ffffff24, transparent 60%), radial-gradient(500px 500px at 0% 100%, #ffffff1a, transparent 60%), linear-gradient(150deg, var(--c-sidebar), var(--c-primary));position:relative;overflow:hidden}.login-hero:after{content:"";border:60px solid #ffffff0f;border-radius:50%;width:420px;height:420px;position:absolute;bottom:-120px;right:-120px}.login-hero .features{gap:14px;margin-top:28px;display:grid}.login-hero .feature{opacity:.95;align-items:flex-start;gap:12px;display:flex}.login-hero .feature .ic{background:#ffffff24;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;display:grid}.login-card{background:var(--c-surface);border:1px solid var(--c-border);box-shadow:var(--shadow-card-hover);border-radius:20px;padding:28px}.login-card .btn.primary{min-height:46px;font-size:1rem}.login-stat strong.count{font-variant-numeric:tabular-nums}.login-stat.done strong.count{animation:.5s count-done}.login-stats .login-bar span{transform-origin:bottom;transform:scaleY(0)}.login-stats.seen .login-bar span{animation:.7s cubic-bezier(.2,.8,.2,1) both bar-grow}@keyframes bar-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes count-done{40%{text-shadow:0 0 12px #fff9;transform:scale(1.08)}}.login-stat strong.count{transform-origin:0;display:inline-block}@media (prefers-reduced-motion:reduce){.login-stats .login-bar span{transform:none;animation:none!important}}.login-backdrop{pointer-events:none;position:absolute;inset:0;overflow:hidden}.login-backdrop .orb{filter:blur(40px);opacity:.45;border-radius:50%;animation:18s ease-in-out infinite alternate la-drift;position:absolute}.login-backdrop .o1{background:#ffffff38;width:340px;height:340px;top:-80px;left:-60px}.login-backdrop .o2{background:color-mix(in srgb, var(--c-info) 60%, transparent);width:280px;height:280px;animation-duration:22s;animation-delay:-6s;bottom:10%;right:-40px}.login-backdrop .o3{background:color-mix(in srgb, var(--c-success) 45%, transparent);width:220px;height:220px;animation-duration:26s;animation-delay:-12s;top:40%;left:35%}.login-ecg{opacity:.5;width:100%;height:120px;position:absolute;bottom:9%;left:0;right:0}.login-ecg path{fill:none;stroke-linecap:round;stroke-linejoin:round}.login-ecg .trace{stroke:#ffffff59;stroke-width:2px;stroke-dasharray:1;stroke-dashoffset:1px;animation:2.2s cubic-bezier(.6,0,.3,1) .3s forwards la-draw}.login-ecg .pulse{stroke:#fff;stroke-width:3px;stroke-dasharray:.08 .92;stroke-dashoffset:1px;filter:drop-shadow(0 0 6px #ffffffe6);opacity:0;animation:3.2s linear 2.4s infinite la-pulse}.login-backdrop .cross{color:#ffffff2e;transform:scale(var(--s,1));animation:la-rise 14s var(--d,0s) linear infinite;font-size:28px;font-weight:800;position:absolute;bottom:-40px}.login-logo{animation:2.6s ease-in-out 1.2s infinite la-beat}.login-anim .login-hero{animation:.8s both la-fade}.login-anim .la-item{animation:la-up .7s calc(.15s + var(--i,0) * 90ms) cubic-bezier(.2, .7, .2, 1) both}.login-anim .la-card{animation:.75s cubic-bezier(.2,.8,.2,1) .25s both la-card}.login-anim .la-card>*,.login-anim .la-form>*{animation:.55s cubic-bezier(.2,.7,.2,1) both la-up}.login-anim .la-card>:first-child{animation-delay:.45s}.login-anim .la-card>:nth-child(2){animation-delay:.52s}.login-anim .la-card>:nth-child(3){animation-delay:.59s}.login-anim .la-form>:first-child{animation-delay:.6s}.login-anim .la-form>:nth-child(2){animation-delay:.68s}.login-anim .la-form>:nth-child(3){animation-delay:.76s}.login-anim .la-card .btn.primary{position:relative;overflow:hidden}.login-anim .la-card .btn.primary:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 30%,#ffffff59 50%,#0000 70%);animation:1.1s 1.3s both la-shine;position:absolute;inset:0;transform:translate(-120%)}@keyframes la-fade{0%{opacity:0}}@keyframes la-up{0%{opacity:0;transform:translateY(18px)}}@keyframes la-card{0%{opacity:0;transform:translateY(28px)scale(.97)}}@keyframes la-draw{to{stroke-dashoffset:0}}@keyframes la-pulse{0%{stroke-dashoffset:1px;opacity:1}90%{opacity:1}to{stroke-dashoffset:0;opacity:0}}@keyframes la-drift{to{transform:translate(60px,40px)scale(1.15)}}@keyframes la-rise{0%{transform:translateY(0) scale(var(--s,1)) rotate(0deg);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-110vh) scale(var(--s,1)) rotate(180deg);opacity:0}}@keyframes la-beat{0%,30%,to{transform:scale(1)}10%{transform:scale(1.12)}20%{transform:scale(.98)}}@keyframes la-shine{0%{transform:translate(-120%)}to{transform:translate(120%)}}@media (width<=860px){.login-ecg{height:60px;bottom:0}.login-backdrop .cross{display:none}}@media (prefers-reduced-motion:reduce){.login-anim *,.login-anim :before,.login-anim :after,.login-backdrop *{animation:none!important}.login-ecg .trace{stroke-dashoffset:0}}.year-picker{background:var(--c-surface);border:1px solid var(--c-border);box-shadow:var(--shadow-card);border-radius:12px;gap:4px;padding:4px;display:inline-flex}.year-picker button{color:var(--c-text-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:7px 16px;font-weight:650}.year-picker button.active{background:var(--c-primary);color:var(--c-on-primary)}.hero-kpis{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));display:grid}.hero-kpi{flex-direction:column;gap:6px;padding:18px 20px;display:flex}.hero-kpi .label{color:var(--c-text-muted);align-items:center;gap:8px;font-size:.85rem;display:flex}.hero-kpi .value{color:var(--c-primary);letter-spacing:-.02em;font-size:1.85rem;font-weight:750;line-height:1.15}.hero-kpi .sub{color:var(--c-text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.82rem;display:flex}.grid.analytics{grid-template-columns:repeat(12,minmax(0,1fr))}.grid.analytics>.c4{grid-column:span 4}.grid.analytics>.c6{grid-column:span 6}.grid.analytics>.c8{grid-column:span 8}.grid.analytics>.c12{grid-column:span 12}@media (width<=1200px){.grid.analytics>.c4{grid-column:span 6}.grid.analytics>.c8{grid-column:span 12}}@media (width<=760px){.grid.analytics>.c4,.grid.analytics>.c6{grid-column:span 12}}.legend{color:var(--c-text-muted);flex-wrap:wrap;gap:14px;font-size:.8rem;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:3px;width:10px;height:10px;display:inline-block}.stmt td,.stmt th{white-space:nowrap}.stmt .group td{font-weight:700;background:var(--c-surface-alt)!important}.stmt .total td{border-top:2px solid var(--c-border);font-weight:750}.stmt .indent{padding-left:28px}.databar{font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;min-width:120px;display:flex;position:relative}.databar .bar{opacity:.35;border-radius:3px;position:absolute;top:3px;bottom:3px}.databar span{position:relative}.chart-empty{height:220px;color:var(--c-text-muted);place-items:center;display:grid}.eye-OD{--eye:var(--c-cat-1)}.eye-OS{--eye:var(--c-cat-2)}.eye-OU{--eye:var(--c-cat-5)}.eye-chip{letter-spacing:.04em;background:color-mix(in srgb, var(--eye) 16%, transparent);min-width:30px;color:color-mix(in srgb, var(--eye) 75%, var(--c-text));border:1px solid color-mix(in srgb, var(--eye) 40%, transparent);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;padding:1px 7px;font-size:.75rem;font-weight:800;display:inline-flex}.eye-picker{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.eye-picker-btn{border-radius:var(--radius-md);border:2px solid var(--c-border);background:var(--c-surface);color:var(--c-text);cursor:pointer;text-align:left;flex-direction:column;align-items:flex-start;gap:2px;min-height:56px;padding:10px 12px;display:flex}.eye-picker-btn strong{color:color-mix(in srgb, var(--eye) 75%, var(--c-text));font-size:1.15rem}.eye-picker-btn span{color:var(--c-text-muted);font-size:.8rem}.eye-picker-btn.active{border-color:var(--eye);background:color-mix(in srgb, var(--eye) 12%, var(--c-surface));box-shadow:0 0 0 3px color-mix(in srgb, var(--eye) 20%, transparent)}.eye-columns{gap:var(--gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.eye-col{border-top:3px solid var(--eye);flex-direction:column;gap:8px;min-width:0;padding-top:10px;display:flex}.eye-col-head{align-items:center;gap:8px;font-size:.9rem;font-weight:700;display:flex}.eye-measure{border-bottom:1px dashed var(--c-border);flex-wrap:wrap;align-items:center;gap:6px 10px;padding:6px 0;display:flex}.eye-measure:last-child{border-bottom:0}.eye-measure>.btn:last-child{margin-left:auto}.eye-value{font-variant-numeric:tabular-nums;font-size:1.15rem}.eye-value.big{font-size:1.7rem;line-height:1.1}.eye-value.small-value{font-size:.95rem}.text-danger{color:var(--c-danger)}.eye-dl{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px 16px;margin:0;display:grid}.eye-dl.wide{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.eye-dl dt{color:var(--c-text-muted);font-size:.78rem}.eye-dl dd{overflow-wrap:anywhere;margin:0}.eye-kpis{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;display:grid}.eye-kpi{border-radius:var(--radius-md);background:var(--c-surface-alt);flex-direction:column;gap:3px;min-width:0;padding:10px 12px;display:flex}.eye-kpi .label{color:var(--c-text-muted);font-size:.75rem;font-weight:600}.eye-dx-chip{border:1px solid var(--c-border);background:var(--c-surface);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.85rem;display:inline-flex}.eye-inline{align-items:center;gap:4px;margin-right:10px;display:inline-flex}.eye-biometry-head{border-radius:var(--radius-md);background:var(--c-surface-alt);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 12px;display:flex}.eye-biom-pick{border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;display:inline-flex}.eye-biom-pick.active{border-color:var(--c-primary);box-shadow:0 0 0 3px var(--c-primary-soft)}.eye-iol-preview{border-radius:var(--radius-md);border:1px dashed var(--c-primary);background:var(--c-primary-soft);flex-wrap:wrap;align-items:flex-start;gap:16px 28px;padding:14px;display:flex}.eye-iol-preview .table{width:auto;min-width:220px}.table.compact th,.table.compact td{padding:4px 10px}.table tr.highlight td{background:var(--c-success-soft);font-weight:650}.eye-iol-selected{border-radius:var(--radius-md);background:var(--c-success-soft);flex-direction:column;gap:2px;padding:12px;display:flex}.eye-pick{text-align:left;cursor:pointer;width:100%;color:var(--c-text)}.eye-pick:hover{border-color:var(--c-primary)}.eye-confirm{border-radius:var(--radius-md);border:2px solid var(--eye);background:color-mix(in srgb, var(--eye) 8%, var(--c-surface));color:var(--c-text);align-items:flex-start;gap:10px;padding:12px;display:flex}.eye-operative-banner{border-radius:var(--radius-lg);border:2px solid var(--eye);background:color-mix(in srgb, var(--eye) 12%, var(--c-surface));flex-wrap:wrap;align-items:baseline;gap:6px 14px;padding:14px 18px;display:flex}.eye-operative-banner strong{color:color-mix(in srgb, var(--eye) 80%, var(--c-text));font-size:2.2rem;line-height:1}.eye-operative-banner .eye-operative-label{text-transform:uppercase;letter-spacing:.08em;color:var(--c-text-muted);width:100%;font-size:.75rem;font-weight:800}.eye-operative-banner .eye-operative-proc{margin-left:auto;font-weight:650}.eye-checklist .checkbox{border-radius:var(--radius-md);background:var(--c-surface-alt);padding:8px 10px}.grid.eye-stats{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.eye-stat{text-align:left;cursor:pointer;font:inherit;color:var(--c-text);flex-direction:column;gap:6px;display:flex}.eye-stat:disabled{cursor:default}.eye-stat:not(:disabled):hover{border-color:var(--c-primary)}.eye-stat .label{align-items:center;gap:6px;display:inline-flex}.eye-stat.danger .value{color:var(--c-danger)}.eye-stat.warning .value{color:var(--c-warning)}.eye-outcome{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.eye-outcome .value{color:var(--c-success);font-size:2rem;font-weight:750}.eye-outcome .meter{background:var(--c-surface-alt);border-radius:999px;flex:1;min-width:120px;height:10px;overflow:hidden}.eye-outcome .meter i{background:var(--c-success);height:100%;display:block}@media (width<=760px){.eye-columns{grid-template-columns:1fr}.eye-operative-banner .eye-operative-proc{width:100%;margin-left:0}.input,.select,.textarea{font-size:16px}.page-header{margin-bottom:12px}.page-header h1,.page-header h1 .patient-banner{font-size:1.25rem}.page-header>div:first-child{width:100%;min-width:0}.page-header .actions{scrollbar-width:none;flex-wrap:nowrap;width:100%;padding-bottom:2px;overflow-x:auto}.page-header .actions::-webkit-scrollbar{display:none}.page-header .actions>*{flex:none}.card-header{padding:12px 14px}.card-body{padding:14px}.tabs{margin-inline:-2px}.tab{padding:10px 11px}.modal-footer .btn{flex:auto}.hero-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hero-kpi{padding:12px 14px}.hero-kpi .value{font-size:1.35rem}.grid.eye-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.eye-stat .value{font-size:1.4rem}.table-wrap{-webkit-overflow-scrolling:touch}.table.responsive td.primary-cell{font-size:1rem}.segmented{max-width:100%}.segmented button{padding:6px 10px}.legend{gap:8px 12px}}@media (width<=420px){.hero-kpis,.grid.eye-stats,.eye-kpis{grid-template-columns:1fr 1fr}.eye-picker{grid-template-columns:repeat(auto-fit,minmax(90px,1fr))}}.page-header h1 .patient-banner{flex-wrap:nowrap;align-items:center}.page-header h1 .patient-banner>span:last-child{min-width:0}.page-header h1 .patient-banner .small{letter-spacing:0;font-size:.875rem;line-height:1.5}@media (width<=760px){.page-header h1 .patient-banner .avatar{flex:0 0 40px;width:40px;height:40px}}.table-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.view-switcher button{align-items:center;gap:6px;display:inline-flex}.item-cards{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px;display:grid}.item-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;display:grid}.item-card{border:1px solid var(--c-border);border-radius:var(--radius-lg);background:var(--c-surface);min-width:0;box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:14px 16px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.item-card.clickable{cursor:pointer}.item-card.clickable:hover,.item-card.clickable:focus-visible{border-color:var(--c-primary);box-shadow:var(--shadow-md);transform:translateY(-1px)}.item-card-title{overflow-wrap:anywhere;font-size:1.02rem;font-weight:700}.item-card-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin:0;display:grid}.item-grid .item-card{gap:8px;padding:12px}.item-grid .item-card-fields{grid-template-columns:1fr;gap:4px}.item-grid .item-card-fields>div{justify-content:space-between;gap:8px;display:flex}.item-card-fields dt{color:var(--c-text-muted);font-size:.75rem}.item-card-fields dd{overflow-wrap:anywhere;min-width:0;margin:0}.item-grid .item-card-fields dd{text-align:right;font-size:.88rem}.item-card-actions{border-top:1px dashed var(--c-border);flex-wrap:wrap;gap:6px;padding-top:8px;display:flex}@media (width<=760px){.item-cards{grid-template-columns:1fr}.item-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.view-switcher .view-label{display:none}}@media (width<=380px){.item-grid{grid-template-columns:1fr}}.cycle{width:100%;max-width:620px;margin:0 auto;position:relative;container-type:inline-size}.cycle.compact{max-width:220px}.cycle-ring{width:100%;height:100%;position:absolute;inset:0}.cycle-node{border:2px solid var(--pw);background:var(--c-surface);color:var(--pw);cursor:default;border-radius:50%;place-items:center;padding:0;transition:transform .15s,box-shadow .15s;display:grid;position:absolute;transform:translate(-50%,-50%)}.cycle-node:not(:disabled){cursor:pointer}.cycle-node:not(:disabled):hover{transform:translate(-50%,-50%)scale(1.08)}.cycle-node.done{background:color-mix(in srgb, var(--pw) 18%, var(--c-surface))}.cycle-node.current{background:var(--pw);color:#fff;box-shadow:0 0 0 5px color-mix(in srgb, var(--pw) 25%, transparent);animation:2s ease-in-out infinite cycle-pulse}@keyframes cycle-pulse{50%{box-shadow:0 0 0 9px color-mix(in srgb, var(--pw) 12%, transparent)}}@media (prefers-reduced-motion:reduce){.cycle-node.current{animation:none}}.cycle-seq{background:var(--c-text);min-width:18px;height:18px;color:var(--c-surface);border-radius:9px;place-items:center;font-size:11px;font-weight:700;display:grid;position:absolute;top:-6px;right:-6px}.cycle.compact .cycle-seq{display:none}.cycle-label{pointer-events:none;flex-direction:column;gap:1px;font-size:clamp(.68rem,2.6cqi,.86rem);line-height:1.25;display:flex;position:absolute}.cycle-label span{color:var(--c-text-muted);font-size:.9em}.cycle-center{text-align:center;flex-direction:column;align-items:center;gap:3px;width:26%;font-size:clamp(.72rem,3cqi,1rem);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cycle.compact .cycle-center{width:44%;font-size:.72rem}.cycle-badge{background:var(--pw);color:#fff;border-radius:999px;padding:1px 9px;font-size:.78em;font-weight:700}.stepper{gap:0;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.step{text-align:center;flex-direction:column;flex:1 1 0;align-items:center;gap:6px;min-width:110px;padding:0 4px;display:flex;position:relative}.step:before{content:"";background:color-mix(in srgb, var(--pw) 35%, var(--c-border));z-index:0;width:100%;height:2px;position:absolute;top:19px;left:-50%}.step:first-child:before{display:none}.step.done:before,.step.current:before{background:var(--pw)}.step-node{z-index:1;border:2px solid var(--pw);background:var(--c-surface);width:40px;height:40px;color:var(--pw);border-radius:50%;place-items:center;padding:0;display:grid;position:relative}.step.done .step-node{background:color-mix(in srgb, var(--pw) 18%, var(--c-surface))}.step.current .step-node{background:var(--pw);color:#fff;box-shadow:0 0 0 5px color-mix(in srgb, var(--pw) 22%, transparent)}.step-text{flex-direction:column;font-size:.85rem;line-height:1.25;display:flex}.stepper.compact .step{min-width:70px}.stepper.compact .step-node{width:28px;height:28px}.stepper.compact .step:before{top:13px}.stepper.compact .step-text{font-size:.72rem}@media (width<=600px){.stepper:not(.compact){flex-direction:column;gap:14px}.stepper:not(.compact) .step{text-align:left;flex-direction:row;min-width:0}.stepper:not(.compact) .step:before{width:2px;height:14px;top:-14px;left:19px}}.pw-dot{align-items:center;gap:8px;display:inline-flex}.pw-dot:before{content:"";background:var(--pw);border-radius:50%;flex:0 0 10px;width:10px;height:10px}.pathway-card{border-top:4px solid var(--pw);border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex-direction:column;gap:10px;margin:-14px -16px;padding:12px 16px 14px;display:flex}.item-grid .pathway-card{margin:-12px;padding:10px 12px 12px}.pathway-card-title{font-size:1.02rem;font-weight:750}.plain-fieldset{border:0;min-width:0;margin:0;padding:0}.swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{border:2px solid var(--c-surface);width:26px;height:26px;box-shadow:0 0 0 1px var(--c-border);cursor:pointer;border-radius:50%;padding:0}.swatch.active{box-shadow:0 0 0 2px var(--c-text)}.swatch.none{background:repeating-linear-gradient(45deg, var(--c-surface-alt), var(--c-surface-alt) 4px, var(--c-border) 4px, var(--c-border) 6px)}.icon-picker{flex-wrap:wrap;gap:4px;display:flex}.icon-picker button{border:1px solid var(--c-border);background:var(--c-surface);width:34px;height:34px;color:var(--c-text);cursor:pointer;border-radius:8px;place-items:center;display:grid}.icon-picker button.active{border-color:var(--c-primary);background:var(--c-primary-soft);color:var(--c-primary)}.stage-list{flex-direction:column;gap:4px;margin:0 0 12px;padding:0;list-style:none;display:flex}.stage-list li{border-radius:var(--radius-md);align-items:center;gap:6px;padding:2px 4px;display:flex}.stage-list li.active{background:var(--c-primary-soft)}.stage-pick{text-align:left;min-width:0;color:var(--c-text);cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:6px;display:flex}.stage-pick-icon{border:2px solid var(--pw);width:28px;height:28px;color:var(--pw);border-radius:50%;flex:0 0 28px;place-items:center;display:grid}.stage-pick-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.stage-editor{border-top:1px solid var(--c-border);padding-top:12px}.translations-box{border:1px dashed var(--c-border);border-radius:var(--radius-md);padding:8px 10px}.translations-box summary{cursor:pointer;align-items:center;gap:6px;font-size:.9rem;font-weight:600;display:flex}@media (width>=1001px){.sticky-card{top:calc(var(--topbar-h) + 16px);position:sticky}}.queue-load{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.queue-load-tile{border:1px solid var(--c-border);border-radius:var(--radius-lg);background:var(--c-surface);cursor:pointer;box-shadow:var(--shadow-sm);flex-direction:column;gap:6px;padding:12px;display:flex}.queue-load-tile.active{border-color:var(--c-primary);box-shadow:0 0 0 3px var(--c-primary-soft)}.queue-load-tile.paused{background:var(--c-surface-alt)}.queue-load-bar{background:var(--c-surface-alt);border-radius:999px;height:6px;overflow:hidden}.queue-load-bar i{background:var(--c-warning);height:100%;display:block}.queue-load-stats{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 12px;font-weight:650;display:flex}.queue-load-stats span{align-items:center;gap:4px;display:inline-flex}.qr-img{image-rendering:pixelated;background:#fff;border-radius:8px;padding:6px}.qr-video{aspect-ratio:4/3;border-radius:var(--radius-lg);background:#000;width:100%;max-width:420px;margin:0 auto;position:relative;overflow:hidden}.qr-video video{object-fit:cover;width:100%;height:100%}.qr-frame{border:3px solid #ffffffd9;border-radius:14px;position:absolute;inset:18%;box-shadow:0 0 0 999px #00000059}.identify-hit{border-radius:var(--radius-md);background:var(--c-success-soft);flex-wrap:wrap;align-items:center;gap:12px;padding:12px;display:flex}.activation-sheet{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.activation-code{letter-spacing:.12em;font-size:2rem;font-weight:800}.activation-steps{text-align:left;margin:0}.plans{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.plan{border:1px solid var(--c-border);border-top:4px solid var(--pw);border-radius:var(--radius-lg);flex-direction:column;gap:10px;min-width:0;padding:12px 14px;display:flex}.plan-current{border-radius:var(--radius-md);background:color-mix(in srgb, var(--pw) 8%, var(--c-surface));flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;padding:10px;display:flex}.plan-history{flex-direction:column;gap:6px;margin:6px 0 0;padding-left:18px;display:flex}@media (width<=760px){.queue-load{scroll-snap-type:x mandatory;grid-template-columns:none;grid-auto-columns:78%;grid-auto-flow:column;overflow-x:auto}.queue-load-tile{scroll-snap-align:start}.plans{grid-template-columns:1fr}}@media print{body:has(.print-area) .modal-backdrop{background:0 0;position:static}:is(body:has(.print-area) .modal-header,body:has(.print-area) .modal-footer){display:none}}.date-field{align-items:stretch;gap:6px;display:flex;position:relative}.date-field>.input:first-child{font-variant-numeric:tabular-nums;flex:1;min-width:0;padding-right:40px}.date-field .date-field-time{text-align:center;font-variant-numeric:tabular-nums;flex:0 0 84px;width:84px}.date-field-btn{color:var(--c-text-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:50%;left:auto;transform:translateY(-50%)}.date-field:not(:has(.date-field-time)) .date-field-btn{right:4px}.date-field:has(.date-field-time) .date-field-btn{right:94px}.date-field-btn:hover{background:var(--c-primary-soft);color:var(--c-primary)}.date-field-native{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;bottom:0;left:0}.patient-photo{object-fit:cover;border:2px solid var(--c-surface);box-shadow:0 0 0 1px var(--c-border), var(--shadow-sm);border-radius:50%;flex:none}.photo-picker{flex-wrap:wrap;align-items:flex-start;gap:16px;display:flex}.photo-frame{border-radius:var(--radius-lg);border:2px dashed var(--c-border);background:var(--c-surface-alt);width:132px;height:160px;color:var(--c-text-muted);place-items:center;display:grid;overflow:hidden}.photo-frame img{object-fit:cover;width:100%;height:100%}.print-page-wrap{background:#e9ecef;min-height:100vh;padding:16px}.print-toolbar{justify-content:center;gap:8px;margin-bottom:12px;display:flex}.print-sheet{color:#111;background:#fff;width:210mm;min-height:297mm;margin:0 auto;padding:14mm 14mm 12mm;font-family:Noto Sans Lao,Noto Sans Thai,Noto Sans,system-ui,sans-serif;font-size:13.5pt;line-height:1.55;box-shadow:0 6px 24px #0000002e}.eye-reg-header{text-align:center;min-height:86px;position:relative}.eye-reg-header .print-logo{position:absolute;top:22px;left:0}.eye-reg-title h1{margin:18px 0 2px;font-size:17pt;font-weight:800}.eye-reg-title p{margin:0;font-size:11.5pt}.eye-reg-code{flex-direction:column;align-items:flex-end;gap:4px;margin-top:6px;display:flex}.eye-reg-code>div:first-child{border-bottom:1.5px solid #111;padding-bottom:2px}.eye-reg-mrn{letter-spacing:.02em;font-size:20pt;font-weight:800}.eye-reg-qr{align-items:center;gap:10px;display:flex}.eye-reg-qr .qr-img{border-radius:0;padding:0}.eye-reg-ticket{font-size:12pt}.eye-reg-info{grid-template-columns:1.15fr 1fr;gap:4px 24px;margin-top:4px;display:grid}.eye-reg-col.right{text-align:right;align-items:flex-end}.eye-reg-col{flex-direction:column;display:flex}.eye-reg-row span{font-weight:700}.eye-reg-row strong{font-weight:500}.eye-reg-row.wide{margin-bottom:2px}.eye-reg-col:not(.right) .eye-reg-row:not(.wide){padding-left:22px}.eye-reg-printed{margin-top:4px;font-size:12pt}.eye-reg-row.patient-type{margin:14px 0 6px 50px}.eye-reg-measures{grid-template-columns:1.6fr 1fr;align-items:center;gap:24px;margin:2px 0 6px;display:grid}.eye-fork{align-items:center;gap:4px;display:flex}.eye-fork-label{width:38px;font-size:12pt;font-weight:600}.eye-fork-lines{flex:0 0 46px;width:46px;height:64px}.eye-fork-rows{flex-direction:column;justify-content:space-between;height:72px;display:flex}.eye-fork-rows>div{align-items:flex-end;gap:2px;font-size:11.5pt;display:flex}.eye-fork-rows b{font-weight:600}.print-dots{text-align:center;border-bottom:1.6px dotted #111;height:1.3em;padding:0 4px;display:inline-block}.print-dots strong{font-weight:700}.eye-reg-box-title{text-align:center;margin:6px 0 4px;font-size:13pt;font-weight:700}.eye-reg-box{border:1.6px solid #111;min-height:120mm;padding:10mm 6mm}.eye-reg-eyes{gap:8mm;margin-top:18mm;display:flex}.eye-circle{border:1.4px solid #111;border-radius:50%;width:38mm;height:38mm;position:relative}.eye-circle span{color:#888;font-size:9pt;position:absolute;bottom:-6mm;left:50%;transform:translate(-50%)}@media print{@page{size:A4 portrait;margin:0}body:has(.print-sheet){background:#fff!important}.no-print{display:none!important}.print-page-wrap{background:#fff;padding:0}.print-sheet{box-shadow:none;margin:0}}@media screen and (width<=860px){.print-sheet{width:100%;min-height:0;padding:16px;font-size:11pt}.eye-reg-header .print-logo{margin:0 auto;display:block;position:static}.eye-reg-info,.eye-reg-measures{grid-template-columns:1fr}.eye-reg-col.right{text-align:left;align-items:flex-start}}.reports-layout{gap:var(--gap);grid-template-columns:280px minmax(0,1fr);align-items:start;display:grid}.reports-catalog .card-body{flex-direction:column;gap:12px;max-height:calc(100vh - 220px);display:flex;overflow-y:auto}.reports-group-title{text-transform:uppercase;letter-spacing:.05em;color:var(--c-text-muted);align-items:center;gap:6px;margin-bottom:4px;font-size:.78rem;font-weight:800;display:flex}.reports-item{border-radius:var(--radius-md);width:100%;color:var(--c-text);text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:8px 10px;display:flex}.reports-item:hover{background:var(--c-surface-alt)}.reports-item.active{background:var(--c-primary-soft);color:var(--c-primary);font-weight:650}.reports-filters{flex-wrap:wrap;align-items:flex-end;gap:12px 16px;display:flex}.reports-filters .field{margin:0}.reports-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.report-head{flex-wrap:wrap;justify-content:space-between;gap:16px;margin-bottom:12px;display:flex}.report-head h2{margin:2px 0}.report-hospital{color:var(--c-primary);font-weight:700}.report-meta{text-align:right;flex-direction:column;gap:2px;display:flex}.report-totals{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:14px;display:grid}.report-total{border-radius:var(--radius-md);background:var(--c-surface-alt);border-left:3px solid var(--c-primary);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.report-total span{color:var(--c-text-muted);font-size:.78rem}.report-total strong{font-variant-numeric:tabular-nums;font-size:1.15rem}.report-print{display:none}@media (width<=1000px){.reports-layout{grid-template-columns:1fr}.reports-catalog .card-body{max-height:260px}.reports-actions{margin-left:0}}@media print{.report-screen,.reports-catalog{display:none!important}.report-print{font-size:9pt;display:table}.report-print th,.report-print td{border-bottom:1px solid #ccc;padding:3px 6px!important}.reports-layout{display:block}.report-sheet{box-shadow:none!important;border:0!important}}.village-list{flex-direction:column;gap:6px;max-height:460px;margin-top:10px;display:flex;overflow-y:auto}.btn{letter-spacing:.01em;background:linear-gradient(180deg, var(--c-surface), color-mix(in srgb, var(--c-surface-alt) 70%, var(--c-surface)));color:var(--c-text);border:1px solid var(--c-border);border-radius:12px;gap:8px;padding:0 16px;font-weight:650;transition:transform .12s,box-shadow .15s,background .15s,border-color .15s,filter .15s;position:relative;box-shadow:inset 0 1px #fff9,0 1px 2px #1018280f}.btn>svg{opacity:.9;flex:none}.btn:hover:not(:disabled){border-color:color-mix(in srgb, var(--c-primary) 35%, var(--c-border));transform:translateY(-1px);box-shadow:inset 0 1px #fff9,0 4px 10px #10182814}.btn:active:not(:disabled){transform:translateY(0);box-shadow:inset 0 1px 2px #1018281a}.btn:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--c-primary) 35%, transparent);outline:none}.btn.primary{border:1px solid color-mix(in srgb, var(--c-primary) 80%, #000);background:linear-gradient(180deg, color-mix(in srgb, var(--c-primary) 82%, #fff), var(--c-primary) 55%, color-mix(in srgb, var(--c-primary) 88%, #000));color:var(--c-on-primary);box-shadow:0 1px 0 #ffffff40 inset, 0 6px 16px color-mix(in srgb, var(--c-primary) 32%, transparent);text-shadow:0 1px #0000001f}.btn.primary:hover:not(:disabled){filter:brightness(1.05)saturate(1.05);border-color:color-mix(in srgb, var(--c-primary) 70%, #000);box-shadow:0 1px 0 #ffffff40 inset, 0 10px 22px color-mix(in srgb, var(--c-primary) 38%, transparent)}.btn.danger{border:1px solid color-mix(in srgb, var(--c-danger) 80%, #000);background:linear-gradient(180deg, color-mix(in srgb, var(--c-danger) 80%, #fff), var(--c-danger) 60%);color:#fff;box-shadow:0 6px 16px color-mix(in srgb, var(--c-danger) 28%, transparent)}.btn.ghost{box-shadow:none;color:color-mix(in srgb, var(--c-primary) 75%, var(--c-text));background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){background:var(--c-primary-soft);box-shadow:none;border-color:#0000}.btn.outline{border-color:color-mix(in srgb, var(--c-primary) 45%, var(--c-border));color:var(--c-primary);box-shadow:none;background:0 0}.btn.sm{border-radius:10px;gap:6px;min-height:32px;padding:0 11px}.btn.icon,.btn.sm.icon{padding:0}.btn:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.2);transform:none}[data-mode=dark] .btn:not(.primary):not(.danger):not(.ghost):not(.outline){box-shadow:0 1px 2px #0000004d}@media (prefers-reduced-motion:reduce){.btn,.btn:hover:not(:disabled){transition:none;transform:none}}select,select option{font-family:var(--font-family)}@supports (appearance:base-select){select:not([multiple]):not([size]){appearance:base-select}select:not([multiple]):not([size])::picker(select){appearance:base-select}select:not([multiple]):not([size]){font-family:var(--font-family);cursor:pointer;align-items:center;gap:8px;line-height:1.4;display:inline-flex}select:not([multiple]):not([size]):disabled{cursor:not-allowed;opacity:.6}select:not([multiple]):not([size])::picker-icon{content:"";border-right:2px solid var(--c-text-muted);border-bottom:2px solid var(--c-text-muted);width:9px;height:9px;margin-inline-start:auto;transition:transform .15s;transform:translateY(-2px)rotate(45deg)}select:not([multiple]):not([size]):open::picker-icon{transform:translateY(2px)rotate(225deg)}select:not([multiple]):not([size])::picker(select){min-inline-size:anchor-size(width);border:1px solid var(--c-border);background:var(--c-surface);max-block-size:min(360px,60vh);color:var(--c-text);font-family:var(--font-family);border-radius:12px;margin-block:4px;padding:6px;overflow-y:auto;box-shadow:0 12px 32px #10182829,0 2px 6px #10182814}select:not([multiple]):not([size]) option{font-family:var(--font-family);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:.95rem;line-height:1.5;display:flex}select:not([multiple]):not([size]) option:hover,select:not([multiple]):not([size]) option:focus-visible{background:var(--c-primary-soft);outline:none}select:not([multiple]):not([size]) option:checked{background:color-mix(in srgb, var(--c-primary) 14%, var(--c-surface));color:var(--c-primary);font-weight:600}select:not([multiple]):not([size]) option::checkmark{color:var(--c-primary);order:1;margin-inline-start:auto}select:not([multiple]):not([size]) option:disabled{opacity:.5;cursor:default}}.login-stats{gap:16px;margin-top:28px;display:grid}.login-stats-head{letter-spacing:.02em;opacity:.9;align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:flex}.live-dot{background:#4ade80;border-radius:50%;width:8px;height:8px;animation:2s infinite live-pulse;box-shadow:0 0 #4ade8099}@keyframes live-pulse{70%{box-shadow:0 0 0 8px #4ade8000}to{box-shadow:0 0 #4ade8000}}.login-stat-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.login-stat{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border:1px solid #ffffff29;border-radius:14px;align-items:flex-start;gap:10px;padding:12px;display:flex}.login-stat .ic{background:#ffffff29;border-radius:9px;flex:none;place-items:center;width:32px;height:32px;display:grid}.login-stat>div{min-width:0;display:grid}.login-stat strong{font-variant-numeric:tabular-nums;font-size:1.3rem;line-height:1.2}.login-stat .label{opacity:.95;font-size:.8rem}.login-stat .sub{opacity:.7;font-size:.72rem}.login-chart{background:#ffffff14;border:1px solid #ffffff24;border-radius:14px;padding:12px 14px 8px}.login-chart>.label{opacity:.8;font-size:.78rem}.login-bars{grid-auto-columns:1fr;grid-auto-flow:column;gap:6px;height:92px;margin-top:8px;display:grid}.login-bar{grid-template-rows:1fr auto;place-items:end center;gap:4px;min-width:0;display:grid}.login-bar span{background:#ffffff73;border-radius:5px 5px 2px 2px;width:100%;max-width:22px;transition:height .4s}.login-bar.current span{background:#fff}.login-bar small{opacity:.75;white-space:nowrap;font-size:.6rem}.login-stats-mobile{display:none}@media (width<=860px){.login-stats-mobile{color:#fff;background:linear-gradient(150deg, var(--c-sidebar), var(--c-primary));border-radius:16px;padding:16px;display:block}.login-stats-mobile .login-stats{margin-top:0}.login-stats-mobile .login-stat-grid{grid-template-columns:1fr 1fr}}.app-download{background:var(--c-surface);border:1px solid var(--c-border);box-shadow:var(--shadow-card-hover);border-radius:18px;grid-template-columns:1fr auto;grid-template-areas:"main qr""btn qr""help help";align-items:center;gap:12px 16px;padding:18px;display:grid}.app-download-main{grid-area:main;align-items:center;gap:12px;min-width:0;display:flex}.app-download-icon{color:#fff;background:linear-gradient(135deg,#3ddc84,#1a9e5a);border-radius:12px;flex:none;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 6px 14px #1a9e5a4d}.app-download-text{min-width:0;display:grid}.app-download-btn{grid-area:btn;justify-content:center;text-decoration:none}.app-download-qr{text-align:center;grid-area:qr;justify-items:center;gap:4px;max-width:110px;display:grid}.app-download-qr img{border:1px solid var(--c-border);background:#fff;border-radius:8px;padding:4px}.app-download-help{grid-area:help}.app-download-help ol{gap:4px;margin:8px 0;padding-left:20px;display:grid}@media (width<=860px){.app-download{grid-template-columns:1fr;grid-template-areas:"main""btn""help"}.app-download-qr{display:none}}.select-menu{z-index:1000;overscroll-behavior:contain;border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text);font-family:var(--font-family);border-radius:12px;outline:none;padding:6px;font-size:.95rem;line-height:1.5;animation:.12s ease-out select-menu-in;position:fixed;overflow-y:auto;box-shadow:0 12px 32px #10182829,0 2px 6px #10182814}@keyframes select-menu-in{0%{opacity:0;transform:translateY(-4px)}}.select-menu-option{cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:8px;padding:8px 32px 8px 10px;display:flex;position:relative}.select-menu-option.in-group{padding-left:22px}.select-menu-option.active{background:var(--c-primary-soft)}.select-menu-option.selected{color:var(--c-primary);font-weight:600}.select-menu-option.selected:after{content:"";border-bottom:2px solid;border-right:2px solid;width:5px;height:10px;position:absolute;top:50%;right:12px;transform:translateY(-65%)rotate(45deg)}.select-menu-option[aria-disabled=true]{opacity:.5;cursor:default}.select-menu-group{color:var(--c-text-muted);padding:8px 10px 4px;font-size:.78rem;font-weight:600}.print-sheet.eye-reg{flex-direction:column;height:297mm;display:flex;overflow:hidden}.print-sheet.eye-reg .eye-reg-box{flex:auto;min-height:60mm}.print-sheet.eye-reg.pdf-capture{width:210mm!important;height:297mm!important;min-height:297mm!important;box-shadow:none!important;margin:0!important;padding:14mm 14mm 12mm!important;font-size:13.5pt!important}.print-sheet.eye-reg.pdf-capture .print-logo{position:absolute!important}@media print{.print-sheet.eye-reg{break-after:avoid;page-break-after:avoid;height:297mm}}@media screen and (width<=860px){.print-sheet.eye-reg:not(.pdf-capture){height:auto;overflow:visible}}.app-downloads{background:var(--c-surface);border:1px solid var(--c-border);box-shadow:var(--shadow-card-hover);border-radius:18px;gap:4px;padding:16px 18px;display:grid}.app-downloads-head{flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:6px;display:flex}.app-downloads-head .small{margin-left:auto}.app-downloads .app-download{border:0;border-top:1px solid var(--c-border);box-shadow:none;background:0 0;border-radius:0;grid-template-areas:"main qr""btn qr";padding:12px 0}.app-download.staff .app-download-icon{background:linear-gradient(135deg,#1e88e5,#0d47a1);box-shadow:0 6px 14px #0d47a14d}.app-download.patient .app-download-icon{background:linear-gradient(135deg,#26a69a,#00695c);box-shadow:0 6px 14px #00695c4d}.app-downloads>.app-download-help{border-top:1px solid var(--c-border);grid-area:auto;padding-top:8px}@media (width<=860px){.app-downloads .app-download{grid-template-areas:"main""btn"}}.inv-kpis{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.inv-kpi .value{font-variant-numeric:tabular-nums;font-size:1.35rem}.inv-kpi.danger{border-color:color-mix(in srgb, var(--c-danger) 45%, var(--c-border));background:color-mix(in srgb, var(--c-danger) 6%, var(--c-surface))}.inv-kpi.warning{border-color:color-mix(in srgb, var(--c-warning) 45%, var(--c-border));background:color-mix(in srgb, var(--c-warning) 7%, var(--c-surface))}.inv-kpi.info{border-color:color-mix(in srgb, var(--c-info) 40%, var(--c-border))}.inv-kpi.success{border-color:color-mix(in srgb, var(--c-success) 40%, var(--c-border))}.inv-kpi.danger .label .icon{color:var(--c-danger)}.inv-kpi.warning .label .icon{color:var(--c-warning)}.stock-gauge{background:var(--c-surface-alt);border-radius:99px;min-width:80px;height:6px;position:relative;overflow:hidden}.stock-gauge-fill{border-radius:99px;position:absolute;inset:0 auto 0 0}.stock-gauge-fill.success{background:var(--c-success)}.stock-gauge-fill.warning{background:var(--c-warning)}.stock-gauge-fill.danger{background:var(--c-danger)}.stock-gauge-fill.info{background:var(--c-info)}.stock-gauge-mark{background:var(--c-text);opacity:.55;width:2px;position:absolute;top:-2px;bottom:-2px}.item-search{position:relative}.item-search-menu{z-index:60;border:1px solid var(--c-border);background:var(--c-surface);border-radius:12px;max-height:320px;padding:6px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #10182829}.item-search-option{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.item-search-option:hover,.item-search-option:focus-visible{background:var(--c-primary-soft);outline:none}.num-input{text-align:right;font-variant-numeric:tabular-nums;width:110px}.lines-table td{vertical-align:middle}.bar-row{width:100%;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1.4fr) minmax(60px,2fr) auto;align-items:center;gap:10px;padding:2px 0;font-size:.86rem;display:grid}.bar-row.as-link{cursor:pointer;border-radius:6px}.bar-row.as-link:hover{background:var(--c-surface-alt)}.bar-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-track{background:var(--c-surface-alt);border-radius:99px;height:10px;overflow:hidden}.bar-fill{background:var(--c-cat-1);border-radius:99px;height:100%;display:block}.bar-fill.alt{background:var(--c-cat-3)}.bar-fill.alt2{background:var(--c-cat-2)}.bar-value{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.inv-alerts{display:grid}.inv-alert{border:0;border-bottom:1px solid var(--c-border);width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border-left:4px solid #0000;align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.inv-alerts.compact .inv-alert{padding:8px 4px 8px 10px}.inv-alert:last-child{border-bottom:0}.inv-alert:hover{background:var(--c-surface-alt)}.inv-alert.danger{border-left-color:var(--c-danger)}.inv-alert.warning{border-left-color:var(--c-warning)}.inv-alert.info{border-left-color:var(--c-info)}.inv-alert-icon{color:var(--c-text-muted);flex:none;margin-top:2px}.inv-alert.danger .inv-alert-icon{color:var(--c-danger)}.inv-alert.warning .inv-alert-icon{color:var(--c-warning)}.inv-alert-body{gap:4px;min-width:0;display:grid}.tab-count{background:var(--c-danger);color:#fff;border-radius:99px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:700;display:inline-grid}.suggestion-row{border:1px solid var(--c-border);cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.suggestion-row:hover{background:var(--c-surface-alt)}.receipt-block{border:1px solid var(--c-border);border-radius:10px;padding:10px 12px}.receipt-lines{gap:2px;margin:6px 0 0;padding-left:20px;font-size:.88rem;display:grid}.inv-timeline{gap:8px;margin:0;padding-left:18px;display:grid}.link{color:var(--c-primary);cursor:pointer;text-align:left;font:inherit;background:0 0;border:0;padding:0}.link:hover{text-decoration:underline}.text-warning{color:var(--c-warning)}.print-sheet.po-doc{flex-direction:column;height:297mm;font-size:10.5pt;line-height:1.45;display:flex;overflow:hidden}.po-head{border-bottom:2px solid #111;justify-content:space-between;gap:16px;padding-bottom:10px;display:flex}.po-head h1{margin:0 0 4px;font-size:15pt}.po-head p{color:#444;margin:0}.po-title h2{letter-spacing:.04em;text-align:right;margin:0 0 6px;font-size:17pt}.po-title table th{text-align:left;color:#555;padding:1px 10px 1px 0;font-weight:600}.po-title table td{text-align:right}.po-parties{grid-template-columns:1fr 1fr auto;gap:16px;margin:12px 0;display:grid}.po-parties h3{text-transform:uppercase;letter-spacing:.06em;color:#666;margin:0 0 4px;font-size:9pt}.po-parties p{margin:0}.po-lines{border-collapse:collapse;width:100%;font-size:9.5pt}.po-lines th,.po-lines td{border:1px solid #999;padding:4px 6px}.po-lines thead th{text-align:left;background:#eee}.po-lines .num{text-align:right;font-variant-numeric:tabular-nums}.po-lines tfoot th{background:#f5f5f5}.po-notes{margin:10px 0 0}.po-signs{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:auto;padding-top:24px;display:grid}.po-signs div{text-align:center;gap:2px;display:grid}.po-signs div span{color:#555;font-size:9pt}.po-signs div strong{border-top:1px dotted #333;min-height:1.4em;margin-top:36px;padding-top:4px}.po-foot{color:#888;text-align:right;margin-top:10px;font-size:8pt}.print-sheet.po-doc.pdf-capture{width:210mm!important;height:297mm!important;box-shadow:none!important;margin:0!important;padding:14mm 14mm 12mm!important}@media screen and (width<=860px){.print-sheet.po-doc:not(.pdf-capture){height:auto;overflow:visible}.po-head,.po-parties{grid-template-columns:1fr;display:grid}}.nav-group-head{align-items:center;gap:2px;display:flex}.nav-group-head .nav-link{flex:1;min-width:0}.nav-toggle{width:28px;height:28px;color:var(--c-on-sidebar);opacity:.6;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;transition:transform .15s,opacity .15s;display:grid}.nav-toggle:hover{opacity:1;background:#ffffff12}.nav-group.open .nav-toggle{transform:rotate(180deg)}.nav-group-head{position:relative}.nav-group-head .nav-link.has-toggle{padding-right:40px}.nav-group-head .nav-toggle{position:absolute;top:50%;right:10px;transform:translateY(-50%)}.nav-group.open .nav-group-head .nav-toggle{transform:translateY(-50%)rotate(180deg)}.nav-group-head .nav-link.active~.nav-toggle{opacity:.95;color:inherit}:root[data-theme=oph] .sidebar .nav-group-head .nav-link.active~.nav-toggle{color:#fff}.nav-children{border-left:1px solid #ffffff1f;flex-direction:column;margin:2px 0 6px 22px;padding-left:12px;display:flex}.nav-child{color:var(--c-on-sidebar);opacity:.72;border-radius:8px;padding:6px 10px;font-size:.86rem}.nav-child:hover{opacity:1;background:#ffffff0f;text-decoration:none}.nav-child.active{opacity:1;background:color-mix(in srgb, var(--c-primary) 18%, transparent);font-weight:600}.thumb{background:var(--c-surface-2,color-mix(in srgb, var(--c-text) 6%, transparent));color:var(--c-text-muted);border:1px solid var(--c-border);border-radius:10px;flex:none;place-items:center;display:inline-grid;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%}.gallery-strip{flex-wrap:wrap;gap:12px;display:flex}.gallery-item{width:112px;margin:0;position:relative}.gallery-item.primary .thumb{border:2px solid var(--c-primary)}.gallery-open{cursor:zoom-in;background:0 0;border:0;padding:0}.gallery-item figcaption{color:var(--c-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.gallery-badge{background:var(--c-primary);color:var(--c-on-primary);border-radius:999px;align-items:center;gap:3px;padding:1px 6px;font-size:.68rem;font-weight:600;display:inline-flex;position:absolute;top:6px;left:6px}.gallery-actions{background:color-mix(in srgb, var(--c-surface) 88%, transparent);border-radius:8px;gap:2px;display:flex;position:absolute;top:4px;right:4px}.gallery-add{border:2px dashed var(--c-border);width:112px;height:112px;color:var(--c-text-muted);cursor:pointer;background:0 0;border-radius:10px;align-content:center;place-items:center;gap:6px;font-size:.8rem;display:grid}.gallery-add:hover{border-color:var(--c-primary);color:var(--c-primary)}.gallery-viewer{z-index:200;background:#000000d1;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.gallery-viewer-inner{justify-items:center;gap:8px;max-width:min(1200px,100%);max-height:100%;display:grid;position:relative}.gallery-viewer img{object-fit:contain;background:#111;border-radius:8px;max-width:100%;max-height:calc(100vh - 120px)}.gallery-loading{width:320px;height:240px}.gallery-caption{color:#eee;margin:0}.gallery-viewer .btn{color:#fff}.gallery-close{position:absolute;top:-8px;right:-8px}.gallery-prev,.gallery-next{position:absolute;top:50%}.gallery-prev{left:-4px}.gallery-next{right:-4px}.bb-hero{background:radial-gradient(420px 160px at 0% 0%, color-mix(in srgb, var(--c-primary) 10%, transparent), transparent 70%), var(--c-surface);grid-template-columns:auto 1fr;align-items:center;gap:24px;padding:20px 24px;display:grid}.bb-hero-ring{align-items:center;gap:14px;display:flex}.bb-hero-title{font-size:1.05rem;font-weight:700}.bb-ring{flex:none;width:108px;height:108px}.bb-ring circle{fill:none;stroke-width:12px}.bb-ring .track{stroke:var(--c-surface-alt)}.bb-ring .value{stroke:var(--c-primary);stroke-linecap:round;transition:stroke-dasharray .6s}.bb-ring.warning .value{stroke:var(--c-warning)}.bb-ring.danger .value{stroke:var(--c-danger)}.bb-ring .pct{fill:var(--c-text);dominant-baseline:middle;font-size:26px;font-weight:800}.bb-hero-main{gap:12px;min-width:0;display:grid}.bb-stack{background:var(--c-surface-alt);border-radius:999px;gap:2px;height:12px;display:flex;overflow:hidden}.bb-stack .seg{flex-basis:0;min-width:6px}.bb-legend{flex-wrap:wrap;gap:8px;display:flex}.bb-chip{border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:5px 12px;font-size:.86rem;transition:border-color .15s,background .15s,box-shadow .15s;display:inline-flex}.bb-chip strong{font-variant-numeric:tabular-nums}.bb-chip:hover{border-color:var(--bb-tone)}.bb-chip.active{border-color:var(--bb-tone);background:color-mix(in srgb, var(--bb-tone) 12%, var(--c-surface));box-shadow:0 0 0 2px color-mix(in srgb, var(--bb-tone) 25%, transparent)}.bb-chip .dot{background:var(--bb-tone);border-radius:50%;width:9px;height:9px}.bb-facts{color:var(--c-text-muted);flex-wrap:wrap;gap:8px 20px;font-size:.88rem;display:flex}.bb-facts span{align-items:center;gap:6px;display:inline-flex}.bb-facts strong{color:var(--c-text)}.bb-facts .warn,.bb-facts .warn strong{color:var(--c-warning)}.s-occupied{--bb-tone:var(--c-primary)}.s-available{--bb-tone:var(--c-success)}.s-reserved{--bb-tone:var(--c-info)}.s-cleaning{--bb-tone:var(--c-warning)}.s-out_of_service{--bb-tone:var(--c-danger)}.bb-stack .seg{background:var(--bb-tone)}.bb-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.bb-ward-select{min-width:240px;margin:0}.bb-search{flex:220px;max-width:340px;margin-left:auto}.bb-ward{padding:0;overflow:hidden}.bb-ward-head{border-bottom:1px solid var(--c-border);background:linear-gradient(180deg, color-mix(in srgb, var(--c-primary) 5%, var(--c-surface)), var(--c-surface));grid-template-columns:auto 1fr minmax(160px,240px);align-items:center;gap:14px;padding:14px 18px;display:grid}.bb-ward-icon{width:40px;height:40px;color:var(--c-primary);background:var(--c-primary-soft);border-radius:12px;place-items:center;display:grid}.bb-ward-title h3{margin:0;font-size:1.05rem}.bb-ward-meta{color:var(--c-text-muted);flex-wrap:wrap;gap:4px 0;font-size:.82rem;display:flex}.bb-ward-meta span+span:before{content:"·";margin:0 7px}.bb-ward-occ{gap:5px;display:grid}.bb-meter{background:var(--c-surface-alt);border-radius:999px;height:7px;overflow:hidden}.bb-meter span{border-radius:inherit;background:var(--c-primary);height:100%;display:block}.bb-ward-occ.warning .bb-meter span{background:var(--c-warning)}.bb-ward-occ.danger .bb-meter span{background:var(--c-danger)}.bb-rooms{grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:14px;padding:16px 18px 18px;display:grid}.bb-room{border-radius:var(--radius-lg);background:var(--c-surface-alt);background:color-mix(in srgb, var(--c-surface-alt) 70%, var(--c-surface));border:1px solid color-mix(in srgb, var(--c-border) 60%, transparent);align-content:start;gap:10px;padding:12px;display:grid}.bb-room-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bb-room-no{align-items:center;gap:6px;font-weight:700;display:inline-flex}.bb-room-type{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:999px;padding:1px 8px;font-size:.8rem}.bb-room-rate{font-variant-numeric:tabular-nums;margin-left:auto;font-size:.88rem;font-weight:600}.bb-room-rate small{color:var(--c-text-muted);font-weight:400}.bb-beds{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.bb-bed{background:var(--c-surface);border:1px solid var(--c-border);min-height:132px;box-shadow:var(--shadow-sm);border-radius:12px;grid-template-rows:auto 1fr;transition:transform .15s,box-shadow .15s,border-color .15s;display:grid;position:relative;overflow:hidden}.bb-bed:before{content:"";background:var(--bb-tone);height:4px;position:absolute;inset:0 0 auto}.bb-bed-top{justify-content:space-between;align-items:center;gap:6px;padding:10px 10px 0;display:flex}.bb-bed-no{align-items:center;gap:5px;font-weight:700;display:inline-flex}.bb-bed-status{white-space:nowrap;color:var(--bb-tone);background:color-mix(in srgb, var(--bb-tone) 12%, transparent);border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.bb-bed-body{align-content:start;gap:7px;min-width:0;padding:8px 10px 10px;display:grid}.bb-bed-body.empty{text-align:center;align-content:center;justify-items:center}.bb-empty-icon{color:color-mix(in srgb, var(--bb-tone) 55%, transparent)}.bb-actions{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.bb-bed.s-occupied{cursor:pointer;border-color:color-mix(in srgb, var(--c-primary) 30%, var(--c-border));background:linear-gradient(180deg, color-mix(in srgb, var(--c-primary) 7%, var(--c-surface)), var(--c-surface) 70%)}.bb-bed.s-occupied:hover,.bb-bed.s-occupied:focus-visible{box-shadow:var(--shadow-card-hover);border-color:var(--c-primary);outline:none;transform:translateY(-2px)}.bb-bed.s-available{border-style:dashed;border-color:color-mix(in srgb, var(--c-success) 45%, var(--c-border));background:color-mix(in srgb, var(--c-success) 4%, var(--c-surface))}.bb-bed.s-cleaning{background:color-mix(in srgb, var(--c-warning) 6%, var(--c-surface))}.bb-bed.s-reserved{background:color-mix(in srgb, var(--c-info) 6%, var(--c-surface))}.bb-bed.s-out_of_service{background:repeating-linear-gradient(-45deg, var(--c-surface), var(--c-surface) 8px, color-mix(in srgb, var(--c-danger) 6%, var(--c-surface)) 8px, color-mix(in srgb, var(--c-danger) 6%, var(--c-surface)) 16px)}.bb-patient{align-items:center;gap:8px;min-width:0;display:flex}.bb-avatar{width:34px;height:34px;color:var(--c-on-primary);background:var(--c-primary);border-radius:50%;flex:none;place-items:center;font-size:.78rem;font-weight:700;display:grid}.bb-avatar.m{background:linear-gradient(135deg, var(--c-info), var(--c-primary))}.bb-avatar.f{background:linear-gradient(135deg,#e0559a,#a855f7)}.bb-patient-text{min-width:0;line-height:1.3;display:grid}.bb-patient-text strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bb-reason{color:var(--c-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.8rem;display:-webkit-box;overflow:hidden}.bb-tags{flex-wrap:wrap;gap:4px;display:flex}.bb-tag{color:var(--c-text-muted);background:var(--c-surface-alt);border-radius:6px;align-items:center;gap:3px;padding:1px 7px;font-size:.72rem;font-weight:600;display:inline-flex}.bb-tag.info{color:var(--c-info);background:var(--c-info-soft)}.bb-tag.warning{color:var(--c-warning);background:var(--c-warning-soft)}.bb-tag.danger{color:var(--c-danger);background:var(--c-danger-soft)}@media (width<=760px){.bb-hero{grid-template-columns:1fr;padding:16px}.bb-ward-head{grid-template-columns:auto 1fr}.bb-ward-occ{grid-column:1/-1}.bb-search{max-width:none;margin-left:0}.bb-rooms{padding:12px}.bb-beds{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}@media (prefers-reduced-motion:reduce){.bb-bed,.bb-ring .value{transition:none}}.svc-pick{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;max-height:46vh;margin:12px 0;display:grid;overflow-y:auto}.svc-option{border:1px solid var(--c-border);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:10px;display:flex}.svc-option.on{border-color:var(--c-primary);background:color-mix(in srgb, var(--c-primary) 7%, var(--c-surface))}.svc-option input{margin-top:3px}.svc-chip{align-items:center;gap:4px;font-size:.85rem;display:inline-flex}.dc-body{gap:8px;margin-top:6px;display:grid}.dc-row h3{text-transform:uppercase;letter-spacing:.05em;color:#555;margin:0 0 2px;font-size:9.5pt}.dc-row p{margin:0}.pre-wrap{white-space:pre-wrap}.pos-layout{grid-template-columns:minmax(0,1fr) 400px;align-items:start;gap:16px;display:grid}.pos-cart{top:calc(var(--topbar-h) + 12px);position:sticky}.pos-search{flex:1;align-items:center;gap:8px;min-width:220px;display:flex}.pos-search .input{flex:1}.pos-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.pos-product{text-align:left;border:1px solid var(--c-border);border-radius:var(--radius-md);background:var(--c-surface);color:var(--c-text);cursor:pointer;justify-items:start;gap:4px;padding:10px;transition:border-color .15s,box-shadow .15s,transform .1s;display:grid}.pos-product:hover:not(:disabled){border-color:var(--c-primary);box-shadow:var(--shadow-card)}.pos-product:active:not(:disabled){transform:scale(.98)}.pos-product.out{opacity:.5;cursor:not-allowed}.pos-product .thumb{width:100%!important;height:96px!important}.pos-product-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.5em;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.pos-line{border-bottom:1px dashed var(--c-border);gap:6px;padding-bottom:10px;display:grid}.pos-line-name{text-overflow:ellipsis;overflow:hidden}.pos-total{font-size:1.5rem;font-weight:700}.pos-change{padding-top:6px;font-size:1.3rem;font-weight:700}.pos-charge{justify-content:center;width:100%;padding:12px;font-size:1.05rem}@media (width<=1100px){.pos-layout{grid-template-columns:1fr}.pos-cart{position:static}}.text-success{color:var(--c-success,#16a34a)}.receipt-80{color:#111;width:80mm;box-shadow:var(--shadow-card);background:#fff;margin:0 auto;padding:6mm 4mm;font-size:9.5pt;line-height:1.35}.receipt-80 h1{text-align:center;margin:0;font-size:12pt}.receipt-80 .center{text-align:center}.receipt-80 table{border-collapse:collapse;width:100%}.receipt-80 td{vertical-align:top;padding:1px 0}.receipt-80 .num{text-align:right;white-space:nowrap}.receipt-80 hr{border:0;border-top:1px dashed #333;margin:6px 0}@media print{@page receipt{size:80mm auto;margin:0}.receipt-80{page:receipt;box-shadow:none;width:80mm}}.bar-list{gap:8px;display:grid}.bar-list-row{grid-template-columns:minmax(110px,1fr) 2fr auto;align-items:center;gap:10px;display:grid}.bar-list-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-list-track{background:color-mix(in srgb, var(--c-text) 7%, transparent);border-radius:999px;height:10px;overflow:hidden}.bar-list-fill{background:var(--c-primary);border-radius:999px;height:100%;display:block}.patient-avatar{box-shadow:0 0 0 2px var(--c-surface), 0 0 0 3px var(--c-border);border-radius:50%;flex:none;display:block}.patient-avatar .bg-a{stop-color:#e2e8f0}.patient-avatar .bg-b{stop-color:#94a3b8}.patient-avatar .body{fill:#ffffffeb}.patient-avatar .skin{fill:#f4c9a3}.patient-avatar .neck{fill:#e3ad85}.patient-avatar .collar{fill:#fff}.patient-avatar.male .bg-a{stop-color:#bfdbfe}.patient-avatar.male .bg-b{stop-color:#3b82f6}.patient-avatar.male .shirt{fill:#1e3a8a}.patient-avatar.male .hair{fill:#2f2219}.patient-avatar.female .bg-a{stop-color:#fbcfe8}.patient-avatar.female .bg-b{stop-color:#ec4899}.patient-avatar.female .shirt{fill:#9d174d}.patient-avatar.female .hair{fill:#3b2418}.patient-photo-slot{flex:none;display:inline-grid}.patient-cell{align-items:center;gap:10px;min-width:0;display:flex}.patient-cell .patient-photo,.patient-cell .patient-avatar{box-shadow:0 0 0 1px var(--c-border)}.pick-row{border:1px solid var(--c-border);border-radius:var(--radius-md);cursor:pointer;background:var(--c-surface);align-items:center;gap:10px;padding:8px 10px;display:flex}.pick-row:hover{border-color:var(--c-primary)}.pick-row.on{border-color:var(--c-primary);background:var(--c-primary-soft)}.pick-row .grow{flex:1}.disease-type-chip{white-space:nowrap;width:fit-content;color:var(--c-text);background:color-mix(in srgb, var(--chip) 12%, transparent);border:1px solid color-mix(in srgb, var(--chip) 35%, transparent);border-radius:999px;align-self:flex-start;align-items:center;gap:6px;padding:2px 9px;font-size:12px;display:inline-flex}.disease-type-chip>i{background:var(--chip);border-radius:50%;width:8px;height:8px}.disease-picker{position:relative}.disease-picker-list{z-index:30;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-md);max-height:320px;box-shadow:var(--shadow-md);margin:4px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.disease-picker-list>li{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:10px;padding:8px 10px;display:flex}.disease-picker-list>li.active{background:var(--c-primary-soft)}.disease-picker-list .code{min-width:56px;color:var(--c-primary);font-weight:600}.disease-picker-list .grow{flex:1;min-width:0}.disease-color-input{border:1px solid var(--c-border);border-radius:var(--radius-md);background:var(--c-surface);cursor:pointer;width:46px;height:46px;padding:4px}@media (width<=760px){.disease-picker-list>li{flex-wrap:wrap}.disease-picker-list .disease-type-chip{margin-left:66px}}.brand-logo.has-photo{background:#fff;padding:2px;overflow:hidden}.brand-logo.has-photo img{object-fit:contain;border-radius:inherit;width:100%;height:100%;display:block}.po-head-brand{align-items:flex-start;gap:12px;display:flex}.po-head-logo{object-fit:contain;flex:none;width:64px;height:64px}.hospital-photo-frame{width:160px;height:160px}.hospital-photo-frame img{object-fit:contain;background:#fff}@media (width>=761px){.shell.nav-collapsed .sidebar .nav-area+.nav-area{border-top:1px solid color-mix(in srgb, currentColor 14%, transparent);margin-top:6px;padding-top:6px}}.sidebar .nav-area+.nav-area{margin-top:4px}.sidebar .nav-section{letter-spacing:.05em;opacity:1;color:color-mix(in srgb, var(--c-on-sidebar) 80%, var(--c-primary));background:color-mix(in srgb, var(--c-on-sidebar) 9%, transparent);box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--c-on-sidebar) 14%, transparent);border-radius:8px;align-items:center;gap:8px;margin:16px 6px 6px;padding:7px 10px;font-size:.78rem;font-weight:800;display:flex}.sidebar .nav-section:before{content:"";background:var(--c-primary);width:4px;height:16px;box-shadow:0 0 0 1px color-mix(in srgb, var(--c-on-sidebar) 20%, transparent);border-radius:2px;flex:none}:root[data-theme=oph] .sidebar{background:linear-gradient(#0c2f80 0%,#0a2466 45%,#071a4b 100%);border-right:3px solid #d4a017;box-shadow:inset -1px 0 #f2d27a}:root[data-theme=oph] .sidebar .nav-section{color:#f2c230;background:linear-gradient(90deg,#d4a01738,#d4a0170a);box-shadow:inset 0 -1px #d4a01773}:root[data-theme=oph] .sidebar .nav-section:before{background:linear-gradient(#e8212f,#a50d24);box-shadow:0 0 0 1px #d4a017}:root[data-theme=oph] .sidebar .nav-link.active{color:#fff;background:linear-gradient(90deg,#c8102e 0%,#a50d24 100%);box-shadow:inset 3px 0 #f2c230,0 4px 12px #c8102e59}:root[data-theme=oph] .sidebar .nav-child.active{color:#f2c230}:root[data-theme=oph] .brand-logo:not(.has-photo){background:radial-gradient(circle at 35% 30%,#e8212f,#a50d24 70%);box-shadow:0 0 0 2px #d9dde3,0 0 0 3px #d4a017}:root[data-theme=oph] .topbar{box-shadow:0 3px 0 -1px #0a2466,0 4px 0 -1px #c8102e,0 5px 0 -1px #d4a017}:root[data-theme=oph] .btn.primary{background:linear-gradient(#d4182f 0%,#a50d24 100%);border-color:#8f0b1f;box-shadow:inset 0 1px #ffffff40,0 2px 6px #a50d244d}:root[data-theme=oph] .content h1{color:#0a2466}:root[data-theme=oph] .tab.active{color:#0a2466;border-bottom-color:#c8102e}:root[data-theme=oph] .card-header{border-bottom:2px solid #f0e3bd}:root[data-theme=oph] .kpi:after{background:linear-gradient(#d4a017,#c8102e)}.topbar-hospital{color:var(--c-text);letter-spacing:.01em;align-items:center;gap:8px;font-size:1.12rem;font-weight:700;display:inline-flex}.topbar-hospital svg{color:var(--c-primary)}.sidebar .nav-section{padding:8px 12px;font-size:.86rem}.sidebar .nav-link{font-size:1rem;font-weight:600}.sidebar .nav-link svg{width:21px;height:21px}.sidebar .nav-child{opacity:.85;padding:5px 10px;font-size:.82rem;font-weight:400}.sidebar .nav-child.active{opacity:1;font-weight:600}.staff-kpi-area{align-items:center;gap:8px;margin:8px 0 0;font-size:1rem;display:flex}.staff-kpi-area:before{content:"";background:var(--c-primary);border-radius:2px;width:4px;height:16px}.sidebar{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--c-on-sidebar) 25%, transparent) transparent}.sidebar .nav-area{flex-direction:column;gap:2px;display:flex}.sidebar .nav-section:before{content:none}.sidebar .nav-section{text-transform:uppercase;border-radius:10px;gap:10px;margin:18px 4px 6px;padding:8px 10px}.sidebar .nav-section-icon{background:var(--c-primary);width:24px;height:24px;color:var(--c-on-primary);box-shadow:0 2px 6px color-mix(in srgb, var(--c-primary) 45%, transparent);border-radius:7px;flex:none;place-items:center;display:grid}.sidebar .nav-link{opacity:.92;border-radius:12px;gap:12px;margin:0 4px;padding:6px 10px 6px 6px}.sidebar .nav-link>svg,.sidebar .nav-group-head .nav-link>svg{box-sizing:content-box;background:color-mix(in srgb, var(--c-on-sidebar) 9%, transparent);border-radius:9px;width:19px;height:19px;padding:6px;transition:background .15s,color .15s,transform .15s}.sidebar .nav-link:hover>svg{background:color-mix(in srgb, var(--c-on-sidebar) 16%, transparent);transform:scale(1.05)}.sidebar .nav-link.active>svg{background:var(--c-primary);color:var(--c-on-primary);box-shadow:0 3px 10px color-mix(in srgb, var(--c-primary) 45%, transparent)}.sidebar .nav-link.active:before{left:-8px}.sidebar .nav-children{border-left:2px solid color-mix(in srgb, var(--c-on-sidebar) 16%, transparent);gap:1px;margin:4px 4px 8px 26px;padding-left:10px}.sidebar .nav-child{border-radius:9px;align-items:center;gap:9px;padding:6px 10px;display:flex;position:relative}.sidebar .nav-child svg{opacity:.8;flex:none}.sidebar .nav-child.active{background:color-mix(in srgb, var(--c-primary) 26%, transparent)}.sidebar .nav-child.active svg{opacity:1;color:var(--c-on-sidebar)}.sidebar .nav-child.active:before{content:"";background:var(--c-primary);border-radius:2px;width:2px;position:absolute;top:7px;bottom:7px;left:-12px}@media (width>=761px){.shell.nav-collapsed .sidebar .nav-link,.shell.nav-collapsed .sidebar .nav-group-head .nav-link.has-toggle{margin:0;padding:6px}}:root[data-theme=oph] .sidebar .nav-section-icon{color:#0a2466;background:linear-gradient(#f2c230,#c99408);box-shadow:0 0 0 1px #ffffff59}:root[data-theme=oph] .sidebar .nav-link.active>svg{color:#b8102a;background:#fff}:root[data-theme=oph] .sidebar .nav-children{border-left-color:#d4a01773}:root[data-theme=oph] .sidebar .nav-child.active{color:#fff;background:#c8102e8c}:root[data-theme=oph] .sidebar .nav-child.active:before{background:#f2c230}.roles-layout{grid-template-columns:minmax(260px,340px) 1fr;align-items:start;gap:16px;display:grid}@media (width<=900px){.roles-layout{grid-template-columns:1fr}}.roles-list{flex-direction:column;max-height:70vh;padding:0 6px 8px;display:flex;overflow:auto}.roles-item{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:9px 10px;display:flex}.roles-item:hover{background:var(--c-surface-alt)}.roles-item.active{background:var(--c-primary-soft);box-shadow:inset 3px 0 0 var(--c-primary)}.roles-item-icon{background:var(--c-surface-alt);width:30px;height:30px;color:var(--c-primary);border-radius:9px;flex:none;place-items:center;display:grid}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.roles-search{border:1px solid var(--c-border);background:var(--c-surface);height:32px;color:var(--c-text-muted);border-radius:8px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.roles-search input{color:var(--c-text);background:0 0;border:0;outline:0;width:180px}.perm-groups{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.perm-group{border:1px solid var(--c-border);background:var(--c-surface);border-radius:12px;padding:10px 12px}.perm-group header{border-bottom:1px solid var(--c-border);justify-content:space-between;align-items:center;margin-bottom:6px;padding-bottom:6px;display:flex}.perm-item{cursor:pointer;border-radius:8px;align-items:flex-start;gap:8px;padding:5px 4px;display:flex}.perm-item input{margin-top:3px}.perm-item.on{background:var(--c-primary-soft)}.perm-item.disabled{cursor:not-allowed;opacity:.7}.appt-dash{--ad-tint:color-mix(in srgb, var(--c-primary) 5%, var(--c-surface))}.ad-stats{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));display:grid}.ad-stat{flex-direction:column;display:flex;overflow:hidden}.ad-stat-top{align-items:flex-start;gap:12px;padding:14px 14px 12px;display:flex}.ad-stat-icon{width:46px;height:46px;color:var(--ad-tone);background:color-mix(in srgb, var(--ad-tone) 12%, var(--c-surface));border:1px solid color-mix(in srgb, var(--ad-tone) 30%, transparent);border-radius:12px;flex:none;place-items:center;display:grid}.ad-stat-title{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.ad-stat-title strong{font-size:1rem;font-weight:650}.ad-open{color:var(--c-text-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;padding:2px}.ad-open:hover,.ad-open:focus-visible{color:var(--c-primary);background:var(--c-primary-soft)}.ad-stat-bottom{background:linear-gradient(180deg, color-mix(in srgb, var(--ad-tone) 7%, var(--c-surface)), color-mix(in srgb, var(--ad-tone) 13%, var(--c-surface)));border-top:1px solid color-mix(in srgb, var(--ad-tone) 14%, transparent);align-items:center;gap:12px;margin-top:auto;padding:10px 14px 12px;display:flex}.ad-stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:2rem;font-weight:700;line-height:1}.ad-stat-lines{color:var(--c-text-muted);flex-direction:column;min-width:0;font-size:.74rem;line-height:1.35;display:flex}.ad-stat-lines strong{color:var(--c-text);font-weight:600}.ad-grid{gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.ad-c3{grid-column:span 3}.ad-c4{grid-column:span 4}.ad-c5{grid-column:span 5}.ad-c7{grid-column:span 7}.ad-grid>.ad-c7:first-child{grid-column:span 12}@media (width<=1280px){.ad-c4,.ad-c5.ad-cal-card{grid-column:span 6}.ad-c3{grid-column:span 12}}@media (width<=960px){.ad-c3,.ad-c4,.ad-c5,.ad-c7,.ad-c5.ad-cal-card{grid-column:span 12}}.ad-card{flex-direction:column;display:flex;overflow:visible}.ad-card-head{border-bottom:1px solid var(--c-border);background:linear-gradient(180deg, var(--ad-tint), var(--c-surface));border-radius:var(--radius-lg) var(--radius-lg) 0 0;justify-content:space-between;align-items:flex-start;gap:10px;padding:14px 18px 12px;display:flex}.ad-card-head h2{font-size:1.05rem;font-weight:650}.ad-card-body{flex-direction:column;flex:1;gap:14px;min-height:0;padding:16px 18px;display:flex}.ad-watch{grid-template-columns:minmax(0,1fr) minmax(150px,200px);align-items:center;gap:16px;display:grid}.ad-watch-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.ad-watch-list button{text-align:left;width:100%;color:inherit;border-radius:var(--radius-md);cursor:pointer;font:inherit;background:0 0;border:0;align-items:flex-start;gap:10px;padding:6px 8px;display:flex}.ad-watch-list button:hover,.ad-watch-list button:focus-visible{background:var(--c-surface-alt)}.ad-watch-list i{border-radius:50%;flex:none;width:12px;height:12px;margin-top:5px}.ad-watch-list button>span{flex-direction:column;line-height:1.35;display:flex}.ad-watch-list strong{font-size:1.05rem;font-weight:650}.ad-ring{aspect-ratio:1;justify-self:center;width:100%;max-width:200px;position:relative}.ad-ring svg{width:100%;height:100%}.ad-ring-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:0 28px;line-height:1.2;display:flex;position:absolute;inset:0}.ad-ring-center strong{font-size:1.9rem;font-weight:700}.ad-note{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--c-success-soft), color-mix(in srgb, var(--c-success-soft) 40%, var(--c-surface)));border:1px solid color-mix(in srgb, var(--c-success) 18%, transparent);flex-direction:column;gap:4px;padding:12px 14px;display:flex}.ad-note ul{flex-direction:column;gap:2px;margin:0;padding-left:18px;font-size:.86rem;display:flex}.ad-overdue{color:var(--c-danger);font-weight:600}@media (width<=480px){.ad-watch{grid-template-columns:1fr}}.ad-bars{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-items:end;gap:6px;height:260px;display:grid}.ad-bar{flex-direction:column;justify-content:flex-end;align-items:stretch;gap:8px;min-width:0;height:100%;display:flex}.ad-bar-pct{text-align:center;font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:650}.ad-bar-fill{border-top:3px solid var(--ad-tone);background:linear-gradient(180deg, color-mix(in srgb, var(--ad-tone) 20%, var(--c-surface)), color-mix(in srgb, var(--ad-tone) 3%, var(--c-surface)));border-radius:3px 3px 0 0;justify-content:center;align-items:flex-end;padding-bottom:10px;display:flex}.ad-pill{color:var(--c-text);background:color-mix(in srgb, var(--ad-tone) 26%, var(--c-surface));white-space:nowrap;border-radius:999px;padding:2px 9px;font-size:.72rem;font-weight:600}.ad-bar-legend{color:var(--c-text-muted);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:6px;font-size:.84rem;display:grid}.ad-bar-legend span{text-align:center;justify-content:center;align-items:center;gap:6px;min-width:0;display:flex}.ad-bar-legend i{border-radius:3px;flex:none;width:10px;height:10px}.ad-bar-legend strong{color:var(--c-text)}@media (width<=600px){.ad-bars{height:200px}.ad-bar-pct{font-size:.95rem}.ad-bar-legend{grid-auto-columns:auto;grid-auto-flow:row}.ad-bar-legend span{justify-content:flex-start}}.ad-totals{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.ad-totals div{flex-direction:column;line-height:1.3;display:flex}.ad-totals strong{font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:650}.ad-timeline{max-height:440px;margin:0;padding:0;list-style:none;overflow-y:auto}.ad-timeline li{--ad-tone:var(--c-primary);grid-template-columns:52px 14px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 2px;display:grid;position:relative}.ad-timeline li:before{content:"";background:var(--c-border);width:2px;position:absolute;top:0;bottom:0;left:68px}.ad-timeline li:first-child:before{top:50%}.ad-timeline li:last-child:before{bottom:50%}.ad-time{color:var(--c-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.8rem}.ad-dot{background:var(--ad-tone);width:10px;height:10px;box-shadow:0 0 0 3px var(--c-surface);border-radius:50%;justify-self:center;position:relative}.ad-who{border-radius:var(--radius-md);text-align:left;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;min-width:0;padding:4px;display:flex}.ad-who:hover,.ad-who:focus-visible{background:var(--c-surface-alt)}.ad-who>span{flex-direction:column;min-width:0;line-height:1.3;display:flex}.ad-who strong,.ad-who .small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ad-who strong{font-size:.9rem;font-weight:600}.ad-status{width:32px;height:32px;color:var(--ad-tone);background:color-mix(in srgb, var(--ad-tone) 12%, var(--c-surface));border:1px solid color-mix(in srgb, var(--ad-tone) 25%, transparent);border-radius:9px;place-items:center;display:grid}.appt-dash .tone-success{--ad-tone:var(--c-success)}.appt-dash .tone-info{--ad-tone:var(--c-info)}.appt-dash .tone-primary{--ad-tone:var(--c-primary)}.appt-dash .tone-warning{--ad-tone:var(--c-warning)}.appt-dash .tone-danger{--ad-tone:var(--c-danger)}.ad-cal-nav{justify-content:space-between;align-items:center;gap:8px;display:flex}.ad-cal-nav strong{font-size:1rem;font-weight:650}.ad-cal{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.ad-cal-wd{text-align:center;color:var(--c-text-muted);text-transform:uppercase;padding-bottom:4px;font-size:.78rem}.ad-day{aspect-ratio:1/.92;border-radius:var(--radius-md);background:var(--c-surface-alt);min-height:44px;color:var(--c-text);font:inherit;cursor:pointer;border:1px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:2px;font-size:.95rem;display:flex;position:relative}.ad-day:hover,.ad-day:focus-visible{border-color:color-mix(in srgb, var(--c-primary) 40%, transparent);z-index:3}.ad-day.today{background:linear-gradient(160deg, color-mix(in srgb, var(--c-success) 32%, var(--c-surface)), color-mix(in srgb, var(--c-info) 30%, var(--c-surface)));font-weight:700}.ad-day.selected{border-color:var(--c-primary);box-shadow:0 0 0 1px var(--c-primary)}.ad-day-count{color:var(--c-text-muted);font-variant-numeric:tabular-nums;font-size:.64rem;position:absolute;top:3px;right:5px}.ad-day-dots{gap:3px;height:6px;display:flex}.ad-day-dots i{border-radius:50%;width:6px;height:6px}.ad-pop{text-align:left;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-md);width:230px;box-shadow:var(--shadow-md);pointer-events:none;flex-direction:column;gap:8px;padding:10px 12px;font-size:.84rem;font-weight:400;display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.ad-day:hover .ad-pop,.ad-day:focus-visible .ad-pop{display:flex}.ad-cal>:nth-child(7n+1) .ad-pop{left:0;transform:none}.ad-cal>:nth-child(7n) .ad-pop,.ad-cal>:nth-child(7n+6) .ad-pop{left:auto;right:0;transform:none}.ad-pop-row{flex-direction:column;gap:4px;display:flex}.ad-pop-dept{font-size:.8rem;font-weight:650}.ad-pop-who{align-items:center;gap:8px;display:flex}.ad-pop-who>span{flex-direction:column;min-width:0;line-height:1.25;display:flex}@media (hover:none),(width<=600px){.ad-pop{display:none!important}}.ad-legend{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.ad-legend li{align-items:center;gap:10px;font-size:.92rem;display:flex}.ad-legend i{border-radius:50%;flex:none;width:14px;height:14px}.ad-legend span{flex:1;min-width:0}.ad-legend-status{border-top:1px solid var(--c-border);color:var(--c-text-muted);flex-wrap:wrap;gap:8px 12px;margin-top:auto;padding-top:12px;font-size:.8rem;display:flex}.ad-legend-status span{align-items:center;gap:5px;display:inline-flex}.ad-legend-status svg{color:var(--ad-tone)}@media (width<=1280px){.ad-legend{flex-flow:wrap;gap:10px 22px}}.disability-chip{text-align:left}.disability-chip .disability-code{letter-spacing:.02em;background:var(--c-surface-alt);color:var(--c-text-muted);border-radius:999px;padding:1px 6px;font-size:.72rem;font-weight:700}.disability-chip.selected .disability-code{background:var(--c-primary);color:var(--c-on-primary,#fff)}.disability-sub{border-left:3px solid var(--c-primary-soft);flex-direction:column;gap:8px;margin-left:14px;padding:8px 0 2px 12px;display:flex}.disability-sub-title{flex-wrap:wrap;align-items:baseline;gap:6px;font-size:.9rem;display:flex}.disability-sub-list{flex-direction:column;align-items:flex-start}.disability-sub-list .disability-chip{border-radius:var(--radius-md,10px);align-items:flex-start}.disability-sub-list .disability-code{flex-shrink:0;margin-top:2px}.qm-services{scrollbar-width:thin;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.qm-service{border:1px solid var(--c-border);border-radius:var(--radius-md);background:var(--c-surface);min-width:168px;color:var(--c-text);text-align:left;cursor:pointer;flex-direction:column;flex:none;align-items:flex-start;gap:4px;padding:10px 12px;display:flex}.qm-service:hover{border-color:var(--c-primary)}.qm-service.active{border-color:var(--c-primary);box-shadow:0 0 0 2px var(--c-primary-soft);background:color-mix(in srgb, var(--c-primary) 6%, var(--c-surface))}.qm-service.paused{opacity:.8}.qm-service-name{font-weight:650;line-height:1.25}.qm-service-stage{color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem}.qm-service-stats{color:var(--c-text-muted);font-variant-numeric:tabular-nums;gap:10px;font-size:.82rem;display:flex}.qm-service-stats span{align-items:center;gap:3px;display:inline-flex}.qm-prio-dot{color:var(--c-warning);font-weight:650}.qm-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.qm-bar-title{flex-direction:column;gap:2px;display:flex}.qm-bar-title h2{margin:0;font-size:1.15rem}.qm-bar-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.qm-counter{width:150px}.qm-call{min-height:44px;padding-inline:18px;font-size:1rem}.qm-call-next{font-variant-numeric:tabular-nums;background:#ffffff38;border-radius:999px;margin-left:8px;padding:1px 8px;font-weight:700}.qm-layout{gap:var(--gap);grid-template-columns:minmax(0,2.2fr) minmax(260px,1fr);align-items:start;display:grid}.qm-now-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.qm-now{border:1px solid var(--c-border);border-left:4px solid var(--c-info);border-radius:var(--radius-md);background:var(--c-surface);flex-direction:column;gap:8px;padding:12px;display:flex}.qm-now.serving{border-left-color:var(--c-primary)}.qm-now.mine{background:color-mix(in srgb, var(--c-primary) 5%, var(--c-surface))}.qm-now-head{align-items:center;gap:10px;display:flex}.qm-now-meta{flex-wrap:wrap;flex:1;align-items:center;gap:6px;display:flex}.qm-number{font:inherit;letter-spacing:.01em;font-variant-numeric:tabular-nums;color:var(--c-text);cursor:pointer;background:0 0;border:0;padding:0;font-size:1.9rem;font-weight:800;line-height:1.1}.qm-number:hover{color:var(--c-primary)}.qm-number.sm{text-align:left;min-width:72px;font-size:1.15rem}.qm-number.xs{font-size:.95rem;font-weight:700}.qm-timer{color:var(--c-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:4px;font-size:.85rem;display:inline-flex}.qm-now-body{flex-direction:column;gap:2px;display:flex}.qm-note{border-radius:var(--radius-sm);background:var(--c-warning-soft);color:var(--c-text);padding:4px 8px;font-size:.82rem;display:block}.qm-actions{flex-wrap:wrap;gap:6px;display:flex}.qm-unregistered{color:var(--c-warning);font-weight:600}.qm-list{flex-direction:column;display:flex}.qm-row{border-top:1px solid var(--c-border);border-left:3px solid #0000;grid-template-columns:28px auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 16px;display:grid}.qm-row:first-child{border-top:0}.qm-row.prio-priority{border-left-color:var(--c-info)}.qm-row.prio-urgent{border-left-color:var(--c-warning)}.qm-row.prio-emergency{border-left-color:var(--c-danger);background:var(--c-danger-soft)}.qm-pos{color:var(--c-text-muted);text-align:right;font-variant-numeric:tabular-nums;font-size:.8rem}.qm-row-main{flex-direction:column;gap:3px;min-width:0;display:flex}.qm-row-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.qm-row-tags:empty{display:none}.qm-row-wait{white-space:nowrap;font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;display:flex}.qm-row-actions{align-items:center;gap:2px;display:flex}.qm-flags{gap:4px;display:inline-flex}.qm-flag{background:var(--c-surface-alt);width:22px;height:22px;color:var(--c-text-muted);border-radius:6px;place-items:center;display:inline-grid}.qm-flag.warn{background:var(--c-warning-soft);color:var(--c-warning)}.qm-flag.info{background:var(--c-info-soft);color:var(--c-info)}.qm-link-body{min-height:340px}.qm-done{max-height:420px;overflow-y:auto}.qm-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.qm-choice-grid.wide{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.qm-choice{border:1px solid var(--c-border);border-radius:var(--radius-md);background:var(--c-surface);color:var(--c-text);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;display:flex}.qm-choice:hover:not(:disabled){border-color:var(--c-primary)}.qm-choice.active{border-color:var(--c-primary);box-shadow:0 0 0 2px var(--c-primary-soft)}.qm-choice:disabled{opacity:.45;cursor:not-allowed}.qm-choice.prio-urgent.active{border-color:var(--c-warning)}.qm-choice.prio-emergency.active{border-color:var(--c-danger)}.qm-visit-head{flex-wrap:wrap;gap:24px;display:flex}.qm-journey{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.qm-journey-step{border-radius:var(--radius-md);background:var(--c-surface-alt);align-items:center;gap:8px;padding:6px 10px;display:inline-flex}.qm-timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.qm-timeline li{border-top:1px solid var(--c-border);gap:10px;padding:8px 0;display:flex}.qm-timeline li:first-child{border-top:0}.qm-tl-icon{background:var(--c-primary-soft);width:26px;height:26px;color:var(--c-primary);border-radius:50%;flex:none;place-items:center;display:grid}@media (width<=1100px){.qm-layout{grid-template-columns:1fr}}@media (width<=640px){.qm-row{grid-template-columns:auto minmax(0,1fr) auto;padding:10px 12px}.qm-pos{display:none}.qm-row-actions{grid-column:1/-1;justify-content:flex-end}.qm-now-grid{grid-template-columns:1fr}.qm-counter{flex:1}.qm-call{width:100%}.qm-choice-grid{grid-template-columns:1fr}}.qd{background:var(--c-sidebar);min-height:100vh;color:var(--c-on-sidebar);grid-template-rows:auto 1fr auto;display:grid}.qd-head{border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:24px;padding:18px 32px;display:flex}.qd-brand{align-items:center;gap:14px;display:flex}.qd-brand>div{flex-direction:column;display:flex}.qd-brand strong{font-size:1.5rem}.qd-brand span{opacity:.75}.qd-clock{font-variant-numeric:tabular-nums;flex-direction:column;align-items:center;display:flex}.qd-clock strong{font-size:2.2rem;line-height:1}.qd-clock span{opacity:.75}.qd-tools{gap:8px;display:flex}.qd-tools button{color:inherit;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:10px;place-items:center;width:44px;height:44px;display:grid}.qd-main{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;padding:28px 32px;display:grid}.qd-calling h2,.qd-col-head strong{margin:0 0 14px;font-size:1.4rem}.qd-hero{background:var(--c-primary);color:var(--c-on-primary);border-radius:22px;flex-direction:column;gap:8px;padding:28px 32px;display:flex}.qd-hero.empty{opacity:.85;font-size:2rem}.qd-hero-number{font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:clamp(4rem,11vw,10rem);font-weight:800;line-height:1}.qd-hero-where{align-items:center;gap:18px;font-size:clamp(1.6rem,3.2vw,3rem);display:flex}.qd-hero-where>span:last-child{flex-direction:column;line-height:1.15;display:flex}.qd-hero-where small{opacity:.85;font-size:.45em}.qd-arrow{font-weight:800}.qd-hero.flash,.qd-recent-item.flash{animation:1s ease-in-out 6 qd-flash}@keyframes qd-flash{50%{filter:brightness(1.35);transform:scale(1.01)}}.qd-recent{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:16px;display:grid}.qd-recent-item{border-left:5px solid var(--c-on-sidebar);background:#ffffff1a;border-radius:14px;flex-direction:column;padding:14px 18px;display:flex}.qd-recent-item.serving{opacity:.75;border-left-color:#0000}.qd-recent-item strong{font-variant-numeric:tabular-nums;font-size:2.2rem}.qd-recent-item span{opacity:.85;font-size:1.2rem}.qd-columns{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-content:start;gap:16px;display:grid}.qd-col{background:#ffffff12;border-radius:16px;padding:16px 18px}.qd-col.paused{opacity:.7}.qd-col-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.qd-col-head span{opacity:.75;white-space:nowrap}.qd-next{flex-wrap:wrap;gap:8px;display:flex}.qd-next span{font-variant-numeric:tabular-nums;background:#ffffff14;border-radius:10px;padding:4px 10px;font-size:1.6rem;font-weight:700}.qd-next span.prio{outline:2px solid var(--c-on-sidebar)}.qd-none{opacity:.5}.qd-closed{margin-bottom:8px;font-weight:700}.qd-missed{border-top:1px dashed #ffffff40;margin-top:14px;padding-top:10px;font-size:1rem}.qd-missed div{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.qd-missed b{opacity:.9;font-size:1.2rem}.qd-foot{opacity:.75;padding:12px 32px 18px;font-size:1.1rem}.qd-sound-hint{background:var(--c-surface);color:var(--c-text);cursor:pointer;font:inherit;border:0;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;display:inline-flex;position:fixed;bottom:24px;right:24px;box-shadow:0 6px 20px #00000040}.qd-setup{background:var(--c-background);min-height:100vh;padding:16px}@media (width<=900px){.qd-main{grid-template-columns:1fr;padding:16px}.qd-head{flex-wrap:wrap;padding:12px 16px}.qd-clock{display:none}}.qk{background:var(--c-background);min-height:100vh;color:var(--c-text);-webkit-user-select:none;user-select:none;flex-direction:column;font-size:1.15rem;display:flex}.qk-head{background:var(--c-sidebar);color:var(--c-on-sidebar);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 32px;display:flex}.qk-brand{align-items:center;gap:14px;display:flex}.qk-brand>div{flex-direction:column;display:flex}.qk-brand strong{font-size:1.35rem}.qk-brand span{opacity:.8}.qk-langs{flex-wrap:wrap;gap:6px;display:flex}.qk-langs button{min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff59;border-radius:999px;padding:6px 14px;font-size:1rem}.qk-langs button.active{background:var(--c-on-sidebar);color:var(--c-sidebar);font-weight:700}.qk-main{flex-direction:column;flex:1;gap:24px;width:100%;max-width:1100px;margin:0 auto;padding:32px;display:flex;position:relative}.qk-busy{background:color-mix(in srgb, var(--c-background) 70%, transparent);z-index:2;color:var(--c-primary);place-items:center;display:grid;position:absolute;inset:0}.qk-title{margin:0;font-size:clamp(1.6rem,3vw,2.4rem)}.qk-choices{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.qk-choice{background:var(--c-primary);min-height:230px;color:var(--c-on-primary);text-align:left;font:inherit;cursor:pointer;box-shadow:0 8px 22px color-mix(in srgb, var(--c-primary) 30%, transparent);border:0;border-radius:22px;flex-direction:column;align-items:flex-start;gap:18px;padding:28px;display:flex}.qk-choice.soft{background:var(--c-surface);color:var(--c-text);border:2px solid var(--c-primary);box-shadow:none}.qk-choice:active{transform:scale(.98)}.qk-choice-icon{background:#ffffff2e;border-radius:18px;place-items:center;width:72px;height:72px;display:grid}.qk-choice.soft .qk-choice-icon{background:var(--c-primary-soft);color:var(--c-primary)}.qk-choice-text{flex-direction:column;gap:6px;display:flex}.qk-choice-text strong{font-size:1.5rem;line-height:1.25}.qk-choice-text span{opacity:.85}.qk-footnote{color:var(--c-danger);margin:0;font-weight:600}.qk-back{border:1px solid var(--c-border);background:var(--c-surface);min-height:48px;color:var(--c-text);font:inherit;cursor:pointer;border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:8px 16px;display:inline-flex}.qk-identify{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:32px;display:grid}.qk-field{flex-direction:column;gap:8px;font-weight:600;display:flex}.qk-field input{min-height:64px;font:inherit;letter-spacing:.04em;border:2px solid var(--c-border);background:var(--c-surface);color:var(--c-text);border-radius:14px;padding:0 18px;font-size:1.7rem}.qk-field input:focus{border-color:var(--c-primary);outline:none}.qk-keypad{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.qk-keypad button{border:1px solid var(--c-border);background:var(--c-surface);min-height:68px;color:var(--c-text);font:inherit;cursor:pointer;border-radius:14px;place-items:center;font-size:1.7rem;font-weight:700;display:grid}.qk-keypad button:active{background:var(--c-primary-soft)}.qk-dob{grid-template-columns:.8fr 1.4fr 1fr;gap:10px;display:grid}.qk-dob label{color:var(--c-text-muted);flex-direction:column;gap:4px;font-size:.95rem;font-weight:500;display:flex}.qk-dob select{min-height:64px;font:inherit;border:2px solid var(--c-border);background:var(--c-surface);color:var(--c-text);border-radius:14px;padding:0 12px;font-size:1.3rem}.qk-privacy{color:var(--c-text-muted);margin:0;font-size:1rem}.qk-primary,.qk-secondary{min-height:72px;font:inherit;cursor:pointer;border-radius:16px;justify-content:center;align-items:center;gap:10px;padding:12px 28px;font-size:1.35rem;font-weight:700;display:inline-flex}.qk-primary{background:var(--c-primary);color:var(--c-on-primary);border:0}.qk-primary:disabled{opacity:.4;cursor:not-allowed}.qk-secondary{border:2px solid var(--c-border);background:var(--c-surface);color:var(--c-text)}.qk-link{color:var(--c-primary);font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:10px;min-height:48px;font-weight:600;text-decoration:underline;display:inline-flex}.qk-panel{background:var(--c-surface);border:1px solid var(--c-border);border-radius:20px;flex-direction:column;gap:18px;padding:28px;display:flex}.qk-panel p{margin:0}.qk-list{flex-direction:column;gap:12px;display:flex}.qk-appt{background:var(--c-surface);border:1px solid var(--c-border);border-radius:16px;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.qk-appt>div{flex-direction:column;gap:2px;display:flex}.qk-appt strong{font-variant-numeric:tabular-nums;font-size:1.8rem}.qk-tag{background:var(--c-surface-alt);color:var(--c-text-muted);border-radius:999px;padding:6px 14px}.qk-services{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.qk-service{border:2px solid var(--c-primary);background:var(--c-surface);min-height:120px;color:var(--c-text);text-align:left;font:inherit;cursor:pointer;border-radius:18px;flex-direction:column;gap:6px;padding:20px;display:flex}.qk-service strong{font-size:1.4rem}.qk-service span{color:var(--c-text-muted)}.qk-service:active{background:var(--c-primary-soft)}.qk-service:disabled{border-color:var(--c-border);opacity:.55;cursor:not-allowed}.qk-ask{background:var(--c-surface-alt);border-radius:16px;flex-direction:column;gap:10px;padding:16px 20px;display:flex}.qk-ask-title{font-weight:700}.qk-ask-options{flex-wrap:wrap;gap:10px;display:flex}.qk-ask-options button{border:2px solid var(--c-border);background:var(--c-surface);min-height:52px;color:var(--c-text);font:inherit;cursor:pointer;border-radius:999px;padding:8px 18px}.qk-ask-options button.active{border-color:var(--c-primary);background:var(--c-primary-soft);font-weight:700}.qk-ask-hint{color:var(--c-text-muted);font-size:.95rem}.qk-row{flex-wrap:wrap;gap:14px;display:flex}.qk-wait{color:var(--c-text-muted)}.qk-error{color:var(--c-danger);font-size:1.4rem;font-weight:600}.qk-ticket-wrap{flex-direction:column;align-items:center;gap:20px;display:flex}.qk-slip{background:var(--c-surface);border:2px dashed var(--c-border);text-align:center;border-radius:18px;flex-direction:column;gap:6px;width:min(420px,100%);padding:28px 24px;display:flex}.qk-slip-hospital{font-weight:700}.qk-slip-label{color:var(--c-text-muted);margin-top:8px}.qk-slip-number{font-variant-numeric:tabular-nums;color:var(--c-primary);font-size:5.5rem;font-weight:800;line-height:1}.qk-slip-service{font-size:1.5rem;font-weight:700}.qk-slip-name,.qk-slip-time{color:var(--c-text-muted)}.qk-slip-wait{font-weight:600}.qk-slip-note{margin-top:8px;font-size:.95rem}@media (width<=760px){.qk-main{padding:16px}.qk-head{padding:12px 16px}.qk-identify{grid-template-columns:1fr}.qk-choice{min-height:0}}@media print{.qk-head,.qk-ticket-wrap>:not(.qk-slip){display:none!important}.qk,.qk-main{color:#000;background:#fff;padding:0}.qk-slip{color:#000;border:0;width:72mm;padding:0}.qk-slip-number{color:#000;font-size:54pt}.qk-slip-label,.qk-slip-name,.qk-slip-time{color:#000}}.qr-filters{flex-wrap:wrap;gap:8px}.qr-filters>.field,.qr-filters select{width:auto;min-width:180px}.qr-tiles{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.qr-tile{border:1px solid var(--c-border);border-radius:var(--radius-md);background:var(--c-surface);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.qr-tile-label{color:var(--c-text-muted);font-size:.85rem}.qr-tile strong{font-variant-numeric:tabular-nums;font-size:1.8rem;font-weight:750;line-height:1.1}.qr-tile strong small{color:var(--c-text-muted);font-size:.9rem;font-weight:500}.qr-grid{gap:var(--gap);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);display:grid}.qr-hours{flex-direction:column;gap:6px;display:flex}.qr-hours-plot{border-bottom:1px solid var(--c-border);align-items:flex-end;gap:2px;height:180px;display:flex}.qr-hour{outline:none;flex:1;justify-content:center;align-items:flex-end;height:100%;display:flex;position:relative}.qr-bar{background:var(--c-primary);border-radius:4px 4px 0 0;width:min(100%,26px);min-height:0}.qr-hour:hover .qr-bar,.qr-hour:focus .qr-bar{filter:brightness(1.15)}.qr-tip{z-index:3;border-radius:var(--radius-sm);background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text);white-space:nowrap;pointer-events:none;flex-direction:column;gap:2px;padding:8px 10px;font-size:.82rem;display:flex;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 6px 18px #00000026}.qr-hours-axis{color:var(--c-text-muted);gap:2px;font-size:.75rem;display:flex}.qr-hours-axis span{text-align:center;flex:1}.qr-small td{padding:6px 8px}.qr-sep td{border-top:2px solid var(--c-border)}@media (width<=900px){.qr-grid{grid-template-columns:1fr}}.skpi-field-wide{flex:260px;max-width:360px}.skpi-chips{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.skpi-chips .card{flex-direction:column;gap:2px;padding:12px 16px;display:flex}.skpi-chips strong{font-variant-numeric:tabular-nums;font-size:1.45rem;font-weight:700}.skpi-rank{font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-weight:700;display:inline-flex}.skpi-rank.r1 svg{color:#d4a017}.skpi-rank.r2 svg{color:#9aa3ad}.skpi-rank.r3 svg{color:#b87333}.skpi-meter{--skpi-tone:var(--c-primary);align-items:center;gap:8px;min-width:130px;display:inline-flex}.skpi-meter.tone-success{--skpi-tone:var(--c-success)}.skpi-meter.tone-warning{--skpi-tone:var(--c-warning)}.skpi-meter.tone-danger{--skpi-tone:var(--c-danger)}.skpi-meter-bar{background:var(--c-surface-alt);border-radius:999px;flex:1;height:8px;overflow:hidden}.skpi-meter-bar i{border-radius:inherit;background:var(--skpi-tone);height:100%;display:block}.skpi-meter strong{color:var(--skpi-tone);font-variant-numeric:tabular-nums;text-align:right;min-width:42px;font-size:.85rem}.skpi-target{border-top:1px dashed var(--c-border);flex-direction:column;gap:4px;margin-top:6px;padding-top:6px;display:flex}.skpi-target .small{align-items:center;gap:4px;display:inline-flex}.skpi-tile-icon{background:var(--c-primary-soft);width:28px;height:28px;color:var(--c-primary);border-radius:8px;place-items:center;display:grid}.skpi-donut-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;line-height:1.2;display:flex;position:absolute;inset:0}.skpi-donut-center strong{font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:700}.skpi-heat{border-collapse:separate;border-spacing:3px;width:100%;font-size:.85rem}.skpi-heat thead th{color:var(--c-text-muted);text-align:right;white-space:nowrap;padding:4px 6px;font-size:.78rem;font-weight:600}.skpi-heat thead th:first-child{text-align:left}.skpi-heat tbody th{text-align:left;min-width:170px;padding:4px 10px 4px 0;font-weight:400}.skpi-heat-name{font-weight:600;display:block}.skpi-heat tbody tr{cursor:pointer}.skpi-heat tbody tr:hover th .skpi-heat-name{color:var(--c-primary)}.skpi-heat td{text-align:right;font-variant-numeric:tabular-nums;background:var(--c-surface-alt);min-width:64px;height:38px;color:var(--c-text);border-radius:6px;padding:0 10px}.skpi-heat td.dark{color:var(--c-on-primary);font-weight:600}.skpi-period{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.skpi-period-inputs{flex-wrap:wrap;align-items:center;gap:6px;display:flex}
