@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fraunces-vietnamese-400-normal-CvGt0Ybw.woff2) format("woff2"),url(/assets/fraunces-vietnamese-400-normal-B65MOf9T.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fraunces-latin-ext-400-normal-D8gbi3Gu.woff2) format("woff2"),url(/assets/fraunces-latin-ext-400-normal-UihxqfOe.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fraunces;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fraunces-latin-400-normal-6IfK1voy.woff2) format("woff2"),url(/assets/fraunces-latin-400-normal-NUPT2cO8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-vietnamese-500-normal-GOH_-EGq.woff2) format("woff2"),url(/assets/fraunces-vietnamese-500-normal-B-KbxExq.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-latin-ext-500-normal-Z5DV8IzT.woff2) format("woff2"),url(/assets/fraunces-latin-ext-500-normal-BMcFk1Xs.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-latin-500-normal-DnGCNyPD.woff2) format("woff2"),url(/assets/fraunces-latin-500-normal-BTR4KCeb.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-vietnamese-600-normal-BjlAJixd.woff2) format("woff2"),url(/assets/fraunces-vietnamese-600-normal-DlAl5EAR.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-ext-600-normal-BtzmzP0X.woff2) format("woff2"),url(/assets/fraunces-latin-ext-600-normal-B0Dy4lqi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-600-normal-BFCDtZfi.woff2) format("woff2"),url(/assets/fraunces-latin-600-normal-DL5QCzvS.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/public-sans-vietnamese-400-normal-TxZB8OSn.woff2) format("woff2"),url(/assets/public-sans-vietnamese-400-normal-BO1meqcx.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/public-sans-latin-ext-400-normal-mk90oQqJ.woff2) format("woff2"),url(/assets/public-sans-latin-ext-400-normal-B02wwOdZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/public-sans-latin-400-normal-8Rpg0ruU.woff2) format("woff2"),url(/assets/public-sans-latin-400-normal-SBbinRkI.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/public-sans-vietnamese-500-normal-DjztbcKe.woff2) format("woff2"),url(/assets/public-sans-vietnamese-500-normal-CXYe29CY.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/public-sans-latin-ext-500-normal-DC-z7ASZ.woff2) format("woff2"),url(/assets/public-sans-latin-ext-500-normal-BHCCp-na.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/public-sans-latin-500-normal-NlrCPXnF.woff2) format("woff2"),url(/assets/public-sans-latin-500-normal-vCxiVFAq.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/public-sans-vietnamese-600-normal-P4BtCUdw.woff2) format("woff2"),url(/assets/public-sans-vietnamese-600-normal-CcnAzmUX.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/public-sans-latin-ext-600-normal-DchWdWJ_.woff2) format("woff2"),url(/assets/public-sans-latin-ext-600-normal-DfkbVac2.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Public Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/public-sans-latin-600-normal-Fru-LXNs.woff2) format("woff2"),url(/assets/public-sans-latin-600-normal-BR59oU-I.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/public-sans-vietnamese-700-normal-D97ShjGS.woff2) format("woff2"),url(/assets/public-sans-vietnamese-700-normal-Dq5VrXjD.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/public-sans-latin-ext-700-normal-CgolUQuG.woff2) format("woff2"),url(/assets/public-sans-latin-ext-700-normal-jWHjnMgZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Public Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/public-sans-latin-700-normal-BqJmxWdE.woff2) format("woff2"),url(/assets/public-sans-latin-700-normal-Dm-oTPSL.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-body: "Public Sans", system-ui, -apple-system, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", monospace;--fs-xs: 12px;--fs-sm: 13px;--fs-base: 15px;--fs-md: 17px;--fs-lg: 20px;--fs-xl: 25px;--fs-2xl: 32px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 22px;--sp-6: 30px;--sp-7: 42px;--r-sm: 8px;--r-md: 10px;--r-lg: 16px;--r-pill: 999px}:root,:root[data-theme=light]{color-scheme:light;--c-primary: #0c6b5e;--c-primary-hover: #0a584e;--c-primary-soft: #e4f0ec;--c-amber: #d9932f;--c-bg: #f6f5f0;--c-surface: #ffffff;--c-field: #ecefe9;--c-ink: #131e1b;--c-muted: #41504c;--c-hairline: #cdd4cc;--c-enf-bg: var(--c-primary-soft);--c-enf-fg: var(--c-primary);--c-nut-bg: #f4ead6;--c-nut-fg: #97671a;--c-fis-bg: #e7e3f2;--c-fis-fg: #574b8c;--c-ok: #2f9e6f;--c-ok-soft: #e2f2ea;--c-attention: var(--c-amber);--c-danger: #c0453a;--c-danger-soft: #fbeae8;--shadow-card: 0 1px 0 rgba(0, 0, 0, .04), 0 22px 50px -30px rgba(20, 20, 15, .45);--focus-ring: 0 0 0 3px rgba(12, 107, 94, .28)}:root[data-theme=dark]{color-scheme:dark;--c-primary: #3fae9d;--c-primary-hover: #54c1b0;--c-primary-soft: #1e3b36;--c-amber: #e0a44a;--c-bg: #0d1512;--c-surface: #151f1c;--c-field: #243430;--c-ink: #f1f4f2;--c-muted: #c2cecb;--c-hairline: #384a45;--c-enf-bg: var(--c-primary-soft);--c-enf-fg: var(--c-primary);--c-nut-bg: #3a2f1c;--c-nut-fg: #e0b567;--c-fis-bg: #2e2a45;--c-fis-fg: #b3a9e0;--c-ok: #46c088;--c-ok-soft: #17332a;--c-attention: var(--c-amber);--c-danger: #e0655a;--c-danger-soft: #3a211f;--shadow-card: 0 1px 0 rgba(0, 0, 0, .3), 0 22px 50px -30px rgba(0, 0, 0, .7);--focus-ring: 0 0 0 3px rgba(63, 174, 157, .4)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--c-bg);color:var(--c-ink);font-family:var(--font-body);font-size:var(--fs-base);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em;text-wrap:balance;margin:0}a{color:var(--c-primary);transition:color .15s ease}a:hover{color:var(--c-primary-hover);text-decoration:underline}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}button{font-family:inherit}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);border:1px solid transparent;border-radius:var(--r-md);font-size:var(--fs-base);font-weight:600;letter-spacing:.01em;cursor:pointer;padding:11px 16px;transition:background-color .15s ease,border-color .15s ease;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--c-primary);color:#fff}.btn--primary:not(:disabled):hover{background:var(--c-primary-hover)}.btn--ghost{background:transparent;color:var(--c-ink);border-color:var(--c-hairline)}.btn--ghost:not(:disabled):hover{background:var(--c-bg)}.btn--block{width:100%}.btn--sm{padding:8px 13px;font-size:var(--fs-sm)}.btn__spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:btn-spin .7s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.field{display:flex;flex-direction:column;gap:var(--sp-2)}.field__label{font-size:var(--fs-xs);font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--c-muted)}.field__input{border:1px solid var(--c-hairline);background:var(--c-field);border-radius:var(--r-md);padding:11px 13px;font-size:var(--fs-base);font-family:inherit;color:var(--c-ink);width:100%;transition:border-color .15s ease,box-shadow .15s ease}.field__input::placeholder{color:#a7aaa0}.field__input:hover:not(:disabled):not(:focus-visible){border-color:var(--c-primary)}.field__input:focus-visible{outline:none;border-color:var(--c-primary);box-shadow:var(--focus-ring)}.field__input[aria-invalid=true]{border-color:var(--c-danger)}.field__input::-webkit-calendar-picker-indicator{cursor:pointer;border-radius:var(--r-sm);padding:2px;transition:background-color .15s ease}.field__input::-webkit-calendar-picker-indicator:hover{background:var(--c-primary-soft)}.field__error{font-size:var(--fs-sm);color:var(--c-danger)}.field__control{position:relative;display:flex}.field__control .field__input{padding-right:5.5rem}.field__reveal{position:absolute;top:50%;right:6px;transform:translateY(-50%);border:none;background:transparent;padding:4px 8px;border-radius:var(--r-sm);font:inherit;font-size:var(--fs-sm);font-weight:600;color:var(--c-primary);cursor:pointer}.field__reveal:hover{background:var(--c-primary-soft)}.field__reveal:focus-visible{outline:none;box-shadow:var(--focus-ring)}.checkbox{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--c-muted);cursor:pointer}.checkbox__box{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--c-hairline);background:var(--c-field);display:inline-grid;place-items:center;flex:none}.checkbox__box{transition:border-color .15s ease,background-color .15s ease}.checkbox:hover .checkbox__box{border-color:var(--c-primary)}.checkbox__box[data-state=checked]{background:var(--c-primary);border-color:var(--c-primary);color:#fff}.checkbox__box:focus-visible{box-shadow:var(--focus-ring)}.card{background:var(--c-surface);border:1px solid var(--c-hairline);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.alert{border-radius:var(--r-md);padding:11px 13px;font-size:var(--fs-sm);display:flex;gap:var(--sp-2);align-items:flex-start}.alert--danger{background:var(--c-danger-soft);color:var(--c-danger)}.toastwrap{position:fixed;z-index:1000;right:var(--sp-4);top:68px;display:flex;flex-direction:column;gap:var(--sp-3);width:min(420px,calc(100vw - 2 * var(--sp-4)));pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--sp-3);padding:14px 16px;border-radius:var(--r-md);font-size:var(--fs-md);font-weight:500;line-height:1.35;background:var(--c-surface);color:var(--c-ink);border:1px solid var(--c-hairline);border-left:4px solid var(--c-primary);box-shadow:0 8px 28px -8px #00000059,0 2px 8px -2px #0003;animation:toast-in .16s cubic-bezier(.2,.8,.3,1)}.toast--success{background:var(--c-ok);border-color:var(--c-ok);color:#fff}.toast--error{background:var(--c-danger);border-color:var(--c-danger);color:#fff}.toast__msg{flex:1;min-width:0}.toast__x{flex:none;display:inline-flex;padding:0;margin-top:1px;border:0;background:none;color:inherit;cursor:pointer;opacity:.75}.toast__x:hover{opacity:1}.toast__x svg{width:16px;height:16px}@keyframes toast-in{0%{opacity:0;transform:translateY(-10px)}}@media(max-width:640px){.toastwrap{left:var(--sp-4);right:var(--sp-4);width:auto}}.chip{display:inline-block;font-size:var(--fs-xs);font-weight:600;padding:3px 9px;border-radius:var(--r-pill)}.chip--enf{background:var(--c-enf-bg);color:var(--c-enf-fg)}.chip--nut{background:var(--c-nut-bg);color:var(--c-nut-fg)}.chip--fis{background:var(--c-fis-bg);color:var(--c-fis-fg)}.field__hint{display:block;margin:-2px 0 4px;font-size:var(--fs-xs);color:var(--c-muted);line-height:1.35}.field__textarea{min-height:68px;resize:vertical;font-family:inherit}.radiogroup{border:none;margin:0;padding:0;min-width:0}.radiogroup__options{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center}.radiogroup__option{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--c-hairline);border-radius:var(--r-sm);font-size:var(--fs-sm);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.radiogroup__option:hover{border-color:var(--c-primary);background:var(--c-primary-soft)}.radiogroup:disabled .radiogroup__option:hover{border-color:var(--c-hairline);background:none}.radiogroup__option:has(input:checked){border-color:var(--c-primary);background:var(--c-primary-soft)}.radiogroup:disabled .radiogroup__option{opacity:.6;cursor:default}.radiogroup__clear{border:none;background:none;padding:0 4px;font-size:var(--fs-xs);color:var(--c-muted);text-decoration:underline;cursor:pointer}.radiogroup__desc{display:block;margin-top:2px;font-size:var(--fs-xs);font-weight:400;color:var(--c-muted)}.radiogroup__option:has(.radiogroup__desc){align-items:flex-start;flex-basis:100%}.tritoggle{display:inline-flex;flex-direction:column;gap:4px;min-width:0}.tritoggle__label{font-size:var(--fs-xs);color:var(--c-ink);align-self:flex-start;max-width:100%;overflow-wrap:anywhere;line-height:1.2}.tritoggle__cat{display:block;color:var(--c-muted);font-size:calc(var(--fs-xs) - 1px);text-transform:uppercase;letter-spacing:.04em}.tritoggle__segs{display:inline-flex;border:1px solid var(--c-hairline);border-radius:var(--r-sm);overflow:hidden}.tritoggle__seg{display:inline-flex;align-items:center;justify-content:center;min-width:1.9em;padding:5px 8px;border:none;border-left:1px solid var(--c-hairline);background:var(--c-surface);font:inherit;font-size:var(--fs-sm);color:var(--c-ink);cursor:pointer;transition:background-color .15s ease,color .15s ease}.tritoggle__seg:first-child{border-left:none}.tritoggle__seg:hover:not(.is-active){background:var(--c-bg)}.tritoggle__seg.is-active{background:var(--c-primary-soft);color:var(--c-primary);font-weight:600}.themetoggle{display:inline-flex;border:1px solid var(--c-hairline);border-radius:var(--r-sm);overflow:hidden}.themetoggle__seg{display:inline-flex;align-items:center;justify-content:center;min-width:5em;padding:6px 14px;border:none;border-left:1px solid var(--c-hairline);background:var(--c-surface);font:inherit;font-size:var(--fs-sm);color:var(--c-ink);cursor:pointer;transition:background-color .15s ease,color .15s ease}.themetoggle__seg:first-child{border-left:none}.themetoggle__seg:hover:not(.is-active):not(:disabled){background:var(--c-bg)}.themetoggle__seg:disabled{cursor:default;opacity:.6}.themetoggle__seg.is-active{background:var(--c-primary-soft);color:var(--c-primary);font-weight:600}.permmatrix{display:flex;flex-direction:column;gap:var(--sp-3)}.permmatrix__toolbar{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap}.permmatrix__search{max-width:280px}.permmatrix__bulk{display:flex;gap:var(--sp-3)}.linkbtn{background:none;border:none;padding:0;font:inherit;font-size:var(--fs-sm);color:var(--c-primary);cursor:pointer;text-decoration:underline}.linkbtn:not(:disabled):hover{color:var(--c-primary-hover)}.linkbtn:disabled{color:var(--c-muted);cursor:not-allowed;text-decoration:none}.permmatrix__cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--sp-4);align-items:start}.permmatrix__cat{border:1px solid var(--c-hairline);border-radius:var(--r-md);overflow:hidden}.permmatrix__cathead{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);background:var(--c-primary-soft)}.permmatrix__disclosure{flex:1;display:flex;align-items:center;gap:var(--sp-2);background:none;border:none;padding:var(--sp-2) 0;font:inherit;font-weight:600;font-size:var(--fs-sm);color:var(--c-ink);cursor:pointer;text-align:left;border-radius:var(--r-sm);transition:color .15s ease}.permmatrix__disclosure:hover{color:var(--c-primary)}.permmatrix__chevron{color:var(--c-muted);font-size:var(--fs-xs)}.permmatrix__catname{flex:1}.permmatrix__count{font-family:var(--font-mono, monospace);font-weight:400;color:var(--c-muted);font-size:var(--fs-xs)}.permmatrix__cardbody{display:flex;flex-direction:column;padding:0 var(--sp-4) var(--sp-3)}.permmatrix__res{display:flex;flex-direction:column;gap:var(--sp-1, 4px);padding:var(--sp-3) 0;border-top:1px solid var(--c-hairline)}.permmatrix__res:first-child{border-top:none}.permmatrix__resname{font-weight:500;color:var(--c-ink);font-size:var(--fs-sm);line-height:1.25}.permmatrix__acts{display:flex;flex-wrap:wrap;gap:var(--sp-1, 4px) var(--sp-3)}.permmatrix__acts .checkbox{gap:5px;font-size:var(--fs-xs)}.checkbox.checkbox--changed{color:var(--c-primary);font-weight:600}.checkbox.checkbox--changed .checkbox__box{border-color:var(--c-primary)}@media(max-width:640px){.permmatrix__cats{grid-template-columns:1fr}}.residents-toolbar{flex:none;display:flex;flex-direction:column;gap:var(--sp-4)}.datefield{position:relative;display:flex}.datefield__input{padding-right:2.75rem}.datefield__toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;background:transparent;border-radius:var(--r-sm);color:var(--c-muted);cursor:pointer;transition:background-color .15s ease,color .15s ease}.datefield__toggle:hover:not(:disabled){background:var(--c-primary-soft);color:var(--c-primary)}.datefield__toggle:disabled{cursor:not-allowed;opacity:.5}.datefield__toggle svg{width:18px;height:18px}.datefield__popover{z-index:60;background:var(--c-surface);border:1px solid var(--c-hairline);border-radius:var(--r-md);box-shadow:var(--shadow-lg, 0 12px 32px rgba(0, 0, 0, .18));padding:var(--sp-3)}.datefield__navrow{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-2)}.datefield__monthlabel{font-weight:600;font-size:var(--fs-sm);color:var(--c-ink)}.datefield__nav{border:1px solid var(--c-hairline);background:var(--c-field);border-radius:var(--r-sm);width:28px;height:28px;font-size:16px;line-height:1;color:var(--c-ink);cursor:pointer}.datefield__nav:hover{border-color:var(--c-primary)}.datefield__weekhead,.datefield__week{display:grid;grid-template-columns:repeat(7,34px);gap:2px}.datefield__weekname{text-align:center;font-size:var(--fs-xs);font-weight:600;color:var(--c-muted);padding:4px 0}.datefield__day{height:32px;border:1px solid transparent;background:transparent;border-radius:var(--r-sm);font:inherit;font-size:var(--fs-sm);color:var(--c-ink);cursor:pointer}.datefield__day:hover{background:var(--c-primary-soft)}.datefield__day:focus-visible{outline:none;box-shadow:var(--focus-ring)}.datefield__day--muted{color:var(--c-muted);opacity:.6}.datefield__day--today{border-color:var(--c-primary)}.datefield__day--selected{background:var(--c-primary);color:#fff}.datefield__day--selected:hover{background:var(--c-primary)}.datefield__footrow{display:flex;justify-content:space-between;gap:var(--sp-2);margin-top:var(--sp-2)}.datefield__todaybtn{border:none;background:transparent;color:var(--c-primary);font:inherit;font-size:var(--fs-sm);font-weight:600;cursor:pointer;padding:4px 6px;border-radius:var(--r-sm)}.datefield__todaybtn:hover{background:var(--c-primary-soft)}.eval-resident-header{display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-4);margin:calc(-1 * var(--sp-2)) 0 var(--sp-3);color:var(--c-muted);font-size:var(--fs-sm)}.eval-resident-header strong{color:var(--c-ink);font-weight:600}.eval-last-operation{margin:calc(-1 * var(--sp-1)) 0 var(--sp-4);color:var(--c-muted);font-size:var(--fs-sm)}.eval-last-operation strong{color:var(--c-ink);font-weight:600}.confirm-inline{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.confirm-inline__prompt{font-size:var(--fs-xs);color:var(--c-muted)}.confirm-inline__trigger,.confirm-inline__confirm{color:var(--c-danger)}.rtable-wrap{overflow-x:auto}.rtable-wrap--flush{flex:1;min-height:0;overflow:auto}.rtable--hover tbody tr{transition:background-color .15s ease}.rtable--hover tbody tr:hover{background:var(--c-primary-soft)}@media(max-width:640px){.rtable thead{display:none}.rtable,.rtable tbody,.rtable tr,.rtable td{display:block;width:100%}.rtable tr{padding:var(--sp-3) var(--sp-4)}.rtable td{padding:4px 0;border:none}.rtable td:before{content:attr(data-label);display:block;font-size:var(--fs-xs);color:var(--c-muted)}}.shell{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--c-bg)}.shell__top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-5);border-bottom:1px solid var(--c-hairline);background:var(--c-surface);flex-wrap:wrap}.shell__logo{display:flex;align-items:center;gap:var(--sp-2);flex:none;text-decoration:none;color:var(--c-ink)}.shell__logo:hover{text-decoration:none}.shell__logo-mark{height:28px;width:auto;flex:none}.shell__logo b{font-family:var(--font-display);font-size:var(--fs-md);font-weight:700;letter-spacing:-.01em}.shell__topnav{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.shell__navitem{display:inline-flex;align-items:center;gap:var(--sp-2);padding:7px 12px;border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--c-ink);font-weight:500;text-decoration:none}.shell__navitem svg{width:16px;height:16px;flex:none;opacity:.55}.shell__navitem:hover{background:var(--c-bg);text-decoration:none}.shell__navitem.is-active{background:var(--c-primary-soft);color:var(--c-primary)}.shell__navitem.is-active svg{opacity:1}.shell__search{flex:1;min-width:160px;max-width:340px;background:var(--c-field);border:1px solid var(--c-hairline);border-radius:var(--r-sm);padding:8px 12px;font-size:var(--fs-sm);color:var(--c-muted);display:flex;align-items:center;gap:var(--sp-2)}.shell__search{transition:border-color .15s ease,box-shadow .15s ease}.shell__search:hover{border-color:var(--c-primary)}.shell__search:focus-within{border-color:var(--c-primary);box-shadow:var(--focus-ring)}.shell__search svg{width:15px;height:15px;opacity:.5;flex-shrink:0}.shell__search input{flex:1;min-width:0;border:none;background:transparent;font:inherit;color:var(--c-ink);outline:none}.shell__search input::placeholder{color:var(--c-muted)}.shell__user{margin-left:auto;display:flex;align-items:center;gap:var(--sp-2);background:none;border:none;cursor:pointer;padding:4px;border-radius:var(--r-sm);flex:none}.shell__user:hover{background:var(--c-bg)}.shell__user-name{font-size:var(--fs-sm);line-height:1.1;text-align:right}.shell__user-name small{display:block;color:var(--c-muted);font-size:10.5px}.shell__avatar{width:32px;height:32px;border-radius:50%;background:var(--c-primary-soft);color:var(--c-primary);display:grid;place-items:center;font-size:var(--fs-xs);font-weight:700;flex:none}.shell__content{flex:1;min-height:0;padding:var(--sp-6) var(--sp-5);overflow:auto}.menu{background:var(--c-surface);border:1px solid var(--c-hairline);border-radius:var(--r-md);box-shadow:var(--shadow-card);padding:5px;min-width:170px}.menu__item{display:flex;align-items:center;gap:var(--sp-2);padding:8px 10px;font-size:var(--fs-sm);border-radius:6px;cursor:pointer;color:var(--c-ink);outline:none}.menu__item svg{width:15px;height:15px;opacity:.6}.menu__item[data-highlighted]{background:var(--c-bg)}.menu__label{padding:6px 10px 2px;font-size:var(--fs-xs);color:var(--c-muted);text-transform:uppercase;letter-spacing:.04em}.menu__sep{height:1px;background:var(--c-hairline);margin:5px 0}.menu__check{width:15px;display:inline-flex;justify-content:center;color:var(--c-primary)}@media(max-width:640px){.shell__top{gap:var(--sp-2) var(--sp-3);padding:var(--sp-3) var(--sp-4)}.shell__search{order:3;flex-basis:100%;max-width:none}.shell__topnav{order:2}}@media(max-width:480px){.shell__user-name{display:none}}.login-screen{min-height:100%;display:grid;place-items:center;padding:var(--sp-5)}.login-card{width:100%;max-width:860px;overflow:hidden;display:grid;grid-template-columns:1fr}@media(min-width:620px){.login-card{grid-template-columns:1.05fr .95fr}}.login-aside{background:var(--c-primary-soft);color:var(--c-ink);padding:var(--sp-6) var(--sp-6);display:flex;flex-direction:column;justify-content:space-between;gap:var(--sp-5);position:relative;overflow:hidden}.login-aside:after{content:"";position:absolute;right:-70px;bottom:-70px;width:200px;height:200px;border-radius:50%;background:#0c6b5e14}.login-logo{width:100%;max-width:220px;height:auto;position:relative;z-index:1}.login-brand{display:flex;align-items:center;gap:var(--sp-3);position:relative;z-index:1}.login-brand__who{font-size:var(--fs-sm);font-weight:600;line-height:1.25}.login-brand__who small{display:block;font-weight:400;opacity:.8;font-size:var(--fs-xs)}.login-pitch{position:relative;z-index:1}.login-pitch h2{color:var(--c-ink);font-size:var(--fs-xl);line-height:1.12;margin-bottom:var(--sp-3)}.login-values{display:flex;gap:var(--sp-2);flex-wrap:wrap;list-style:none;padding:0;margin:0;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em}.login-values li{background:var(--c-primary);color:#fff;padding:5px 10px;border-radius:var(--r-pill)}.login-restricted{font-size:var(--fs-xs);color:var(--c-muted);position:relative;z-index:1}.login-form{background:var(--c-surface);padding:var(--sp-6) var(--sp-6);display:flex;flex-direction:column}.login-form h1{font-size:var(--fs-lg);margin-bottom:4px}.login-form__sub{color:var(--c-muted);font-size:var(--fs-sm);margin:0 0 var(--sp-5)}.login-form form{display:flex;flex-direction:column;gap:var(--sp-4)}.login-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.login-link{font-size:var(--fs-sm);font-weight:600;color:var(--c-primary);background:none;border:none;cursor:pointer;padding:0}.login-locknote{margin-top:var(--sp-5);font-size:11.5px;color:var(--c-muted)}.physio-layout{display:flex;align-items:flex-start;gap:var(--sp-4)}.physio-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--sp-4)}.physio-panel{flex:0 0 auto;width:340px;min-width:240px;max-width:720px;resize:horizontal;overflow:auto;max-height:calc(100vh - 160px);background:var(--c-surface);border:1px solid var(--c-hairline);border-radius:var(--r-md);padding:var(--sp-4)}.physio-panel__entry+.physio-panel__entry{margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--c-hairline)}.physio-panel__head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-2);font-size:var(--fs-sm)}.physio-panel__row{margin-top:6px;font-size:var(--fs-sm)}.physio-panel__row dt{font-size:var(--fs-xs);color:var(--c-muted)}.physio-panel__row dd{margin:0;white-space:pre-wrap}.physio-steps{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.physio-step{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--c-hairline);border-radius:var(--r-pill);background:var(--c-surface);font-size:var(--fs-sm);color:var(--c-ink);cursor:pointer}.physio-step.is-active{border-color:var(--c-primary);background:var(--c-primary-soft);color:var(--c-primary);font-weight:600}.physio-step__num{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--c-muted)}.physio-step.is-active .physio-step__num{color:var(--c-primary)}.physio-section+.physio-section{margin-top:var(--sp-5)}.physio-section__title{font-size:var(--fs-sm);font-weight:600;color:var(--c-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--sp-3)}.physio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--sp-3) var(--sp-4);align-items:start}.physio-span{grid-column:1 / -1}.physio-figrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-4);align-items:start}.physio-figrow__fig{margin-top:0;position:sticky;top:var(--sp-4)}.physio-figrow__fields{display:flex;flex-direction:column;gap:var(--sp-3)}.physio-figrow__fields .physio-span{grid-column:auto}@media(max-width:640px){.physio-figrow{grid-template-columns:1fr}.physio-figrow__fig{position:static}}.physio-checks{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4)}.physio-refimg{margin:var(--sp-3) 0 0}.physio-refimg img{display:block;width:100%;max-width:640px;height:auto;background:#fff;border:1px solid var(--c-hairline);border-radius:var(--r-sm)}.physio-refimg figcaption{font-size:var(--fs-xs);color:var(--c-muted);margin-top:var(--sp-1)}.physio-rows{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.physio-rows th{text-align:left;font-size:var(--fs-xs);color:var(--c-muted);font-weight:500;padding-bottom:4px}.physio-rows td{padding:3px 6px 3px 0;vertical-align:top}.physio-status{font-size:var(--fs-sm);color:var(--c-muted)}.physio-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}@media(max-width:900px){.physio-layout{flex-direction:column}.physio-panel{width:100%;max-width:none;resize:vertical}}.physio-history dt{font-size:var(--fs-xs);color:var(--c-muted);margin-top:var(--sp-3)}.physio-history dt:first-child{margin-top:0}.physio-history dd{margin:2px 0 0;white-space:pre-wrap}.nursing-details{border:1px solid var(--c-hairline);border-radius:var(--radius-md);margin-bottom:var(--sp-3);background:var(--c-surface)}.nursing-details>summary{cursor:pointer;padding:var(--sp-3) var(--sp-4);font-weight:600;font-size:var(--fs-base);list-style:none}.nursing-details>summary::-webkit-details-marker{display:none}.nursing-details>summary:before{content:"▸";display:inline-block;margin-right:var(--sp-2);color:var(--c-muted)}.nursing-details[open]>summary:before{content:"▾"}.nursing-details__body{padding:0 var(--sp-4) var(--sp-4)}.nursing-glasgow-total{margin-top:var(--sp-2);font-size:var(--fs-sm);color:var(--c-muted)}
