:root{color-scheme:dark;--bg: #0b0b10;--panel: #12121a;--ink: #f3f1ea;--muted: #aeaab8;--faint: #8b8796;--line: #2c2c3a;--accent: #ff5d73;--accent-2: #7c9cff;--danger: #ffb3c0;--mono: ui-monospace, "SFMono-Regular", "Cascadia Mono", Menlo, Consolas, monospace;--sans: "Avenir Next", "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);overflow:hidden}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{opacity:.38;cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent);color:#1a0b10}.app{height:100dvh;display:flex;flex-direction:column;min-height:0;background:radial-gradient(900px 240px at 10% -10%,rgba(255,93,115,.16),transparent 60%),var(--bg)}.app-header{display:flex;align-items:center;gap:12px;min-height:58px;padding:8px 14px;border-bottom:1px solid var(--line);background:#0c0c12eb}.brand{display:flex;align-items:center;gap:10px;min-width:0}.mark{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:conic-gradient(from 210deg,#ff5d73,#ffb25b,#7c9cff,#ff5d73);color:#1a0b10;font-size:11px;font-weight:750;letter-spacing:-.04em}.brand h1{margin:0;font-size:15px;font-weight:640;letter-spacing:-.02em}.brand p{margin:0;color:var(--faint);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.view{margin-left:auto}.files{display:flex;align-items:center;gap:2px}.group{display:flex;align-items:center;gap:2px;padding:2px;border:1px solid var(--line);border-radius:12px;background:#0c0c12}.group button,.text-btn{border:0;background:transparent;color:var(--muted);border-radius:9px;min-height:32px;padding:0 10px;font-size:12px}.group button:hover:not(:disabled),.text-btn:hover{color:var(--ink);background:#22222e}.group button[aria-pressed=true]{background:#2a2a38;color:var(--ink)}.text-btn.danger:hover{color:var(--danger);background:#ff5d731a}.stage{flex:1;min-height:0;display:flex}.editor,.preview-wrap{flex:1;min-width:0;min-height:0}.editor{display:flex;flex-direction:column;background:#0e0e15;border-right:1px solid var(--line)}.pane-label,.float-label{color:var(--faint);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.pane-label{height:36px;display:flex;align-items:center;padding:0 14px;border-bottom:1px solid var(--line)}.editor textarea{flex:1;width:100%;margin:0;padding:14px 16px 18px;border:0;resize:none;background:transparent;color:#ddd9cf;font-family:var(--mono);font-size:13px;line-height:1.55;-moz-tab-size:2;tab-size:2;white-space:pre;overflow:auto}.preview-wrap{position:relative;background:#07070b}.preview-wrap iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;background:#07070b}.float-label,.preview-error{position:absolute;z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.float-label{top:10px;left:10px;padding:5px 10px;border-radius:999px;border:1px solid var(--line);background:#0a0a10b8}.float-label[data-phase=error]{color:var(--danger);border-color:#ff5d7373}.preview-error{left:12px;right:12px;bottom:12px;margin:0;padding:10px 12px;border-radius:10px;background:#280a10eb;color:var(--danger);font-family:var(--mono);font-size:12px}.timeline{display:none;width:280px;flex-direction:column;gap:8px;padding:14px;overflow:auto;border-right:1px solid var(--line);background:#0e0e15}.stage[data-view=timeline] .timeline{display:flex}.stage[data-view=timeline] .editor,.stage[data-view=preview] .editor,.stage[data-view=code] .preview-wrap{display:none}.timeline h2{margin:0;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.timeline .hint{margin:0 0 6px;color:var(--faint);font-size:12px;line-height:1.4}.versions{display:flex;flex-direction:column;gap:4px}.version{display:grid;grid-template-columns:12px 1fr auto;gap:8px;align-items:start;width:100%;text-align:left;padding:8px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--muted)}.version:hover{background:#191924;color:var(--ink)}.version[aria-current=true]{background:#1c1c28;border-color:#3a3a4c;color:var(--ink)}.dot{width:8px;height:8px;margin-top:4px;border-radius:99px;background:var(--faint)}.version[data-type=recipe] .dot,.version[data-type=ai] .dot{background:var(--accent)}.version[data-type=initial] .dot{background:var(--accent-2)}.version b{display:block;font-size:13px;font-weight:600}.version small,.version em{display:block;color:var(--faint);font-size:11px}.version em{margin-top:4px;font-style:italic;color:var(--muted)}.version .v{font-family:var(--mono);font-size:10px;color:var(--faint)}.dock{border-top:1px solid var(--line);background:#101018;padding:10px 14px 12px;display:flex;flex-direction:column;gap:8px}.note{min-height:1.15em;margin:0;font-size:12px;color:var(--muted)}.note.bad{color:var(--danger)}.chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chips button{flex:0 0 auto;border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;min-height:32px;padding:0 12px;font-size:12px}.chips button:hover,.chips button[aria-pressed=true]{color:var(--ink);border-color:#4a4a5e}.chips button[aria-pressed=true]{border-color:var(--accent);background:#ff5d731f}.prompt{display:flex;gap:8px}.prompt input{flex:1;min-width:0;border:1px solid var(--line);background:#0c0c12;border-radius:12px;padding:12px 14px;font-size:16px}.prompt button{border:0;border-radius:12px;padding:0 16px;background:var(--ink);color:#16141c;font-size:13px;font-weight:700}.prompt button:hover:not(:disabled){background:#fff}.prompt button:disabled{background:#2a2a38;color:var(--muted);opacity:1}.prompt button,.prompt input{min-height:44px}.meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin:0;color:var(--faint);font-size:11px;letter-spacing:.04em}.meta b{color:var(--muted);font-weight:600}@media(max-width:800px){.app-header{flex-wrap:wrap;padding:8px 10px;row-gap:8px}.brand p{display:none}.history{margin-left:auto}.view,.files{flex:1 0 100%;margin-left:0}.view,.files{display:grid;grid-template-columns:repeat(4,1fr)}.files .text-btn{width:100%}.stage{flex-direction:column}.stage[data-view=split] .editor{flex:0 0 32%;border-right:0;border-bottom:1px solid var(--line)}.timeline{width:100%;max-height:34%;border-right:0;border-bottom:1px solid var(--line)}.dock{padding:8px 10px 10px}}@media(pointer:coarse){.group button,.text-btn,.chips button{min-height:44px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
