@charset "UTF-8";@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url("./media/bricolage-grotesque-vietnamese-wght-normal-S2S5QD6B.woff2") format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url("./media/bricolage-grotesque-latin-ext-wght-normal-EMW626ZA.woff2") format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url("./media/bricolage-grotesque-latin-wght-normal-HY2A4V5R.woff2") format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-ext-wght-normal-IYF56FF6.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-wght-normal-JEOLYBOO.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-ext-wght-normal-EOVOK2B5.woff2") format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-wght-normal-IRE366VL.woff2") format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-vietnamese-wght-normal-CE5GGD3W.woff2") format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-ext-wght-normal-HA22NDSG.woff2") format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-wght-normal-NRMW37G5.woff2") format("woff2-variations");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{color-scheme:light dark;--font-display: "Bricolage Grotesque Variable", "Arial Black", system-ui, sans-serif;--font-body: "Inter Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--acid: oklch(91% .24 125);--acid-ink: oklch(18% .04 125);--hazard: oklch(86% .18 90);--blood: oklch(62% .24 25);--bg: light-dark(oklch(97% .012 125), oklch(14% .015 130));--bg-raise: light-dark(oklch(100% 0 0), oklch(18% .018 130));--bg-sunk: light-dark(oklch(94% .018 125), oklch(11.5% .012 130));--line: light-dark(oklch(88% .02 125), oklch(28% .03 130));--line-strong: light-dark(oklch(78% .04 125), oklch(38% .05 130));--ink: light-dark(oklch(20% .02 130), oklch(95% .02 125));--ink-soft: light-dark(oklch(40% .03 130), oklch(80% .03 125));--ink-mute: light-dark(oklch(50% .03 130), oklch(70% .03 125));--accent-text: light-dark(oklch(45% .15 135), var(--acid));--accent-fill: var(--acid);--on-accent: var(--acid-ink);--danger: light-dark(oklch(52% .22 25), oklch(72% .19 25));--warn: light-dark(oklch(52% .13 75), oklch(84% .15 90));--ok: light-dark(oklch(45% .15 150), oklch(80% .18 150));--shadow: light-dark(0 1px 2px oklch(20% .02 130 / .08), 0 1px 0 oklch(100% 0 0 / .03) inset);--glow: 0 0 0 1px oklch(91% .24 125 / .35), 0 8px 40px -8px oklch(91% .24 125 / .35);--r-sm: 8px;--r: 14px;--r-lg: 22px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 72px;--ease: cubic-bezier(.2, .7, .2, 1);--header-h: 64px;accent-color:var(--accent-text);scrollbar-color:var(--line-strong) transparent;scrollbar-width:thin}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}body{margin:0;background:var(--bg);color:var(--ink);font:400 1rem/1.6 var(--font-body);min-height:100dvh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.08;letter-spacing:-.02em;margin:0 0 var(--sp-3);font-weight:800;text-wrap:balance}h1{font-size:clamp(2.2rem,5vw + 1rem,4.6rem)}h2{font-size:clamp(1.6rem,2vw + 1rem,2.4rem)}h3{font-size:1.25rem}p{margin:0 0 var(--sp-3);text-wrap:pretty}a{color:var(--accent-text);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}img,svg{max-width:100%;display:block}::selection{background:var(--acid);color:var(--acid-ink)}:focus-visible{outline:3px solid var(--accent-text);outline-offset:3px;border-radius:4px}button,[role=button],a,label,select,summary{cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.muted{color:var(--ink-mute)}.soft{color:var(--ink-soft)}.mono{font-variant-numeric:tabular-nums}.center{text-align:center}.container{width:min(1180px,100% - 2rem);margin-inline:auto}.narrow{width:min(640px,100% - 2rem);margin-inline:auto}.page{padding-block:var(--sp-6) var(--sp-8);animation:rise .4s var(--ease) both}.stack>*+*{margin-top:var(--sp-4)}.row{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.grow{flex:1 1 0;min-width:0}.grid{display:grid;gap:var(--sp-4)}.grid.cols-3{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.grid.cols-4{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr))}.split{display:grid;gap:var(--sp-5);grid-template-columns:minmax(0,1fr)}@media(min-width:900px){.split{grid-template-columns:minmax(0,1fr) 340px;align-items:start}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}@keyframes pulse-ring{0%{box-shadow:0 0 oklch(91% .24 125deg / .5)}to{box-shadow:0 0 0 14px oklch(91% .24 125deg / 0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-reduced-motion:no-preference){::view-transition-old(root){animation:.16s var(--ease) both vt-out}::view-transition-new(root){animation:.26s var(--ease) both vt-in}}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0;transform:translateY(8px)}}.hazard-stripe{height:10px;background:repeating-linear-gradient(-45deg,var(--hazard) 0 14px,oklch(16% .02 130deg) 14px 28px);border-radius:99px;opacity:.9}.eyebrow{font:700 .75rem/1 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text);display:inline-flex;gap:8px;align-items:center}.btn{--_bg: var(--bg-raise);--_fg: var(--ink);--_bd: var(--line-strong);display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:12px;border:1px solid var(--_bd);background:var(--_bg);color:var(--_fg);font:650 .95rem/1 var(--font-body);text-decoration:none;white-space:nowrap;transition:transform .15s var(--ease),background .2s,border-color .2s,box-shadow .2s}.btn:hover{border-color:var(--accent-text);transform:translateY(-1px)}.btn:active{transform:translateY(0) scale(.98)}.btn[disabled],.btn[aria-disabled=true]{opacity:.5;pointer-events:none}.btn.primary{--_bg: var(--acid);--_fg: var(--acid-ink);--_bd: transparent}.btn.primary:hover{box-shadow:var(--glow)}.btn.danger{--_fg: var(--danger);--_bd: color-mix(in oklab, var(--danger) 45%, transparent)}.btn.danger:hover{border-color:var(--danger)}.btn.ghost{--_bg: transparent;--_bd: transparent}.btn.ghost:hover{--_bg: var(--bg-sunk)}.btn.sm{min-height:36px;padding:0 12px;font-size:.85rem;border-radius:10px}.btn.lg{min-height:54px;padding:0 28px;font-size:1.05rem;border-radius:14px}.icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--ink-soft)}.icon-btn:hover{background:var(--bg-sunk);color:var(--ink)}.card{background:var(--bg-raise);border:1px solid var(--line);border-radius:var(--r);padding:var(--sp-5);box-shadow:var(--shadow)}.card.flush{padding:0;overflow:hidden}.card.interactive{transition:transform .2s var(--ease),border-color .2s,box-shadow .2s}.card.interactive:hover{transform:translateY(-3px);border-color:var(--accent-text);box-shadow:var(--glow)}.card-title{font:700 .8rem/1 var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:var(--sp-3)}.field{display:grid;gap:6px}.field>label,.label{font-weight:600;font-size:.9rem;color:var(--ink-soft)}.hint{font-size:.82rem;color:var(--ink-mute)}.input,.select,.textarea{width:100%;min-height:46px;padding:10px 14px;border-radius:12px;border:1px solid var(--line-strong);background:var(--bg-sunk);color:var(--ink);font:inherit;transition:border-color .15s,box-shadow .15s}.textarea{min-height:140px;resize:vertical;line-height:1.55}.input::placeholder,.textarea::placeholder{color:var(--ink-mute);opacity:.8}.input:hover,.select:hover,.textarea:hover{border-color:var(--ink-mute)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent-text) 30%,transparent)}.input:user-invalid,.textarea:user-invalid{border-color:var(--danger)}.field-error{color:var(--danger);font-size:.85rem;font-weight:500}.form-error{padding:12px 14px;border-radius:12px;background:color-mix(in oklab,var(--danger) 12%,transparent);border:1px solid color-mix(in oklab,var(--danger) 40%,transparent);color:var(--danger);font-weight:500}.form-ok{padding:12px 14px;border-radius:12px;background:color-mix(in oklab,var(--ok) 12%,transparent);border:1px solid color-mix(in oklab,var(--ok) 40%,transparent);color:var(--ok);font-weight:500}.check{display:flex;gap:10px;align-items:flex-start;font-size:.95rem;cursor:pointer}.check input{width:20px;height:20px;margin-top:2px;flex:none}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;border:1px solid var(--line-strong);font-size:.78rem;font-weight:600;color:var(--ink-soft);background:transparent;white-space:nowrap;line-height:1.4}.chip.accent{border-color:color-mix(in oklab,var(--accent-text) 50%,transparent);color:var(--accent-text);background:color-mix(in oklab,var(--acid) 10%,transparent)}.chip.danger{border-color:color-mix(in oklab,var(--danger) 50%,transparent);color:var(--danger)}.chip.warn{border-color:color-mix(in oklab,var(--warn) 50%,transparent);color:var(--warn)}button.chip{cursor:pointer;min-height:32px}button.chip:hover{border-color:var(--accent-text);color:var(--ink)}button.chip[aria-pressed=true]{background:var(--acid);color:var(--acid-ink);border-color:transparent}.tabs{display:inline-flex;padding:4px;gap:4px;background:var(--bg-sunk);border:1px solid var(--line);border-radius:14px}.tabs button,.tabs a{min-height:40px;padding:0 16px;border-radius:10px;border:0;background:transparent;color:var(--ink-soft);font:650 .92rem var(--font-body);text-decoration:none;display:inline-flex;align-items:center;gap:6px}.tabs button[aria-selected=true],.tabs a.active{background:var(--bg-raise);color:var(--ink);box-shadow:var(--shadow),0 0 0 1px var(--line-strong)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--bg-raise)}table.table{width:100%;border-collapse:collapse;font-size:.92rem}.table th{text-align:left;font:700 .72rem/1 var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);padding:14px 16px;border-bottom:1px solid var(--line);background:var(--bg-sunk);white-space:nowrap}.table td{padding:12px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tbody tr:hover{background:color-mix(in oklab,var(--acid) 5%,transparent)}.table .actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.table td.wrap{white-space:normal;max-width:420px}.skeleton{background:linear-gradient(90deg,var(--bg-sunk) 25%,var(--line) 50%,var(--bg-sunk) 75%);background-size:200% 100%;animation:shimmer 1.4s linear infinite;border-radius:var(--r-sm);min-height:1em}@keyframes shimmer{to{background-position:-200% 0}}.empty{text-align:center;padding:var(--sp-7) var(--sp-4);border:2px dashed var(--line-strong);border-radius:var(--r-lg);color:var(--ink-soft)}.empty h3{color:var(--ink)}dialog{border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--bg-raise);color:var(--ink);padding:var(--sp-5);width:min(480px,100% - 2rem);box-shadow:0 30px 80px #00000080}dialog::backdrop{background:#010200b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}dialog[open]{animation:rise .25s var(--ease)}.prose{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}
