:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#07090c;--bg-grid:#0d1117;--surface:#0d1117;--surface-2:#11161d;--line:#1e2632;--line-strong:#2b3644;--text:#c9d3df;--text-dim:#6d7d8f;--text-faint:#47535f;--accent:#4be08f;--accent-dim:#1f6b45;--accent-glow:#4be08f2e;--cyan:#56b6ff;--amber:#e5b567;--error:#ff6b6b;--mono:ui-monospace, "SF Mono", "JetBrains Mono", "Fira Code", Menlo, Consolas, "Liberation Mono", "Noto Sans Mono CJK SC", monospace;font-family:var(--mono);font-synthesis:none;-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.6}*{box-sizing:border-box}body{min-height:100vh;color:var(--text);background-color:var(--bg);background-image:linear-gradient(#0000 95%,#ffffff06 95%),linear-gradient(90deg,#0000 95%,#ffffff06 95%);background-size:22px 22px;margin:0}::selection{background:var(--accent-dim);color:#eaf6ef}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shell{max-width:1180px;margin:0 auto;padding:34px 22px 74px}.topbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:14px;padding-bottom:14px;display:flex}.brand{letter-spacing:-.02em;align-items:baseline;margin:0;font-size:20px;font-weight:700;display:inline-flex}.brand-prompt{color:var(--accent)}.brand-name{color:var(--text)}.caret{background:var(--accent);width:9px;height:17px;margin-left:7px;animation:1.1s step-end infinite blink;display:inline-block;translate:0 2px}@keyframes blink{50%{opacity:0}}.tagline{color:var(--text-faint);flex:240px;margin:0;font-size:13px}.intro{max-width:68ch;color:var(--text-dim);margin:16px 0 26px;font-size:13px}.grid{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}@media (width>=940px){.grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.col:last-child{position:sticky;top:24px}}.col{flex-direction:column;gap:18px;min-width:0;display:flex}.lang-toggle{border:1px solid var(--line-strong);border-radius:2px;display:inline-flex;overflow:hidden}.lang-toggle button{letter-spacing:.04em;color:var(--text-faint);background:0 0;border:0;border-radius:0;padding:3px 12px;font-size:12px}.lang-toggle button+button{border-left:1px solid var(--line-strong)}.lang-toggle button:hover:not(.active){color:var(--text);background:var(--surface-2)}.lang-toggle button.active{background:var(--accent);color:#05130c;font-weight:700}.panel{background:var(--surface);border:1px solid var(--line);border-radius:2px;position:relative}.panel:before{content:"";border-top:1px solid var(--accent);border-left:1px solid var(--accent);pointer-events:none;width:12px;height:12px;position:absolute;inset:-1px auto auto -1px}.panel-head{border-bottom:1px solid var(--line);background:linear-gradient(var(--surface-2), var(--surface));align-items:center;gap:9px;padding:9px 14px;display:flex}.panel-index{color:var(--accent);font-size:12px}.panel-title{letter-spacing:.14em;text-transform:uppercase;color:var(--text);margin:0;font-size:12px;font-weight:600}.panel-meta{color:var(--text-faint);white-space:nowrap;margin-left:auto;font-size:11.5px}.panel-body{padding:14px}.upload-zone{border:1px dashed var(--line-strong);text-align:center;cursor:pointer;background:var(--bg);border-radius:2px;padding:26px 16px;transition:border-color .15s,background .15s,box-shadow .15s}.upload-zone:hover,.upload-zone.dragging{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 5%, var(--bg));box-shadow:inset 0 0 0 1px var(--accent-glow)}.upload-zone.filled{text-align:left;border-style:solid;padding:14px}.upload-idle{flex-direction:column;align-items:center;gap:7px;display:flex}.upload-glyph{color:var(--accent);letter-spacing:.08em;font-size:22px}.upload-cta{color:var(--text);font-size:13px}.upload-hint{color:var(--text-faint);letter-spacing:.06em;font-size:11.5px}.upload-file{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.upload-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.upload-size{color:var(--text-dim);font-size:12px}.upload-file .upload-hint{margin-left:auto}.tag{border:1px solid var(--line-strong);text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);border-radius:2px;padding:0 6px;font-size:11px}.tag.ok{border-color:var(--accent-dim);color:var(--accent)}.upload-zone.reading{border-style:solid;border-color:var(--cyan);text-align:left;cursor:progress;padding:14px}.upload-reading{flex-direction:column;gap:9px;display:flex}.upload-pct{color:var(--cyan);font-variant-numeric:tabular-nums;margin-left:auto}.read-bar{background:var(--surface-2);border-radius:2px;height:4px;overflow:hidden}.read-bar-fill{background:var(--cyan);height:100%;transition:width .12s linear;display:block}.tag.busy{border-color:color-mix(in srgb, var(--cyan) 45%, transparent);color:var(--cyan)}.stage-strip{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--surface);border-radius:2px;flex-wrap:wrap;align-items:center;gap:12px;padding:9px 12px;font-size:12px;display:flex}.stage-steps{flex-wrap:wrap;gap:14px;display:flex}.stage-step{color:var(--text-faint);align-items:center;gap:6px;display:inline-flex}.stage-step .stage-dot{border:1px solid;border-radius:50%;width:6px;height:6px}.stage-step.done{color:var(--accent-dim)}.stage-step.done .stage-dot{background:var(--accent-dim)}.stage-step.active{color:var(--accent)}.stage-step.active .stage-dot{background:var(--accent);box-shadow:0 0 6px var(--accent);animation:.9s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.25}}.stage-time{color:var(--text-dim);font-variant-numeric:tabular-nums;margin-left:auto}.text-panel textarea{width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line-strong);resize:vertical;border-radius:2px;padding:12px;line-height:1.7;display:block}.text-panel textarea::placeholder{color:var(--text-faint)}.text-panel textarea:focus{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-glow);outline:none}.text-panel-footer{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.hint-label{color:var(--text-faint);font-size:11.5px}.preset-chips{flex-wrap:wrap;gap:6px;display:flex}button{font:inherit;cursor:pointer;border:1px solid var(--line-strong);background:var(--surface-2);color:var(--text-dim);border-radius:2px;padding:4px 11px;font-size:12.5px;transition:color .12s,border-color .12s,background .12s}button:hover:not(:disabled){color:var(--accent);border-color:var(--accent-dim);background:color-mix(in srgb, var(--accent) 8%, var(--surface-2))}button:focus-visible{outline:1px solid var(--accent);outline-offset:1px}button:disabled{cursor:not-allowed;opacity:.55}button.primary:disabled{border-color:var(--line-strong);color:var(--text-faint);opacity:1;background:0 0;border-style:dashed}button.primary{background:var(--accent);border-color:var(--accent);color:#05130c;font-weight:700}button.primary:hover:not(:disabled){color:#05130c;background:#62eea0;border-color:#62eea0}.chip-clear{color:var(--text-faint)}.run-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}button.run{letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;padding:9px 24px;font-size:13.5px;display:inline-flex}.run-prompt{opacity:.6}.run-hint{color:var(--text-faint);font-size:12px}.run-hint.done{color:var(--accent-dim)}.spin{border:2px solid;border-right-color:#0000;border-radius:50%;width:10px;height:10px;animation:.7s linear infinite spin}@keyframes spin{to{rotate:360deg}}.error{border:1px solid color-mix(in srgb, var(--error) 45%, transparent);background:color-mix(in srgb, var(--error) 9%, transparent);color:var(--error);border-left-width:3px;border-radius:2px;gap:9px;margin:0;padding:9px 12px;font-size:12.5px;display:flex}.error-mark{font-weight:700}.metrics{flex-wrap:wrap;gap:22px;display:flex}.metric{flex-direction:column;display:flex}.metric-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);font-size:11px}.metric-value{font-variant-numeric:tabular-nums;font-size:18px}.metric-value.dim{color:var(--text-dim)}.metric-value.accent{color:var(--accent);font-weight:700}.size-bar{border:1px solid var(--line-strong);background:repeating-linear-gradient(90deg, var(--surface-2) 0 4px, transparent 4px 8px);border-radius:2px;height:6px;margin:12px 0 20px;position:relative;overflow:hidden}.size-bar-fill{background:var(--accent);min-width:2px;height:100%;box-shadow:0 0 8px var(--accent-glow);display:block}.subhead{letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);margin-bottom:7px;font-size:11px}.preview{border:1px solid var(--line);background:var(--bg);color:var(--text-faint);word-break:break-all;border-radius:2px;min-height:84px;max-height:240px;padding:16px;font-size:15px;line-height:1.5;overflow-y:auto}.preview.ready{color:var(--text);font-size:26px}.actions{flex-wrap:wrap;gap:9px;margin:16px 0;display:flex}.actions .dim{opacity:.65;font-weight:400}.css-block{border:1px solid var(--line);background:var(--bg);color:var(--cyan);border-radius:2px;margin:0;padding:12px 14px;font-size:12px;line-height:1.65;overflow-x:auto}.empty-out{text-align:center;flex-direction:column;align-items:center;gap:4px;padding:26px 12px;display:flex}.empty-art{border:1px dashed var(--line-strong);color:var(--text-faint);border-radius:2px;grid-template-columns:repeat(4,1fr);margin-bottom:14px;font-size:22px;line-height:1;display:grid}.empty-art span{padding:14px 12px}.empty-art span+span{border-left:1px dashed var(--line)}.empty-title{color:var(--text-dim);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:12px}.empty-hint{color:var(--text-faint);margin:0;font-size:12px}.statusbar{border-top:1px solid var(--line);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--text-faint);white-space:nowrap;align-items:center;gap:18px;padding:5px 22px;font-size:11.5px;display:flex;position:fixed;inset:auto 0 0;overflow-x:auto}.status-item{align-items:center;gap:6px;display:inline-flex}.status-item b{color:var(--text-dim);font-variant-numeric:tabular-nums;font-weight:600}.status-item.grow{margin-left:auto}.status-item.lock{color:var(--accent)}.dot{background:var(--text-faint);border-radius:50%;width:6px;height:6px}.dot.on{background:var(--accent);box-shadow:0 0 6px var(--accent)}.dot.busy{background:var(--cyan);box-shadow:0 0 6px var(--cyan);animation:.9s ease-in-out infinite pulse}.status-item.busy{color:var(--cyan)}.status-item.engine-ready{color:var(--text-dim)}.status-item.engine-loading{color:var(--amber)}.status-item.engine-failed{color:var(--error)}@media (width<620px){.status-item.grow{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
