:root{--paper: #f1f1ef;--white: #ffffff;--ink: #0a0a0a;--ink-70: rgba(10, 10, 10, .7);--muted: #75756e;--line: #e7e7e2;--lime: #d2fb27;--r-card: 28px;--r-block: 18px;--r-pill: 999px;--font-display: "Anton", "Arial Narrow", Impact, sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box;margin:0;padding:0;-webkit-user-select:none;user-select:none}html,body,#root{width:100%;height:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:15px;-webkit-font-smoothing:antialiased;overflow:hidden}button{font-family:inherit;cursor:pointer}.display{font-family:var(--font-display);font-weight:400;text-transform:uppercase;line-height:.86;letter-spacing:.01em}.eyebrow{font-size:.66rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.app-shell{height:100%;padding:14px;display:flex;flex-direction:column;gap:14px;background:var(--paper)}.top-bar{flex-shrink:0;height:62px;padding:0 10px 0 22px;background:var(--white);border-radius:var(--r-pill);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink)}.brand-mark{display:block}.brand-name{font-family:var(--font-display);font-size:1.35rem;text-transform:none;letter-spacing:.02em}.brand-divider{width:1px;height:20px;background:var(--line)}.brand-tag{font-size:.72rem;font-weight:500;color:var(--muted);letter-spacing:.02em}.top-meta{display:flex;align-items:center;gap:18px}.build-chip{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:var(--r-pill);background:var(--paper);border:1px solid var(--line);color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.03em}.status-chip{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 14px;border-radius:var(--r-pill);background:var(--lime);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--ink)}.btn-pill{display:inline-flex;align-items:center;gap:14px;height:46px;padding:0 5px 0 20px;background:var(--ink);color:var(--white);border:none;border-radius:var(--r-pill);font-size:.86rem;font-weight:600;letter-spacing:.01em;transition:background .18s ease,transform .18s ease}.btn-pill:hover{background:#1f1f1d}.btn-pill:active{transform:scale(.985)}.btn-badge{width:36px;height:36px;border-radius:50%;background:var(--white);color:var(--ink);display:grid;place-items:center;flex-shrink:0;transition:background .18s ease,transform .25s ease}.btn-pill:hover .btn-badge{background:var(--lime);transform:rotate(90deg)}.btn-pill.full{width:100%;height:58px;padding:0 6px 0 26px;justify-content:space-between;font-size:.95rem}.btn-pill.full .btn-badge{width:46px;height:46px}.btn-ghost{height:46px;padding:0 18px;background:transparent;border:1px solid var(--line);border-radius:var(--r-pill);color:var(--ink);font-size:.84rem;font-weight:600;display:inline-flex;align-items:center;gap:9px;transition:background .18s ease,border-color .18s ease}.btn-ghost:hover{background:var(--paper);border-color:#d8d8d2}.studio-grid{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:14px}.stage-card{position:relative;background:var(--white);border-radius:var(--r-card);overflow:hidden}.canvas-container{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .45s cubic-bezier(.16,1,.3,1)}.canvas-container.ready{opacity:1}.stage-canvas-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2}.stage-loader{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background:#fffffff0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--r-card);transition:opacity .4s ease,visibility .4s ease;pointer-events:none}.stage-loader-inner{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.stage-loader-spinner{position:relative;width:52px;height:52px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--ink);animation:stage-spin .85s linear infinite}.stage-loader-core{position:absolute;top:50%;left:50%;width:10px;height:10px;margin:-5px 0 0 -5px;background:var(--lime);border-radius:50%;box-shadow:0 0 10px var(--lime)}@keyframes stage-spin{to{transform:rotate(360deg)}}.stage-loader-text-wrap{display:flex;flex-direction:column;gap:4px}.stage-loader-title{font-size:.85rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink)}.stage-loader-sub{font-size:.75rem;color:var(--muted)}.stage-head{position:absolute;top:30px;left:30px;z-index:1;display:flex;flex-direction:column;gap:12px;max-width:60%;pointer-events:none}.stage-foot{position:absolute;bottom:30px;left:50%;transform:translate(-50%);z-index:3;display:flex;align-items:flex-end;justify-content:center;pointer-events:none}.camera-toolbar,.hotspot-btn{pointer-events:auto}.stage-title{font-size:clamp(2.6rem,5.2vw,4.6rem);color:var(--ink)}.stage-sub{font-size:.8rem;color:var(--muted);letter-spacing:.01em;max-width:34ch;line-height:1.5}.stage-foot{display:flex;align-items:flex-end;justify-content:center}.camera-toolbar{display:flex;align-items:center;flex-wrap:nowrap;gap:4px;padding:5px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-pill);box-shadow:0 10px 30px #0a0a0a12;max-width:95vw;overflow:visible}.view-pill{position:relative;display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 16px;background:transparent;border:none;border-radius:var(--r-pill);color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;transition:color .15s ease,background .15s ease;white-space:nowrap;flex-shrink:0;width:auto}.view-pill:hover{color:var(--ink);background:var(--paper)}.view-pill.active{color:var(--white)}.view-pill.active:hover{background:transparent}.view-pill-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:var(--ink);border-radius:var(--r-pill)}.view-pill-label{position:relative;z-index:1;white-space:nowrap}.view-pill:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.toolbar-divider{width:1px;height:20px;margin:0 5px;background:var(--line)}.rotate-pill,.roam-pill,.lock-pill,.annotation-pill{display:inline-flex;align-items:center;gap:7px;padding:0 14px;border:1px solid var(--line);color:var(--muted);background:transparent;border-radius:var(--r-pill);font-size:.72rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;transition:all .15s ease}.rotate-pill:hover,.roam-pill:hover,.lock-pill:hover,.annotation-pill:hover{background:var(--paper);color:var(--ink);border-color:#c7c7c0}.rotate-pill.active,.roam-pill.active,.lock-pill.active,.annotation-pill.active{background:var(--lime)!important;color:var(--ink)!important;border-color:var(--lime)!important;font-weight:700;box-shadow:0 2px 10px #d2fb2759}.rotate-pill.active:hover,.roam-pill.active:hover,.lock-pill.active:hover,.annotation-pill.active:hover{background:#c3ec20!important;color:var(--ink)!important;border-color:#c3ec20!important}.rotate-pill.active svg,.roam-pill.active svg,.lock-pill.active svg,.annotation-pill.active svg{color:var(--ink)!important;stroke:var(--ink)!important}.spin{animation:spin 3.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tooltip-wrap{position:relative;display:inline-flex}.custom-tooltip{position:absolute;bottom:calc(100% + 9px);left:50%;transform:translate(-50%) translateY(4px);opacity:0;visibility:hidden;pointer-events:none;z-index:9999;width:max-content;max-width:220px;padding:6px 11px;background:var(--lime);border:1px solid rgba(10,10,10,.14);border-radius:6px;box-shadow:0 8px 20px #0a0a0a24,0 2px 6px #0a0a0a14;font-size:.72rem;line-height:1.38;color:var(--ink);font-weight:600;text-align:center;white-space:normal;transition:opacity .1s cubic-bezier(.16,1,.3,1),transform .1s cubic-bezier(.16,1,.3,1),visibility .1s}.custom-tooltip.tooltip-wide{max-width:250px}.tooltip-wrap:hover .custom-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.custom-tooltip:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px 5px 0 5px;border-style:solid;border-color:var(--lime) transparent transparent transparent}.config-panel{background:var(--white);border-radius:var(--r-card);padding:26px 22px 22px;display:flex;flex-direction:column;min-height:0;overflow-y:hidden;overflow-x:hidden}.sheet-drag-area{display:block;width:100%;box-sizing:border-box}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;width:100%;box-sizing:border-box}.panel-head-title-wrap{display:flex;align-items:baseline;gap:12px}.panel-title{font-size:2.1rem}.step-counter{font-family:var(--font-display);font-size:.95rem;color:var(--muted);letter-spacing:.04em}.panel-close-btn{display:none;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--paper);border:1px solid var(--line);color:var(--ink);cursor:pointer;transition:background .15s ease,transform .15s ease;touch-action:manipulation}.panel-close-btn:hover{background:#e5e5de;transform:scale(1.05)}.panel-close-btn:active{transform:scale(.95)}.sheet-drag-handle{display:none;width:38px;height:4px;border-radius:2px;background:#00000038;margin:-6px auto 12px;flex-shrink:0}.panel-body-scroll{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;width:100%;box-sizing:border-box}.mobile-sheet-backdrop,.mobile-floating-dock{display:none}.category-tabs-container{margin-bottom:22px;width:100%}.category-tabs{display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);width:100%;padding-bottom:0;overflow-x:auto}.category-tabs::-webkit-scrollbar{display:none}.category-tab-btn{position:relative;flex:0 0 auto;width:auto;display:inline-flex;align-items:center;justify-content:center;padding:6px 2px 12px;background:transparent;border:none;border-radius:0;color:var(--muted);font-size:.74rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;transition:color .15s ease;cursor:pointer}.category-tab-btn:hover{color:var(--ink)}.category-tab-btn.active{color:var(--ink);font-weight:700}.tab-active-line{position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--ink);border-radius:1px}.tab-label{position:relative;z-index:1;white-space:nowrap}.panel-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;margin:0;padding:0 4px 0 0;width:100%;box-sizing:border-box}.panel-scroll::-webkit-scrollbar{width:3px}.panel-scroll::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}.section-meta{margin-bottom:16px;width:100%;box-sizing:border-box}.section-title{font-size:1.35rem;margin-bottom:6px}.section-desc{font-size:.78rem;line-height:1.5;color:var(--muted)}.swatch-list{display:flex;flex-direction:column;gap:4px;width:100%;box-sizing:border-box;overflow-x:hidden}.swatch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;background:transparent;border:none;border-radius:var(--r-block);text-align:left;transition:background .15s ease,color .15s ease;width:100%;box-sizing:border-box}.swatch-row:hover{background:var(--paper)}.swatch-row.selected{background:var(--ink)}.swatch-left{display:flex;align-items:center;gap:12px;min-width:0}.swatch-chip{width:26px;height:26px;border-radius:50%;border:1px solid rgba(10,10,10,.14);display:grid;place-items:center;flex-shrink:0}.swatch-row.selected .swatch-chip{border-color:#ffffff59;box-shadow:0 0 0 2px var(--ink),0 0 0 3.5px var(--lime)}.swatch-name{font-size:.85rem;font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swatch-row.selected .swatch-name{color:var(--white);font-weight:600}.swatch-price{font-size:.76rem;font-weight:600;color:var(--ink);flex-shrink:0}.swatch-price.included{font-weight:500;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.66rem}.swatch-row.selected .swatch-price{color:var(--lime)}.swatch-row.selected .swatch-price.included{color:#ffffff8c}.desktop-checkout-view{display:block;width:100%}.mobile-checkout-view{display:none}.checkout-block{flex-shrink:0;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.price-breakdown{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-block);padding:10px 14px;margin-bottom:14px;display:flex;flex-direction:column;gap:8px;transition:background .15s ease}.breakdown-toggle-btn{width:100%;display:flex;align-items:center;justify-content:space-between;background:transparent;border:none;cursor:pointer;padding:0;text-align:left}.breakdown-toggle-left{display:flex;align-items:center;gap:8px}.breakdown-badge{font-size:.68rem;font-weight:700;color:var(--ink);background:var(--lime);padding:2px 7px;border-radius:var(--r-pill);letter-spacing:.02em}.breakdown-toggle-right{display:flex;align-items:center}.breakdown-chevron{color:var(--muted);transition:transform .22s cubic-bezier(.16,1,.3,1)}.breakdown-chevron.expanded{transform:rotate(180deg)}.breakdown-list{display:flex;flex-direction:column;gap:5px;padding-top:6px;border-top:1px solid rgba(10,10,10,.06);animation:breakdownFadeIn .2s cubic-bezier(.16,1,.3,1) forwards}@keyframes breakdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.breakdown-row{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;color:var(--muted)}.breakdown-row.addon{color:var(--ink);font-weight:500}.breakdown-row.unit-total{margin-top:4px;padding-top:6px;border-top:1px dashed var(--line);font-weight:600;color:var(--ink);font-size:.82rem}.breakdown-value{font-variant-numeric:tabular-nums;font-weight:600}.price-row{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:16px}.price-labels{display:flex;flex-direction:column;gap:6px}.price-total{font-size:2.6rem;line-height:.82}.price-sub-calc{text-align:right}.unit-note{font-size:.72rem;color:var(--muted);text-align:right;padding-bottom:4px}.qty-stepper{display:flex;align-items:center;gap:4px;height:58px;padding:0 8px;border:1px solid var(--line);border-radius:var(--r-pill);flex-shrink:0}.qty-stepper button{width:42px;height:42px;display:grid;place-items:center;background:transparent;border:none;border-radius:50%;color:var(--ink);transition:background .15s ease}.qty-stepper button:hover:not(:disabled){background:var(--paper)}.qty-stepper button:disabled{color:#c9c9c4;cursor:not-allowed}.qty-num{min-width:28px;text-align:center;font-size:.98rem;font-weight:600}.checkout-actions{display:flex;align-items:center;gap:8px}.hotspot-html-hovered{z-index:99999!important}.hotspot-btn{position:relative;z-index:10;background:transparent;border:none;display:flex;align-items:center;justify-content:center;width:52px;height:52px}.hotspot-btn.hovered,.hotspot-btn:hover{z-index:99999!important}.hotspot-ping{position:absolute;width:29px;height:29px;border-radius:50%;background:#0a0a0a29;animation:pulse-ping 2.4s cubic-bezier(0,0,.2,1) infinite}.hotspot-dot{width:14px;height:14px;border-radius:50%;background:var(--ink);border:3px solid var(--white);box-shadow:0 2px 6px #0a0a0a4d;transition:background .15s ease}.hotspot-btn.hovered .hotspot-dot,.hotspot-btn:hover .hotspot-dot{background:var(--lime)}.hotspot-label{position:absolute;left:30px;white-space:nowrap;background:var(--ink);color:var(--white);font-size:1.12rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:8px 16px;border-radius:var(--r-pill);opacity:0;transform:translate(-4px);transition:all .18s ease;pointer-events:none;box-shadow:0 4px 18px #0a0a0a59;z-index:99999!important}.hotspot-btn.hovered .hotspot-label,.hotspot-btn:hover .hotspot-label{opacity:1;transform:translate(0);z-index:99999!important}@keyframes pulse-ping{75%,to{transform:scale(2.2);opacity:0}}.loading-screen{height:100%;display:grid;place-items:center;font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.webgl-fallback{height:100%;display:grid;place-items:center;padding:20px}.fallback-card{max-width:460px;padding:40px;background:var(--white);border-radius:var(--r-card);text-align:center}.fallback-icon{color:var(--ink);margin-bottom:18px}.fallback-card h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:1.8rem;line-height:.9;margin-bottom:14px}.fallback-card p{font-size:.85rem;line-height:1.6;color:var(--muted)}.fallback-sub{margin-top:12px;font-size:.78rem!important}.share-btn-text-short{display:none}.share-btn-text-full{display:inline}.annotation-text-short{display:none}.annotation-text-full{display:inline}.desktop-camera-group{display:flex;align-items:center;gap:4px}.btn-mobile-price{display:none}@media (max-width: 1200px){.studio-grid{grid-template-columns:minmax(0,1fr) 420px}.config-panel{padding:22px 18px 18px}}@media (max-width: 900px){html,body{margin:0!important;padding:0!important;width:100%!important;height:100%!important;min-height:100%!important;background:#fff!important}#root{margin:0!important;padding:0!important;width:100%!important;height:100%!important;min-height:680px!important;display:flex!important;flex-direction:column!important}.app-shell{margin:0!important;padding:0!important;gap:0!important;border-radius:0!important;width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;max-width:100%!important;flex:1!important;display:flex!important;flex-direction:column!important;background:#fff!important;overflow:hidden!important}.studio-grid{margin:0!important;padding:0!important;gap:0!important;border-radius:0!important;width:100%!important;height:calc(100% - 50px)!important;flex:1!important;min-height:0!important;display:flex!important;flex-direction:column!important;position:relative!important;background:#fff!important;overflow:hidden!important}.stage-card{margin:0!important;border-radius:0!important;width:100%!important;height:100%!important;flex:1!important;min-height:0!important;position:relative!important;background:#fff!important;overflow:hidden!important}.stage-canvas-wrap{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;z-index:2!important}.canvas-container{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important}.top-bar{margin:0!important;border-radius:0!important;border-top:none!important;border-left:none!important;border-right:none!important;height:50px!important;padding:0 12px 0 16px!important}.share-btn-text-full{display:none}.share-btn-text-short{display:inline}.share-navbar-btn{height:34px!important;min-height:34px!important;padding:0 4px 0 10px!important;gap:6px!important;font-size:.78rem!important;font-weight:600!important;letter-spacing:.02em!important;border-radius:999px!important}.share-navbar-btn .btn-badge{width:26px!important;height:26px!important;min-width:26px!important}.share-navbar-btn .btn-badge svg{width:13px!important;height:13px!important}.desktop-only-toolbar{display:none!important}.mobile-floating-dock{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;position:fixed!important;bottom:calc(14px + env(safe-area-inset-bottom,0px))!important;left:12px!important;right:12px!important;max-width:440px!important;margin:0 auto!important;z-index:1000!important;pointer-events:auto!important;box-sizing:border-box!important;animation:dockFadeIn .25s cubic-bezier(.16,1,.3,1) forwards}@keyframes dockFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.mobile-dock-recenter,.mobile-dock-annotation{width:44px!important;height:44px!important;min-width:44px!important;border-radius:50%!important;background:#ffffffe0!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;border:1px solid rgba(0,0,0,.12)!important;box-shadow:0 8px 24px #00000024!important;color:#111!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;padding:0!important;flex-shrink:0!important;transition:transform .15s ease,background .15s ease,color .15s ease!important;touch-action:manipulation}.mobile-dock-recenter:active,.mobile-dock-annotation:active{transform:scale(.92)!important}.mobile-dock-annotation.active{background:var(--ink)!important;color:#fff!important;border-color:var(--ink)!important}.mobile-dock-customize{flex:1!important;min-width:0!important;height:48px!important;padding:0 6px 0 14px!important;background:#0c0c0cf0!important;backdrop-filter:blur(20px) saturate(180%)!important;-webkit-backdrop-filter:blur(20px) saturate(180%)!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:999px!important;box-shadow:0 10px 30px #00000059,inset 0 1px #fff3!important;display:flex!important;align-items:center!important;justify-content:space-between!important;color:#fff!important;cursor:pointer!important;box-sizing:border-box!important;transition:transform .15s ease,background .15s ease!important;touch-action:manipulation}.mobile-dock-customize:active{transform:scale(.98)!important}.mobile-dock-cust-left{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important;overflow:hidden!important}.mobile-dock-swatch-dot{width:14px!important;height:14px!important;min-width:14px!important;border-radius:50%!important;border:2px solid rgba(255,255,255,.85)!important;box-shadow:0 2px 6px #00000059!important;flex-shrink:0!important}.mobile-dock-text-col{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;min-width:0!important;overflow:hidden!important;line-height:1.1!important}.mobile-dock-title{font-family:var(--font-display)!important;font-size:1.05rem!important;font-weight:400!important;letter-spacing:.05em!important;text-transform:uppercase!important;color:#fff!important;white-space:nowrap!important}.mobile-dock-sub{font-size:.64rem!important;font-weight:600!important;letter-spacing:.03em!important;color:#fff9!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.mobile-dock-cust-right{display:flex!important;align-items:center!important;gap:8px!important;flex-shrink:0!important}.mobile-dock-price{font-size:.88rem!important;font-weight:700!important;color:var(--lime)!important;letter-spacing:.02em!important;white-space:nowrap!important}.mobile-dock-chevron-badge{width:32px!important;height:32px!important;border-radius:50%!important;background:#ffffff29!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;flex-shrink:0!important}.mobile-sheet-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;background:#0a0a0a4d;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:backdropFadeIn .22s ease forwards}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}.sheet-drag-area{display:block;width:100%;touch-action:none!important;cursor:grab;padding-top:4px;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.sheet-drag-area:active{cursor:grabbing}.sheet-drag-handle{display:block;width:44px;height:5px;border-radius:3px;background:#00000059;margin:0 auto 10px}.panel-close-btn{display:flex}.config-panel{display:none}.config-panel.mobile-open{display:flex;flex-direction:column;position:fixed;left:0;right:0;bottom:0;top:auto;max-height:58vh;height:58vh;min-height:360px;z-index:9999;border-radius:24px 24px 0 0;padding:12px 16px 14px;background:#ffffff47!important;backdrop-filter:blur(16px) saturate(180%)!important;-webkit-backdrop-filter:blur(16px) saturate(180%)!important;border-top:1px solid rgba(255,255,255,.65);box-shadow:0 -16px 48px #0000001f,0 -2px 8px #0000000a;animation:mobileSheetSlideUp .32s cubic-bezier(.16,1,.3,1) forwards;overflow:hidden}@keyframes mobileSheetSlideUp{0%{opacity:.3;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.step-counter{color:#111!important;font-weight:700!important;background:#00000014!important}.category-tabs-container{width:100%;overflow:hidden;margin-bottom:10px}.category-tabs{display:flex;align-items:center;gap:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;flex-wrap:nowrap;border-bottom:1px solid rgba(0,0,0,.08);padding-bottom:2px;scrollbar-width:none}.category-tabs::-webkit-scrollbar{display:none}.category-tab-btn{font-size:.84rem;padding:6px 0;flex-shrink:0;color:#222!important;font-weight:700!important;opacity:1!important}.category-tab-btn.active{color:#000!important;font-weight:800!important}.tab-active-line{background:#000!important;height:2.5px!important}.panel-body-scroll{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;width:100%;flex:1;padding-right:2px;margin-bottom:6px}.panel-body-scroll::-webkit-scrollbar{width:4px}.panel-body-scroll::-webkit-scrollbar-thumb{background:#0000002e;border-radius:4px}.panel-scroll{width:100%;overflow-x:hidden}.swatch-list{display:flex;flex-direction:column;width:100%;overflow-x:hidden;gap:6px}.swatch-row{width:100%;box-sizing:border-box;overflow:hidden;min-height:42px;padding:6px 10px;background:#ffffff47!important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.5)!important;border-radius:8px}.swatch-name{font-size:.82rem;font-weight:600!important;color:#0a0a0a!important}.swatch-price{font-size:.74rem;font-weight:700!important;color:#0a0a0a!important}.swatch-price.included{font-size:.68rem;font-weight:700!important;color:#262626!important;text-transform:uppercase;letter-spacing:.06em}.swatch-row.selected{background:#0a0a0af0!important;border-color:#0a0a0af0!important;box-shadow:0 4px 14px #0000002e!important}.swatch-row.selected .swatch-name{color:#fff!important;font-weight:700!important}.swatch-row.selected .swatch-price{color:var(--lime)!important;font-weight:700!important}.swatch-row.selected .swatch-price.included{color:#ffffffbf!important;font-weight:600!important}.swatch-chip{width:24px;height:24px}.panel-head{margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(0,0,0,.08)}.panel-title{font-size:1.6rem;color:#000!important}.section-meta{display:none!important}.config-panel.mobile-open .checkout-block{background:transparent;padding-top:8px;margin-top:auto;border-top:1px solid rgba(0,0,0,.08)}.desktop-checkout-view{display:none!important}.mobile-checkout-view{display:flex!important;flex-direction:column;width:100%;gap:7px}.m-price-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 2px}.m-price-main{display:flex;align-items:baseline;gap:6px}.m-price-eyebrow{font-size:.64rem;font-weight:700!important;text-transform:uppercase;letter-spacing:.12em;color:#1a1a1a!important}.m-price-val{font-family:var(--font-display);font-size:1.45rem;font-weight:400;color:#000!important;line-height:1;letter-spacing:.01em}.m-price-unit-calc{font-size:.72rem;color:#222!important;font-weight:600!important}.m-addon-toggle-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;background:#ffffffa6!important;border:1px solid rgba(0,0,0,.12)!important;font-size:.68rem;font-weight:700!important;color:#000!important;cursor:pointer}.m-addon-chevron{transition:transform .2s cubic-bezier(.16,1,.3,1)}.m-addon-chevron.expanded{transform:rotate(180deg)}.m-breakdown-card{display:flex;flex-direction:column;gap:4px;padding:7px 12px;background:#ffffffd1!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(0,0,0,.08)!important;border-radius:10px;animation:mBreakdownFade .2s ease forwards}@keyframes mBreakdownFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.m-breakdown-row{display:flex;align-items:center;justify-content:space-between;font-size:.72rem;color:#222!important;font-weight:600!important}.m-breakdown-row.addon{color:#000!important;font-weight:700!important}.m-actions-row{display:flex;align-items:center;gap:8px;width:100%}.m-qty-stepper{height:42px;min-height:42px;width:100px;padding:0 4px;background:#ffffff8c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.14);border-radius:var(--r-pill);display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;flex-shrink:0}.m-qty-btn{width:30px;height:30px;border-radius:50%;background:transparent;border:none;display:flex;align-items:center;justify-content:center;color:#000!important;cursor:pointer;padding:0;transition:background .15s ease}.m-qty-btn:active{background:#00000014}.m-qty-btn:disabled{opacity:.3;cursor:not-allowed}.m-qty-display{font-size:.94rem;font-weight:800!important;color:#000!important;width:20px;text-align:center;line-height:1}.m-add-to-cart-btn{height:42px;min-height:42px;flex:1;padding:0 5px 0 16px;background:var(--ink);border:none;border-radius:var(--r-pill);display:inline-flex;align-items:center;justify-content:space-between;color:#fff;cursor:pointer;box-shadow:0 4px 14px #0000002e;transition:transform .12s ease,opacity .12s ease}.m-add-to-cart-btn:active{transform:scale(.985)}.m-add-to-cart-btn:disabled{opacity:.7;cursor:not-allowed}.m-cart-btn-label{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff}.m-cart-btn-price{font-size:.86rem;font-weight:700;color:var(--lime);margin-left:auto;margin-right:8px}.m-cart-btn-icon{width:32px;height:32px;border-radius:50%;background:#ffffff29;display:inline-flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.brand-divider,.brand-tag,.status-chip,.build-chip{display:none}}@media (max-width: 560px){.stage-head{top:14px;left:14px;max-width:80%}.stage-title{font-size:clamp(1.6rem,5.2vw,2.3rem)}.stage-sub{display:none}.mobile-floating-dock{bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;left:10px!important;right:10px!important;gap:6px!important}.mobile-dock-annotation{width:44px!important;height:44px!important;min-width:44px!important}.mobile-dock-customize{height:44px!important;padding:0 4px 0 12px!important}.mobile-dock-title{font-size:.98rem!important}.mobile-dock-sub{font-size:.6rem!important}.mobile-dock-price{font-size:.84rem!important}.mobile-dock-chevron-badge{width:28px!important;height:28px!important}.config-panel.mobile-open{max-height:60vh;height:60vh;padding:10px 14px 12px}}.cart-loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:#0a0a0a73;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:overlayFadeIn .2s cubic-bezier(.16,1,.3,1) forwards;pointer-events:all;cursor:wait}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.loading-card{background:var(--white);border-radius:var(--r-card);padding:36px 44px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;box-shadow:0 24px 64px #00000047;border:1px solid rgba(255,255,255,.6);animation:modalPopIn .28s cubic-bezier(.16,1,.3,1) forwards;max-width:380px}@keyframes modalPopIn{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.loading-spinner-ring{position:relative;width:52px;height:52px;border-radius:50%;border:3px solid rgba(10,10,10,.08);border-top-color:var(--ink);border-right-color:var(--lime);animation:spinRing .9s cubic-bezier(.5,.1,.5,.9) infinite}.spinner-core{position:absolute;top:6px;right:6px;bottom:6px;left:6px;border-radius:50%;background:var(--paper)}@keyframes spinRing{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text-group{display:flex;flex-direction:column;gap:6px}.loading-title{font-size:1.55rem;color:var(--ink);letter-spacing:.02em}.loading-sub{font-size:.82rem;color:var(--muted);line-height:1.45}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0a0a73;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.share-modal-card{position:relative;z-index:1;width:100%;max-width:480px;background:var(--white);border-radius:var(--r-card);border:1px solid var(--line);box-shadow:0 24px 60px #0a0a0a38,0 4px 14px #0a0a0a14;padding:26px 28px 24px;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.modal-header-left{display:flex;align-items:center;gap:12px}.modal-icon-badge{width:38px;height:38px;border-radius:10px;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center;color:var(--ink)}.modal-title{font-size:1.55rem;line-height:1;color:var(--ink)}.modal-close-btn{width:34px;height:34px;border-radius:50%;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center;color:var(--muted);cursor:pointer;transition:all .15s ease}.modal-close-btn:hover{color:var(--ink);background:#e5e5de;border-color:#d0d0c8}.modal-description{font-size:.84rem;line-height:1.55;color:var(--muted);margin-bottom:18px}.share-link-box{display:flex;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:5px 6px 5px 14px;gap:8px;transition:border-color .15s ease,box-shadow .15s ease}.share-link-box:focus-within{border-color:var(--ink);box-shadow:0 0 0 2px #0a0a0a14}.share-link-input{flex:1;min-width:0;background:transparent;border:none;font-family:var(--font-body);font-size:.82rem;color:var(--ink);outline:none;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.share-copy-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 16px;background:var(--ink);color:var(--white);border:none;border-radius:8px;font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all .15s ease;flex-shrink:0}.share-copy-btn:hover{background:#262626;transform:translateY(-1px)}.share-copy-btn.copied{background:var(--lime);color:var(--ink);box-shadow:0 2px 10px #d2fb2759}
