:root{--font-display:"Archivo",system-ui,sans-serif;--font-sans:"IBM Plex Sans",system-ui,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--radius-2xl:28px;--radius-pill:999px;--gradient-surface-light:linear-gradient(135deg,#eaf2ff 0%,#f5f7fa 55%,#fff1e6 100%);--gradient-surface-dark:radial-gradient(120% 140% at 0% 0%,#13284f 0%,#0a0f1c 60%);--gradient-brand:linear-gradient(135deg,#1660e8 0%,#18b4e8 100%);--gradient-brand-dark:linear-gradient(135deg,#5b9bff 0%,#3dd6f5 100%);--gradient-signal:linear-gradient(135deg,#ff6a13 0%,#ffb020 100%);--app-ground:linear-gradient(140deg,#13284f 0%,#0a0f1c 100%)}:root,[data-theme=light]{--buncss-light:initial;--buncss-dark: ;color-scheme:light;--bg:#f5f7fa;--surface:#fff;--surface-sunken:#e3e8f0;--border:#d5dce7;--border-control:#848ea0;--ink:#0b1220;--ink-muted:#4b5568;--primary:#1660e8;--on-primary:#fff;--primary-soft:#eaf2ff;--link:#1660e8;--brand-blue:#1660e8;--brand-cyan:#18b4e8;--signal:#ff6a13;--on-signal:#0b1220;--warning:#ffc21a;--on-warning:#0b1220;--warning-soft:#fff4e5;--ok:#0b7a3d;--on-ok:#fff;--danger:#d92d20;--on-danger:#fff;--focus-ring:#1660e8;--shadow-1:0 1px 2px #0b122014;--shadow-2:0 1px 2px #0b12200f,0 8px 24px #0b122014;--shadow-3:0 20px 40px #0b12202e;--shadow-primary:0 6px 16px #1660e847;--g-surface:var(--gradient-surface-light);--g-brand:var(--gradient-brand)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--buncss-light: ;--buncss-dark:initial;color-scheme:dark;--bg:#0a0f1c;--surface:#121a2b;--surface-sunken:#121a2b;--border:#22304a;--border-control:#647390;--ink:#eef2f8;--ink-muted:#9aa6bc;--primary:#1660e8;--on-primary:#fff;--primary-soft:#1a2b4a;--link:#5b9bff;--brand-blue:#5b9bff;--brand-cyan:#3dd6f5;--signal:#ff8a3d;--on-signal:#0a0f1c;--warning:#ffc21a;--on-warning:#0a0f1c;--warning-soft:#2a2414;--ok:#34c77b;--on-ok:#0a0f1c;--danger:#ff6b5e;--on-danger:#0a0f1c;--focus-ring:#5b9bff;--shadow-1:0 0 0 1px #ffffff0f;--shadow-2:0 0 0 1px #ffffff0f,0 12px 32px #00000059;--shadow-3:0 20px 50px #00000073;--shadow-primary:0 6px 20px #1660e873;--g-surface:var(--gradient-surface-dark),#0a0f1c;--g-brand:var(--gradient-brand-dark)}}[data-theme=dark]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark;--bg:#0a0f1c;--surface:#121a2b;--surface-sunken:#121a2b;--border:#22304a;--border-control:#647390;--ink:#eef2f8;--ink-muted:#9aa6bc;--primary:#1660e8;--on-primary:#fff;--primary-soft:#1a2b4a;--link:#5b9bff;--brand-blue:#5b9bff;--brand-cyan:#3dd6f5;--signal:#ff8a3d;--on-signal:#0a0f1c;--warning:#ffc21a;--on-warning:#0a0f1c;--warning-soft:#2a2414;--ok:#34c77b;--on-ok:#0a0f1c;--danger:#ff6b5e;--on-danger:#0a0f1c;--focus-ring:#5b9bff;--shadow-1:0 0 0 1px #ffffff0f;--shadow-2:0 0 0 1px #ffffff0f,0 12px 32px #00000059;--shadow-3:0 20px 50px #00000073;--shadow-primary:0 6px 20px #1660e873;--g-surface:var(--gradient-surface-dark),#0a0f1c;--g-brand:var(--gradient-brand-dark)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);margin:0}img,svg{display:block}a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.sr-only{position:absolute;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0}.t-display{font-family:var(--font-display);letter-spacing:-.035em;color:var(--ink);margin:0;font-size:clamp(38px,5.2vw,56px);font-weight:800;font-stretch:112%;line-height:1.02}.t-title1{font-family:var(--font-display);letter-spacing:-.025em;color:var(--ink);margin:0;font-size:clamp(30px,4vw,40px);font-weight:800;font-stretch:112%;line-height:1.08}.t-title2{font-family:var(--font-display);letter-spacing:-.015em;color:var(--ink);margin:0;font-size:28px;font-weight:700;font-stretch:112%;line-height:1.15}.t-title3{font:600 20px/1.3 var(--font-sans);color:var(--ink);margin:0}.t-body{font:400 16px/1.55 var(--font-sans);color:var(--ink);margin:0}.t-strong{font-weight:600}.t-muted{color:var(--ink-muted)}.t-small{font:400 13px/1.45 var(--font-sans);color:var(--ink-muted);margin:0}.t-eyebrow{font:500 11px/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.t-mono{font:400 14px/1.5 var(--font-mono);color:var(--ink)}.t-mono-sm{font:400 12px/1.5 var(--font-mono);color:var(--ink-muted)}.t-num{font:400 14px/1.5 var(--font-mono);color:var(--signal)}.t-stat{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);font-size:44px;font-weight:800;font-stretch:112%;line-height:1}.sse-text-brand{background:var(--g-brand);color:#0000;-webkit-background-clip:text;background-clip:text}a.lnk{color:var(--link);text-decoration:none;font-weight:600}a.lnk:hover{text-decoration:underline}.sse-mark{overflow:visible;flex:none;width:2.13043em;height:1em}.sse-mark g{fill:none;stroke-width:16;stroke-linecap:round;stroke-linejoin:round}.sse-mark .e{stroke:var(--signal)}.sse-mark .s0{stop-color:var(--brand-blue)}.sse-mark .s1{stop-color:var(--brand-cyan)}.sse-logo{display:inline-flex;color:var(--ink);text-decoration:none;align-items: center;gap:.41em;line-height:1}.sse-logo__divider{background:var(--border);border-radius:.05em;flex:none;width:.093em;height:1.185em}.sse-logo__text{display:inline-flex;flex-direction:column;gap:.15em}.sse-logo__name{font-family:var(--font-display);letter-spacing:-.025em;color:var(--ink);white-space:nowrap;font-size:.667em;font-weight:800;font-stretch:112%}.sse-logo__desc{font-family:var(--font-sans);color:var(--ink-muted);white-space:nowrap;font-size:.315em;font-weight:500}.sse-logo--line{gap:.5em}.sse-logo--line .sse-logo__name{font-size:1em}.sse-logo--line .sse-logo__desc{font-size:.62em}.sse-logo__bar{background:var(--signal);border-radius:.08em;flex:none;width:.16em;height:.9em}.endorse{display:inline-flex;align-items: center;gap:var(--space-2);flex-wrap:wrap;font-size:20px}.sse-btn{display:inline-flex;justify-content:center;align-items: center;gap:var(--space-2);border-radius:var(--radius-pill);font:600 15px/1 var(--font-sans);cursor:pointer;text-decoration:none;white-space:nowrap;border:0;min-height:44px;padding:0 20px;transition:transform .12s,box-shadow .12s,background-color .12s,filter .12s}.sse-btn:active{transform:translateY(1px)}.sse-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.sse-btn--primary{background:var(--primary);color:var(--on-primary);box-shadow:var(--shadow-primary)}.sse-btn--primary:hover{filter:brightness(1.08)}.sse-btn--secondary{background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1px var(--border-control)}.sse-btn--secondary:hover{background:var(--surface-sunken)}.sse-btn--ghost{color:var(--link);background:0 0;padding:0 14px}.sse-btn--ghost:hover{background:var(--primary-soft)}.sse-btn--sm{min-height:44px;padding:0 16px;font-size:14px}.sse-field{display:flex;flex-direction:column;gap:6px;min-width:0}.sse-field__label{font:600 13px/1.3 var(--font-sans);color:var(--ink)}.sse-field__input{border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font:400 15px/1.4 var(--font-sans);box-shadow:inset 0 0 0 1px var(--border-control);border:0;width:100%;min-height:44px;padding:0 14px}textarea.sse-field__input{resize:vertical;min-height:120px;padding:12px 14px}select.sse-field__input{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-muted)50%),linear-gradient(135deg,var(--ink-muted)50%,transparent 50%);background-position:calc(100% - 20px),calc(100% - 15px);background-repeat:no-repeat;background-size:5px 5px;padding-right:36px}.sse-field__input::placeholder{color:var(--ink-muted)}.sse-field__input:focus{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:inset 0 0 0 1px var(--focus-ring)}.sse-field__hint{font:400 12px/1.4 var(--font-sans);color:var(--ink-muted)}.hp{position:absolute;opacity:0;width:1px;height:1px;left:-9999px}.sse-badge{display:inline-flex;border-radius:var(--radius-pill);font:600 12px/1 var(--font-sans);white-space:nowrap;align-items: center;min-height:26px;padding:0 12px}.sse-badge--ok{background:var(--ok);color:var(--on-ok)}.sse-badge--danger{background:var(--danger);color:var(--on-danger)}.sse-badge--warning{background:var(--warning);color:var(--on-warning)}.sse-badge--draft,.sse-badge--neutral{background:var(--surface-sunken);color:var(--ink);box-shadow:inset 0 0 0 1px var(--border)}.sse-badge--info{background:var(--primary-soft);color:var(--link)}.sse-seg{display:inline-flex;border-radius:var(--radius-pill);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);gap:2px;padding:4px}.sse-seg__opt{display:inline-flex;border-radius:var(--radius-pill);color:var(--ink-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items: center;width:44px;height:40px;padding:0}.sse-seg__opt[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}[data-theme=dark] .sse-seg__opt[aria-pressed=true]{background:var(--border)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .sse-seg__opt[aria-pressed=true]{background:var(--border)}}.sse-card{display:flex;gap:var(--space-3);padding:var(--space-6);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-2);color:var(--ink);flex-direction:column;flex:1}.sse-card__head{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3)}.sse-card__title{font:600 17px/1.3 var(--font-sans)}.sse-card__meta{font:400 12px/1.5 var(--font-mono);color:var(--ink-muted)}.sse-progress{background:var(--surface-sunken);overflow:hidden;border-radius:3px;height:6px}[data-theme=dark] .sse-progress{background:var(--border)}.sse-progress>span{display:block;background:var(--g-brand);border-radius:3px;height:100%}.ico{border-radius:var(--radius-md);background:var(--primary-soft);color:var(--link);display:flex;flex:none;justify-content:center;align-items: center;width:48px;height:48px}.ico svg{width:24px;height:24px}.sse-alert{border-radius:var(--radius-lg);font:400 14px/1.45 var(--font-sans);color:var(--ink);margin:0;padding:12px 14px}.sse-alert__title{font-weight:600}.sse-alert--info{background:var(--primary-soft)}.sse-alert--info .sse-alert__title{color:var(--link)}.i{fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.tdt-mark{overflow:visible;flex:none;width:1em;height:1em}.tdt-mark .sheet{fill:none;stroke-width:9;stroke-linecap:round;stroke-linejoin:round}.tdt-mark .t{fill:none;stroke:var(--signal);stroke-width:8;stroke-linecap:round;stroke-linejoin:round}.tdt-mark .s0{stop-color:var(--brand-blue)}.tdt-mark .s1{stop-color:var(--brand-cyan)}.tdt-logo{display:inline-flex;color:var(--ink);text-decoration:none;align-items: center;gap:.3em;line-height:1}.tdt-logo .tdt-mark{width:1.3em;height:1.3em}.tdt-logo__name{font-family:var(--font-display);letter-spacing:-.025em;white-space:nowrap;font-weight:800;font-stretch:112%}.tdt-logo__name span{color:var(--ink-muted);font-weight:600}.tdt-endorse{display:inline-flex;align-items: center;gap:var(--space-2);font:400 13px/1.45 var(--font-sans);color:var(--ink-muted)}.tdt-endorse .sse-mark{font-size:20px}:root{--tde-bg:var(--surface);--tde-surface:var(--surface);--tde-ink:var(--ink);--tde-ink-muted:var(--ink-muted);--tde-border:var(--border);--tde-line:color-mix(in srgb,var(--primary-soft)60%,transparent);--tde-selection:color-mix(in srgb,var(--brand-blue)24%,transparent);--tde-match:color-mix(in srgb,var(--warning)32%,transparent);--tde-accent:var(--primary);--tde-on-accent:var(--on-primary);--tde-shadow:var(--shadow-2);--tde-font-mono:var(--font-mono);--tde-font-sans:var(--font-sans);--tde-font-size:13.5px;--tde-preview-bg:var(--surface-sunken);--tde-syn-comment:#6b7588;--tde-syn-keyword:#c2255c;--tde-syn-function:#1660e8;--tde-syn-string:#0b7a3d;--tde-syn-number:#b45309;--tde-syn-heading:#0b1220;--tde-syn-markup:#6d3fd1;--tde-syn-ref:#0e7490;--tde-syn-punct:#4b5568}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--tde-preview-bg:var(--bg);--tde-syn-comment:#7f8ba3;--tde-syn-keyword:#ff8fb1;--tde-syn-function:#7fb2ff;--tde-syn-string:#5fd699;--tde-syn-number:#ffb86b;--tde-syn-heading:#eef2f8;--tde-syn-markup:#b9a2ff;--tde-syn-ref:#5fd3ea;--tde-syn-punct:#9aa6bc}}[data-theme=dark]{--tde-preview-bg:var(--bg);--tde-syn-comment:#7f8ba3;--tde-syn-keyword:#ff8fb1;--tde-syn-function:#7fb2ff;--tde-syn-string:#5fd699;--tde-syn-number:#ffb86b;--tde-syn-heading:#eef2f8;--tde-syn-markup:#b9a2ff;--tde-syn-ref:#5fd3ea;--tde-syn-punct:#9aa6bc}:root{--tde-bg:#fff;--tde-surface:#fff;--tde-ink:#0b1220;--tde-ink-muted:#5b6577;--tde-border:#d5dce7;--tde-line:#f1f4f9;--tde-selection:#cfe0ff;--tde-match:#ffe9b8;--tde-accent:#1660e8;--tde-on-accent:#fff;--tde-shadow:0 8px 24px #0b12201f;--tde-font-mono:ui-monospace,"SF Mono",Menlo,monospace;--tde-font-sans:system-ui,sans-serif;--tde-font-size:14px;--tde-preview-bg:#e3e8f0;--tde-page-shadow:0 1px 2px #0b12201a,0 8px 24px #0b12201a;--tde-syn-comment:#6b7588;--tde-syn-keyword:#b3261e;--tde-syn-function:#1660e8;--tde-syn-string:#0b7a3d;--tde-syn-number:#b45309;--tde-syn-heading:#0b1220;--tde-syn-markup:#7c3aed;--tde-syn-ref:#0e7490;--tde-syn-punct:#5b6577}.typ-comment{color:var(--tde-syn-comment);font-style:italic}.typ-punctuation,.typ-math-delimiter,.typ-math-parens{color:var(--tde-syn-punct)}.typ-escape,.typ-math-operator,.typ-operator{color:var(--tde-syn-markup)}.typ-strong{font-weight:700}.typ-emph{font-style:italic}.typ-link{color:var(--tde-syn-function);text-decoration:underline}.typ-raw{color:var(--tde-syn-string)}.typ-label,.typ-ref{color:var(--tde-syn-ref)}.typ-heading{color:var(--tde-syn-heading);font-weight:700}.typ-list-marker,.typ-list-term{color:var(--tde-syn-markup);font-weight:600}.typ-keyword{color:var(--tde-syn-keyword)}.typ-number{color:var(--tde-syn-number)}.typ-string{color:var(--tde-syn-string)}.typ-function,.typ-interpolated{color:var(--tde-syn-function)}.typ-error{text-decoration:underline wavy #d92d20}.tde-tooltip{font:13px/1.45 var(--tde-font-sans);white-space:pre-wrap;max-width:420px;padding:6px 10px}.tde-tooltip--code{font-family:var(--tde-font-mono)}.tde-preview{position:relative;overflow:auto;box-sizing:border-box;display:flex;background:var(--tde-preview-bg);outline:none;flex-direction:column;align-items: center;gap:16px;height:100%;padding:24px}.tde-preview__page{position:relative;box-shadow:var(--tde-page-shadow);cursor:text;background:#fff;flex:none}.tde-preview__page img{display:block;user-select:none;width:100%;height:100%}.tde-preview__marker{position:absolute;background:var(--tde-accent);opacity:.55;pointer-events:none;animation:.9s ease-out forwards tde-marker;border-radius:50%;width:14px;height:14px;margin:-7px 0 0 -7px}@keyframes tde-marker{0%{transform:scale(.6);opacity:.7}to{transform:scale(2.6);opacity:0}}@media (prefers-reduced-motion:reduce){.tde-preview__marker{animation:none}}html,body,#root{height:100%}body{font:400 14px/1.5 var(--font-sans)}button,input,select{font-family:inherit}.app-splash{display:flex;justify-content:center;align-items: center;gap:var(--space-6);padding:var(--space-6);background:var(--g-surface);flex-direction:column;min-height:100dvh;font-size:28px}.app-splash .sse-alert{max-width:480px}.app-icon-btn{display:inline-flex;border-radius:var(--radius-sm);color:var(--ink-muted);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items: center;min-width:32px;height:32px;padding:0 6px}.app-icon-btn:hover{background:var(--primary-soft);color:var(--link)}.app-icon-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.app-alert--danger{background:color-mix(in srgb,var(--danger)12%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger)40%,transparent)}.app-user{display:inline-flex;border-radius:var(--radius-pill);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);font:500 13px/1 var(--font-sans);color:var(--ink);white-space:nowrap;align-items: center;gap:6px;min-height:36px;padding:0 12px}.app-theme .sse-seg__opt{width:34px;height:30px}.sse-btn--sm{min-height:36px;padding:0 14px;font-size:13px}.sse-btn .i{width:16px;height:16px}.app-modal{border-radius:var(--radius-lg);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-3);overflow:hidden;border:0;width:min(480px,100vw - 32px);max-height:calc(100dvh - 48px);padding:0}.app-modal[open]{display:flex;flex-direction:column}.app-modal--wide{width:min(960px,100vw - 32px)}.app-modal::backdrop{background:#0a0f1c8c}.app-modal__head{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);padding:var(--space-4)var(--space-4)var(--space-3)var(--space-6);border-bottom:1px solid var(--border)}.app-form{display:flex;gap:var(--space-4);padding:var(--space-6);overflow:auto;flex-direction:column}.app-form__actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.app-choices{display:flex;gap:var(--space-2);border:0;flex-direction:column;min-width:0;margin:0;padding:0}.app-choices legend{margin-bottom:6px;padding:0}.app-choice{display:flex;align-items: flex-start;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);box-shadow:inset 0 0 0 1px var(--border);cursor:pointer}.app-choice:has(input:checked){background:var(--primary-soft);box-shadow:inset 0 0 0 2px var(--primary)}.app-choice input{accent-color:var(--primary);margin-top:3px}.app-choice__body{display:flex;flex-direction:column;gap:2px;min-width:0}.app-home{display:flex;background:var(--g-surface);flex-direction:column;min-height:100dvh}.app-topbar{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3)var(--space-6);position:sticky;z-index:5;background:color-mix(in srgb,var(--surface)86%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);top:0}.app-topbar__brand{text-decoration:none;font-size:22px}.app-topbar__spacer{flex:1}.app-nav{display:flex;margin-left:var(--space-4);gap:2px}.app-nav__link{display:inline-flex;border-radius:var(--radius-pill);color:var(--ink-muted);font:600 14px/1 var(--font-sans);text-decoration:none;align-items: center;min-height:36px;padding:0 14px}.app-nav__link:hover{background:var(--surface-sunken);color:var(--ink)}.app-nav__link[aria-current=page]{background:var(--primary-soft);color:var(--link)}.app-home__main{padding:var(--space-8)var(--space-6)var(--space-12);display:flex;gap:var(--space-12);flex-direction:column;flex:1;width:100%;max-width:1080px;margin:0 auto}.app-section{display:flex;gap:var(--space-4);flex-direction:column}.app-section__head{display:flex;justify-content:space-between;align-items: flex-end;gap:var(--space-3);flex-wrap:wrap}.app-section__head .t-title2{font-size:24px}.app-empty{display:flex;align-items: center;gap:var(--space-2);padding:var(--space-8);border-radius:var(--radius-lg);outline:1px dashed var(--border-control);outline-offset:-1px;text-align:center;flex-direction:column}.app-list{list-style:none;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1),inset 0 0 0 1px var(--border);overflow:hidden;margin:0;padding:0}.app-row{display:flex;align-items: center;gap:var(--space-2);padding-right:var(--space-3)}.app-row+.app-row{border-top:1px solid var(--border)}.app-row__main{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3)var(--space-4);color:var(--ink);text-decoration:none;flex:1;min-width:0}.app-row__icon{border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--link);display:flex;flex:none;justify-content:center;align-items: center;width:36px;height:36px}.app-row__text{display:flex;flex-direction:column;min-width:0}.app-row__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600}.app-row__main:hover .app-row__title{color:var(--link)}.app-cards{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-4);margin:0;padding:0}.app-card{display:flex;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1),inset 0 0 0 1px var(--border);flex-direction:column;min-width:0}.app-card__head{display:flex;justify-content:space-between;align-items: flex-start;gap:var(--space-2)}.app-card__head .ico{width:40px;height:40px}.app-card__badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.app-card__title{margin:var(--space-1)0 0;font:600 16px/1.3 var(--font-sans)}.app-card__desc{flex:1}.app-card code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-card__actions{display:flex;align-items: center;gap:var(--space-2);margin-top:var(--space-2)}.app-foot{padding:var(--space-4)var(--space-6);text-align:center}.ws{display:flex;background:var(--bg);overflow:hidden;flex-direction:column;height:100dvh}.ws-bar{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-4);background:var(--surface);border-bottom:1px solid var(--border);flex:none}.ws-bar__home{display:inline-flex;border-radius:var(--radius-sm);padding:4px;font-size:22px}.ws-bar__home:hover{background:var(--primary-soft)}.ws-bar__title{display:flex;flex-direction:column;flex:1;min-width:0}.ws-bar__name{color:var(--ink);font:600 16px/1.3 var(--font-sans);text-overflow:ellipsis;background:0 0;border:0;border-radius:6px;width:100%;max-width:520px;margin-left:-6px;padding:2px 6px}.ws-bar__name:not([readonly]):hover{background:var(--surface-sunken)}.ws-bar__meta{display:flex;align-items: center;gap:var(--space-2);min-width:0}.ws-bar__meta .sse-badge{min-height:20px;padding:0 8px;font-size:11px}.ws-bar__meta .t-small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-bar__actions{display:flex;align-items: center;gap:var(--space-2);flex:none}.ws-notices{display:flex;gap:var(--space-2);padding:var(--space-2)var(--space-4);border-bottom:1px solid var(--border);background:var(--surface);flex-direction:column;flex:none}.ws-notices .sse-alert{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);border-radius:var(--radius-md);padding:6px 8px 6px 14px;font-size:13px}.ws-tabs{display:none}.ws-body{display:grid;grid-template-columns:232px minmax(0,var(--ws-left,1fr))7px minmax(0,var(--ws-right,1fr));flex:1;min-height:0}.ws-side{display:flex;background:var(--surface);border-right:1px solid var(--border);overflow:auto;flex-direction:column;min-height:0}.ws-panel{display:flex;padding:var(--space-2)var(--space-2)var(--space-3);flex-direction:column;flex:none}.ws-panel+.ws-panel{border-top:1px solid var(--border)}.ws-panel--grow{flex:1}.ws-panel__head{display:flex;padding:0 var(--space-2);justify-content:space-between;align-items: center;min-height:32px}.ws-panel__head h2{margin:0}.ws-panel__tools{display:inline-flex}.ws-panel__tools .app-icon-btn{min-width:28px;height:28px}.ws-panel__empty{padding:0 var(--space-2)}.ws-panel__empty code{font:400 12px/1.4 var(--font-mono);color:var(--ink);overflow-wrap:anywhere}.ws-outline{list-style:none;margin:0;padding:0}.ws-outline__item{border-radius:var(--radius-sm);color:var(--ink);font:400 13px/1.35 var(--font-sans);text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;width:100%;min-height:28px;padding:2px 8px}.ws-outline__item:hover{background:var(--surface-sunken);color:var(--link)}.ws-editor,.ws-preview{display:flex;background:var(--surface);flex-direction:column;min-width:0;min-height:0}.ws-pane-head{display:flex;align-items: center;gap:var(--space-2);padding:0 var(--space-3);border-bottom:1px solid var(--border);flex:none;min-height:36px}.ws-pane-head__spacer{flex:1}.ws-pane-head .sse-badge{min-height:20px;padding:0 8px;font-size:11px}.ws-pane-head .app-icon-btn{min-width:28px;height:28px}.ws-zoom{text-align:center;min-width:40px}.ws-editor__host{overflow:hidden;flex:1;min-height:0}.ws-editor__host[hidden]{display:none}.ws-binary{display:flex;justify-content:center;align-items: center;gap:var(--space-3);padding:var(--space-6);background:var(--surface-sunken);flex-direction:column;flex:1;min-height:0}.ws-binary img{object-fit:contain;box-shadow:var(--shadow-1);background:#fff;max-width:100%;max-height:70%}.ws-problems{display:flex;border-top:1px solid var(--border);flex-direction:column;flex:none;max-height:34%}.ws-problems__head{display:flex;align-items: center;gap:var(--space-2);padding:0 var(--space-3);color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;flex:none;min-height:34px}.ws-problems__head .sse-badge{min-height:20px;padding:0 8px;font-size:11px}.ws-problems__list{list-style:none;padding:0 var(--space-2)var(--space-2);overflow:auto;margin:0}.ws-problem{display:flex;align-items: flex-start;gap:var(--space-2);padding:6px var(--space-2);border-radius:var(--radius-sm);color:var(--ink);font:400 13px/1.4 var(--font-sans);text-align:left;cursor:pointer;background:0 0;border:0;width:100%}.ws-problem:hover{background:var(--surface-sunken)}.ws-problem__icon{flex:none;margin-top:1px}.ws-problem__icon--error{color:var(--danger)}.ws-problem__icon--warning{color:var(--signal)}.ws-problem__text{display:flex;flex-direction:column;flex:1;min-width:0}.ws-problem .t-mono-sm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:45%}.ws-split{background:var(--border);cursor:col-resize;touch-action:none;background-clip:content-box;padding:0 3px}.ws-split:hover{background-color:var(--primary)}.ws-preview{position:relative}.ws-preview__host{flex:1;min-height:0}.ws-preview__empty{position:absolute;inset:40% var(--space-6)auto;text-align:center;pointer-events:none}.ws-status{display:inline-flex;font:500 12px/1 var(--font-sans);color:var(--ink-muted);align-items: center;gap:6px}.ws-status__dot{background:var(--ok);border-radius:50%;width:8px;height:8px}.ws-status[data-status=compiling] .ws-status__dot{background:var(--brand-cyan);animation:.9s ease-in-out infinite alternate ws-pulse}.ws-status[data-status=error] .ws-status__dot{background:var(--danger)}@keyframes ws-pulse{0%{opacity:.35}to{opacity:1}}.ft{outline:2px dashed #0000;outline-offset:-4px;border-radius:var(--radius-md);min-height:96px}.ft[data-drop=true]{outline-color:var(--primary);background:var(--primary-soft)}.ft-list{list-style:none;margin:0;padding:0}.ft-row{display:flex;border-radius:var(--radius-sm);align-items: center}.ft-row:hover,.ft-row:focus-within{background:var(--surface-sunken)}.ft-row[aria-current=true]{background:var(--primary-soft)}.ft-row[data-drop=true]{background:var(--primary-soft);box-shadow:inset 0 0 0 2px var(--primary)}.ft-open{display:flex;padding:0 var(--space-2)0 6px;color:var(--ink);font:400 12.5px/1.3 var(--font-mono);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items: center;gap:5px;min-width:0;min-height:30px}.ft-row[aria-current=true] .ft-open{color:var(--link);font-weight:500}.ft-chevron{display:inline-flex;color:var(--ink-muted);flex:none;width:13px;transition:transform .12s}.ft-chevron[data-open=true]{transform:rotate(90deg)}.ft-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ft-main{border-radius:var(--radius-pill);background:var(--surface);box-shadow:inset 0 0 0 1px var(--border);color:var(--ink-muted);font:500 10px/1.4 var(--font-sans);flex:none;padding:1px 6px}.ft-tools{display:none;flex:none}.ft-row:hover .ft-tools,.ft-row:focus-within .ft-tools{display:inline-flex}.ft-tools .app-icon-btn{min-width:24px;height:26px;padding:0 3px}.ft-empty{font:400 12px/1.4 var(--font-sans);color:var(--ink-muted);margin:0;padding:2px 0 4px}.ws-sidetabs{display:inline-flex;border-radius:var(--radius-pill);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);border:0;gap:2px;margin:0;padding:2px}.ws-sidetabs__opt{border-radius:var(--radius-pill);color:var(--ink-muted);font:500 11px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;min-height:26px;padding:0 10px}.ws-sidetabs__opt[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.lb{display:flex;gap:var(--space-2);padding-top:var(--space-1);flex-direction:column}.lb-search{margin:0 var(--space-1);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:400 13px/1.3 var(--font-sans);box-shadow:inset 0 0 0 1px var(--border-control);border:0;min-height:32px;padding:0 10px}.lb-list{list-style:none;margin:0;padding:0}.lb-label{display:flex;padding:0 var(--space-2)0 6px;border-radius:var(--radius-sm);color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items: center;gap:5px;width:100%;min-height:30px}.lb-label:hover{background:var(--surface-sunken)}.lb-label__name{font:400 12.5px/1.3 var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.lb-label__count{border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--link);font:600 11px/1.4 var(--font-sans);text-align:center;flex:none;min-width:20px;padding:1px 6px}.lb-flag{border-radius:var(--radius-pill);box-shadow:inset 0 0 0 1px var(--border);color:var(--ink-muted);font:500 10px/1.4 var(--font-sans);flex:none;padding:1px 6px}.lb-flag--danger{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger)55%,transparent);color:var(--danger)}.lb-detail{display:flex;gap:var(--space-2);margin:2px 0 var(--space-2)14px;padding-left:var(--space-2);border-left:2px solid var(--border);flex-direction:column}.lb-entries{display:flex;flex-direction:column}.lb-entries__title{padding:0 var(--space-1);font:500 10px/1.6 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}.lb-entry{display:flex;padding:3px var(--space-1);border-radius:var(--radius-sm);color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column}.lb-entry:hover{background:var(--primary-soft)}.lb-entry__where{font:500 11.5px/1.4 var(--font-mono);color:var(--link);overflow-wrap:anywhere}.lb-entry__preview{font:400 11.5px/1.4 var(--font-mono);color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.set{display:flex;gap:var(--space-6);padding:var(--space-6);overflow:auto;flex-direction:column}.set-section{display:flex;gap:var(--space-3);flex-direction:column}.set-section+.set-section{padding-top:var(--space-6);border-top:1px solid var(--border)}.set-section__title{font:600 16px/1.3 var(--font-sans);margin:0 0 2px}.set-section code{font:400 12px/1.4 var(--font-mono);color:var(--ink)}.set-templates{list-style:none;display:flex;gap:var(--space-2);flex-direction:column;margin:0;padding:0}.set-template{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);box-shadow:inset 0 0 0 1px var(--border)}.set-template .ico{width:36px;height:36px}.set-template__text{display:flex;flex-direction:column;flex:1;min-width:0}.set-template__version select,.set-apply select,.set-grid select,.set-grid input,.set-ppi input{min-height:38px}.set-template__version select{width:190px}.set-apply{display:flex;align-items: flex-end;gap:var(--space-3);flex-wrap:wrap}.set-apply>.sse-field{flex:220px}.set-apply>.set-apply__version{flex:0 0 110px}.set-formats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-2);border:0;min-width:0;margin:0;padding:0}.set-formats legend{margin-bottom:6px;padding:0}.set-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-3)var(--space-4)}.set-grid__wide{grid-column:1/-1}.set-check{display:flex;align-items: flex-start;gap:var(--space-2);cursor:pointer}.set-check input{accent-color:var(--primary);margin-top:3px}.set-check>span{display:flex;flex-direction:column}.set-ppi{max-width:220px}.set-actions{display:flex;gap:var(--space-2)}.hist{display:grid;grid-template-columns:260px minmax(0,1fr);overflow:hidden;flex:1;min-height:0}.hist-list{list-style:none;padding:var(--space-3);display:flex;border-right:1px solid var(--border);overflow:auto;flex-direction:column;gap:4px;max-height:70dvh;margin:0}.hist-item{display:flex;padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;gap:2px;width:100%}.hist-item:hover{background:var(--surface-sunken)}.hist-item[aria-current=true]{background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary)}.hist-item__head{display:flex;justify-content:space-between;align-items: center;gap:var(--space-2)}.hist-item__head .sse-badge{min-height:20px;padding:0 8px;font-size:11px}.hist-item__msg{font:500 13px/1.35 var(--font-sans);overflow-wrap:anywhere}.hist-detail{display:flex;gap:var(--space-3);padding:var(--space-4);overflow:auto;flex-direction:column;min-width:0;max-height:70dvh}.hist-detail__bar{display:flex;justify-content:space-between;align-items: center;gap:var(--space-2);flex-wrap:wrap}.hist-mode{display:inline-flex;border-radius:var(--radius-pill);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);border:0;margin:0;padding:3px}.hist-mode__opt{border-radius:var(--radius-pill);color:var(--ink-muted);font:500 12px/1 var(--font-sans);cursor:pointer;background:0 0;border:0;min-height:30px;padding:0 12px}.hist-mode__opt[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.hist-file{border-radius:var(--radius-md);box-shadow:inset 0 0 0 1px var(--border);overflow:hidden;flex:none}.hist-file__head{display:flex;align-items: center;gap:var(--space-2);padding:6px var(--space-3);background:var(--surface-sunken);border-bottom:1px solid var(--border);flex-wrap:wrap}.hist-file__head .sse-badge{min-height:20px;padding:0 8px;font-size:11px}.hist-file__note{padding:var(--space-3)}.hist-add{color:var(--ok)}.hist-del{color:var(--danger)}.hist-lines{font:400 12.5px/1.55 var(--font-mono);overflow-x:auto}.hist-line{display:grid;grid-template-columns:40px 40px 18px minmax(0,1fr);min-width:max-content}.hist-line__no{text-align:right;color:var(--ink-muted);user-select:none;padding-right:6px}.hist-line__sign{text-align:center;user-select:none}.hist-line__text{white-space:pre;padding-right:var(--space-3)}.hist-line--add{background:color-mix(in srgb,var(--ok)14%,transparent)}.hist-line--remove{background:color-mix(in srgb,var(--danger)13%,transparent)}.hist-gap{padding:2px var(--space-3);background:var(--surface-sunken);color:var(--ink-muted);font:400 11px/1.6 var(--font-sans);text-align:center}@media (max-width:900px){.ws-hide-sm{display:none}.ws-bar{padding:var(--space-2);gap:var(--space-2)}.ws-bar__actions .sse-btn{padding:0 10px}.ws-tabs{display:flex;background:var(--surface-sunken);border-bottom:1px solid var(--border);flex:none;gap:2px;padding:4px}.ws-tabs__opt{border-radius:var(--radius-sm);color:var(--ink-muted);font:600 13px/1 var(--font-sans);cursor:pointer;background:0 0;border:0;flex:1;min-height:36px}.ws-tabs__opt[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.ws-body{grid-template-columns:minmax(0,1fr)}.ws-split{display:none}.ws-side{border-right:0}.ws[data-view=files] .ws-editor,.ws[data-view=files] .ws-preview,.ws[data-view=editor] .ws-side,.ws[data-view=editor] .ws-preview,.ws[data-view=preview] .ws-side,.ws[data-view=preview] .ws-editor{display:none}.app-topbar{padding:var(--space-2)var(--space-4);flex-wrap:wrap}.app-nav{order:3;width:100%;margin-left:0}.app-nav__link{flex:1;justify-content:center}.app-home__main{padding:var(--space-6)var(--space-4)var(--space-8);gap:var(--space-8)}.hist{grid-template-columns:minmax(0,1fr);overflow:auto}.hist-list{border-right:0;border-bottom:1px solid var(--border);max-height:30dvh}.hist-detail{overflow:visible;max-height:none}}
