:root{--polish-ease: cubic-bezier(.2, .7, .3, 1);--polish-duration: .2s}@media(prefers-reduced-motion:reduce){.configurator *,.configurator *:before,.configurator *:after,.shell *,.shell *:before,.shell *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.configurator .swatch-set{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(135px,100%),1fr));gap:12px}.configurator .swatch{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:0;width:auto;min-width:0;padding:6px;grid-column:auto;border:1px solid var(--rule-strong);border-radius:var(--radius-lg);background:var(--panel);color:var(--ink);text-align:left;transform:none;box-shadow:none}.configurator .swatch__chip{position:static;display:block;width:100%;height:64px;border:0;border-radius:var(--radius);box-shadow:none}.configurator .swatch__caption{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding:10px 4px 6px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.configurator .swatch .choice__price{margin:0;color:var(--ink-muted);white-space:nowrap;font-size:12px}.configurator .swatch:has(input:checked){border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.configurator .swatch:has(input:checked) .swatch__chip{border:0;box-shadow:none}.configurator .swatch:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:4px}.configurator .swatch:has(input:disabled){opacity:.5;cursor:not-allowed}.product-shell{display:flex;flex-direction:column;align-items:stretch;gap:32px}.product-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}.product-overview>img{max-height:300px;object-fit:cover}.configurator{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);align-items:start;gap:32px}.configurator__steps{display:flex;flex-direction:column;gap:20px;min-width:0}.configurator>.price-summary{position:sticky;top:20px;max-height:calc(100dvh - 40px);overflow-y:auto}.price-summary__action>.btn{width:100%}.price-summary__mobile-total{display:none}.configurator>details{grid-column:1 / -1}@media(max-width:760px){.product-overview,.configurator{grid-template-columns:minmax(0,1fr)}.configurator{padding-bottom:calc(90px + env(safe-area-inset-bottom))}.configurator>.price-summary{position:static;max-height:none;overflow:visible}.price-summary__action{position:fixed;z-index:30;inset:auto 0 0;display:flex;align-items:center;gap:16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--rule-strong);box-shadow:0 -4px 16px #0000000a}.price-summary__mobile-total{display:grid;flex:1;white-space:nowrap;font-variant-numeric:tabular-nums}.price-summary__action>.btn{width:auto;max-width:60%}.configurator :is(input,select,textarea,button){scroll-margin-block:100px}}@keyframes polish-enter{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.configurator .price-update{display:inline-block;animation:polish-enter var(--polish-duration) var(--polish-ease) both}.configurator .price-summary__line{animation:polish-enter var(--polish-duration) var(--polish-ease) both}.configurator :is(.configurator__field,.price-summary__path,.price-summary__quote){animation-duration:var(--polish-duration);animation-timing-function:var(--polish-ease)}.configurator .price-summary__sync>span{animation:none}.configurator :is(.swatch,.choice){transition:border-color var(--polish-duration) var(--polish-ease),background-color var(--polish-duration) var(--polish-ease),box-shadow var(--polish-duration) var(--polish-ease)}.configurator .swatch:after{content:"✓";position:absolute;top:12px;right:12px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#18181b;color:#fff;font-size:13px;opacity:0;transform:scale(.85);transition:opacity var(--polish-duration) var(--polish-ease),transform var(--polish-duration) var(--polish-ease)}.configurator .swatch:has(input:checked):after{opacity:1;transform:scale(1)}.configurator .choice:has(input:checked){border-color:var(--ink);background:var(--panel-alt);box-shadow:inset 0 0 0 1px var(--ink)}.configurator :is(.choice,.checkbox) input{accent-color:var(--ink);transform:scale(.95);transition:transform var(--polish-duration) var(--polish-ease)}.configurator :is(.choice,.checkbox) input:checked{transform:scale(1)}.configurator .swatch:hover:not(:has(input:disabled)){background:var(--panel-alt)}.configurator__progress-fill{transition:width var(--polish-duration) var(--polish-ease)}.configurator__step{transition:background-color var(--polish-duration) var(--polish-ease),color var(--polish-duration) var(--polish-ease)}.configurator__field[data-complete=true] .configurator__step{background:var(--ink);border-color:var(--ink);color:var(--panel);transform:none}.configurator__check{animation:polish-enter var(--polish-duration) var(--polish-ease) both}.product-visual,.product-placeholder{width:100%;aspect-ratio:16 / 10;border:1px solid var(--rule);border-radius:var(--radius-lg);overflow:hidden}.product-visual{object-fit:cover}.product-placeholder{position:relative;display:grid;place-items:center;background:var(--panel-alt)}.product-placeholder__composition{position:relative;width:54%;height:60%;margin-bottom:32px}.product-placeholder__composition span{position:absolute;border:1px solid color-mix(in srgb,var(--product-accent) 30%,var(--rule));border-radius:48% 48% 8px 8px}.product-placeholder__composition span:nth-child(1){top:0;right:24%;bottom:10%;left:0;background:color-mix(in srgb,var(--product-accent) 12%,var(--panel))}.product-placeholder__composition span:nth-child(2){top:22%;right:0;bottom:0;left:36%;background:color-mix(in srgb,var(--product-accent) 24%,var(--panel))}.product-placeholder__composition span:nth-child(3){top:55%;right:15%;bottom:-4%;left:15%;border-radius:6px;background:color-mix(in srgb,var(--product-accent) 7%,var(--panel))}.product-placeholder__caption{position:absolute;bottom:20px;text-align:center;font-size:12px;color:var(--ink)}.product-placeholder__caption>span{display:block;margin-top:4px;color:var(--ink-muted);font-size:11px}.configurator__field[data-invalid=true]{background:var(--panel-alt);border-radius:var(--radius);box-shadow:-3px 0 0 var(--brass);padding:12px}.configurator .field__error{color:var(--ink-muted);font-size:12px}.configurator :is(input,select,textarea,button):focus-visible{outline:2px solid var(--ink);outline-offset:3px}.shell :is(.btn,.button,.tab,.nav-link,.field-row__handle,.inline-editor__trigger,.data-table tbody tr,input,select,textarea){transition:background-color var(--polish-duration) var(--polish-ease),border-color var(--polish-duration) var(--polish-ease),color var(--polish-duration) var(--polish-ease),box-shadow var(--polish-duration) var(--polish-ease),transform var(--polish-duration) var(--polish-ease)}.shell :is(.btn,.button):active:not(:disabled){transform:translateY(1px)}.shell .tab:hover{color:var(--foreground);border-bottom-color:var(--rule-strong)}.shell .tab[aria-selected=true]{border-bottom-color:var(--foreground)}.shell .data-table tbody tr:focus-within{background:var(--secondary)}.shell input:is([type=checkbox],[type=radio]){accent-color:var(--foreground);transform:scale(.95)}.shell input:is([type=checkbox],[type=radio]):checked{transform:scale(1)}.admin-route-content{display:contents}.admin-route-content[hidden]{display:none}.admin-skeleton{min-height:520px}.admin-skeleton__shapes{display:grid;gap:24px}.admin-skeleton span:not(.visually-hidden){display:block;height:12px;border-radius:4px;background:var(--secondary)}.admin-skeleton__heading{display:grid;gap:12px}.admin-skeleton__heading span:first-child{width:40%;height:28px}.admin-skeleton__heading span:last-child{width:60%}.admin-skeleton__metrics,.admin-skeleton__tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.admin-skeleton__metrics span{height:96px!important;border-radius:var(--radius-lg)!important}.admin-skeleton__panel{border-radius:var(--radius-lg);background:var(--card);padding:8px 24px}.admin-skeleton__row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px;padding:24px 0;border-bottom:1px solid var(--rule)}.admin-skeleton__row:last-child{border:0}@media(max-width:700px){.admin-skeleton__metrics{grid-template-columns:repeat(2,1fr)}}.shell .builder-save-status{display:flex;align-items:center;gap:8px;margin:-8px 0 0;color:var(--ink-muted);font-size:12px;min-height:20px;font-variant-numeric:tabular-nums}.builder-save-status>span{width:6px;height:6px;border-radius:50%;background:var(--moss)}.builder-save-status>span:not([data-state=saved]){background:var(--brass)}.shell :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--foreground);outline-offset:3px}.shell .field-row:focus-within{background:var(--secondary);border-radius:var(--radius)}.shell .field-row__handle[aria-disabled=true]{cursor:wait;opacity:.5}.shell .field-row__handle{min-width:28px}.shell #builder-panel:focus-visible{outline-offset:6px;border-radius:var(--radius)}.shell{--workspace-radius: 12px}.shell :is(.panel,.card,.preview-frame,.billing-plan){border-radius:var(--workspace-radius);box-shadow:none}.shell .panel .panel{border-radius:0}.shell :is(.panel__head,.panel__body){padding-left:var(--space-5);padding-right:var(--space-5)}.shell .panel__head{padding-top:var(--space-5);padding-bottom:var(--space-3)}.shell .panel__body{padding-top:var(--space-5);padding-bottom:var(--space-5)}.shell .panel__head+.panel__body{padding-top:var(--space-2)}.shell .panel__foot{padding:var(--space-4) var(--space-5)}.shell .panel__body--flush,.shell .panel__head+.panel__body--flush{padding:0}.shell .field-list{padding:0 var(--space-5)}.shell .field-row__expanded{padding:var(--space-4);border-radius:var(--radius)}.shell .empty{padding:var(--space-6) var(--space-5);gap:var(--space-5)}.shell .empty .lede{max-width:54ch;font-size:14px;line-height:1.6}.shell .template-wizard li>span{gap:var(--space-1)}@media(max-width:700px){.shell :is(.panel__head,.panel__body,.panel__foot){padding-left:var(--space-4);padding-right:var(--space-4)}.shell .panel__body--flush,.shell .panel__head+.panel__body--flush{padding:0}.shell .field-list{padding:0 var(--space-4)}.shell .empty{padding:var(--space-5) var(--space-4)}}.configurator .swatch:is(:hover,:has(input:checked)) .swatch__chip{transform:none}.configurator :is(.btn,input,select,textarea,.price-summary,.price-summary__total span:last-child){transition-duration:var(--polish-duration);transition-timing-function:var(--polish-ease)}.price-summary__feedback{margin-top:12px;font-size:12px}@media(min-width:761px){.configurator>.price-summary{overflow:hidden}.price-summary>*{flex-shrink:0}.price-summary>.price-summary__quote{flex-shrink:1;min-height:0;overflow-y:auto;padding:16px 4px 4px}}@media(max-width:760px){.price-summary__action{flex-wrap:wrap}.price-summary__feedback{flex-basis:100%;margin:0}}.configurator .choice{padding-right:40px;font-weight:500}.configurator .choice:after{content:"✓";position:absolute;right:12px;top:50%;display:grid;place-items:center;width:18px;height:18px;margin:0;border-radius:50%;background:var(--ink);color:var(--panel);font-size:11px;line-height:1;opacity:0;transform:translateY(-50%) scale(.85);transition:opacity var(--polish-duration) var(--polish-ease),transform var(--polish-duration) var(--polish-ease)}.configurator .choice:has(input:checked):after{opacity:1;transform:translateY(-50%) scale(1)}.configurator .choice:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:3px}.configurator .choice:hover:not(:has(input:disabled)){transform:none}
