.s2d-studio{margin:6px 0;border:1px solid #e4bfc3;border-radius:16px;padding:13px;background:linear-gradient(155deg,#fffaf8 0%,#fbf1ed 55%,#fffdf7 100%);box-shadow:0 7px 26px #ab778a16;min-width:0;display:grid;gap:10px}
.s2d-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.s2d-eyebrow{font-size:9px;letter-spacing:1.4px;font-weight:800;color:#bd8692}
.s2d-heading h3{font-family:Georgia,serif;color:#78475c;font-size:18px;margin:4px 0 0}
.s2d-pill{font-size:9px;color:#926178;background:#fbe3e8;border:1px solid #e8bcc7;border-radius:18px;padding:7px 10px;white-space:nowrap}
.s2d-intro,.s2d-foot{font-size:10px;color:#8b6875;line-height:1.6;margin:0}
.s2d-controls{display:grid;gap:8px}
.s2d-controls fieldset{border:1px solid #ecd8d8;border-radius:12px;margin:0;padding:9px;min-width:0;background:#fffdfbc9}
.s2d-controls legend{font-size:10px;font-weight:800;color:#8a5768;padding:0 5px}
.s2d-buttonrow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.s2d-buttonrow button{display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;background:#fff9f6;border:1px solid #e7cfd0;border-radius:8px;padding:9px 4px;color:#805b6b;font-size:10px;font-weight:700;cursor:pointer;line-height:1.3}
.s2d-buttonrow button.active{background:#e8aaba;color:#603d50;border-color:#d48da2;box-shadow:inset 0 0 0 1px #fff8f7}
.s2d-buttonrow button i{display:inline-block;flex:0 0 12px;width:12px;height:12px;border:1px solid #bda9a0;border-radius:50%}
.s2d-display{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:9px;min-width:0}
.s2d-canvas{display:grid;place-items:center;min-width:0;border-radius:13px;overflow:hidden;background:var(--s2d-bg);border:1px solid #e7cec9;box-shadow:inset 0 4px 18px #b18d8a17}
.s2d-canvas svg{width:100%;height:355px;object-fit:contain;display:block;filter:var(--s2d-light);transition:filter .25s ease}
.s2d-details{display:flex;flex-direction:column;gap:8px;min-width:0;padding:10px;border:1px solid #ecd3d2;border-radius:12px;background:#fffdfb}
.s2d-details>strong{font-size:15px;color:#805064;font-family:Georgia,serif;overflow-wrap:anywhere}
.s2d-spec{display:grid;grid-template-columns:42% 1fr;gap:6px;align-items:start;border-bottom:1px dashed #eddbd5;padding:5px 0}
.s2d-spec span{font-size:10px;color:#ac8690}.s2d-spec b{font-size:10px;color:#624e59;overflow-wrap:anywhere}
.s2d-details button{font-size:10px;margin-top:auto;padding:11px 4px}
.s2d-details small{font-size:9px;line-height:1.5;color:#a2818b}
.s2d-foot{border-top:1px dashed #e7d0d0;padding-top:8px}
@media(max-width:1070px){.s2d-display{grid-template-columns:1fr}.s2d-canvas svg{height:300px}.s2d-details{display:grid;grid-template-columns:1fr 1fr}.s2d-details>.s2d-eyebrow,.s2d-details>strong,.s2d-details>button,.s2d-details>small{grid-column:1/-1}}
@media(max-width:720px){.s2d-studio{padding:8px}.s2d-buttonrow button{font-size:9px;padding:8px 3px}.s2d-heading h3{font-size:15px}.s2d-canvas svg{height:290px}}
@media(max-width:430px){.s2d-buttonrow{grid-template-columns:repeat(3,minmax(0,1fr))}.s2d-buttonrow button{font-size:8px}.s2d-details{grid-template-columns:1fr}.s2d-spec{grid-template-columns:40% 1fr}.s2d-canvas svg{height:250px}}

.s2d-studio{width:100%;max-width:1180px;margin:22px auto;scroll-margin-top:70px;padding:19px;gap:14px}
.s2d-controls{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.s2d-display{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:15px}
.s2d-canvas svg{height:490px}
.s2d-open{display:block;width:100%;margin:3px 0 0;font-size:10px}
@media(max-width:1050px){.s2d-controls{grid-template-columns:1fr}.s2d-display{grid-template-columns:1fr 1fr}.s2d-canvas svg{height:440px}.s2d-details{display:flex;flex-direction:column}}
@media(max-width:720px){.s2d-studio{padding:12px;margin:12px auto}.s2d-display{grid-template-columns:1fr}.s2d-canvas svg{height:390px}.s2d-details{display:flex;flex-direction:column}.s2d-details button{width:100%}}
@media(max-width:430px){.s2d-canvas svg{height:340px}.s2d-heading h3{font-size:18px}.s2d-buttonrow button{font-size:10px;padding:9px 4px}}

.s2d-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:7px 0 1px}
.s2d-thumb{overflow:hidden;min-width:0;cursor:pointer;background:#fffaf8;color:#865e6b;border:1px solid #e9d5d1;border-radius:10px;padding:5px;display:grid;gap:5px;font-size:10px;font-weight:700}
.s2d-thumb.active{background:#fbe5eb;border-color:#d38ca2;box-shadow:0 0 0 1px #e0a0b3}
.s2d-thumb-preview{display:block;overflow:hidden;border-radius:7px;background:#f9f1ec}
.s2d-thumb svg{width:100%;height:139px;object-fit:contain;display:block;filter:var(--s2d-light)}
@media(max-width:760px){.s2d-thumb svg{height:120px}}
@media(max-width:430px){.s2d-thumb svg{height:105px}}
