/* Styling sandbox is deliberately independent of seating/capacity tools. */
body.style-atelier-page .atelier-main { width:min(100% - 48px,1132px); padding-top:8px; }
.atelier-intro { max-width:740px; margin:12px 0 26px; }
.atelier-intro h1 { font-size:clamp(28px,4vw,42px); letter-spacing:-.045em; line-height:1.12; margin:10px 0 14px; }
.atelier-intro p { font-size:16px; line-height:1.65; color:#75616e; margin:0; }
.atelier-kicker { font-size:12px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:#870051; }
.atelier-workspace { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr); gap:24px; align-items:start; }
.atelier-stage-panel { position:sticky; top:18px; min-width:0; border:1px solid #eadde3; border-radius:24px; overflow:hidden; background:#f6eeed; }
.atelier-preview-toolbar { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:16px; }
.atelier-preview-toolbar strong { font-size:13px; font-weight:500; color:#75616e; }
.atelier-view-tabs { display:flex; gap:4px; padding:4px; border:1px solid #eadde3; border-radius:12px; background:#fffdfa; }
.atelier-view-tabs button { padding:8px 14px; border:0; border-radius:8px; color:#75616e; background:transparent; font:600 13px Outfit,sans-serif; min-height:36px; }
.atelier-view-tabs button[aria-pressed=true] { background:#870051; color:#fff; }
.atelier-stage { position:relative; width:100%; aspect-ratio:1; max-height:550px; background:radial-gradient(ellipse at 50% 40%,#fffdfa 0%,#eee6e1 100%); }
.atelier-stage canvas { width:100%; height:100%; display:block; }
.atelier-stage canvas[hidden] { display:none; }
.atelier-stage-note { position:absolute; bottom:16px; inset-inline:16px; margin:0; text-align:center; font-size:12px; color:#75616e; pointer-events:none; }
.atelier-stage-controls { display:flex; gap:8px; padding:12px 16px; flex-wrap:wrap; border-top:1px solid #eadde3; }
.atelier-stage-controls button { min-height:40px; min-width:40px; padding:8px 12px; border:1px solid #dfcdd7; border-radius:10px; color:#870051; background:#fffdfa; font:500 13px Outfit,sans-serif; }
.atelier-summary { padding:18px; background:#fffdfa; border-top:1px solid #eadde3; }
.atelier-summary dl { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:0; }
.atelier-summary dt { font-size:11px; color:#75616e; }
.atelier-summary dd { margin:4px 0 0; font-size:14px; font-weight:500; }
.atelier-summary .button { margin-top:16px; width:100%; font-size:14px; }
.atelier-controls { min-width:0; }
.atelier-controls fieldset { border:0; padding:0; margin:0 0 22px; min-width:0; }
.atelier-controls legend { display:flex; align-items:center; gap:10px; font-size:16px; font-weight:600; width:100%; margin-bottom:12px; }
.atelier-controls legend span { display:inline-grid; place-items:center; width:23px; height:23px; background:#f6e7ef; border-radius:8px; color:#870051; font-size:12px; }
.atelier-options { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
.atelier-choice { position:relative; display:flex; flex-direction:column; align-items:center; text-align:center; cursor:pointer; border:1px solid #e8dde2; border-radius:12px; background:#fffdfa; padding:7px 3px; min-width:0; }
.atelier-choice input { position:absolute; width:1px; height:1px; opacity:0; }
.atelier-choice:has(input:checked) { border-color:#a50064; background:#f6e7ef; box-shadow:0 0 0 1px #a50064; }
.atelier-choice:has(input:focus-visible) { outline:3px solid #a50064; outline-offset:3px; }
.atelier-choice b { font-size:11px; font-weight:500; line-height:1.3; width:100%; overflow-wrap:anywhere; margin-top:7px; }
.atelier-flower-preview { position:relative; width:100%; height:60px; }
.atelier-flower-preview img { position:absolute; height:56px; width:100%; object-fit:contain; top:-5px; inset-inline-start:0; z-index:1; clip-path:inset(0 0 14% 0); }
.atelier-flower-preview i { position:absolute; width:21px; height:23px; bottom:0; left:calc(50% - 10px); border-radius:5px 5px 10px 10px; background:linear-gradient(90deg,#d3c8b8,#fff8e8 40%,#d8cdbc); border:1px solid #c9bead; }
.atelier-flower-note { font-size:13px; line-height:1.6; color:#75616e; margin:10px 0 0; }
.atelier-swatch { width:29px; height:29px; border-radius:50%; border:1px solid #00000015; box-shadow:inset 0 0 0 3px #ffffff50; }
.atelier-shapes { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.atelier-shapes .atelier-choice { padding:10px; min-height:68px; }
.atelier-shape { display:block; height:22px; width:30px; border:2px solid #b7849e; border-radius:50%; }
.atelier-shape--square { width:22px; border-radius:4px; }
.atelier-shape--rectangle { border-radius:4px; }
.atelier-vases { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.atelier-vases .atelier-choice { padding:12px 4px; }
.atelier-vases i { width:24px; height:26px; border-radius:4px 4px 10px 10px; border:1px solid #0002; }
.atelier-recipes { margin-top:32px; }
.atelier-recipes h2 { font-size:23px !important; }
.atelier-recipe-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.atelier-recipe { display:grid; gap:8px; text-align:start; padding:18px; border-radius:16px; background:#fffdfa; border:1px solid #eadde3; color:#30202a; cursor:pointer; font-family:Outfit,sans-serif; }
.atelier-recipe strong { font-size:15px; }
.atelier-recipe small { font-size:12px; line-height:1.6; color:#75616e; }
.atelier-recipe i { display:inline-block; width:20px; height:20px; border-radius:50%; border:1px solid #0002; margin-inline-end:4px; }
.atelier-recipe[aria-pressed=true] { border-color:#a50064; background:#f6e7ef; }
.atelier-editorial { margin-top:36px; padding:26px; border:1px solid #eadde3; border-radius:20px; background:#fffdfa; }
.atelier-editorial h2 { font-size:24px !important; margin-top:0; }
.atelier-editorial p { font-size:15px; line-height:1.8; }
.atelier-editorial h3 { font-size:17px !important; }
.atelier-editorial a { color:#870051; }
.atelier-disclaimer { font-size:12px; line-height:1.7; color:#75616e; margin-top:20px; }
.atelier-status { color:#870051; min-height:20px; font-size:13px; margin:10px 0 0; }
.atelier-stage-controls button:focus-visible,.atelier-view-tabs button:focus-visible,.atelier-recipe:focus-visible { outline:3px solid #a50064; outline-offset:3px; }
@media(max-width:760px) {
 body.style-atelier-page .atelier-main { width:calc(100% - 32px); padding-top:0; }
 .atelier-workspace { grid-template-columns:1fr; gap:24px; }
 .atelier-stage-panel { position:static; }
 .atelier-stage { aspect-ratio:1.1; max-height:400px; }
 .atelier-summary dl { grid-template-columns:repeat(3,1fr); }
 .atelier-recipe-grid { grid-template-columns:1fr 1fr; }
 .atelier-preview-toolbar { padding:12px; }
 .atelier-options { gap:7px; }
 .atelier-intro h1 { font-size:31px; }
 .atelier-intro p { font-size:14px; }
 .atelier-editorial { padding:20px; }
}
@media(max-width:360px) { .atelier-choice b { font-size:10px; } .atelier-flower-preview { height:50px; } .atelier-flower-preview img { height:47px; } }
