:root{--font-display:"Avenir Next","Optima","Trebuchet MS",sans-serif;--font-sans:"Avenir Next","Segoe UI","Helvetica Neue",sans-serif;--bg-0:#fffaf6;--bg-1:#f7efe9;--bg-2:#eddcd3;--card:rgba(255,251,247,0.92);--card-soft:rgba(255,250,246,0.84);--line:rgba(117,96,87,0.24);--text:#2b2430;--muted:#6e6168;--primary:#f27b6d;--primary-2:#d56f8f;--ok:#2f8e69;--danger:#cc5566;--shadow:0 18px 38px rgba(128,83,66,0.17)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;height:100%}body{background:radial-gradient(circle at 14% 10%,rgba(242,123,109,.22),transparent 44%),radial-gradient(circle at 88% 8%,rgba(213,111,143,.2),transparent 46%),linear-gradient(160deg,var(--bg-0),var(--bg-1) 44%,var(--bg-2));color:var(--text);font-family:var(--font-sans),sans-serif}body.studio-body{overflow:hidden;overscroll-behavior:none}a{color:inherit}h1,h2,h3,h4,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}input,select,textarea{width:100%;border:1px solid var(--line);background:rgba(255,255,255,.88);border-radius:12px;padding:10px 12px}input[type=color]{min-height:42px;padding:4px}textarea{resize:vertical}button:focus-visible,input:focus,select:focus,textarea:focus{outline:2px solid rgba(242,123,109,.55);outline-offset:1px}.landing{min-height:100vh;display:grid;place-items:center;padding:28px;position:relative;overflow:hidden}.landing-glow{position:absolute;border-radius:999px;filter:blur(50px)}.landing-glow-left{width:320px;height:320px;left:-80px;top:25%;background:rgba(255,132,91,.28)}.landing-glow-right{width:380px;height:380px;right:-120px;bottom:8%;background:rgba(112,94,255,.26)}.landing-card{position:relative;z-index:1;width:min(780px,100%);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:26px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:32px;display:grid;grid-gap:16px;gap:16px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--muted);font-size:11px;font-weight:700}.landing-card h1{font-family:var(--font-display),serif;font-size:clamp(34px,5vw,58px);line-height:.95;max-width:16ch}.landing-card p{max-width:58ch;color:var(--muted)}.row{display:flex;gap:10px;flex-wrap:wrap}.button{border:1px solid transparent;border-radius:12px;padding:11px 14px;font-weight:700;cursor:pointer;transition:transform .13s ease,opacity .13s ease,background .13s ease;text-decoration:none}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.button.primary{background:linear-gradient(105deg,var(--primary),var(--primary-2));color:white}.button.secondary{background:rgba(255,255,255,.62);border-color:var(--line)}.button.ghost{background:rgba(255,255,255,.46);border-color:var(--line)}.button.danger{background:rgba(255,107,120,.2);border-color:rgba(255,107,120,.6)}.button.tiny{padding:7px 10px;font-size:12px}.studio-page{min-height:100dvh;overflow:hidden}.studio-shell{height:100dvh;padding:14px;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,450px);grid-gap:14px;gap:14px;align-items:start;overflow:hidden}.control-panel,.preview-panel{border:1px solid var(--line);background:var(--card-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;box-shadow:var(--shadow)}.sticky-preview{position:-webkit-sticky;position:sticky;top:calc(env(safe-area-inset-top, 0px) + 8px);width:100%}.control-panel{padding:14px;display:grid;grid-gap:12px;gap:12px;align-content:start;overflow:auto;max-height:calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 20px);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.panel-header{display:grid;grid-gap:6px;gap:6px}.panel-header h1{font-family:var(--font-display),serif;font-size:clamp(34px,4vw,42px);line-height:.98}.panel-header p{color:var(--muted)}.workflow-tabs{display:flex;gap:8px;overflow-x:auto;overflow-y:visible;padding:6px 0 8px}.workflow-tab{border:1px solid var(--line);background:rgba(255,255,255,.04);border-radius:999px;color:var(--muted);white-space:nowrap;padding:8px 12px;cursor:pointer}.workflow-tab.active{border-color:rgba(255,152,89,.7);background:rgba(255,111,97,.2);color:var(--text)}.panel-group{border:1px solid var(--line);border-radius:14px;padding:12px;display:grid;grid-gap:10px;gap:10px;background:rgba(255,255,255,.72)}.panel-group h2{font-size:16px}.workflow-footer{display:grid;grid-gap:10px;gap:10px;border:1px solid var(--line);border-radius:14px;padding:12px;background:rgba(255,255,255,.64)}.field-label{color:var(--muted);font-size:14px}.field-label,.file-input{display:grid;grid-gap:8px;gap:8px}.file-input{border:1px dashed var(--line);border-radius:12px;padding:10px;background:rgba(255,255,255,.78)}.file-input span{color:var(--muted);font-size:13px}.file-input input{border:0;padding:0;background:transparent}.chip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.chip-row{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:rgba(255,255,255,.65);border-radius:11px;padding:9px 10px;display:grid;grid-gap:2px;gap:2px;cursor:pointer}.chip.active{border-color:rgba(255,152,89,.7);background:rgba(255,111,97,.2)}.chip span{color:var(--muted);font-size:11px}.chip.tiny{padding:8px 10px}.hint{color:var(--muted)}.hint,.status{font-size:13px}.status{color:var(--ok)}.overlay-list{display:grid;grid-gap:6px;gap:6px}.overlay-item{text-align:left;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.64);padding:8px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overlay-item.active{border-color:rgba(255,152,89,.7);background:rgba(255,111,97,.2)}.preview-panel{padding:14px;display:grid;grid-template-rows:auto 1fr;grid-gap:10px;gap:10px;width:100%;max-height:calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 20px);justify-items:center}.preview-topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;width:100%;justify-self:stretch}.preview-topbar h2{font-size:23px}.preview-topbar p{color:var(--muted);font-size:13px}.preview-heading{display:grid;grid-gap:2px;gap:2px}.preview-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}.render-state{border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:12px;color:var(--muted)}.preview-frame{min-height:0;width:min(100%,560px);justify-self:center;aspect-ratio:var(--canvas-aspect,4/5);border-radius:16px;border:1px solid var(--line);background:radial-gradient(circle at top left,rgba(242,123,109,.18),transparent 42%),linear-gradient(145deg,rgba(254,248,244,.95),rgba(246,236,230,.92));display:grid;place-items:center;padding:0;overflow:hidden}.preview-frame canvas{width:100%;height:100%;max-height:none;border-radius:14px;box-shadow:0 22px 34px rgba(107,67,53,.2)}.preview-frame p{color:var(--muted)}.optional-block{border:1px solid var(--line);border-radius:12px;padding:10px;background:rgba(255,255,255,.66)}.optional-block summary{cursor:pointer;font-weight:700;color:var(--text);margin-bottom:10px}@media (max-width:1040px){.studio-shell{display:flex;flex-direction:column;gap:10px;padding:10px;height:100dvh}.sticky-preview{top:calc(env(safe-area-inset-top, 0px) + 8px);z-index:10}.control-panel{max-height:none;flex:1 1 auto;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch}.preview-frame{min-height:0;width:auto;height:clamp(160px,28dvh,230px);max-width:78vw;margin:0 auto}.preview-panel{max-height:none;padding:8px;gap:6px;flex:0 0 auto;grid-template-rows:auto auto;align-content:start;justify-items:center}.preview-topbar{justify-content:flex-start;width:100%;justify-self:stretch}.preview-heading{display:none}.preview-actions{justify-content:flex-start;gap:6px;width:100%}.preview-frame canvas{width:100%;max-height:none}}@media (prefers-reduced-motion:no-preference){.control-panel,.landing-card,.preview-panel{animation:rise-in .52s ease both}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}}