@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-sans-cyrillic-ext-wght-normal.7w74d1lj.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-sans-cyrillic-wght-normal.B9hoeQUC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-sans-vietnamese-wght-normal.BhFYcaJr.woff2)format("woff2-variations");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:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-sans-latin-ext-wght-normal.DMEAsnHD.woff2)format("woff2-variations");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:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-sans-latin-wght-normal.BWQ3gi2K.woff2)format("woff2-variations");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[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root{color-scheme:light dark;--font:"Nunito Sans Variable", system-ui, -apple-system, "Segoe UI", roboto, sans-serif;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-7:32px;--s-8:48px;--s-9:64px;--s-10:96px;--r-xs:6px;--r-s:10px;--r:14px;--r-l:20px;--r-xl:28px;--r-pill:999px;--tap:44px;--h-s:var(--tap);--h-m:48px;--h-l:56px;--edge:3px;--border:1.5px;--fs-xs:.75rem;--fs-s:.875rem;--fs-m:1rem;--fs-l:1.125rem;--fs-xl:1.375rem;--fs-h3:1.125rem;--fs-h2:clamp(1.5rem, 3.6vw, 2.125rem);--fs-h1:clamp(2rem, 6vw, 3.5rem);--fs-hero:clamp(2.25rem, 7vw, 4.5rem);--ease:cubic-bezier(.2, .7, .2, 1);--ease-spring:cubic-bezier(.3, 1.4, .5, 1);--t-fast:.12s;--t:.2s;--t-slow:.4s;--content-w:860px;--wide-w:1120px;--bg:light-dark(#f7f4ee,#0a1626);--bg-tint:light-dark(#efe9de,#0f1e33);--surface:light-dark(#fff,#12223a);--surface-2:light-dark(#f6f2ea,#172a45);--surface-3:light-dark(#ece5d8,#1f3555);--line:light-dark(#e6e0d4,#22344f);--line-2:light-dark(#d6cdbd,#2f4566);--ink:light-dark(#0e2235,#eaf1f8);--ink-2:light-dark(#2d4256,#bfcddd);--muted:light-dark(#5d6b78,#93a6bd);--accent:light-dark(#d4430f,#ff7a45);--accent-hover:light-dark(#bd3a0b,#ff8f60);--accent-ink:light-dark(#fff,#1f0b02);--accent-edge:light-dark(#9a2f07,#c4501f);--accent-text:light-dark(#b0380a,#ff8c5a);--accent-soft:light-dark(#ffe7dc,#3d1b0c);--accent-2:light-dark(#1b6baf,#5fb2ff);--accent-2-soft:light-dark(#e3effa,#12304d);--navy:light-dark(#0e2235,#050d18);--navy-ink:#eaf1f8;--warn:light-dark(#8a5200,#fbbf24);--warn-soft:light-dark(#fff1d6,#3a2c0c);--exam:light-dark(#6a2ad0,#b39dfb);--exam-edge:light-dark(#4c1d96,#7454d6);--exam-soft:light-dark(#f0e9ff,#2a2148);--ok:light-dark(#1b783f,#4cd68a);--ok-edge:light-dark(#15653a,#2a9a5e);--ok-soft:light-dark(#e3f4e8,#103222);--ko:light-dark(#bf3028,#ff7a6e);--ko-edge:light-dark(#93241c,#c94a40);--ko-soft:light-dark(#fbe6e3,#3a1716);--star:light-dark(#e8a200,#fbbf24);--ring:light-dark(#1d6fb8,#5fb2ff);--ok-on:light-dark(#fff,#04240f);--ko-on:light-dark(#fff,#2b0707);--exam-on:light-dark(#fff,#1c1036);--accent-2-on:light-dark(#fff,#032235);--shadow-s:0 1px 2px light-dark(#0e22350f,#0006);--shadow:0 1px 2px light-dark(#0e22350d,#0006), 0 12px 28px -14px light-dark(#0e223529,#000a);--shadow-l:0 24px 60px -20px light-dark(#0e223540,#000c);--scrim:light-dark(#0e223580,#050d18b8);--stage-3d:#e9f1f8;--stage-2d:#fff;--scene-ink:#334560;--scene-navy:#0b1b30;--scene-muted:#62748c;--scene-label-bg:#ffffffd9;--scene-shadow:0 2px 10px #00000059;--scene-accent:#0f8b8d;--scene-accent-ink:#0b7475;--scene-ok:#2a9d63;--scene-ko:#d64545;--scene-hint:#866300;--image-ink:#fff}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background:var(--bg)}body{min-height:100dvh;color:var(--ink);background:var(--bg);font:400 var(--fs-m) / 1.55 var(--font);font-feature-settings:"cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4{text-wrap:balance;margin:0;line-height:1.15}h1{font:900 var(--fs-h1) / 1.05 var(--font);letter-spacing:-.025em}h2{font:850 var(--fs-h2) / 1.1 var(--font);letter-spacing:-.02em}h3{font-size:var(--fs-h3);letter-spacing:-.01em;font-weight:800}p{text-wrap:pretty;margin:0}a{color:var(--accent-text);text-underline-offset:3px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}img,svg{max-width:100%}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--ring);outline-offset:2px;border-radius:var(--r-s)}.display{letter-spacing:-.025em;font-weight:900}.hero-title{font:900 var(--fs-hero) / 1 var(--font);letter-spacing:-.03em}.eyebrow{align-items:center;gap:var(--s-2);font:800 var(--fs-xs) / 1.2 var(--font);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-text);display:inline-flex}.lead{font-size:var(--fs-l);color:var(--ink-2);line-height:1.55}.muted{color:var(--muted)}.sub{color:var(--muted);font-size:var(--fs-s)}.small{font-size:var(--fs-s)}.num{font-variant-numeric:tabular-nums}.help{color:var(--muted);font-size:.9em;font-style:italic;font-weight:400}.mark{padding:0 var(--s-1);border-radius:var(--r-xs);background:var(--warn-soft);color:var(--warn);font-weight:700}.btn{--btn-bg:var(--surface);--btn-ink:var(--ink);--btn-line:var(--line-2);--btn-hover:var(--surface-2);--btn-edge:var(--line-2);justify-content:center;align-items:center;gap:var(--s-2);min-height:var(--h-m);padding:0 var(--s-6);border:var(--border) solid var(--btn-line);border-radius:var(--r-pill);background:var(--btn-bg);color:var(--btn-ink);font:800 var(--fs-m) / 1.2 var(--font);text-align:center;white-space:normal;transition:transform var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), background var(--t-fast), border-color var(--t-fast);text-decoration:none;display:inline-flex}.btn>svg{flex-shrink:0;width:1.25em;height:1.25em}@media (hover:hover){.btn:hover:not(:disabled){background:var(--btn-hover)}}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.97)}.btn-primary{--btn-bg:var(--accent);--btn-ink:var(--accent-ink);--btn-line:var(--accent);--btn-hover:var(--accent-hover);--btn-edge:var(--accent-edge)}.btn-ghost{--btn-bg:transparent;--btn-line:transparent;--btn-ink:var(--ink-2)}.btn-danger{--btn-bg:var(--ko-soft);--btn-ink:var(--ko);--btn-line:transparent;--btn-hover:var(--ko-soft);--btn-edge:var(--ko-edge)}.btn-exam{--btn-bg:var(--exam);--btn-ink:var(--exam-on);--btn-line:var(--exam);--btn-hover:var(--exam);--btn-edge:var(--exam-edge)}.btn-ok{--btn-bg:var(--ok);--btn-ink:var(--ok-on);--btn-line:var(--ok);--btn-hover:var(--ok);--btn-edge:var(--ok-edge)}.btn-light{--btn-bg:var(--navy-ink);--btn-ink:var(--navy);--btn-line:var(--navy-ink);--btn-hover:var(--navy-ink)}.btn-s{min-height:var(--h-s);padding:0 var(--s-4);font-size:var(--fs-s)}.btn-l{min-height:var(--h-l);padding:0 var(--s-7);font-size:var(--fs-l)}.btn-block{width:100%;display:flex}.btn-icon{min-width:var(--h-m);padding:0}.btn-icon.btn-s{min-width:var(--h-s)}.btn-press{margin-bottom:calc(var(--edge));box-shadow:0 var(--edge) 0 var(--btn-edge)}.btn-press:active:not(:disabled){transform:translateY(var(--edge));box-shadow:0 0 0 var(--btn-edge)}.link{align-items:center;gap:var(--s-1);min-height:var(--tap);padding:0 var(--s-1);color:var(--accent-text);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;font-weight:800;text-decoration:underline 1.5px;display:inline-flex}.link-muted{color:var(--muted);font-weight:600}@media (hover:hover){.link:hover{text-decoration-thickness:2.5px}}.card{padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r-l);background:var(--surface);box-shadow:var(--shadow-s)}.card-link{color:inherit;transition:transform var(--t) var(--ease), border-color var(--t), box-shadow var(--t);text-decoration:none;display:block}@media (hover:hover){.card-link:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-2px)}}.card-link:active{transform:translateY(0)}.card-feature{border:2px solid var(--accent);box-shadow:var(--shadow-l)}.card-tint{background:var(--bg-tint);box-shadow:none;border-color:#0000}.card-ink{background:var(--navy);color:var(--navy-ink);box-shadow:var(--shadow-l);border-color:#0000}.card-ink .muted{color:color-mix(in srgb, var(--navy-ink) 70%, transparent)}.cover{isolation:isolate;align-content:end;gap:var(--s-1);min-height:220px;padding:var(--s-5);border-radius:var(--r-l);color:var(--image-ink);text-decoration:none;display:grid;position:relative;overflow:hidden}.cover>img{z-index:-2;object-fit:cover;width:100%;height:100%;transition:transform var(--t-slow) var(--ease);position:absolute;inset:0}.cover:before{content:"";z-index:-1;background:linear-gradient(to top, var(--scrim) 30%, transparent 75%);position:absolute;inset:0}@media (hover:hover){a.cover:hover>img{transform:scale(1.04)}}.list{border:1px solid var(--line);border-radius:var(--r-l);background:var(--surface);display:grid;overflow:hidden}.list-item{align-items:center;gap:var(--s-3);width:100%;min-height:56px;padding:var(--s-2) var(--s-4);color:var(--ink);text-align:left;background:0 0;border:0;flex-wrap:wrap;font-weight:700;text-decoration:none;display:flex}.list-item+.list-item{border-top:1px solid var(--line)}a.list-item,button.list-item{cursor:pointer;transition:background var(--t-fast)}@media (hover:hover){:is(a,button).list-item:hover{background:var(--surface-2)}}.list-icon{border-radius:var(--r-s);background:var(--surface-2);width:34px;height:34px;color:var(--ink-2);flex-shrink:0;place-items:center;display:grid}.list-end{align-items:center;gap:var(--s-2);color:var(--muted);margin-left:auto;font-weight:600;display:flex}.chip{justify-self:start;align-items:center;gap:var(--s-1);min-height:28px;padding:0 var(--s-3);border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--surface);color:var(--ink-2);font-size:var(--fs-xs);white-space:nowrap;font-weight:700;display:inline-flex}.chip>svg{width:14px;height:14px}.chip-accent{background:var(--accent-soft);color:var(--accent-text);border-color:#0000}.chip-ok{background:var(--ok-soft);color:var(--ok);border-color:#0000}.chip-ko{background:var(--ko-soft);color:var(--ko);border-color:#0000}.chip-warn{background:var(--warn-soft);color:var(--warn);border-color:#0000}.chip-exam{background:var(--exam-soft);color:var(--exam);border-color:#0000}.chip-solid{background:var(--accent);color:var(--accent-ink);border-color:#0000}button.chip{min-height:var(--tap);padding:0 var(--s-4);font-size:var(--fs-s);cursor:pointer}button.chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.badge{min-width:20px;height:20px;padding:0 var(--s-1);border-radius:var(--r-pill);background:var(--ko);color:var(--ko-on);font:800 .68rem / 1 var(--font);font-variant-numeric:tabular-nums;place-items:center;display:inline-grid}.badge-accent{background:var(--accent);color:var(--accent-ink)}.key{border:var(--border) solid var(--line-2);border-radius:var(--r-s);background:var(--surface-2);width:30px;height:30px;color:var(--muted);font:800 var(--fs-s) / 1 var(--font);text-transform:uppercase;flex-shrink:0;place-items:center;display:inline-grid}.seg{justify-self:start;gap:var(--s-1);padding:var(--s-1);border-radius:var(--r-pill);background:var(--surface-3);display:inline-flex}.seg>*{justify-content:center;align-items:center;gap:var(--s-2);min-height:var(--h-s);padding:0 var(--s-4);border-radius:var(--r-pill);color:var(--muted);font-size:var(--fs-s);cursor:pointer;transition:background var(--t-fast), color var(--t-fast);background:0 0;border:0;font-weight:800;text-decoration:none;display:inline-flex}.seg>[aria-pressed=true],.seg>[aria-selected=true],.seg>[aria-current],.seg>[data-state=on]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-s), 0 0 0 1px var(--line)}@media (hover:hover){.seg>:not([aria-pressed=true],[aria-selected=true],[aria-current],[data-state=on]):hover{color:var(--ink)}}.seg-block{justify-self:stretch;display:flex}.seg-block>*{flex:1}.tabs{gap:var(--s-5);border-bottom:1px solid var(--line);scrollbar-width:none;display:flex;overflow-x:auto}.tabs>*{align-items:center;gap:var(--s-2);min-height:var(--tap);color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0;font-weight:750;text-decoration:none;display:inline-flex;box-shadow:inset 0 -3px #0000}.tabs>[aria-selected=true],.tabs>[aria-current]{color:var(--ink);box-shadow:inset 0 -3px 0 var(--accent)}.field{gap:var(--s-2);display:grid}.field>label,.label{font-size:var(--fs-s);color:var(--ink-2);font-weight:700}.hint{font-size:var(--fs-xs);color:var(--muted)}.input,.select{width:100%;min-height:var(--h-m);padding:0 var(--s-4);border:var(--border) solid var(--line-2);border-radius:var(--r);background:var(--surface);color:var(--ink);transition:border-color var(--t-fast), box-shadow var(--t-fast)}.select{appearance:none;padding-right:var(--s-8);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%235f7189' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 8 5 5 5-5'/%3E%3C/svg%3E") no-repeat right var(--s-3) center}.input::placeholder{color:var(--muted)}.input:focus-visible,.select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);outline:0}.input[aria-invalid=true]{border-color:var(--ko);box-shadow:0 0 0 4px var(--ko-soft)}.check{align-items:flex-start;gap:var(--s-3);min-height:var(--tap);padding:var(--s-2) 0;color:var(--ink-2);cursor:pointer;font-weight:600;display:inline-flex}.check input{appearance:none;border:var(--border) solid var(--line-2);border-radius:var(--r-xs);background:var(--surface);cursor:pointer;width:22px;height:22px;transition:background var(--t-fast), border-color var(--t-fast);flex-shrink:0;place-items:center;margin:0;display:grid}.check input[type=radio]{border-radius:50%}.switch input{border-radius:var(--r-pill);background:var(--line-2);width:44px;height:26px;transition:background var(--t);border:0;position:relative}.check input:after{content:"";border:solid var(--accent-ink);width:10px;height:6px;transition:transform var(--t-fast) var(--ease-spring);border-width:0 0 2.5px 2.5px;transform:translateY(-1px)rotate(-45deg)scale(0)}.check input[type=radio]:after{background:var(--accent-ink);border:0;border-radius:50%;width:10px;height:10px;transform:scale(0)}.switch input:after{background:var(--surface);width:20px;height:20px;box-shadow:var(--shadow-s);transition:transform var(--t) var(--ease-spring);border:0;border-radius:50%;position:absolute;top:3px;left:3px;transform:none}.check input:checked{border-color:var(--accent);background:var(--accent)}.check input:checked:after{transform:translateY(-1px)rotate(-45deg)scale(1)}.check input[type=radio]:checked:after{transform:scale(1)}.switch input:checked:after{transform:translate(18px)}.field-select{justify-content:space-between;align-items:center;gap:var(--s-2);width:100%;min-height:var(--h-m);padding:0 var(--s-3) 0 var(--s-4);border:var(--border) solid var(--line-2);border-radius:var(--r);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;display:flex}.field-select>svg{color:var(--muted);transition:transform var(--t) var(--ease)}.field-select[data-state=open]{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.field-select[data-state=open]>svg{transform:rotate(180deg)}.menu{z-index:50;min-width:max(var(--bits-select-anchor-width,0px), 200px);max-height:min(60vh,360px);padding:var(--s-1);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow-l);transform-origin:var(--bits-dropdown-menu-content-transform-origin,var(--bits-select-content-transform-origin,top));animation:ui-menu var(--t) var(--ease);overflow-y:auto}.menu-item{align-items:center;gap:var(--s-3);min-height:var(--tap);padding:0 var(--s-3);border-radius:var(--r-s);color:var(--ink);cursor:pointer;user-select:none;outline:0;font-weight:600;text-decoration:none;display:flex}.menu-item>svg:last-child:not(:first-child){color:var(--accent-text);margin-left:auto}.menu-item[data-highlighted]{background:var(--surface-2)}.menu-item:focus-visible{outline:3px solid var(--ring);outline-offset:-3px;background:var(--surface-2)}@media (hover:hover){.menu-item:hover{background:var(--surface-2)}}.menu-item[aria-current],.menu-item[data-selected]{color:var(--accent-text)}.menu-item.is-danger{color:var(--ko)}.menu-item[data-disabled]{opacity:.45;cursor:default}.overlay{z-index:60;background:var(--scrim);backdrop-filter:blur(4px);animation:ui-fade var(--t) var(--ease);position:fixed;inset:0}.dialog{z-index:61;gap:var(--s-4);max-height:88dvh;padding:var(--s-5) var(--s-5) calc(var(--s-6) + env(safe-area-inset-bottom));border-radius:var(--r-xl) var(--r-xl) 0 0;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-l);animation:ui-sheet var(--t-slow) var(--ease);display:grid;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}@media (width>=640px){.dialog{width:min(100% - 2 * var(--s-6), 520px);padding:var(--s-6);border-radius:var(--r-xl);animation:ui-pop-in var(--t) var(--ease);inset:50% auto auto 50%;transform:translate(-50%,-50%)}}.dialog-head{justify-content:space-between;align-items:flex-start;gap:var(--s-3);display:flex}.dialog-title{font:750 var(--fs-xl) / 1.2 var(--font);margin:0}.dialog-actions{justify-content:flex-end;gap:var(--s-2);flex-wrap:wrap;display:flex}@media (width<=639px){.dialog-actions>*{flex:1}}.opts{gap:var(--s-2);display:grid}.opts-2{grid-template-columns:repeat(2,minmax(0,1fr))}.opt{align-items:center;gap:var(--s-3);width:100%;min-height:56px;padding:var(--s-3) var(--s-4);margin-bottom:calc(var(--edge));border:var(--border) solid var(--line-2);border-radius:var(--r);background:var(--surface);color:var(--ink);box-shadow:0 var(--edge) 0 var(--line-2);text-align:left;cursor:pointer;transition:transform var(--t-fast) var(--ease), box-shadow var(--t-fast), border-color var(--t-fast), background var(--t-fast);font-weight:650;line-height:1.35;display:flex}.opt .help{margin-top:var(--s-1);display:block}@media (hover:hover){.opt:hover:not(:disabled){border-color:var(--accent-2)}.opt:hover:not(:disabled) .key{border-color:var(--accent-2);color:var(--accent-2)}}.opt[aria-pressed=true],.opt.is-sel{border-color:var(--accent-2);background:var(--accent-2-soft);box-shadow:0 var(--edge) 0 var(--accent-2)}.opt[aria-pressed=true] .key,.opt.is-sel .key{border-color:var(--accent-2);background:var(--accent-2);color:var(--accent-2-on)}.opt.is-ok{border-color:var(--ok);background:var(--ok-soft);box-shadow:0 var(--edge) 0 var(--ok-edge);animation:ui-pop var(--t-slow) var(--ease-spring)}.opt.is-ok .key{border-color:var(--ok);background:var(--ok);color:var(--ok-on)}.opt.is-ko{border-color:var(--ko);background:var(--ko-soft);box-shadow:0 var(--edge) 0 var(--ko-edge);animation:ui-shake var(--t-slow) var(--ease)}.opt.is-ko .key{border-color:var(--ko);background:var(--ko);color:var(--ko-on)}.opt:disabled{cursor:default}.opt:disabled:not(.is-ok,.is-ko,.is-sel){opacity:.6}.opt:active:not(:disabled){transform:translateY(var(--edge));box-shadow:0 0 0 var(--line-2)}.settled{align-items:center;gap:var(--s-1);min-height:var(--tap);padding:0 var(--s-4);border:var(--border) dashed var(--line-2);border-radius:var(--r-pill);color:var(--muted);font-size:var(--fs-s);cursor:default;user-select:none;font-weight:800;display:inline-flex}.table{border-collapse:collapse;width:100%;font-size:var(--fs-s)}.table td,.table th{padding:var(--s-2) var(--s-1);border-top:1px solid var(--line);text-align:left}.table td:last-child,.table th:last-child{text-align:right}.alert{gap:var(--s-1);padding:var(--s-4);border-radius:var(--r);background:var(--surface-2);color:var(--ink);border:1px solid #0000;border-left-width:4px;display:grid}.alert>strong{font-weight:800}.alert-ok{border-color:var(--ok);background:var(--ok-soft)}.alert-ok>strong{color:var(--ok)}.alert-ko{border-color:var(--ko);background:var(--ko-soft)}.alert-ko>strong{color:var(--ko)}.alert-warn{border-color:var(--warn);background:var(--warn-soft)}.alert-warn>strong{color:var(--warn)}.alert-info{border-color:var(--accent-2);background:var(--accent-2-soft)}.alert-info>strong{color:var(--accent-2)}.alert-exam{border-color:var(--exam);background:var(--exam-soft)}.alert-exam>strong{color:var(--exam)}.progress{border-radius:var(--r-pill);background:var(--surface-3);height:10px;overflow:hidden}.progress>i{width:calc(var(--p,0) * 1%);border-radius:inherit;background:var(--ok);height:100%;transition:width var(--t-slow) var(--ease);display:block}.progress-exam>i{background:var(--exam)}.progress-s{height:6px}.ring{--sz:56px;--c:var(--ok);width:var(--sz);height:var(--sz);background:conic-gradient(var(--c) calc(var(--p,0) * 1%), var(--surface-3) 0);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.ring>b{width:calc(var(--sz) - 10px);height:calc(var(--sz) - 10px);background:var(--surface);font:800 calc(var(--sz) * .24) / 1 var(--font);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;display:grid}.ring-l{--sz:96px}.ring-warn{--c:var(--warn)}.stat{gap:var(--s-1);display:grid}.stat>b{font:900 clamp(1.75rem, 5vw, 2.5rem) / 1 var(--font);letter-spacing:-.025em;font-variant-numeric:tabular-nums}.stat>span{font-size:var(--fs-s);color:var(--muted);font-weight:600}.disclosure{border-bottom:1px solid var(--line)}.disclosure>summary{justify-content:space-between;align-items:center;gap:var(--s-4);min-height:var(--h-l);padding:var(--s-3) 0;cursor:pointer;font-weight:750;list-style:none;display:flex}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:after{content:"";width:10px;height:10px;margin-right:var(--s-2);border:solid var(--muted);transition:transform var(--t) var(--ease);border-width:0 2px 2px 0;flex-shrink:0;transform:rotate(45deg)}.disclosure[open]>summary:after{transform:rotate(-135deg)}.disclosure>:not(summary){padding-bottom:var(--s-4);color:var(--ink-2)}.row{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.chips{gap:var(--s-2);flex-wrap:wrap;display:flex}.stack{gap:var(--s-3);display:grid}.container{width:min(100% - 2 * var(--s-4), var(--wide-w));margin-inline:auto}@keyframes ui-pop{40%{transform:scale(1.02)}}@keyframes ui-fade{0%{opacity:0}}@keyframes ui-menu{0%{opacity:0;transform:scale(.96)}}@keyframes ui-sheet{0%{transform:translateY(100%)}}@keyframes ui-pop-in{0%{opacity:0;transform:translate(-50%,-48%)scale(.97)}}@keyframes ui-shake{20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.ic.svelte-18q0zwr{width:var(--sz);height:var(--sz);flex-shrink:0;display:block}
