/* Liquid glass treatment, scoped to the configurator. White product stage retained. */
#studioDialog{
 --glass-ink:#183c32;--glass-muted:#4c685e;--glass-edge:rgba(255,255,255,.82);
 --glass-shadow:inset 0 1px 0 #ffffffed,inset 0 -1px 0 #ffffff50,0 8px 28px #143b2910;
 color:var(--glass-ink);color-scheme:light;padding:0;border:1px solid #ffffffb8;border-radius:32px;
 background:radial-gradient(ellipse at 4% 0%,#ffffffd9,transparent 52%),radial-gradient(ellipse at 100% 60%,#a3d7c340,transparent 62%),rgba(225,237,231,.92);
 -webkit-backdrop-filter:blur(30px) saturate(140%);backdrop-filter:blur(30px) saturate(140%);
 box-shadow:inset 0 1px 1px #fff,0 30px 100px #061c2866,0 4px 16px #061c2824;
 scrollbar-color:#8aafa0 transparent;
}
#studioDialog::backdrop{background:#0b201d80;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}
#studioDialog .studio-head{align-items:center;background:linear-gradient(135deg,#ffffffad,#ffffff38);border-bottom:1px solid #ffffffb3;padding:22px 28px}
#studioDialog .studio-head small{color:#47665b;letter-spacing:.14em;font-size:10px}
#studioDialog .studio-head h3{font-size:25px;letter-spacing:-.03em;font-weight:600}
#studioDialog #studioClose{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid var(--glass-edge);background:linear-gradient(145deg,#ffffffc9,#ffffff60);color:var(--glass-ink);box-shadow:var(--glass-shadow);font-size:26px}
#studioDialog .studio-grid{gap:24px}
#studioDialog .studio-legend{color:#315d4d;font-size:29px;margin:2px 0 22px}
#studioDialog .studio-product-title{font-weight:600;font-size:22px;margin:4px 0 18px;letter-spacing:-.025em}
#studioDialog .studio-fields fieldset{min-width:0;margin:0 0 22px;padding:20px;border:1px solid var(--glass-edge);border-radius:24px;background:linear-gradient(135deg,#ffffff9c,#ffffff45);box-shadow:var(--glass-shadow)}
#studioDialog .studio-fields legend{padding:0 8px;font-size:17px;font-weight:600;color:#24523f;letter-spacing:-.02em}
#studioDialog .studio-fields label{font-size:13px;font-weight:500;color:#294f40}
#studioDialog .studio-fields input:not([type=checkbox]):not([type=file]),#studioDialog .studio-fields select,#studioDialog .studio-fields textarea{border:1px solid #92b4a67a;border-top-color:#ffffffd9;border-radius:14px;background:linear-gradient(145deg,#ffffffd9,#ffffff87);box-shadow:inset 0 1px 2px #163c2907,0 2px 6px #163c2904;color:#183c32;min-height:46px;padding:12px 14px;font-size:15px}
#studioDialog .studio-fields input::placeholder,#studioDialog .studio-fields textarea::placeholder{color:#637e72}
#studioDialog .studio-fields select option{background:#f5faf7;color:#183c32}
#studioDialog .studio-fields input:focus-visible,#studioDialog .studio-fields select:focus-visible,#studioDialog .studio-fields textarea:focus-visible,#studioDialog button:focus-visible{outline:2px solid #16806e;outline-offset:3px}
#studioDialog .studio-fields input[type=file]{color:#385d4b;font-size:13px}
#studioDialog .studio-fields input::file-selector-button{border:1px solid #ffffffde;background:linear-gradient(145deg,#ffffffd9,#e2efe7cc);color:#1b604a;border-radius:12px;min-height:44px;padding:10px 14px;box-shadow:var(--glass-shadow);cursor:pointer}
#studioDialog .studio-fields .studio-check{background:#ffffff70;border:1px solid #ffffffc7;border-radius:14px;padding:12px;line-height:1.5}
#studioDialog .studio-help,#studioDialog .studio-save-note{color:var(--glass-muted)}
#studioDialog .studio-file-name,#studioDialog .studio-flow{color:#365c4c}
#studioDialog .studio-status,#studioDialog #studioCounter{color:#13614c}
#studioDialog .studio-warning{border:1px solid #ffffffa6;border-left:3px solid #16806e;border-radius:16px;background:linear-gradient(135deg,#ffffffa1,#e2f0e776);color:#345b4b;box-shadow:var(--glass-shadow);padding:14px 16px;font-size:12px}
#studioDialog .studio-actions{gap:8px;margin:16px 0 12px}
#studioDialog .studio-actions button,#studioDialog .studio-tabs button{border:1px solid var(--glass-edge);border-radius:999px;background:linear-gradient(145deg,#ffffffd4,#ffffff5c);color:#315745;box-shadow:var(--glass-shadow);min-height:44px;padding:10px 15px;font-size:12px;transition:background .18s,box-shadow .18s}
#studioDialog .studio-actions button:hover,#studioDialog #studioClose:hover{background:#fffffff0;box-shadow:inset 0 1px 0 #fff,0 5px 16px #143b291a}
#studioDialog .studio-tabs button[aria-pressed=true]{background:linear-gradient(150deg,#249880,#16806e);color:#fff;border-color:#76bdaa;box-shadow:inset 0 1px 0 #ffffff52,0 4px 12px #16806e22}
#studioDialog .studio-small-button{color:#386454;text-decoration-color:#6d9888;text-underline-offset:4px}
#studioDialog .studio-price{padding:18px;border:1px solid var(--glass-edge);border-radius:18px;background:linear-gradient(135deg,#ffffffa6,#ffffff47);box-shadow:var(--glass-shadow)}
#studioDialog .studio-fields .cta{border:1px solid #67b6a5;border-radius:999px;background:linear-gradient(145deg,#218f7b,#126858);color:#fff;box-shadow:inset 0 1px 0 #ffffff5c,0 8px 20px #16806e26;min-height:52px;font-size:14px}
#studioDialog .studio-fields .cta:hover{background:linear-gradient(145deg,#279d88,#167762)}
#studioDialog .studio-flow{font-size:13px;line-height:1.7;padding-left:22px}
#studioDialog .studio-flow li{margin-bottom:10px;padding-left:4px}
#studioDialog .studio-flow li::marker{color:#16806e;font-weight:600}
#studioDialog .studio-viewport{border:1px solid #ffffffed;border-radius:26px;background:#fff;box-shadow:0 12px 36px #1a463519,inset 0 1px 0 #fff}
#studioDialog .studio-viewport canvas{border-radius:25px}
#studioDialog .studio-viewport #studioVisualMode,#studioDialog .studio-view-segments,#studioDialog .studio-viewport #studioFullscreen,#studioDialog .studio-view-controls button[data-view=reset]{background:linear-gradient(145deg,#f8faf9d9,#dce8e18c);border:1px solid #ffffffeb;box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 #bdd2c754,0 4px 14px #24473216;-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%)}
#studioDialog .studio-viewport #studioVisualMode::before,#studioDialog .studio-view-segments::before{background:linear-gradient(145deg,#259780,#16806e);box-shadow:inset 0 1px 0 #ffffff5e,0 2px 5px #0c44352b}
#studioDialog .studio-view-controls button[data-view=reset]{color:#b42332;border-color:#c34a5780}
#studioDialog .studio-view-controls button[data-view=reset]:hover{background:#fff0f1d9}
#studioDialog #capReferences{border:1px solid var(--glass-edge);border-radius:18px;background:#ffffff75;color:var(--glass-ink)}
#studioDialog #capReferences summary{color:#315745}
/* Expanded product view stays white, without a rounded edge cutting into it. */
#studioDialog.preview-fullscreen{border:0;border-radius:0;background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}
#studioDialog.preview-fullscreen .studio-viewport,#studioDialog.preview-fullscreen #studioCanvas{border-radius:0;box-shadow:none}
@media(max-width:760px){
 #studioDialog{border-radius:0;border:0;background:radial-gradient(ellipse at 100% 15%,#d3eadfa6,transparent 65%),#eaf1edef;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
 #studioDialog .studio-head{padding:16px}
 #studioDialog .studio-head h3{font-size:22px}
 #studioDialog .studio-grid{gap:22px;padding:12px 8px}
 #studioDialog .studio-fields{padding:0 4px}
 #studioDialog .studio-fields fieldset{padding:16px;border-radius:22px}
 #studioDialog .studio-fields input:not([type=checkbox]):not([type=file]),#studioDialog .studio-fields select,#studioDialog .studio-fields textarea{font-size:16px}
 #studioDialog .studio-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
 #studioDialog .studio-actions button{padding:10px 6px;font-size:11px}
 #studioDialog .studio-viewport{border-radius:22px}
 #studioDialog .studio-viewport canvas{border-radius:21px}
 #studioDialog .studio-legend{margin:4px 0 22px}
 #studioDialog.preview-fullscreen .studio-grid{padding:0}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){#studioDialog{background:#eaf1ed}#studioDialog .studio-viewport #studioVisualMode,#studioDialog .studio-view-segments,#studioDialog .studio-viewport #studioFullscreen{background:#edf3ef}}
@media(prefers-reduced-transparency:reduce){#studioDialog{background:#eaf1ed;backdrop-filter:none;-webkit-backdrop-filter:none}#studioDialog .studio-fields fieldset,#studioDialog .studio-viewport #studioVisualMode,#studioDialog .studio-view-segments,#studioDialog .studio-viewport #studioFullscreen,#studioDialog .studio-view-controls button[data-view=reset]{background:#f2f7f4;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){#studioDialog *,#studioDialog *::before{transition:none!important}}

/* Keep the dialog frame stable; scroll contents rather than losing its header. */
#studioDialog[open]{display:flex;flex-direction:column;height:min(940px,94dvh);overflow:hidden}
#studioDialog .studio-head{flex:0 0 auto;padding:16px 24px;min-height:82px;z-index:3}
#studioDialog #studioForm{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
#studioDialog .studio-grid{flex:1;min-height:0;overflow:hidden;align-items:stretch;padding:20px 24px;gap:24px;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}
#studioDialog .studio-stage{position:static;align-self:stretch;min-height:0;overflow:auto;padding:0 4px 8px 0;scrollbar-width:thin}
#studioDialog .studio-fields{min-height:0;overflow:auto;padding:0 6px 8px 2px;scrollbar-width:thin;scrollbar-gutter:stable}
#studioDialog .studio-tabs{margin:0 0 12px}
#studioDialog .studio-viewport canvas{height:clamp(260px,calc(94dvh - 370px),560px);max-height:none;aspect-ratio:auto;object-fit:contain}
#studioDialog .studio-viewport.is-3d canvas{object-fit:fill}
#studioDialog .studio-viewport,#studioDialog .studio-fields fieldset{border-radius:20px}
#studioDialog .studio-viewport canvas{border-radius:19px}
#studioDialog .studio-legend{font-size:25px;margin:0 0 18px}
#studioDialog .studio-fields fieldset{padding:18px;margin-bottom:16px;background:linear-gradient(135deg,#ffffffb5,#ffffff6e);box-shadow:inset 0 1px 0 #fff,0 4px 16px #143b2908}
#studioDialog .studio-fields legend{float:left;width:100%;padding:0;margin:0 0 14px;font-size:16px;line-height:1.4}
#studioDialog .studio-fields legend+*{clear:both}
#studioDialog .studio-product-title{font-size:20px;margin:0 0 14px}
#studioDialog .studio-fields label{margin-top:12px}
#studioDialog .studio-fields .studio-help{font-size:12px;line-height:1.55}
#studioDialog .studio-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0}
#studioDialog .studio-actions button{font-size:11px;padding:10px 7px;line-height:1.4}
#studioDialog .studio-warning{margin:12px 0;padding:10px 12px}
#studioDialog .studio-save-note{font-size:11px;line-height:1.5}
#studioDialog #studioStatus{flex:0 0 auto;padding:0 24px 12px}
#studioDialog #studioStatus:empty{display:none}
#studioDialog #studioLocalStatus:empty{min-height:0}
#studioDialog #studioChoices label{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:#ffffff85}
#studioDialog #studioChoices input{accent-color:#16806e;flex:0 0 18px;width:18px;height:18px}
@media(max-width:760px){
 #studioDialog[open]{width:100%;height:100dvh;max-height:100dvh}
 #studioDialog .studio-head{padding:12px 16px;min-height:76px}
 #studioDialog .studio-head h3{font-size:20px}
 #studioDialog #studioForm{overflow:auto;overscroll-behavior:contain}
 #studioDialog .studio-grid{display:block;flex:none;overflow:visible;padding:12px;min-height:auto}
 #studioDialog .studio-stage,#studioDialog .studio-fields{overflow:visible;min-height:auto;max-height:none;padding:0;scrollbar-gutter:auto}
 #studioDialog .studio-fields{margin-top:24px}
 #studioDialog .studio-viewport canvas{height:clamp(320px,55dvh,500px)}
 #studioDialog .studio-fields fieldset{padding:16px}
 #studioDialog .studio-fields legend{font-size:16px}
 #studioDialog .studio-actions button{font-size:11px}
 #studioDialog #studioStatus{padding:0 16px 16px}
}
#studioDialog.preview-fullscreen[open]{height:100dvh;max-height:none}
#studioDialog.preview-fullscreen #studioForm{overflow:hidden}
#studioDialog.preview-fullscreen .studio-grid{display:block;flex:1;padding:0;overflow:hidden}
#studioDialog.preview-fullscreen .studio-stage{height:100%;padding:0;overflow:hidden}
#studioDialog.preview-fullscreen .studio-viewport,#studioDialog.preview-fullscreen #studioCanvas{height:100dvh;border-radius:0}
