:root{--bg-1:#f7efe2;--bg-2:#e7f5f1;--ink:#1b1e28;--muted:#5a6070;--panel:#ffffffde;--line:#cfd5e3;--primary:#1f6b75;--accent:#ca5b2f;--radius:16px;--shadow:0 18px 40px rgba(31, 40, 60, 0.12)}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:"IBM Plex Sans","Segoe UI",sans-serif;color:var(--ink);background:linear-gradient(140deg,var(--bg-1),var(--bg-2))}.background-shape{position:fixed;border-radius:50%;filter:blur(2px);z-index:0}.shape-a{width:340px;height:340px;background:radial-gradient(circle,#f6c879,#f6c87930);top:-80px;left:-90px}.shape-b{width:280px;height:280px;background:radial-gradient(circle,#78c6be,#78c6be30);right:-70px;bottom:-60px}.app-shell{position:relative;z-index:1;width:min(1200px,94vw);margin:32px auto 40px;display:grid;gap:16px}.topbar h1{margin:0 0 6px;font-family:"Space Grotesk","Segoe UI",sans-serif;font-size:clamp(2rem, 3.2vw, 3.1rem);font-weight:800;letter-spacing:.01em;line-height:1.02;background:linear-gradient(90deg,#1f6b75 0,#ca5b2f 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.topbar p{margin:0;color:var(--muted)}.back-link{display:inline-block;margin-top:10px;text-decoration:none;color:#1f6b75;font-weight:700}.panel{background:var(--panel);border:1px solid #fff;border-radius:var(--radius);box-shadow:var(--shadow);backdrop-filter:blur(4px)}.convert-panel{padding:16px;display:grid;gap:12px}.workspace-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.workspace-layout.history-visible{grid-template-columns:minmax(0,1fr) 340px;align-items:start}.input-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.input-block{display:grid;gap:8px}label{font-size:.92rem;color:#3a4052;font-weight:600}textarea{width:100%;min-height:320px;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;color:var(--ink);font:0.9rem/1.45 "IBM Plex Mono",Consolas,monospace}.actions-row{display:flex;gap:10px;flex-wrap:wrap}.check-field{display:inline-flex;align-items:center;gap:6px;font-size:.88rem;color:#33405f}.history-panel{padding:12px;display:flex;flex-direction:column;gap:10px;align-content:start;min-height:0;overflow:hidden}.history-panel.history-hidden{display:none}.history-controls{display:flex;flex-wrap:wrap;gap:8px}.history-name-input{min-width:220px;flex:1;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff;color:var(--ink);font:0.9rem/1.2 "IBM Plex Sans","Segoe UI",sans-serif}.history-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;flex:1 1 auto;min-height:0;overflow:auto}.history-item{border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff;display:grid;gap:8px}.history-title{font-weight:700;margin:0}.history-meta{color:var(--muted);font-size:.85rem;margin:0}.history-actions{display:flex;gap:8px;flex-wrap:wrap}.mini-btn{border:1px solid var(--line);border-radius:8px;background:#f8f9fd;color:#2d3650;padding:6px 8px;cursor:pointer}.btn{border:none;border-radius:12px;padding:10px 15px;font:inherit;font-weight:600;cursor:pointer}.primary{background:var(--primary);color:#fff}.accent{background:var(--accent);color:#fff}.ghost{background:#eef1f8;color:#2d3650}.status{margin:0;padding:10px 14px;border:1px solid rgba(27,30,40,.12);border-radius:12px;background:rgba(255,255,255,.82);color:#2f5a2f;font-weight:600}@media (max-width:920px){.input-grid,.workspace-layout,.workspace-layout.history-visible{grid-template-columns:1fr}}