@charset "UTF-8";:root{--hus-tan-50: #F1EADB;--hus-tan-100: #E6DAC0;--hus-tan-200: #D8C6A2;--hus-tan-300: #C9B39F;--hus-tan-400: #BFA38A;--hus-tan-500: #A78B6C;--hus-yellow-base: #F4C430;--hus-yellow-pop: #FFCC00;--hus-yellow-deep: #C99A18;--hus-red: #FF4C4C;--hus-red-deep: #D43838;--hus-orange: #FF6B00;--hus-orange-deep:#CC5400;--hus-ink-1000: #0F0F0F;--hus-ink-900: #1C1C1C;--hus-ink-800: #262626;--hus-ink-700: #3A3A3A;--hus-ink-500: #6E6E6E;--hus-ink-400: #9A9A9A;--hus-ink-300: #C2C2C2;--hus-ink-200: #DEDEDE;--hus-ink-100: #EDEDED;--hus-ink-50: #F7F7F7;--hus-paper: #FFFFFF;--hus-off-white: #F5F5F5;--hus-ok: #2E9E59;--hus-ok-soft: #DFF3E6;--hus-warn: #E0A100;--hus-warn-soft: #FBF1D2;--hus-danger: #D43838;--hus-danger-soft:#FBE0E0;--hus-info: #2E6CCB;--hus-info-soft: #DCE7FA;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--fs-display: 32px;--fs-hero: clamp(34px, 4.2vw, 52px);--fs-h1: 24px;--fs-h2: 18px;--fs-h3: 15px;--fs-body: 14px;--fs-meta: 13px;--fs-micro: 11.5px;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-strong: 700;--lh-tight: 1.18;--lh-snug: 1.32;--lh-cozy: 1.48;--lh-roomy: 1.6;--ls-caps: .09em;--ls-display: -.015em;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-10: 40px;--s-12: 48px;--s-16: 64px;--r-xs: 4px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--r-2xl: 24px;--r-3xl: 28px;--r-pill: 999px;--sh-1: 0 1px 2px rgba(15, 15, 15, .04), 0 1px 1px rgba(15, 15, 15, .04);--sh-2: 0 4px 12px rgba(15, 15, 15, .06), 0 2px 4px rgba(15, 15, 15, .04);--sh-3: 0 12px 32px rgba(15, 15, 15, .1), 0 4px 8px rgba(15, 15, 15, .06);--sh-4: 0 24px 48px rgba(15, 15, 15, .18), 0 6px 12px rgba(15, 15, 15, .1);--sh-soft-1: var(--sh-card);--sh-soft-2: var(--sh-card);--sh-hover: var(--sh-card-hover);--sh-card: 0 1px 2px rgba(15, 15, 15, .05), 0 10px 28px rgba(15, 15, 15, .07);--sh-card-hover: 0 2px 6px rgba(15, 15, 15, .06), 0 18px 44px rgba(15, 15, 15, .11);--glow-accent: 0 0 0 3px color-mix(in oklab, var(--accent) 24%, transparent);--sh-layer-1: 0 2px 5px rgba(15, 15, 15, .1);--sh-layer-2: 0 6px 18px rgba(15, 15, 15, .14);--sh-recess: inset 0 1px 3px rgba(15, 15, 15, .08);--content-max-cockpit: 1240px;--content-max-readable: 880px;--t-fast: 90ms ease;--t-base: .16s cubic-bezier(.2, 0, .2, 1);--t-slow: .26s cubic-bezier(.16, .84, .44, 1);--t-reveal: .42s cubic-bezier(.16, .84, .44, 1);--z-base: 1;--z-sticky: 50;--z-drawer: 200;--z-toast: 300}[data-theme=husaria]{--bg-app: var(--hus-tan-50);--bg-canvas: var(--hus-tan-100);--surface-1: #FBF7EE;--surface-2: #F5EDD9;--surface-3: var(--hus-tan-200);--surface-elev: var(--hus-paper);--surface-inv: var(--hus-ink-900);--chrome-1: var(--hus-ink-1000);--chrome-2: var(--hus-ink-900);--chrome-on: var(--hus-off-white);--text-strong: var(--hus-ink-900);--text-body: var(--hus-ink-800);--text-muted: var(--hus-ink-500);--text-faint: var(--hus-ink-400);--text-on-chrome: var(--hus-off-white);--text-on-accent: var(--hus-ink-900);--border-soft: rgba(28, 28, 28, .08);--border-medium: rgba(28, 28, 28, .14);--border-strong: rgba(28, 28, 28, .28);--border-on-chrome: rgba(245, 245, 245, .1);--accent: var(--hus-yellow-base);--accent-strong: var(--hus-yellow-deep);--accent-soft: #FBE99B;--accent-2: var(--hus-red);--accent-2-soft: #FBE0E0;--accent-3: var(--hus-orange);--accent-grad: linear-gradient(90deg, var(--hus-red) 0%, var(--hus-orange) 100%);--accent-stripe: linear-gradient(180deg, var(--hus-yellow-base) 0 50%, var(--hus-red) 50% 100%);--status-ok: var(--hus-ok);--status-ok-soft: var(--hus-ok-soft);--status-warn: var(--hus-warn);--status-warn-soft: var(--hus-warn-soft);--status-danger: var(--hus-danger);--status-danger-soft: var(--hus-danger-soft);--status-info: var(--hus-info);--status-info-soft: var(--hus-info-soft);--warn: var(--status-warn);--warn-strong: var(--hus-warn);--warn-soft: var(--status-warn-soft);--nav-idle: var(--hus-ink-300);--nav-hover: var(--hus-off-white);--nav-active: var(--hus-off-white);--nav-hover-bg: rgba(245, 245, 245, .04);--nav-active-bg: rgba(245, 245, 245, .06);--nav-dot: var(--hus-ink-700);--nav-label: var(--hus-ink-400);--brand-mark-bg: var(--hus-ink-800)}[data-theme=light]{--bg-app: #E9EBEE;--bg-canvas: #F2F3F5;--surface-1: var(--hus-paper);--surface-2: #F7F8F9;--surface-3: var(--hus-ink-100);--surface-elev: var(--hus-paper);--surface-inv: var(--hus-ink-900);--chrome-1: #F7F8F9;--chrome-2: #EFF1F3;--chrome-on: var(--hus-ink-900);--text-strong: var(--hus-ink-900);--text-body: var(--hus-ink-800);--text-muted: var(--hus-ink-500);--text-faint: var(--hus-ink-400);--text-on-chrome: var(--hus-ink-900);--text-on-accent: var(--hus-ink-900);--border-soft: rgba(15, 15, 15, .1);--border-medium: rgba(15, 15, 15, .16);--border-strong: rgba(15, 15, 15, .28);--border-on-chrome: rgba(15, 15, 15, .12);--accent: var(--hus-yellow-deep);--accent-strong: #9E7910;--accent-soft: #FBE99B;--accent-2: var(--hus-red-deep);--accent-2-soft: var(--hus-danger-soft);--accent-3: var(--hus-orange);--accent-grad: linear-gradient(90deg, var(--hus-red-deep) 0%, var(--hus-orange-deep) 100%);--accent-stripe: linear-gradient(180deg, var(--hus-yellow-deep) 0 50%, var(--hus-red-deep) 50% 100%);--status-ok: var(--hus-ok);--status-ok-soft: var(--hus-ok-soft);--status-warn: var(--hus-warn);--status-warn-soft: var(--hus-warn-soft);--status-danger: var(--hus-danger);--status-danger-soft: var(--hus-danger-soft);--status-info: var(--hus-info);--status-info-soft: var(--hus-info-soft);--warn: var(--status-warn);--warn-strong: var(--hus-warn);--warn-soft: var(--status-warn-soft);--nav-idle: var(--hus-ink-700);--nav-hover: var(--hus-ink-900);--nav-active: var(--hus-ink-900);--nav-hover-bg: rgba(15, 15, 15, .05);--nav-active-bg: rgba(15, 15, 15, .07);--nav-dot: var(--hus-ink-400);--nav-label: var(--hus-ink-500);--brand-mark-bg: var(--hus-ink-900)}[data-theme=dark]{--bg-app: var(--hus-ink-1000);--bg-canvas: var(--hus-ink-900);--surface-1: #1F1F1F;--surface-2: #262626;--surface-3: #2E2E2E;--surface-elev: #2A2A2A;--surface-inv: var(--hus-paper);--chrome-1: #131313;--chrome-2: #1A1A1A;--chrome-on: var(--hus-off-white);--text-strong: var(--hus-off-white);--text-body: #DEDEDE;--text-muted: #A4A4A4;--text-faint: #7B7B7B;--text-on-chrome: var(--hus-off-white);--text-on-accent: var(--hus-ink-900);--border-soft: rgba(245, 245, 245, .06);--border-medium: rgba(245, 245, 245, .1);--border-strong: rgba(245, 245, 245, .2);--border-on-chrome: rgba(245, 245, 245, .1);--accent: var(--hus-yellow-base);--accent-strong: var(--hus-yellow-pop);--accent-soft: rgba(244, 196, 48, .16);--accent-2: var(--hus-red);--accent-2-soft: rgba(255, 76, 76, .16);--accent-3: var(--hus-orange);--accent-grad: linear-gradient(90deg, var(--hus-red) 0%, var(--hus-orange) 100%);--accent-stripe: linear-gradient(180deg, var(--hus-yellow-base) 0 50%, var(--hus-red) 50% 100%);--status-ok: #4CC97D;--status-ok-soft: rgba(46, 158, 89, .18);--status-warn: #F3B73A;--status-warn-soft: rgba(224, 161, 0, .18);--status-danger: #F26060;--status-danger-soft: rgba(212, 56, 56, .18);--nav-idle: var(--hus-ink-300);--nav-hover: var(--hus-off-white);--nav-active: var(--hus-off-white);--nav-hover-bg: rgba(245, 245, 245, .04);--nav-active-bg: rgba(245, 245, 245, .06);--nav-dot: var(--hus-ink-700);--nav-label: var(--hus-ink-400);--brand-mark-bg: var(--hus-ink-800);--status-info: #6FA0E8;--status-info-soft: rgba(46, 108, 203, .18);--warn: var(--status-warn);--warn-strong: #F3B73A;--warn-soft: var(--status-warn-soft);--sh-card: inset 0 1px 0 rgba(255, 255, 255, .05), 0 1px 2px rgba(0, 0, 0, .45), 0 14px 36px rgba(0, 0, 0, .4);--sh-card-hover: inset 0 1px 0 rgba(255, 255, 255, .07), 0 2px 6px rgba(0, 0, 0, .5), 0 22px 56px rgba(0, 0, 0, .5);--sh-layer-1: 0 3px 8px rgba(0, 0, 0, .5);--sh-layer-2: 0 8px 24px rgba(0, 0, 0, .55);--sh-recess: inset 0 1px 3px rgba(0, 0, 0, .5)}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/InterVariable.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/FrauncesVariable.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/JetBrainsMonoVariable.woff2) format("woff2")}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-cozy);color:var(--text-body);background:var(--bg-app);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--fw-semibold);color:var(--text-strong);letter-spacing:-.01em;line-height:var(--lh-tight)}h1{font-family:var(--font-display);font-weight:var(--fw-semibold);letter-spacing:var(--ls-display)}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}a{color:var(--accent-strong);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--accent-soft);color:var(--text-strong)}code,pre,.mono{font-family:var(--font-mono)}.tnum{font-feature-settings:"tnum" 1}:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}@media(prefers-reduced-motion:reduce){:root{--t-fast: 0ms ease;--t-base: 0ms linear;--t-slow: 0ms linear;--t-reveal: 0ms linear}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);padding:8px 14px;border-radius:var(--r-md);font-size:var(--fs-body);font-weight:var(--fw-medium);background:var(--surface-1);color:var(--text-strong);border:1px solid var(--border-medium);transition:background var(--t-fast),border-color var(--t-fast),transform var(--t-fast);-webkit-user-select:none;user-select:none}.btn:hover{background:var(--surface-2)}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.btn-primary{background:linear-gradient(180deg,color-mix(in oklab,var(--accent) 84%,white) 0%,var(--accent) 100%);color:var(--text-on-accent);border-color:transparent;font-weight:var(--fw-semibold);box-shadow:0 1px 2px #0000002e,0 4px 14px color-mix(in oklab,var(--accent) 28%,transparent);transition:box-shadow var(--t-fast),transform var(--t-fast),filter var(--t-fast)}.btn.btn-primary:hover{filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 2px 4px #0003,0 8px 22px color-mix(in oklab,var(--accent) 38%,transparent)}.btn.btn-primary:active{transform:translateY(0);filter:none}.btn.btn-danger{background:var(--status-danger);color:#fff;border-color:transparent}.btn.btn-danger:hover{background:var(--hus-red-deep)}.btn.btn-ghost{background:transparent;border-color:transparent}.btn.btn-ghost:hover{background:var(--surface-2)}.btn.btn-sm{padding:5px 10px;font-size:var(--fs-meta);border-radius:var(--r-sm)}@media(prefers-reduced-motion:reduce){.btn.btn-primary:hover{transform:none}}.chip{display:inline-flex;align-items:center;gap:var(--s-1);padding:3px var(--s-2);border-radius:var(--r-pill);font-size:var(--fs-micro);font-weight:var(--fw-medium);line-height:1;white-space:nowrap;background:var(--surface-2);color:var(--text-body);border:1px solid var(--border-soft)}.chip.ok{background:var(--status-ok-soft);color:var(--status-ok)}.chip.warn{background:var(--status-warn-soft);color:var(--status-warn)}.chip.danger{background:var(--status-danger-soft);color:var(--status-danger)}.chip.info{background:var(--status-info-soft);color:var(--status-info)}.chip.muted{background:var(--surface-3);color:var(--text-muted)}.chip.accent{background:var(--accent-soft);color:var(--accent-strong)}.chip.learning{background:var(--accent-2-soft);color:var(--accent-2)}.input,.select,.textarea{display:block;width:100%;padding:8px 12px;border-radius:var(--r-md);background:var(--surface-1);color:var(--text-strong);border:1px solid var(--border-medium);font:inherit;transition:border-color var(--t-fast),box-shadow var(--t-fast)}.input::placeholder,.select::placeholder,.textarea::placeholder{color:var(--text-faint)}.input:hover,.select:hover,.textarea:hover{border-color:var(--border-strong)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm);outline-offset:0;border-color:var(--accent)}.textarea{min-height:120px;resize:vertical;font-family:var(--font-mono);font-size:var(--fs-meta)}.card{background:var(--surface-1);border:1px solid var(--border-soft);border-radius:var(--r-lg);box-shadow:var(--sh-card);padding:var(--s-5)}.card-tight{background:var(--surface-1);border:1px solid var(--border-soft);border-radius:var(--r-lg);box-shadow:none;padding:var(--s-4)}.section-title{font-size:var(--fs-meta);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--text-strong);display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);margin:0 0 var(--s-4);padding-bottom:var(--s-2);border-bottom:1px solid var(--border-soft)}.section-title .btn,.section-title a,.section-title button{text-transform:none;letter-spacing:normal}.t-table{width:100%;border-collapse:collapse;font-size:var(--fs-meta)}.t-table th,.t-table td{padding:12px var(--s-4);text-align:left;border-bottom:1px solid var(--border-soft);vertical-align:middle}.t-table th{color:var(--text-muted);font-weight:var(--fw-medium);font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:.04em;background:var(--surface-2);position:sticky;top:0}.t-table tr:hover td{background:var(--surface-2);cursor:pointer}.t-table td.mono{font-family:var(--font-mono);font-size:12.5px;color:var(--text-muted)}.json{font-family:var(--font-mono);font-size:12.5px;line-height:var(--lh-snug);padding:var(--s-4);background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--r-md);white-space:pre-wrap;word-break:break-word;color:var(--text-strong);max-height:480px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.json::-webkit-scrollbar{width:8px;height:8px}.json::-webkit-scrollbar-thumb{background-color:var(--border-strong);border-radius:var(--r-pill)}.json::-webkit-scrollbar-track{background:transparent}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--s-12) var(--s-6);color:var(--text-muted);gap:var(--s-2);border:1px dashed var(--border-medium);border-radius:var(--r-lg);background:var(--surface-2)}.empty h3{color:var(--text-strong);margin:0}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s-4);padding:var(--s-4) 0 var(--s-5)}.page-header .ph-titles h1{font-size:var(--fs-display);letter-spacing:var(--ls-display);margin:0 0 4px}.page-header .ph-titles .ph-sub{color:var(--text-muted);font-size:var(--fs-meta)}.brand-mark{width:28px;height:28px;border-radius:6px;background:var(--brand-mark-bg);position:relative;overflow:hidden;flex-shrink:0}.brand-mark .stripe{position:absolute;left:4px;right:4px;height:3px;border-radius:1px}.brand-mark .stripe-y{top:9px;background:var(--hus-yellow-base)}.brand-mark .stripe-r{top:16px;background:var(--hus-red)}.brand-mark.brand-mark-lg{width:40px;height:40px;border-radius:8px}.brand-mark.brand-mark-lg .stripe{left:6px;right:6px;height:4px;border-radius:2px}.brand-mark.brand-mark-lg .stripe-y{top:13px}.brand-mark.brand-mark-lg .stripe-r{top:23px}.rule-stripe{height:4px;border-radius:2px;background:linear-gradient(90deg,var(--hus-yellow-base) 0 30%,transparent 30% 32%,var(--hus-red) 32% 100%)}.person-name{font-family:var(--font-display);font-weight:var(--fw-medium);letter-spacing:var(--ls-display)}
