:root{color:#172022;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#172022;--muted:#66706f;--paper:#f5f1e8;--panel:#fffaf0;--line:#d3d7d3;--route:#e85d3f;--teal:#187b7a;--blue:#263a59;--danger:#b3261e;background:#e7ebea;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:linear-gradient(90deg,#1720220e 1px,#0000 1px) 0 0/42px 42px,linear-gradient(#f0f3ef 0%,#dfe5e3 100%);min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}.run-app{grid-template-columns:minmax(320px,400px) minmax(0,1fr);gap:24px;width:min(1440px,100%);min-height:100vh;margin:0 auto;padding:24px;display:grid}.tool-panel,.poster-stage{background:#fffaf0f0;border:1px solid #17202224;border-radius:8px;box-shadow:0 18px 50px #1720221a}.tool-panel{align-self:start;gap:22px;padding:22px;display:grid}.brand-line{color:var(--muted);letter-spacing:0;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:800;display:flex}.brand-line strong{color:var(--blue)}.panel-heading{gap:10px;display:grid}.panel-heading h1{color:var(--ink);letter-spacing:0;margin:0;font-size:36px;line-height:1.08}.panel-heading p{color:var(--muted);margin:0;font-size:14px;line-height:1.7}.file-picker{color:var(--ink);cursor:pointer;background:#187b7a14;border:1px dashed #187b7a8c;border-radius:8px;gap:8px;padding:16px;display:grid}.file-picker span,.field-grid span{color:var(--muted);font-size:12px;font-weight:800}.file-picker strong{overflow-wrap:anywhere;font-size:15px}.file-picker input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.error-message{color:var(--danger);background:#b3261e12;border:1px solid #b3261e38;border-radius:6px;margin:0;padding:12px;font-size:13px;line-height:1.6}.field-grid{gap:12px;display:grid}.field-grid label{gap:7px;display:grid}.field-grid input{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);background:#fffdf8;border-radius:6px;padding:0 12px}.field-grid input:focus{border-color:var(--teal);outline:2px solid #187b7a40}.route-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;display:grid}.route-stats div{border:1px solid var(--line);background:#fffdf8;border-radius:6px;gap:5px;padding:10px;display:grid}.route-stats dt{color:var(--muted);font-size:11px;font-weight:900}.route-stats dd{color:var(--ink);margin:0;font-size:16px;font-weight:850}.primary-action{color:#fffaf0;background:var(--route);border:0;border-radius:6px;min-height:48px;font-weight:900}.preview-panel{place-items:center;min-width:0;display:grid}.poster-stage{width:min(100%,760px);padding:clamp(12px,2vw,24px)}.poster-svg{aspect-ratio:5/7;background:var(--paper);border-radius:4px;width:100%;height:auto;display:block}.poster-kicker,.metric-label{fill:#187b7a;letter-spacing:0;font-size:24px;font-weight:900}.poster-title{fill:#172022;letter-spacing:0;font-size:58px;font-weight:900}.poster-runner{fill:#172022;letter-spacing:0;font-size:42px;font-weight:850}.metric-value{fill:#172022;letter-spacing:0;font-size:32px;font-weight:850}.initial-html-fallback{min-height:100vh;color:var(--ink);background:var(--paper);align-content:center;gap:16px;margin:0;padding:48px;display:grid}.initial-html-fallback p,.initial-html-fallback h1{max-width:720px;margin:0}.initial-html-fallback h1{letter-spacing:0;font-size:40px;line-height:1.15}@media (width<=900px){.run-app{grid-template-columns:1fr;gap:18px;padding:14px}.tool-panel{order:2}.preview-panel{order:1}}@media (width<=520px){.route-stats{grid-template-columns:1fr}.panel-heading h1{font-size:30px}}
