@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.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{--brand-deep: #0E3A57;--brand: #1F5F8B;--ok: #2E7D5B;--warn: #B8860F;--danger: #A83527;--page: #EEF1F3;--surface: #FFFFFF;--ink: #14202B;--ink-soft: #43535F;--ink-faint: #7C8A95;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--r-sm: 4px;--r-md: 8px;--r-lg: 12px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 8px rgba(0, 0, 0, .08);--touch-target: 44px;--font-sans: "IBM Plex Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4}body,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,figure,blockquote,fieldset,legend,pre,code,kbd,samp{margin:0;padding:0}body{min-height:100vh;background-color:var(--page);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600;line-height:1.2}h2{font-size:clamp(1.375rem,3.5vw,1.75rem);font-weight:600;line-height:1.3}h3{font-size:clamp(1.125rem,3vw,1.375rem);font-weight:600;line-height:1.35}h4{font-size:1rem;font-weight:600;line-height:1.4}p{line-height:1.5}small,.small{font-size:.875rem;line-height:1.4}code,kbd,samp,pre,.font-mono{font-family:var(--font-mono)}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);height:var(--touch-target);min-width:var(--touch-target);padding:0 var(--s-4);font-family:var(--font-sans);font-size:.875rem;font-weight:500;line-height:1;border:none;border-radius:var(--r-md);cursor:pointer;text-decoration:none;white-space:nowrap;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn--primary{background-color:var(--brand);color:#fff}.btn--primary:not(:disabled):hover{background-color:var(--brand-deep)}.btn--primary:not(:disabled):active{background-color:var(--brand-deep);box-shadow:inset 0 2px 4px #00000026}.btn--ghost{background-color:transparent;color:var(--brand);border:1px solid var(--brand)}.btn--ghost:not(:disabled):hover{background-color:#1f5f8b14}.btn--ghost:not(:disabled):active{background-color:#1f5f8b1f}.btn--danger{background-color:var(--danger);color:#fff}.btn--danger:not(:disabled):hover{background-color:#8b2a1f}.btn--danger:not(:disabled):active{background-color:#8b2a1f;box-shadow:inset 0 2px 4px #00000026}.card{background-color:var(--surface);border:1px solid var(--ink-faint);border-radius:var(--r-md);box-shadow:var(--shadow-sm);padding:var(--s-4)}.chip{display:inline-flex;align-items:center;gap:var(--s-1);padding:var(--s-1) var(--s-2);font-size:.75rem;font-weight:600;line-height:1;border-radius:var(--r-sm);text-transform:uppercase;letter-spacing:.02em}.chip--ok{background-color:#2e7d5b1f;color:var(--ok)}.chip--warn{background-color:#b8860f1f;color:var(--warn)}.chip--danger{background-color:#a835271f;color:var(--danger)}.chip--neutral{background-color:#7c8a951f;color:var(--ink-soft)}.chip--brand{background-color:#1f5f8b1f;color:var(--brand)}.bar{display:block;width:100%;height:6px;background-color:#7c8a9533;border-radius:3px;overflow:hidden}.bar__fill{display:block;height:100%;border-radius:3px;transition:width .3s ease,background-color .3s ease}.bar__fill--ok{background-color:var(--ok)}.bar__fill--warn{background-color:var(--warn)}.bar__fill--danger{background-color:var(--danger)}.bar__fill[data-fill="0"]{width:0%}.bar__fill[data-fill="1"]{width:1%}.bar__fill[data-fill="2"]{width:2%}.bar__fill[data-fill="3"]{width:3%}.bar__fill[data-fill="4"]{width:4%}.bar__fill[data-fill="5"]{width:5%}.bar__fill[data-fill="6"]{width:6%}.bar__fill[data-fill="7"]{width:7%}.bar__fill[data-fill="8"]{width:8%}.bar__fill[data-fill="9"]{width:9%}.bar__fill[data-fill="10"]{width:10%}.bar__fill[data-fill="11"]{width:11%}.bar__fill[data-fill="12"]{width:12%}.bar__fill[data-fill="13"]{width:13%}.bar__fill[data-fill="14"]{width:14%}.bar__fill[data-fill="15"]{width:15%}.bar__fill[data-fill="16"]{width:16%}.bar__fill[data-fill="17"]{width:17%}.bar__fill[data-fill="18"]{width:18%}.bar__fill[data-fill="19"]{width:19%}.bar__fill[data-fill="20"]{width:20%}.bar__fill[data-fill="21"]{width:21%}.bar__fill[data-fill="22"]{width:22%}.bar__fill[data-fill="23"]{width:23%}.bar__fill[data-fill="24"]{width:24%}.bar__fill[data-fill="25"]{width:25%}.bar__fill[data-fill="26"]{width:26%}.bar__fill[data-fill="27"]{width:27%}.bar__fill[data-fill="28"]{width:28%}.bar__fill[data-fill="29"]{width:29%}.bar__fill[data-fill="30"]{width:30%}.bar__fill[data-fill="31"]{width:31%}.bar__fill[data-fill="32"]{width:32%}.bar__fill[data-fill="33"]{width:33%}.bar__fill[data-fill="34"]{width:34%}.bar__fill[data-fill="35"]{width:35%}.bar__fill[data-fill="36"]{width:36%}.bar__fill[data-fill="37"]{width:37%}.bar__fill[data-fill="38"]{width:38%}.bar__fill[data-fill="39"]{width:39%}.bar__fill[data-fill="40"]{width:40%}.bar__fill[data-fill="41"]{width:41%}.bar__fill[data-fill="42"]{width:42%}.bar__fill[data-fill="43"]{width:43%}.bar__fill[data-fill="44"]{width:44%}.bar__fill[data-fill="45"]{width:45%}.bar__fill[data-fill="46"]{width:46%}.bar__fill[data-fill="47"]{width:47%}.bar__fill[data-fill="48"]{width:48%}.bar__fill[data-fill="49"]{width:49%}.bar__fill[data-fill="50"]{width:50%}.bar__fill[data-fill="51"]{width:51%}.bar__fill[data-fill="52"]{width:52%}.bar__fill[data-fill="53"]{width:53%}.bar__fill[data-fill="54"]{width:54%}.bar__fill[data-fill="55"]{width:55%}.bar__fill[data-fill="56"]{width:56%}.bar__fill[data-fill="57"]{width:57%}.bar__fill[data-fill="58"]{width:58%}.bar__fill[data-fill="59"]{width:59%}.bar__fill[data-fill="60"]{width:60%}.bar__fill[data-fill="61"]{width:61%}.bar__fill[data-fill="62"]{width:62%}.bar__fill[data-fill="63"]{width:63%}.bar__fill[data-fill="64"]{width:64%}.bar__fill[data-fill="65"]{width:65%}.bar__fill[data-fill="66"]{width:66%}.bar__fill[data-fill="67"]{width:67%}.bar__fill[data-fill="68"]{width:68%}.bar__fill[data-fill="69"]{width:69%}.bar__fill[data-fill="70"]{width:70%}.bar__fill[data-fill="71"]{width:71%}.bar__fill[data-fill="72"]{width:72%}.bar__fill[data-fill="73"]{width:73%}.bar__fill[data-fill="74"]{width:74%}.bar__fill[data-fill="75"]{width:75%}.bar__fill[data-fill="76"]{width:76%}.bar__fill[data-fill="77"]{width:77%}.bar__fill[data-fill="78"]{width:78%}.bar__fill[data-fill="79"]{width:79%}.bar__fill[data-fill="80"]{width:80%}.bar__fill[data-fill="81"]{width:81%}.bar__fill[data-fill="82"]{width:82%}.bar__fill[data-fill="83"]{width:83%}.bar__fill[data-fill="84"]{width:84%}.bar__fill[data-fill="85"]{width:85%}.bar__fill[data-fill="86"]{width:86%}.bar__fill[data-fill="87"]{width:87%}.bar__fill[data-fill="88"]{width:88%}.bar__fill[data-fill="89"]{width:89%}.bar__fill[data-fill="90"]{width:90%}.bar__fill[data-fill="91"]{width:91%}.bar__fill[data-fill="92"]{width:92%}.bar__fill[data-fill="93"]{width:93%}.bar__fill[data-fill="94"]{width:94%}.bar__fill[data-fill="95"]{width:95%}.bar__fill[data-fill="96"]{width:96%}.bar__fill[data-fill="97"]{width:97%}.bar__fill[data-fill="98"]{width:98%}.bar__fill[data-fill="99"]{width:99%}.bar__fill[data-fill="100"]{width:100%}.field{display:flex;flex-direction:column;gap:var(--s-1)}.field__label{font-size:.875rem;font-weight:500;color:var(--ink-soft)}.field__input{width:100%;height:var(--touch-target);padding:0 var(--s-3);font-family:var(--font-sans);font-size:1rem;color:var(--ink);background-color:var(--surface);border:1px solid var(--ink-faint);border-radius:var(--r-md);transition:border-color .15s ease,box-shadow .15s ease}.field__input::placeholder{color:var(--ink-faint)}.field__input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #1f5f8b26}.field__input:disabled{background-color:var(--page);color:var(--ink-faint);cursor:not-allowed}.field__hint{font-size:.75rem;color:var(--ink-faint)}.field__error{font-size:.75rem;color:var(--danger)}.appbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);height:56px;padding:0 var(--s-4);background-color:var(--surface);border-bottom:1px solid var(--ink-faint);position:sticky;top:0;z-index:100}.appbar__title{font-size:1.125rem;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appbar__actions{display:flex;align-items:center;gap:var(--s-2)}.tabbar{display:flex;height:56px;background-color:var(--surface);border-top:1px solid var(--ink-faint);position:fixed;bottom:0;left:0;right:0;z-index:100}.tabbar__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:var(--s-1) var(--s-2);font-family:var(--font-sans);font-size:.75rem;font-weight:500;color:var(--ink-faint);background:none;border:none;cursor:pointer;transition:color .15s ease;min-height:var(--touch-target)}.tabbar__item:focus-visible{outline:none;background-color:#1f5f8b14}.tabbar__item--active{color:var(--brand)}.tabbar__icon{width:24px;height:24px;flex-shrink:0}.text-ink{color:var(--ink)}.text-ink-soft{color:var(--ink-soft)}.text-ink-faint{color:var(--ink-faint)}.text-brand{color:var(--brand)}.text-ok{color:var(--ok)}.text-warn{color:var(--warn)}.text-danger{color:var(--danger)}.bg-page{background-color:var(--page)}.bg-surface{background-color:var(--surface)}.bg-brand{background-color:var(--brand);color:#fff}.bg-brand-deep{background-color:var(--brand-deep);color:#fff}.appbar__user{display:flex;flex-direction:column;min-width:0}.appbar__name{font-size:.9375rem;font-weight:600;color:var(--ink);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appbar__role{font-size:.75rem;color:var(--ink-soft);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appbar__net{display:inline-flex;align-items:center;gap:var(--s-2);padding:var(--s-1) var(--s-3);font-size:.75rem;font-weight:600;line-height:1;border-radius:999px;white-space:nowrap}.appbar__net--on{background-color:#2e7d5b1f;color:var(--ok)}.appbar__net--off{background-color:#a835271f;color:var(--danger)}.appbar__net-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background-color:currentColor}.tabbar__label{display:block;font-size:.6875rem;letter-spacing:.01em}.tabbar__icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;font-family:var(--font-mono);font-size:.75rem;font-weight:700;border-radius:var(--r-sm)}.tabbar__item--active .tabbar__icon{background-color:#1f5f8b1f;color:var(--brand)}.material-card{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-3)}.material-card__cover-wrap{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:var(--r-md);overflow:hidden;background-color:var(--page)}.material-card__cover{display:block;width:100%;height:100%;object-fit:cover}.material-card__cover-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:var(--s-4);text-align:center;color:#fff;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-deep) 100%)}.material-card__cover-title{font-size:clamp(1rem,3vw,1.25rem);font-weight:600;line-height:1.25;text-shadow:0 1px 2px rgba(0,0,0,.2);word-break:break-word}.material-card__chip{position:absolute;top:var(--s-2);left:var(--s-2)}.material-card__title{font-size:1rem;font-weight:600;line-height:1.3;margin:0;color:var(--ink)}.material-card__desc{font-size:.875rem;line-height:1.4;margin:0}.material-card__meta{font-size:.75rem;line-height:1.4;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-card__progress{display:flex;flex-direction:column;gap:var(--s-1)}.material-card__progress-text{font-size:.75rem;margin:0}.material-card__actions{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-2)}.material-card__btn{flex:1 1 auto;min-width:0}.material-card__btn--full{flex-basis:100%}.material-card__no-space{width:100%;font-size:.75rem;margin:0}.material-card__confirm{display:flex;flex-direction:column;gap:var(--s-2);width:100%;padding:var(--s-2) var(--s-3);background-color:#a8352714;border:1px solid var(--danger);border-radius:var(--r-sm)}.material-card__confirm-text{font-size:.8125rem;line-height:1.4;margin:0;color:var(--ink)}.material-card__confirm-actions{display:flex;gap:var(--s-2);flex-wrap:wrap}.storage-block{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-3)}.storage-block__header{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2)}.storage-block__title{font-size:.875rem;font-weight:600;color:var(--ink);margin:0}.storage-block__badge{flex-shrink:0;max-width:65%;text-align:center;white-space:normal;line-height:1.2}.storage-block__line{font-size:.875rem;line-height:1.4;margin:0;color:var(--ink)}.storage-block__line strong{color:var(--ink);font-weight:600}.storage-block__percent{color:var(--ink-soft)}.storage-block__warning{font-size:.8125rem;line-height:1.4;margin:0;padding:var(--s-2) var(--s-3);background-color:#b8860f1a;border:1px solid var(--warn);border-radius:var(--r-sm);color:var(--ink)}.storage-block__warning--danger{background-color:#a835271a;border-color:var(--danger)}.auth-screen{display:flex;flex-direction:column;min-height:100vh;background-color:var(--brand-deep);color:#fff;padding:var(--s-5) var(--s-4)}.auth-screen--login{justify-content:center;gap:var(--s-5)}.auth-screen--pin{justify-content:space-between;padding-top:var(--s-6);padding-bottom:var(--s-5);gap:var(--s-5)}.auth-screen__header{display:flex;flex-direction:column;align-items:center;gap:var(--s-2)}.auth-screen__logo{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:16px;background-color:#ffffff1f;font-family:var(--font-mono);font-size:1.5rem;font-weight:700;color:#fff}.auth-screen__brand{font-size:1.5rem;font-weight:600;letter-spacing:.01em}.auth-screen__tagline{font-size:.875rem;color:#ffffffbf}.auth-screen__form{display:flex;flex-direction:column;gap:var(--s-3);width:100%;max-width:360px;margin:0 auto}.auth-screen__field{display:flex;flex-direction:column;gap:var(--s-1)}.auth-screen__label{font-size:.75rem;color:#ffffffbf}.auth-screen__input{width:100%;height:var(--touch-target);padding:0 var(--s-3);font-family:var(--font-sans);font-size:1rem;color:var(--ink);background-color:var(--surface);border:none;border-radius:var(--r-md)}.auth-screen__input:focus{outline:2px solid #FFFFFF;outline-offset:2px}.auth-screen__error{font-size:.875rem;color:#f5c0b8;text-align:center}.auth-screen__submit{height:var(--touch-target);margin-top:var(--s-2);font-size:1rem;font-weight:600;color:var(--brand-deep);background-color:#fff;border:none;border-radius:var(--r-md);cursor:pointer}.auth-screen__submit:disabled{opacity:.5;cursor:not-allowed}.auth-screen__footer{margin-top:auto;text-align:center;font-size:.75rem;color:#fff9}.pin-screen__title{text-align:center;font-size:1.125rem;font-weight:500;margin:0}.pin-screen__dots{display:flex;justify-content:center;gap:var(--s-3);margin:var(--s-5) 0}.pin-screen__dot{width:16px;height:16px;border-radius:50%;background-color:#ffffff40;transition:background-color .15s ease}.pin-screen__dot--filled{background-color:#fff}.pin-screen__keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-2);max-width:320px;width:100%;margin:0 auto}.pin-screen__key{height:64px;font-family:var(--font-sans);font-size:1.5rem;font-weight:500;color:#fff;background-color:#ffffff14;border:none;border-radius:var(--r-md);cursor:pointer;transition:background-color .15s ease}.pin-screen__key:hover{background-color:#ffffff29}.pin-screen__key:active{background-color:#ffffff3d}.pin-screen__key--ghost{background-color:transparent;font-size:.875rem;font-weight:600;color:#ffffffd9}.pin-screen__error{text-align:center;font-size:.875rem;color:#f5c0b8;min-height:1.25rem}.app-screen{display:flex;flex-direction:column;min-height:100vh;background-color:var(--page);padding-bottom:calc(56px + env(safe-area-inset-bottom,0))}.app-screen__content{flex:1;display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-3) var(--s-4);width:100%;max-width:720px;margin:0 auto}.app-screen__row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3)}.app-screen__row--stack{flex-direction:column;align-items:stretch;gap:var(--s-2)}.sync-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);padding:var(--s-2) var(--s-3);background-color:var(--surface);border:1px solid var(--ink-faint);border-radius:var(--r-md)}.sync-row__text{font-size:.875rem;color:var(--ink-soft)}.sync-row__action{flex-shrink:0;height:36px;padding:0 var(--s-3);font-size:.875rem;font-weight:600;color:#fff;background-color:var(--brand);border:none;border-radius:var(--r-md);cursor:pointer}.sync-row__action:disabled{cursor:not-allowed}.sync-row__action--offline,.sync-row__action--offline:disabled{background-color:var(--surface);color:var(--ink-soft);border:1px solid var(--line, var(--ink-faint));cursor:not-allowed;opacity:1}.cards-list{display:grid;gap:var(--s-3)}.materials-screen__cache-note{margin:0;font-size:.8125rem;line-height:1.4;color:var(--ink-soft)}.clients-list{display:grid;gap:var(--s-3)}.client-card{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-4);background-color:var(--surface);border:1px solid var(--ink-faint);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.client-card__name{font-size:1rem;font-weight:600;color:var(--ink);line-height:1.3}.client-card__address{font-size:.875rem;color:var(--ink-soft);line-height:1.4}.client-card__section-title{font-size:.75rem;font-weight:600;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em;margin-top:var(--s-1)}.client-card__doctors{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s-1)}.client-card__doctor{font-size:.875rem;color:var(--ink);line-height:1.4}.client-card__doctor-spec{color:var(--ink-soft);font-size:.8125rem;margin-left:var(--s-1)}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background-color:#000;display:flex;flex-direction:column}.viewer__frame{flex:1;width:100%;height:100%;border:none;display:block;background-color:#000}.viewer__back{position:absolute;top:calc(env(safe-area-inset-top,0) + var(--s-2));left:var(--s-2);z-index:1002;display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;min-width:44px;height:44px;padding:0 var(--s-3);font-family:var(--font-sans);font-size:.875rem;font-weight:600;line-height:1;color:#fff;background-color:#14202b8c;border:1px solid rgba(255,255,255,.18);border-radius:var(--r-md);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;transition:background-color .15s ease}.viewer__back:hover{background-color:#14202bbf}.viewer__back:focus-visible{outline:2px solid #FFFFFF;outline-offset:2px}.viewer__back-icon{font-size:1.125rem;line-height:1}.viewer__back-label{display:inline}.viewer__panel{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-3);background-color:#14202ba6;color:#fff;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1001;transition:opacity .2s ease,transform .2s ease;opacity:0;transform:translateY(-8px);pointer-events:none}.viewer__panel--visible{opacity:1;transform:translateY(0);pointer-events:auto}.viewer__title{flex:1;min-width:0;font-size:.9375rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewer__offline{flex-shrink:0;font-size:.75rem;color:#ffffffbf;white-space:nowrap}.service-screen{display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-3) var(--s-4);width:100%;max-width:720px;margin:0 auto}.service-screen__title{font-size:1.25rem;font-weight:600;margin:0;color:var(--ink)}.service-screen__section{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-3);background-color:var(--surface);border:1px solid var(--ink-faint);border-radius:var(--r-md)}.service-screen__section-title{font-size:.875rem;font-weight:600;color:var(--ink);margin:0}.service-screen__row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);padding:var(--s-2) 0;border-top:1px solid var(--ink-faint)}.service-screen__row:first-of-type{border-top:none}.service-screen__row-label{font-size:.875rem;color:var(--ink)}.service-screen__row-value{font-family:var(--font-mono);font-size:.8125rem;color:var(--ink-soft)}.service-screen__link{display:inline-flex;align-items:center;gap:var(--s-1);font-size:.875rem;color:var(--brand);text-decoration:none}.service-screen__link:hover{text-decoration:underline}.service-screen__danger{width:100%;height:var(--touch-target);font-size:.9375rem;font-weight:600;color:#fff;background-color:var(--danger);border:none;border-radius:var(--r-md);cursor:pointer}.service-screen__danger:disabled{opacity:.5;cursor:not-allowed}.service-screen__danger-hint{font-size:.75rem;color:var(--ink-faint);margin:0}.service-screen__confirm{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-3);background-color:#a8352714;border:1px solid var(--danger);border-radius:var(--r-md)}.service-screen__confirm-text{font-size:.875rem;color:var(--ink);margin:0}.service-screen__confirm-actions{display:flex;gap:var(--s-2)}.auth-screen__build{font-family:var(--font-mono);font-size:.6875rem;color:#ffffff8c}.app-screen--with-tabbar{padding-bottom:calc(92px + env(safe-area-inset-bottom,0))}.app-version-tap{position:fixed;bottom:calc(56px + env(safe-area-inset-bottom,0));left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:center;gap:var(--s-2);height:28px;padding:0 var(--s-3);background:none;border:none;color:var(--ink-faint);font-size:.6875rem;cursor:default}.app-version-tap:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.app-version-tap__sha,.app-version-tap__date{font-family:var(--font-mono)}
