:root{--bg:#f5f5f2;--ink:#17171b;--muted:#6b6b73;--line:#e2e2dd;--card:#fff;--hot:#ff3b30;--kept:#1f9d55;--kept-bg:#e9f7ef;--added:#b45309;--added-bg:#fdf1e3;--mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;line-height:1.5}.wrap{max-width:680px;margin:0 auto;padding:56px 24px 80px}.head{margin-bottom:36px}.mark{margin:0;font-size:34px;font-weight:800;letter-spacing:-.03em}.mark .dot{color:var(--hot)}.tag{margin:6px 0 0;color:var(--muted);font-size:17px}.ask{display:flex;flex-direction:column;gap:8px}.lbl{font-size:14px;font-weight:600;margin-top:8px}.lbl.thin{font-weight:500}.lbl.thin,.opt{color:var(--muted)}.opt{font-weight:400}.refine,.rough{width:100%;font-family:var(--sans);font-size:16px;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 14px;resize:vertical}.refine:focus,.rough:focus{outline:none;border-color:var(--hot);box-shadow:0 0 0 3px rgba(255,59,48,.12)}.go{margin-top:14px;align-self:flex-start;font-family:var(--sans);font-size:16px;font-weight:700;color:#fff;background:var(--hot);border:none;border-radius:10px;padding:11px 22px;cursor:pointer;transition:transform .04s ease,opacity .15s ease}.go:hover{opacity:.92}.go:active{transform:translateY(1px)}.go:disabled{opacity:.4;cursor:not-allowed}.out{margin-top:36px;display:flex;flex-direction:column;gap:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px 20px}.cardhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.kicker{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.copy{font-family:var(--sans);font-size:13px;font-weight:600;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:7px;padding:5px 12px;cursor:pointer}.copy:hover{border-color:var(--hot);color:var(--hot)}.prompt{margin:0;font-family:var(--mono);font-size:14px;line-height:1.7;white-space:pre-wrap;word-break:break-word;color:var(--ink)}.legend{display:flex;gap:8px}.chip{font-size:11px;font-weight:600;padding:3px 8px;border-radius:20px;white-space:nowrap}.chip.kept{color:var(--kept);background:var(--kept-bg)}.chip.added{color:var(--added);background:var(--added-bg)}.flow{list-style:none;margin:0;padding:0;position:relative}.flow:before{content:"";position:absolute;left:11px;top:12px;bottom:12px;width:2px;background:var(--line)}.node{display:grid;grid-template-columns:24px 78px 1fr;align-items:baseline;grid-gap:10px;gap:10px;padding:8px 0}.marker,.node{position:relative}.marker{z-index:1;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;border-radius:50%;background:var(--card);border:2px solid var(--line)}.node.kept .marker{color:var(--kept);border-color:var(--kept)}.node.added .marker{color:var(--added);border-color:var(--added)}.movelabel{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.moveval{font-size:15px;color:var(--ink)}.foot{margin-top:48px;padding-top:16px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);display:flex;gap:10px}.foot .sep{opacity:.5}.domchip{display:inline-block;margin-left:8px;font-size:11px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--hot);background:rgba(255,59,48,.08);border-radius:20px;padding:2px 9px;vertical-align:middle}.leftout{margin:16px 0 0;padding-top:12px;border-top:1px dashed var(--line);font-size:13px;color:var(--muted);line-height:1.55}.lolabel{font-weight:600;color:var(--ink)}.btnrow{display:flex;gap:10px;margin-top:14px;align-items:center}.btnrow .go{margin-top:0}.go.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.go.ghost:hover{border-color:var(--hot);color:var(--hot);opacity:1}.enginechip{display:inline-block;margin-left:8px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:none;color:#fff;background:var(--hot);border-radius:5px;padding:1px 6px;vertical-align:middle}.prompt.cat{font-size:15px;line-height:1.35}@media (max-width:520px){.node{grid-template-columns:24px 1fr}.movelabel,.moveval{grid-column:2}}