:root{color:#1b1d21;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f6f1e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{margin:0}*{box-sizing:border-box}.workspace{color:#1b1d21;background:#f6f1e8;grid-template-columns:minmax(360px,430px) minmax(0,1fr);min-height:100svh;font-family:DM Sans,Inter,system-ui,sans-serif;display:grid}.brief-panel,.preview-panel{padding:28px}.brief-panel{background:#fbfaf6;border-right:1px solid #d9d1c5;flex-direction:column;gap:18px;display:flex}.preview-panel{grid-template-rows:auto minmax(420px,1fr) auto auto;gap:18px;display:grid}.eyebrow{color:#6b7280;text-transform:uppercase;letter-spacing:.06em;margin:0;font-size:12px;font-weight:700}h1{max-width:11ch;margin:6px 0 0;font-size:40px;font-weight:800;line-height:.97}label{color:#374151;gap:6px;font-size:13px;font-weight:600;display:grid}.steps{text-transform:uppercase;letter-spacing:.06em;color:#9ca3af;gap:0;margin:0;padding:0;font-size:12px;font-weight:700;list-style:none;display:flex}.step{padding:5px 10px 5px 0;transition:color .15s}.step:after{content:" ›";opacity:.5;margin-left:6px}.step:last-child:after{display:none}.step.active{color:#0f766e}.brief-fields{border:none;flex-direction:column;gap:18px;margin:0;padding:0;transition:opacity .2s;display:flex}.brief-fields:disabled{opacity:.55;pointer-events:none}.field-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}input,textarea{box-sizing:border-box;color:#111827;width:100%;font:inherit;background:#fff;border:1px solid #cfc6b8;border-radius:6px;padding:9px 11px;font-size:14px;transition:border-color .12s,box-shadow .12s}input:focus,textarea:focus{border-color:#0f766e;outline:none;box-shadow:0 0 0 2px #0f766e24}textarea{resize:vertical;min-height:86px}button{color:#1f2937;min-height:38px;font:inherit;cursor:pointer;background:#fff;border:1px solid #cfc6b8;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:700;transition:border-color .12s,box-shadow .12s,opacity .12s;display:inline-flex}button:disabled{cursor:not-allowed;opacity:.4}button:hover:not(:disabled),button.active{border-color:#0f766e;box-shadow:0 0 0 2px #0f766e1f}.preset-row,.segmented,.toolbar,.export-row,.variant-list{gap:8px;display:flex}.preset-row,.variant-list{flex-wrap:wrap}.primary-action{color:#fff;background:#0f766e;border-color:#0f766e;min-height:46px;font-size:14px}.primary-action:hover:not(:disabled){box-shadow:none;background:#0d6b63;border-color:#0d6b63}.status{color:#6b7280;min-height:18px;margin:0;font-size:12px;font-weight:600;transition:color .2s}.status--ok{color:#0f766e}.status--error{color:#b91c1c}.status--loading{color:#6b7280}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.8s linear infinite spin}.toolbar{justify-content:space-between;align-items:center}.icon-button span{text-transform:capitalize;min-width:44px}.scene-dot{border:1px solid #00000026;border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.viewer{border:1px solid #d1c7ba;border-radius:8px;min-height:420px;transition:background .4s;position:relative;overflow:hidden}.viewer canvas{display:block;width:100%!important;height:100%!important}.empty-preview{color:#00000073;background:inherit;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex;position:absolute;inset:0}.variant{background:#fbfaf6;flex-direction:column;flex:180px;align-items:flex-start;gap:8px;min-height:68px;padding:10px 12px}.variant-swatches{gap:4px;display:flex}.swatch{border:1px solid #0000001a;border-radius:3px;flex-shrink:0;width:14px;height:14px;display:inline-block}.variant-meta{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;display:flex}.variant-meta strong{font-size:13px;line-height:1.2}.variant-meta span{color:#6b7280;text-transform:capitalize;font-size:12px;font-weight:500}.export-row{justify-content:flex-end}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=960px){.workspace{grid-template-columns:1fr}.brief-panel{border-bottom:1px solid #d9d1c5;border-right:0}.preview-panel{grid-template-rows:auto 420px auto auto}}@media (width<=560px){.brief-panel,.preview-panel{padding:16px}h1{max-width:100%;font-size:32px}.field-grid{grid-template-columns:1fr}.toolbar{flex-wrap:wrap;gap:8px}.segmented{flex:1}.segmented button{flex:1;min-height:40px}.icon-button{min-height:40px}.variant{flex-basis:100%}}
