/* Store configuration: one reading flow, a persistent live preview, contextual help. */
#studioDialog{--glass-ink:#1d1d1f;--glass-muted:#626267;color:#1d1d1f;background:#fff;border:0;border-radius:22px;box-shadow:0 24px 80px #0003;backdrop-filter:none;-webkit-backdrop-filter:none;color-scheme:light}
#studioDialog[open]{display:flex;flex-direction:column;width:min(1260px,96vw);height:96dvh;max-height:96dvh;overflow:hidden}
#studioDialog::backdrop{background:#0005;backdrop-filter:none}
#studioDialog button{cursor:pointer}
#studioDialog .studio-head{display:flex;align-items:center;flex:none;gap:8px;min-height:72px;padding:14px 28px;background:#fff;border-bottom:1px solid #e7e7e9}
#studioDialog .studio-head>div{flex:1;min-width:0}
#studioDialog .studio-head small{font-size:10px;color:#626267;letter-spacing:.1em}
#studioDialog .studio-head h3{font-size:22px;letter-spacing:-.04em;font-weight:600;color:#1d1d1f;margin:4px 0 0}
#studioDialog #studioClose,#studioDialog #studioTools{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:0;border:0;border-radius:50%;font-size:24px;color:#414145;background:#f5f5f7;box-shadow:none}
#studioDialog #studioForm{display:block;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:none;scroll-behavior:auto}
#studioDialog #studioForm::-webkit-scrollbar{display:none}
#studioDialog .studio-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:48px;padding:28px;overflow:visible;min-height:auto}
#studioDialog .studio-stage{display:block;position:sticky;top:24px;align-self:start;overflow:visible;padding:0;min-height:0}
#studioDialog .studio-preview-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 12px;font-size:13px;color:#626267}
#studioDialog .studio-preview-heading strong{color:#1d1d1f;font-size:14px;font-weight:500}
#studioDialog .studio-viewport{background:#fff;border:0;border-radius:18px;overflow:hidden;padding:0}
#studioDialog .studio-viewport canvas{display:block;position:static;width:100%;height:clamp(280px,calc(96dvh - 230px),660px);max-height:none;aspect-ratio:auto;border-radius:0;background:#fff;object-fit:contain}
#studioDialog .studio-viewport.is-3d canvas{object-fit:fill}
#studioDialog .studio-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:0;overflow:visible}
#studioDialog .studio-tabs button{min-height:40px;border:1px solid #d2d2d7;border-radius:10px;background:#fff;color:#1d1d1f;box-shadow:none;padding:8px 12px;font-size:12px}
#studioDialog .studio-tabs button[aria-pressed=true]{border-color:#16806e;color:#116655;background:#f2f8f6}
#studioDialog .studio-stage>.studio-draft-tools,#studioDialog .studio-stage>.studio-preview-note{display:none}
#studioDialog .studio-fields{padding:0;margin:0;overflow:visible;max-height:none;min-height:0;scrollbar-gutter:auto}
#studioDialog .studio-intro{margin:0 0 32px}
#studioDialog .studio-intro h4,#studioDialog #studioCheckoutTitle{font-family:inherit;font-weight:600;font-size:34px;line-height:1.1;letter-spacing:-.04em;margin:0 0 14px;color:#1d1d1f}
#studioDialog .studio-intro>p{font-size:15px;line-height:1.55;color:#626267;margin:0 0 12px}
#studioDialog .studio-fields fieldset{padding:0;margin:0 0 36px;border:0;border-radius:0;background:transparent;box-shadow:none;min-width:0}
#studioDialog .studio-fields legend{float:none;width:auto;font-size:23px;font-weight:600;line-height:1.2;letter-spacing:-.03em;padding:0;margin:0 0 18px;color:#1d1d1f}
#studioDialog #studioOptionsLegend{display:none}
#studioDialog .studio-option-title{font-size:23px;letter-spacing:-.03em;line-height:1.25;font-weight:600;margin:26px 0 16px;color:#1d1d1f}
#studioDialog .studio-option-title:first-child{margin-top:0}
#studioDialog .studio-option-title>span{color:#626267}
#studioDialog .studio-model-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#studioDialog .studio-fields .studio-model-cards label{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;min-height:78px;padding:15px 12px;margin:0;border:1px solid #86868b;border-radius:12px;background:#fff;cursor:pointer;font-size:15px;line-height:1.45;font-weight:600;color:#1d1d1f}
#studioDialog .studio-model-cards label:has(:checked){border:2px solid #16806e;padding:14px 11px;background:#fff}
#studioDialog .studio-model-cards input,#studioDialog .studio-swatches input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;opacity:0;padding:0!important;overflow:hidden}
#studioDialog .studio-model-cards label:has(:focus-visible),#studioDialog .studio-swatches label:has(:focus-visible){outline:3px solid #16806e;outline-offset:4px}
#studioDialog .studio-swatches{display:flex;gap:6px;flex-wrap:wrap}
#studioDialog .studio-fields .studio-swatches label{position:relative;display:grid;place-items:center;width:44px;height:44px;padding:5px;margin:0;border:2px solid transparent;border-radius:50%;cursor:pointer}
#studioDialog .studio-swatches label:has(:checked){border-color:#16806e}
#studioDialog .studio-swatches span{display:block;width:30px;height:30px;border-radius:50%;background:var(--swatch);box-shadow:inset 0 1px 3px #0004}
#studioDialog .studio-fields label{font-size:15px;font-weight:600;color:#1d1d1f;margin:18px 0 8px}
#studioDialog .studio-fields input:not([type=checkbox]):not([type=radio]):not([type=file]),#studioDialog .studio-fields select,#studioDialog .studio-fields textarea{font-family:inherit;font-size:16px;background:#fff;color:#1d1d1f;border:1px solid #86868b;border-radius:12px;min-height:50px;padding:13px 14px;box-shadow:none}
#studioDialog .studio-fields .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#studioDialog .studio-fields textarea{resize:vertical}
#studioDialog .studio-fields input[type=file]{padding:14px;border:1px solid #86868b;background:#fafafa;border-radius:12px;width:100%;font-size:13px;color:#414145}
#studioDialog .studio-fields input::file-selector-button{background:#16806e;color:#fff;border:0;border-radius:8px;box-shadow:none;min-height:44px;padding:10px 14px;margin-bottom:0}
#studioDialog .studio-help,#studioDialog .studio-fields .studio-help{font-size:13px;line-height:1.55;color:#626267;margin:10px 0}
#studioDialog .studio-explain{font-size:14px;line-height:1.6;color:#414145;margin:10px 0 22px;border:0;background:transparent}
#studioDialog .studio-explain>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;color:#126655;font-size:14px;font-weight:500;list-style:none}
#studioDialog .studio-explain>summary::-webkit-details-marker{display:none}
#studioDialog .studio-explain>summary::after{content:'+';display:grid;place-items:center;flex:none;width:18px;height:18px;border:1px solid currentColor;border-radius:50%;font-size:14px;line-height:1;font-weight:400}
#studioDialog .studio-explain[open]>summary::after{content:'−'}
#studioDialog .studio-explain>div{padding:12px 16px;border-radius:12px;background:#f5f5f7}
#studioDialog .studio-explain p{margin:0 0 10px;font-size:14px;line-height:1.6}
#studioDialog .studio-explain p:last-child{margin-bottom:0}
#studioDialog .studio-fields .studio-check{display:flex;align-items:center;gap:10px;padding:12px;margin:14px 0 8px;background:#f5f5f7;border:0;border-radius:12px;font-size:14px;font-weight:400;line-height:1.4}
#studioDialog .studio-fields input[type=checkbox]{width:20px;height:20px;accent-color:#16806e;flex:none}
#studioDialog #studioChoices{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#studioDialog #studioChoices label{margin:0;border:1px solid #d2d2d7;background:#fff;min-height:52px}
#studioDialog #studioChoices label:has(:checked){border-color:#16806e;background:#f2f8f6}
#studioDialog .studio-small-button{min-height:44px;font-size:13px;color:#126655;background:none;border:0;padding:6px 0;text-underline-offset:3px}
#studioDialog .studio-file-name{overflow-wrap:anywhere;font-size:13px;line-height:1.5;color:#414145;padding:0;margin:10px 0}
#studioDialog .studio-file-name:empty{display:none}
#studioDialog .studio-footer{flex:none;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;padding:14px 28px max(14px,env(safe-area-inset-bottom));border-top:1px solid #e1e1e5;background:#fafafa}
#studioDialog .studio-footer-note{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#626267}
#studioDialog .studio-footer-note strong{font-size:14px;color:#1d1d1f;font-weight:600}
#studioDialog .studio-navigation{display:flex;align-items:center;gap:10px}
#studioDialog .studio-navigation button{min-height:48px;padding:12px 22px;margin:0;border:1px solid #d2d2d7;border-radius:12px;font:inherit;font-size:14px;font-weight:500;background:#fff;color:#1d1d1f}
#studioDialog .studio-navigation .cta{background:#16806e;border-color:#16806e;color:#fff;box-shadow:none}
#studioDialog .studio-navigation .cta:hover{background:#116b5b}
#studioDialog .studio-status{flex-basis:100%;min-height:0;color:#126655;font-size:13px;line-height:1.5;padding:0;overflow-wrap:anywhere}
#studioDialog .studio-status:empty{display:none}
#studioDialog #studioReview{margin:0 0 28px}
#studioDialog .studio-review-item{display:flex;align-items:flex-start;gap:16px;border-bottom:1px solid #e1e1e5;padding:18px 0}
#studioDialog .studio-review-item>div{flex:1;min-width:0}
#studioDialog .studio-review-item strong{font-size:16px;color:#1d1d1f}
#studioDialog .studio-review-item p{font-size:14px;line-height:1.55;color:#626267;margin:6px 0;overflow-wrap:anywhere}
#studioDialog .studio-review-item button{min-height:44px;background:transparent;border:0;font:inherit;font-size:13px;color:#126655;text-decoration:underline}
#studioDialog .studio-flow{color:#414145;font-size:14px;line-height:1.6}
#studioDialog .studio-price{border-color:#e1e1e5;font-size:18px}
#studioDialog :focus-visible{outline:3px solid #16806e;outline-offset:3px}
#studioDialog .studio-viewport #studioVisualMode,#studioDialog .studio-view-segments,#studioDialog .studio-viewport #studioFullscreen{background:#f5f5f7eF;border-color:#e1e1e5;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
#studioDialog .studio-viewport #studioVisualMode::before,#studioDialog .studio-view-segments::before{background:#16806e;box-shadow:none}
#studioDialog .studio-view-controls button[data-view=reset]{background:#f5f5f7eF;box-shadow:none}
#studioAux{width:min(500px,92vw);max-height:85dvh;padding:20px;background:#fff;color:#1d1d1f;border:0;border-radius:20px;box-shadow:0 20px 80px #0003}
#studioAux::backdrop{background:#0005}
#studioAuxClose{display:block;margin:0 0 8px auto;width:44px;height:44px;border-radius:50%;background:#f5f5f7;color:#414145;font-size:24px}
#studioAux .studio-actions{display:grid;grid-template-columns:1fr;gap:8px}
#studioAux button{min-height:44px;color:#126655;background:#fff;border:1px solid #d2d2d7;border-radius:10px;cursor:pointer}
#studioAux .studio-save-note,#studioAux .studio-warning{color:#626267;background:transparent;line-height:1.5}
#studioDialog.preview-fullscreen[open]{width:100vw;max-width:none;height:100dvh;max-height:100dvh;border-radius:0}
#studioDialog.preview-fullscreen .studio-footer{display:none}
#studioDialog.preview-fullscreen #studioForm{overflow:hidden}
#studioDialog.preview-fullscreen .studio-grid{display:block;padding:0;height:100%}
#studioDialog.preview-fullscreen .studio-stage{position:static;height:100%;padding:0}
#studioDialog.preview-fullscreen .studio-viewport,#studioDialog.preview-fullscreen #studioCanvas{height:100dvh;width:100%;border-radius:0}
@media(max-width:760px){
 #studioDialog[open]{width:100vw;max-width:none;height:100dvh;max-height:100dvh;margin:0;border-radius:0}
 #studioDialog .studio-head{min-height:60px;padding:8px 14px}
 #studioDialog .studio-head small{display:none}
 #studioDialog .studio-head h3{font-size:18px;margin:0}
 #studioDialog .studio-grid{display:block;padding:0 16px 24px;overflow:visible}
 #studioDialog .studio-stage{position:sticky;top:0;z-index:3;margin:0 -16px 20px;padding:8px 12px;background:#fff;border-bottom:1px solid #e7e7e9;box-shadow:0 5px 12px #00000005}
 #studioDialog .studio-preview-heading{margin:0 2px 4px;font-size:10px}
 #studioDialog .studio-preview-heading strong{font-size:12px}
 #studioDialog .studio-viewport canvas{height:clamp(170px,29dvh,280px)}
 #studioDialog .studio-viewport #studioVisualMode{top:4px;width:150px;padding:3px}
 #studioDialog .studio-viewport #studioVisualMode button{min-height:36px;font-size:12px;padding:6px 12px}
 #studioDialog .studio-view-controls{left:2px;right:2px;bottom:20px;gap:4px}
 #studioDialog .studio-view-controls button[data-view=reset]{min-height:36px;padding:6px;font-size:10px}
 #studioDialog .studio-view-segments button{min-height:36px;font-size:10px}
 #studioDialog .studio-viewport #studioFullscreen{width:36px;min-height:36px;font-size:23px}
 #studioDialog .studio-viewport #studioGestureHelp{font-size:9px;bottom:2px}
 #studioDialog .studio-tabs{gap:4px;margin:2px 0 4px}
 #studioDialog .studio-tabs button{min-height:32px;font-size:11px;padding:4px 8px}
 #studioDialog .studio-fields{padding:0;margin:0;overflow:visible}
 #studioDialog .studio-intro h4,#studioDialog #studioCheckoutTitle{font-size:30px}
 #studioDialog .studio-option-title,#studioDialog .studio-fields legend{font-size:22px}
 #studioDialog .studio-footer{padding:10px 14px max(10px,env(safe-area-inset-bottom));gap:6px}
 #studioDialog .studio-footer-note{flex-direction:row;justify-content:space-between;flex-basis:100%;font-size:10px}
 #studioDialog .studio-footer-note strong{font-size:11px}
 #studioDialog .studio-navigation{width:100%}
 #studioDialog .studio-navigation .cta{flex:1;justify-content:center}
 #studioDialog .studio-navigation button{min-height:44px;padding:11px 14px}
 #studioDialog .studio-fields .row{grid-template-columns:1fr}
 #studioDialog.preview-fullscreen .studio-stage{margin:0;padding:0;border:0}
}
@media(max-height:600px) and (max-width:760px){#studioDialog .studio-viewport canvas{height:160px}#studioDialog .studio-preview-heading{display:none}#studioDialog .studio-footer-note{display:none}}
@media(prefers-reduced-motion:reduce){#studioDialog *{transition:none!important;scroll-behavior:auto!important}}
#studioDialog .studio-viewport{box-shadow:none}
#studioDialog .studio-viewport canvas{box-shadow:none}
#studioDialog .studio-shape-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
#studioDialog .studio-fields .studio-shape-cards label{display:flex;flex-direction:column;gap:10px;min-height:100px;font-size:14px}
#studioDialog .studio-shape-cards svg{flex:none}
#studioDialog .studio-whatsapp{display:inline-flex;align-items:center;gap:7px;min-height:44px;color:#126655;text-decoration:none;font-size:12px;line-height:1.3;border-radius:8px}
#studioDialog .studio-whatsapp strong{font-size:inherit;color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px}
#studioDialog .studio-whatsapp svg{flex:none}
#studioDialog .studio-whatsapp:hover{color:#0d5145}
#studioDialog .studio-whatsapp[aria-disabled=true]{cursor:default}
@media(max-width:760px){#studioDialog .studio-footer-note{align-items:center}#studioDialog .studio-footer-note>span{display:none}#studioDialog .studio-whatsapp{font-size:11px}#studioDialog .studio-whatsapp span{max-width:145px}}
@media(max-height:600px) and (max-width:760px){#studioDialog .studio-footer-note{display:flex}#studioDialog .studio-footer-note>strong{font-size:10px}}
