:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#d6dde7;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--surface:#0b1321e0;--surface-soft:#ffffff0a;--border:#aac1db29;--border-strong:#87b6ff59;--text:#d6dde7;--text-dim:#93a1b5;--text-soft:#70819c;--accent:#7bc7ff;--success-bg:#3cc47a24;--success-border:#63d79352;--danger-bg:#ff626229;--danger-border:#f886;--shadow:0 18px 60px #00000061;--mono:"Cascadia Code", "SFMono-Regular", Consolas, monospace;background:radial-gradient(circle at 0 0,#3074ff2e,#0000 28%),radial-gradient(circle at 100% 0,#00c49a1f,#0000 24%),linear-gradient(#09111f 0%,#0d1627 45%,#0a1220 100%);font-family:Segoe UI,Helvetica Neue,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{min-width:1200px}button,textarea{font:inherit}button{cursor:pointer}#app{min-height:100vh}.visually-hidden{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.empty-copy{color:var(--text-dim);margin:0;font-size:14px}.shell{max-width:1680px;margin:0 auto;padding:32px}.hero{border:1px solid var(--border);box-shadow:var(--shadow);background:linear-gradient(135deg,#142137f5,#09121feb);border-radius:20px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;padding:18px 24px;display:flex}.hero-brand{align-items:center;gap:12px;display:flex}.hero-logo{flex:none;width:64px;height:64px;display:block}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--accent);margin:0 0 6px;font-size:11px}.hero h1,.panel h2,.detail-card h3{color:#f4f7fb;margin:0}.hero h1{letter-spacing:-.04em;max-width:760px;font-size:28px;line-height:1.05}.hero-note{max-width:300px;color:var(--text-dim);margin:0;font-size:13px}.workspace{grid-template:"input details"minmax(0,1fr)"output details"minmax(0,1fr)/minmax(760px,1fr) 340px;align-items:stretch;gap:20px;height:calc(100vh - 156px);min-height:620px;display:grid}.workspace-input-collapsed{grid-template-rows:auto minmax(0,1fr)}.workspace-output-collapsed{grid-template-rows:minmax(0,1fr) auto}.workspace-both-collapsed{grid-template-rows:auto auto}.input-panel{grid-area:input}.output-panel{grid-area:output}.details-panel{grid-area:details}@media (width<=1360px){body{min-width:0}.hero{flex-direction:column;align-items:flex-start}.workspace,.workspace-input-collapsed,.workspace-output-collapsed,.workspace-both-collapsed{grid-template:"input""output""details"/1fr;height:auto;min-height:0}}.panel{background:var(--surface);border:1px solid var(--border);min-height:0;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:24px;flex-direction:column;display:flex}.panel-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px 14px;display:flex}.panel h2{font-size:22px;line-height:1.15}.panel-help{color:var(--text-soft);margin:0;font-size:12px;line-height:1.35}.action-row{gap:8px;display:flex}.button{border:1px solid var(--border-strong);color:#eff7ff;background:linear-gradient(#3d8bff3d,#245daa3d);border-radius:12px;padding:10px 14px;font-weight:600;transition:transform .12s,border-color .12s,background .12s}.button:hover:enabled{border-color:#a1d1ffa6;transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.45}.button-muted{border-color:var(--border);color:var(--text);background:#ffffff0a}.icon-button{border:1px solid var(--border);width:34px;height:34px;color:var(--text);background:#ffffff0a;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:transform .12s,border-color .12s,background .12s;display:inline-flex}.icon-button:hover{background:#ffffff12;border-color:#a1d1ffa6;transform:translateY(-1px)}.icon-button svg{stroke:currentColor;stroke-width:2px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.source-badge{border:1px solid var(--border);color:var(--text-dim);background:#ffffff0a;border-radius:12px;margin:12px 16px 0;padding:8px 10px;font-size:12px}textarea{resize:none;width:calc(100% - 32px);height:100%;min-height:0;color:var(--text);font-family:var(--mono);background:#040a13bf;border:1px solid #87b6ff2e;border-radius:18px;outline:none;flex:auto;margin:12px 16px;padding:16px;font-size:14px;line-height:1.6;overflow:auto;box-shadow:inset 0 1px #ffffff0a}textarea:focus{border-color:#7bc7ff99;box-shadow:0 0 0 1px #7bc7ff3d,inset 0 1px #ffffff0a}.panel-collapsed{align-self:start}.panel-collapsed .panel-head{border-bottom:none}.panel-collapsed .panel-help{display:none}.banner{color:var(--text-dim);background:#ffffff0d;border:1px solid #0000;border-radius:14px;margin:14px 16px 0;padding:10px 12px;font-size:13px}.banner-detected{background:var(--success-bg);border-color:var(--success-border);color:#d9ffe8}.banner-error{background:var(--danger-bg);border-color:var(--danger-border);color:#ffdede}.warning-list{margin:12px 16px 0;padding:0}.warning-list p{color:#ffd49a;background:#ffb74d1f;border:1px solid #ffb74d4d;border-radius:14px;margin:0 0 8px;padding:10px 12px;font-size:13px}.output-view{background:#040a13bf;border:1px solid #87b6ff2e;border-radius:18px;flex:auto;min-height:0;margin:12px 16px 16px;padding:16px;overflow:auto}.output-view code{color:#dff4ff;font-family:var(--mono);white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.65;display:block}.details-panel{padding-bottom:16px;overflow:auto}.meta-list{margin:0;padding:12px 16px 0}.meta-row{border-bottom:1px solid var(--border);padding:10px 0}.meta-row dt{color:var(--text-soft);text-transform:uppercase;letter-spacing:.1em;margin:0 0 4px;font-size:12px}.meta-row dd{color:#f4f7fb;word-break:break-word;margin:0}.detail-list{gap:10px;padding:16px 16px 0;display:grid}.detail-card{background:var(--surface-soft);border:1px solid var(--border);border-radius:16px;padding:12px 14px}.detail-card h3{margin-bottom:6px;font-size:15px}.detail-card p{color:var(--text-dim);margin:0;font-size:14px}@media (width<=1360px){textarea{height:320px;min-height:320px}}
