.swnd-app{--color-purple-900: #2d0a5a;--color-purple-800: #3e0e7a;--color-purple-700: #52149a;--color-purple-600: #6e20a0;--color-purple-500: #8b3ab8;--color-purple-400: #a95dce;--color-purple-300: #c98ae0;--color-purple-200: #e4c4f5;--color-purple-100: #f3e8fc;--color-purple-50: #faf4fe;--color-orange-700: #c05a08;--color-orange-600: #e0700f;--color-orange-500: #f07c1e;--color-orange-400: #f49642;--color-orange-300: #f8b574;--color-orange-100: #fdebd8;--color-neutral-950: #0f0f12;--color-neutral-900: #1a1a24;--color-neutral-800: #2d2d3a;--color-neutral-700: #484857;--color-neutral-600: #636375;--color-neutral-500: #8a8a9e;--color-neutral-400: #b0b0c0;--color-neutral-300: #d0d0dc;--color-neutral-200: #e8e8f0;--color-neutral-100: #f4f4f8;--color-neutral-50: #fafafc;--color-white: #ffffff;--color-brand: var(--color-purple-600);--color-brand-dark: var(--color-purple-800);--color-brand-deeper: var(--color-purple-900);--color-brand-light: var(--color-purple-100);--color-brand-subtle: var(--color-purple-50);--color-accent: var(--color-orange-500);--color-accent-dark: var(--color-orange-700);--color-accent-light: var(--color-orange-100);--color-surface: var(--color-white);--color-surface-raised: var(--color-neutral-50);--color-surface-sunken: var(--color-neutral-100);--color-surface-brand: var(--color-purple-50);--color-text-primary: var(--color-neutral-900);--color-text-secondary: var(--color-neutral-600);--color-text-muted: var(--color-neutral-500);--color-text-on-brand: var(--color-white);--color-text-on-accent: var(--color-white);--color-text-brand: var(--color-purple-600);--color-text-accent: var(--color-orange-600);--color-border: var(--color-neutral-200);--color-border-brand: var(--color-purple-300);--color-star: #f5b800;--color-success: #1f8a5b;--color-warning: #d97700;--color-error: #c0392b}.swnd-app{--font-display: "Nunito", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Courier New", monospace;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--weight-black: 900;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.125rem;--text-lg: 1.25rem;--text-xl: 1.5rem;--text-2xl: 1.875rem;--text-3xl: 2.25rem;--text-4xl: 3rem;--text-5xl: 3.75rem;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.5;--leading-relaxed: 1.65;--leading-loose: 1.8;--tracking-tight: -.02em;--tracking-normal: 0em;--tracking-wide: .04em;--tracking-wider: .08em;--tracking-widest: .15em;--type-hero-size: var(--text-4xl);--type-hero-weight: var(--weight-extrabold);--type-hero-leading: var(--leading-tight);--type-hero-tracking: var(--tracking-tight);--type-hero-family: var(--font-display);--type-h1-size: var(--text-3xl);--type-h1-weight: var(--weight-bold);--type-h1-leading: var(--leading-snug);--type-h1-family: var(--font-display);--type-h2-size: var(--text-2xl);--type-h2-weight: var(--weight-bold);--type-h2-leading: var(--leading-snug);--type-h2-family: var(--font-display);--type-h3-size: var(--text-xl);--type-h3-weight: var(--weight-bold);--type-h3-leading: var(--leading-normal);--type-h3-family: var(--font-display);--type-h4-size: var(--text-lg);--type-h4-weight: var(--weight-semibold);--type-h4-leading: var(--leading-normal);--type-h4-family: var(--font-display);--type-body-lg-size: var(--text-md);--type-body-lg-weight: var(--weight-regular);--type-body-lg-leading: var(--leading-relaxed);--type-body-size: var(--text-base);--type-body-weight: var(--weight-regular);--type-body-leading: var(--leading-relaxed);--type-body-sm-size: var(--text-sm);--type-body-sm-weight: var(--weight-regular);--type-body-sm-leading: var(--leading-normal);--type-label-size: var(--text-sm);--type-label-weight: var(--weight-semibold);--type-label-tracking: var(--tracking-wide);--type-caption-size: var(--text-xs);--type-caption-weight: var(--weight-medium);--type-caption-tracking: var(--tracking-wide);--type-overline-size: var(--text-xs);--type-overline-weight: var(--weight-bold);--type-overline-tracking: var(--tracking-widest)}.swnd-app{--space-0: 0px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--space-32: 128px;--space-40: 160px;--space-48: 192px;--gap-xs: var(--space-2);--gap-sm: var(--space-3);--gap-md: var(--space-4);--gap-lg: var(--space-6);--gap-xl: var(--space-8);--gap-2xl: var(--space-12);--gap-3xl: var(--space-16);--padding-card: var(--space-6);--padding-card-sm: var(--space-4);--padding-section: var(--space-16);--padding-page-x: var(--space-6);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-2xl: 32px;--radius-full: 9999px;--shadow-xs: 0 1px 3px rgba(110, 32, 160, .06), 0 1px 2px rgba(0,0,0,.04);--shadow-sm: 0 2px 8px rgba(110, 32, 160, .08), 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 16px rgba(110, 32, 160, .1), 0 2px 6px rgba(0,0,0,.06);--shadow-lg: 0 8px 32px rgba(110, 32, 160, .12), 0 4px 12px rgba(0,0,0,.08);--shadow-xl: 0 16px 48px rgba(110, 32, 160, .16), 0 8px 24px rgba(0,0,0,.1);--border-width: 1px;--border-width-md: 2px;--border-width-lg: 3px;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1440px;--z-base: 0;--z-raised: 10;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .12s;--duration-base: .2s;--duration-slow: .35s}@keyframes sw-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes sw-pop-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes sw-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes sw-spin{to{transform:rotate(360deg)}}@keyframes sw-pulse{0%,to{opacity:1}50%{opacity:.55}}.swnd-app{--anim-fade-in: sw-fade-in var(--duration-base) var(--ease-out) both;--anim-pop-in: sw-pop-in var(--duration-base) var(--ease-bounce) both;--anim-slide-up: sw-slide-up var(--duration-slow) var(--ease-out) both}.swnd-app{--bg: var(--color-purple-50, #faf4fe);--surface: var(--color-white, #ffffff);--surface-2: var(--color-purple-100, #f3e8fc);--surface-3: var(--color-purple-200, #e4c4f5);--ink: var(--color-neutral-900, #1a1a24);--ink-2: var(--color-neutral-600, #636375);--ink-3: var(--color-neutral-500, #8a8a9e);--line: var(--color-neutral-200, #e8e8f0);--line-2: var(--color-neutral-300, #d0d0dc);--brand: var(--color-purple-600, #6e20a0);--brand-ink: var(--color-white, #ffffff);--accent: var(--color-orange-500, #f07c1e);--accent-strong: var(--color-purple-600, #6e20a0);--accent-ink: var(--color-white, #ffffff);--warn: var(--color-warning, #d97700);--toast-bg: var(--ink);--toast-ink: var(--surface);--radius: 14px;--radius-sm: 10px;--shadow-1: 0 1px 0 rgba(20,20,18,.04), 0 1px 2px rgba(20,20,18,.04);--shadow-2: 0 12px 32px -12px rgba(20,20,18,.22);--rail-w: 460px;--topbar-h: 0px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif}.swnd-app :root[data-mood=campfire]{--bg: #fbf3ea;--surface: #fffdfa;--surface-2: #f6e6d3;--surface-3: #f0c9a0;--ink: #2b1a10;--ink-2: #7a5f4a;--ink-3: #a68b6f;--line: #ecdcc7;--line-2: #ddc4a3;--brand: #c05a08;--brand-ink: #ffffff;--accent: #f07c1e;--accent-strong: #c05a08;--accent-ink: #ffffff;--warn: #b5490a;--toast-bg: #2b1a10;--toast-ink: #fffdfa}.swnd-app[data-mood=midnight]{--bg: #14101c;--surface: #1e1830;--surface-2: #2a2140;--surface-3: #3a2c58;--ink: #f4f0fb;--ink-2: #b9aed0;--ink-3: #8b7fa8;--line: #372a52;--line-2: #46375f;--brand: #a95dce;--brand-ink: #14101c;--accent: #f49642;--accent-strong: #c98ae0;--accent-ink: #14101c;--warn: #f6a54a;--toast-bg: #0c0916;--toast-ink: #f4f0fb}.swnd-app .canvas-frame:before{background:linear-gradient(var(--line-2) 1px,transparent 1px) 0 0/26px 26px,linear-gradient(90deg,var(--line-2) 1px,transparent 1px) 0 0/26px 26px;opacity:.7}.swnd-app .canvas-frame{background:color-mix(in oklab,var(--brand) 5%,var(--surface))}.swnd-app *{box-sizing:border-box}.swnd-app{margin:0;padding:0}.swnd-app{background:var(--bg);color:var(--ink);font-size:15px;line-height:1.45;min-height:100vh;min-height:100dvh;-webkit-text-size-adjust:100%}.swnd-app button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}.swnd-app input{font:inherit;color:inherit}.swnd-app .workspace{display:grid;grid-template-columns:1fr var(--rail-w);height:calc(100vh - var(--topbar-h));height:calc(100dvh - var(--topbar-h));overflow:hidden;gap:0}@media(max-width:1100px){.swnd-app{--rail-w: 380px}}@media(max-width:960px){.swnd-app .workspace{grid-template-columns:1fr;grid-template-rows:46vh 1fr}.swnd-app .workspace .canvas-col{position:relative;top:auto;z-index:6;height:auto;min-height:0;padding:14px 16px;border-bottom:1px solid var(--line);background:radial-gradient(900px 500px at 30% 20%,color-mix(in oklab,var(--surface-3) 26%,transparent),transparent 60%),var(--bg)}.swnd-app .canvas-frame{width:auto;height:100%;max-width:100%;border-radius:14px}.swnd-app .main-image{padding:16px}.swnd-app .canvas-chip{left:12px;top:12px}.swnd-app .canvas-meta{right:12px;bottom:12px;padding:6px 10px;gap:10px;font-size:11px}.swnd-app .workspace .rail{border-left:0;border-top:0;min-height:0}}@media(max-width:720px){.swnd-app .rail-section{padding:20px 18px 16px}.swnd-app .styles-grid{gap:8px}.swnd-app .palette-grid{grid-template-columns:repeat(auto-fill,minmax(34px,1fr))!important;gap:7px}.swnd-app .qty button{width:40px;height:40px;font-size:18px}.swnd-app .qty input{width:44px;height:40px;font-size:16px}.swnd-app .swnd-summary{padding:14px 18px calc(16px + env(safe-area-inset-bottom,0px));box-shadow:0 -10px 26px -14px #140a2847}.swnd-app .cta{height:52px}}@media(max-width:960px)and (max-height:720px){.swnd-app .workspace{grid-template-rows:40vh 1fr}}@media(hover:none){.swnd-app .necker-style:hover{transform:none;box-shadow:none;border-color:var(--line)}.swnd-app .palette-grid .swatch-btn:hover{transform:none;box-shadow:inset 0 1px #fff6,0 1px 2px #1414120f}.swnd-app .cta:hover:not(:disabled){transform:none;background:var(--accent)}.swnd-app .necker-style:active{transform:scale(.97)}.swnd-app .palette-grid .swatch-btn:active{transform:scale(.92)}}.swnd-app .canvas-col{position:sticky;top:var(--topbar-h);height:calc(100vh - var(--topbar-h));display:flex;align-items:center;justify-content:center;padding:32px;background:radial-gradient(1200px 600px at 30% 30%,color-mix(in oklab,var(--surface-3) 30%,transparent),transparent 60%),var(--bg)}.swnd-app .canvas-frame{position:relative;width:min(620px,100%);aspect-ratio:1 / 1;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-2);overflow:hidden}.swnd-app .canvas-frame:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(45deg,transparent 49%,var(--surface-2) 49% 51%,transparent 51%) 0 0/28px 28px,linear-gradient(-45deg,transparent 49%,var(--surface-2) 49% 51%,transparent 51%) 0 0/28px 28px;opacity:.28;pointer-events:none}.swnd-app .main-image{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:28px}.swnd-app .main-image svg{width:100%;height:100%;pointer-events:none}.swnd-app .main-image svg *{transition:fill .14s ease}.swnd-app .canvas-chip{position:absolute;left:16px;top:16px;z-index:5;padding:7px 12px;background:var(--brand);color:#fff;font-size:12px;letter-spacing:.02em;border-radius:999px;pointer-events:none}.swnd-app .canvas-meta{position:absolute;right:18px;bottom:18px;z-index:5;padding:8px 12px;background:color-mix(in oklab,var(--surface) 92%,transparent);border:1px solid var(--line);color:var(--ink-2);font-size:12px;border-radius:10px;display:flex;gap:14px;align-items:center}.swnd-app .canvas-meta b{color:var(--ink);font-weight:600}.swnd-app .canvas-meta .sep{width:1px;height:14px;background:var(--line-2)}.swnd-app .canvas-meta button{color:var(--ink-2);font-size:12px;padding:2px 6px;border-radius:6px}.swnd-app .canvas-meta button:hover{color:var(--ink);background:var(--surface-2)}.swnd-app .rail{border-left:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.swnd-app .rail-scroll{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:0}.swnd-app .rail-section{padding:22px 26px 18px;border-bottom:1px solid var(--line)}.swnd-app .rail-section:last-of-type{border-bottom:0}.swnd-app .rail-section h2{margin:0 0 2px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.swnd-app .rail-section .lead{margin:0 0 14px;font-size:18px;font-weight:600;letter-spacing:-.015em}.swnd-app .rail-section .sub{margin:-8px 0 14px;font-size:13px;color:var(--ink-2)}.swnd-app .step-block{border-bottom:1px solid var(--line);display:flex;flex-direction:column;flex:0 0 auto;min-height:0}.swnd-app .step-block.is-open{flex:1 1 auto;min-height:120px}.swnd-app .step-block:first-of-type{margin-top:auto}.swnd-app .step-block:last-of-type{border-bottom:0}.swnd-app .step-head{width:100%;box-sizing:border-box;min-height:58px;display:grid;grid-template-columns:26px 1fr auto auto;align-items:center;gap:12px;padding:18px 26px;text-align:left;flex:0 0 auto;transition:background .12s ease}.swnd-app .step-head:hover{background:var(--surface-2)}.swnd-app .step-block.is-locked .step-head{cursor:not-allowed}.swnd-app .step-block.is-locked .step-head:hover{background:none}.swnd-app .step-block.is-locked .step-title,.swnd-app .step-block.is-locked .step-status{color:var(--ink-3)}.swnd-app .step-num{width:26px;height:26px;border-radius:999px;display:grid;place-items:center;background:var(--surface-2);color:var(--ink-2);font-size:12px;font-weight:700;transition:background .16s ease,color .16s ease}.swnd-app .step-block.is-open .step-num{background:var(--brand);color:#fff}.swnd-app .step-block.is-done .step-num{background:color-mix(in oklab,var(--brand) 16%,transparent);color:var(--brand)}.swnd-app .step-block.is-open.is-done .step-num{background:var(--brand);color:#fff}.swnd-app .step-block.is-done .step-num:after{content:"\2713"}.swnd-app .step-block.is-done .step-num .n{display:none}.swnd-app .step-title{font-size:15px;font-weight:600;letter-spacing:-.01em}.swnd-app .step-status{font-size:12.5px;color:var(--ink-3);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.swnd-app .step-block.is-open .step-status{opacity:0}.swnd-app .step-chev{width:14px;height:14px;color:var(--ink-3);transition:transform .2s cubic-bezier(.16,1,.3,1)}.swnd-app .step-block.is-open .step-chev{transform:rotate(180deg)}.swnd-app .step-panel{display:grid;grid-template-rows:0fr;min-height:0;transition:grid-template-rows .26s cubic-bezier(.16,1,.3,1)}.swnd-app .step-block:not(.is-open) .step-panel{display:none}.swnd-app .step-block.is-open .step-panel{grid-template-rows:1fr}.swnd-app .step-panel>.step-body{overflow:hidden;min-height:0}.swnd-app .step-block.is-open .step-body{overflow:visible}.swnd-app .step-body-inner{padding:0 26px 22px}.swnd-app .step-gate{display:none;margin:0 0 14px;padding:10px 12px;border-radius:10px;background:color-mix(in oklab,var(--brand) 8%,transparent);color:var(--brand);font-size:13px;font-weight:600}.swnd-app .step-block.is-gated .step-gate{display:block}.swnd-app .step-block.is-gated .step-body-inner>*:not(.step-gate){opacity:.4;pointer-events:none}.swnd-app .step-next{margin-top:16px;height:42px;width:100%;border-radius:999px;background:var(--brand);color:#fff;font-size:14px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .12s ease,background .12s ease,opacity .12s ease}.swnd-app .step-next:hover:not(:disabled){transform:scale(1.015)}.swnd-app .step-next:active:not(:disabled){transform:scale(.98)}.swnd-app .step-next:disabled{opacity:1;cursor:not-allowed;background:color-mix(in oklab,var(--brand) 16%,var(--surface));color:color-mix(in oklab,var(--brand) 88%,var(--ink))}@media(max-width:720px){.swnd-app .step-head{padding:16px 18px}.swnd-app .step-body-inner{padding:0 18px 18px}.swnd-app .step-status{max-width:96px}.swnd-app .step-next{height:48px}}.swnd-app .styles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.swnd-app .necker-style{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:6px 6px 8px;display:flex;flex-direction:column;gap:4px;text-align:left;transition:border-color .14s ease,box-shadow .14s ease,transform 80ms ease;cursor:pointer}.swnd-app .necker-style:hover{border-color:var(--line-2);transform:translateY(-1px);box-shadow:var(--shadow-1)}.swnd-app .necker-style .thumb{aspect-ratio:1 / 1;background:var(--color-neutral-100, #f4f4f8);border-radius:6px;overflow:hidden;display:grid;place-items:center}.swnd-app .necker-style .thumb img{width:100%;height:100%;display:block;object-fit:contain;pointer-events:none}.swnd-app .necker-style .label{font-size:10.5px;line-height:1.2;color:var(--ink-2);text-wrap:pretty;min-height:2.4em}.swnd-app .necker-style .from{font-size:11px;line-height:1.2;font-weight:600;color:var(--ink-2);margin-top:auto;padding-top:2px}.swnd-app .necker-style .from:empty{display:none}.swnd-app .necker-style.active-style{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in oklab,var(--brand) 30%,transparent)}.swnd-app .necker-style.active-style .label{color:var(--ink);font-weight:500}.swnd-app .necker-style.active-style .from{color:var(--brand)}.swnd-app .sections-list{display:flex;flex-direction:column;gap:16px}.swnd-app .section-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 14px 12px}.swnd-app .section-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.swnd-app .section-head .name{flex:1;min-width:0;font-size:14px;font-weight:600}.swnd-app .section-head .hint{font-size:12px;color:var(--ink-3);font-weight:400}.swnd-app .section-head .current-swatch{width:22px;height:22px;border-radius:999px;border:1px solid var(--line-2);background:var(--surface-2);box-shadow:inset 0 1px #ffffff59;flex:0 0 22px}.swnd-app .palette-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:8px}@media(max-width:1100px){.swnd-app .palette-grid{grid-template-columns:repeat(10,1fr)}}.swnd-app .palette-grid .swatch-btn{width:100%;aspect-ratio:1 / 1;border-radius:999px;border:1px solid var(--line-2);box-shadow:inset 0 1px #fff6,0 1px 2px #1414120f;position:relative;cursor:pointer;transition:transform .1s ease,box-shadow .14s ease}.swnd-app .palette-grid .swatch-btn:hover{transform:translateY(-2px) scale(1.06);box-shadow:inset 0 1px #fff6,0 4px 8px #1414121f}.swnd-app .palette-grid .swatch-btn.is-selected{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--brand),inset 0 1px #fff6}.swnd-app .palette-grid .swatch-btn.is-selected:after{content:"";position:absolute;left:50%;top:50%;width:32%;height:17%;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translate(-50%,-65%) rotate(-45deg);filter:drop-shadow(0 0 1px rgba(0,0,0,.45))}.swnd-app .palette-grid .swatch-btn[data-light=true].is-selected:after{border-color:#111;filter:none}.swnd-app .colour-tip{margin-top:10px;font-size:12px;color:var(--ink-3);display:flex;align-items:center;gap:8px}.swnd-app .reset-link{color:var(--ink-2);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:3px;font-size:12px;cursor:pointer}.swnd-app .reset-link:hover{color:var(--ink);text-decoration-color:var(--ink-2)}.swnd-app .size-row{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:10px;margin-bottom:10px;gap:12px}.swnd-app .size-row:last-child{margin-bottom:0}.swnd-app .size-row .info{flex:1;min-width:0}.swnd-app .size-row .info .name{font-size:14px;font-weight:600}.swnd-app .size-row .info .dims{font-size:11px;color:var(--ink-3)}.swnd-app .size-row .info .price{font-size:12px;color:var(--ink-2);margin-top:2px}.swnd-app .size-row .info .price b{color:var(--accent);font-weight:700}.swnd-app .qty{display:flex;align-items:center;background:var(--surface-2);border-radius:999px;padding:3px}.swnd-app .qty button{width:32px;height:32px;border-radius:999px;background:var(--surface);box-shadow:var(--shadow-1);font-size:16px;font-weight:500;color:var(--ink);display:grid;place-items:center;transition:background .1s ease}.swnd-app .qty button:hover{background:var(--bg)}.swnd-app .qty button:disabled{opacity:.4;box-shadow:none;background:transparent}.swnd-app .qty input{width:42px;height:32px;text-align:center;background:transparent;border:0;outline:none;font-size:14px;font-weight:600;-moz-appearance:textfield}.swnd-app .qty input::-webkit-outer-spin-button,.swnd-app .qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.swnd-app .warn{display:none;margin-top:10px;padding:9px 12px;background:color-mix(in oklab,var(--warn) 10%,var(--surface));border:1px solid color-mix(in oklab,var(--warn) 25%,var(--line));color:color-mix(in oklab,var(--warn) 70%,var(--ink));border-radius:8px;font-size:12px}.swnd-app .warn.show{display:block}.swnd-app .swnd-summary{position:sticky;bottom:0;background:color-mix(in oklab,var(--bg) 94%,transparent);backdrop-filter:saturate(140%) blur(10px);-webkit-backdrop-filter:saturate(140%) blur(10px);border-top:1px solid var(--line);padding:18px 26px 22px}.swnd-app .swnd-summary .row{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--ink-2);margin-bottom:4px}.swnd-app .swnd-summary .row.total{margin-top:8px;padding-top:10px;border-top:1px dashed var(--line-2);font-size:15px}.swnd-app .swnd-summary .row.total b{font-size:20px;color:var(--accent);font-weight:700;letter-spacing:-.01em}.swnd-app .swnd-summary .row b{color:var(--ink);font-weight:600}.swnd-app .cta{margin-top:14px;width:100%;height:50px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:15px;font-weight:700;letter-spacing:-.01em;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 8px 20px -10px color-mix(in oklab,var(--accent) 70%,transparent);transition:transform 80ms ease,background .14s ease}.swnd-app .cta:hover:not(:disabled){background:color-mix(in oklab,var(--accent) 88%,#000);transform:scale(1.01)}.swnd-app .cta:active{transform:scale(.995)}.swnd-app .cta:disabled{background:var(--surface-2);color:var(--ink-3);box-shadow:none;cursor:not-allowed}.swnd-app .cta .arrow{transition:transform .14s ease}.swnd-app .cta:hover:not(:disabled) .arrow{transform:translate(3px)}.swnd-app .swnd-summary .micro{margin-top:10px;font-size:11px;color:var(--ink-3);display:flex;gap:14px;flex-wrap:wrap;justify-content:center}.swnd-app .swnd-summary .micro span{display:inline-flex;align-items:center;gap:5px}.swnd-app .toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,12px);background:var(--toast-bg);color:var(--toast-ink);padding:10px 16px;border-radius:999px;font-size:13px;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:50;box-shadow:var(--shadow-2)}.swnd-app .toast.show{opacity:1;transform:translate(-50%)}.swnd-app button:focus-visible,.swnd-app input:focus-visible,.swnd-app .swatch-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media(max-height:720px){.swnd-app .swnd-summary .micro{display:none}.swnd-app .swnd-summary{padding:10px 26px 12px}.swnd-app .swnd-summary .row{font-size:12px;margin-bottom:2px}.swnd-app .swnd-summary .row.total{margin-top:5px;padding-top:7px}.swnd-app .swnd-summary .row.total b{font-size:17px}.swnd-app .cta{height:42px;margin-top:8px}.swnd-app .step-head{min-height:46px;padding-top:10px;padding-bottom:10px}}@media(max-width:960px){.swnd-app .workspace{display:block;height:auto;overflow:visible}.swnd-app .workspace .canvas-col{height:44vh;min-height:220px;padding:0;border-bottom:0;background:var(--surface)}.swnd-app .workspace .canvas-frame{width:100%;max-width:none;height:100%;aspect-ratio:auto;border-radius:0;border:0;box-shadow:none}.swnd-app[data-mstep="1"] .workspace .canvas-col,.swnd-app[data-mstep="2"] .workspace .canvas-col{position:sticky;top:var(--topbar-h, 0px)}.swnd-app .workspace .canvas-col{transition:none}.swnd-app[data-mstep="1"].is-scrolled .workspace .canvas-col,.swnd-app[data-mstep="2"].is-scrolled .workspace .canvas-col{height:35.2vh}.swnd-app[data-mstep="1"] .step-head,.swnd-app[data-mstep="2"] .step-head{top:44vh}.swnd-app[data-mstep="1"].is-scrolled .step-head,.swnd-app[data-mstep="2"].is-scrolled .step-head{top:35.2vh}.swnd-app .main-image{padding:4px 6px}.swnd-app .canvas-chip{left:10px;top:10px}.swnd-app .canvas-meta{right:10px;bottom:10px}.swnd-app .workspace .rail{height:auto;overflow:visible}.swnd-app .rail-scroll{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto;overflow:visible}.swnd-app .step-block{display:contents}.swnd-app .step-head{grid-row:1;min-height:66px;padding:10px 6px;gap:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:2px solid var(--line);border-right:1px solid var(--line);background:var(--surface-2);position:sticky;top:0;z-index:8}.swnd-app .step-block:last-of-type .step-head{border-right:0}.swnd-app .step-block.is-open .step-head{background:var(--surface);border-bottom-color:var(--brand)}.swnd-app .step-block[data-step="2"]:not(.is-open) .step-head.is-nudged{background:color-mix(in oklab,var(--accent, #f07c1e) 20%,var(--surface));border-bottom-color:var(--accent, #f07c1e);transition:background .24s ease,border-color .24s ease}.swnd-app .step-title{font-size:12px;font-weight:600;text-align:center;line-height:1.2;text-wrap:balance;max-width:100%;padding:0 2px}.swnd-app .step-status,.swnd-app .step-chev{display:none}.swnd-app .step-num{width:22px;height:22px;font-size:11px}.swnd-app .step-panel{grid-row:2;grid-column:1 / -1;min-height:0}.swnd-app .step-block.is-open .step-body{overflow:visible}.swnd-app .step-body-inner{padding:14px 14px 20px}.swnd-app .step-next{margin-top:14px}.swnd-app .styles-grid{grid-template-columns:repeat(2,1fr)}.swnd-app .necker-style .label{font-size:12px;min-height:0}.swnd-app .necker-style .from{font-size:12px}.swnd-app .step-block[data-step="2"] .step-body-inner{padding:12px 12px 18px}.swnd-app .step-block[data-step="2"] .step-body-inner>.sub{margin:0 0 10px!important;font-size:12px}.swnd-app .sections-list{gap:8px}.swnd-app .section-card{padding:0;border-radius:10px;overflow:hidden}.swnd-app .section-head{margin:0;padding:12px 14px;min-height:48px;gap:10px;cursor:pointer}.swnd-app .section-head .name{font-size:14px}.swnd-app .section-head .hint{font-size:12px}.swnd-app .section-head .current-swatch{width:20px;height:20px;flex-basis:20px}.swnd-app .section-card:not(.is-active) .palette-grid{display:none}.swnd-app .section-card.is-active{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.swnd-app .section-card.is-active .section-head{border-bottom:1px solid var(--line)}.swnd-app .section-card.is-active .palette-grid{grid-template-columns:repeat(8,1fr)!important;gap:8px!important;padding:12px 14px 14px}.swnd-app .palette-grid .swatch-btn{border-radius:7px}.swnd-app .swnd-summary{position:static;box-shadow:none}}.swnd-app{min-height:0;background:transparent;max-width:1440px;margin-inline:auto}.swnd-app .workspace{height:auto;overflow:visible;align-items:stretch}.swnd-app .canvas-col{height:auto;align-self:stretch;border-radius:var(--radius-lg, 16px)}.swnd-app .canvas-frame{aspect-ratio:1 / 1;width:100%}@media(min-width:961px){.swnd-app .canvas-col{position:static;align-items:flex-start;padding:0}.swnd-app .canvas-frame{position:sticky;top:16px;width:min(100%,calc(100dvh - 48px));margin-inline:auto}}.swnd-app .rail,.swnd-app .rail-scroll{height:auto;overflow:visible}.swnd-app .swnd-summary{position:sticky;bottom:0;z-index:3;background:var(--surface)}@media(max-width:900px){.swnd-app .canvas-col{position:sticky;top:0;height:46vh;min-height:240px;z-index:2}.swnd-app .workspace{grid-template-columns:1fr}.swnd-app .rail{border-left:0}}.swnd-app .swatch-btn:disabled{cursor:not-allowed;opacity:.28}.swnd-app .swatch-btn:disabled:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(to top left,transparent calc(50% - 1px),rgba(0,0,0,.6) 50%,transparent calc(50% + 1px))}.swnd-app .necker-style .thumb svg{width:100%;height:100%;display:block;object-fit:contain;pointer-events:none}.swnd-app .cta.is-busy{opacity:.65;pointer-events:none}.swnd-app .swnd-summary{display:none}.swnd-app[data-mstep="3"] .swnd-summary{display:block}.swnd-app .step-next.is-hidden{display:none}.swnd-app .step-block[data-step="1"] .step-next,.swnd-app .step-block[data-step="2"] .step-next{position:sticky;bottom:12px;z-index:7;box-shadow:0 6px 20px -6px color-mix(in oklab,var(--brand) 55%,transparent),0 0 0 12px var(--surface)}.swnd-app .step-block[data-step="1"] .step-next:disabled,.swnd-app .step-block[data-step="2"] .step-next:disabled{box-shadow:0 0 0 12px var(--surface)}.swnd-app{scroll-margin-top:8px}.swnd-app .qty{background:var(--surface);border:1.5px solid var(--line-2);box-shadow:inset 0 1px 3px color-mix(in oklab,var(--ink) 7%,transparent);padding:4px;gap:2px}.swnd-app .qty button{background:color-mix(in oklab,var(--brand) 12%,var(--surface));border:1px solid color-mix(in oklab,var(--brand) 28%,transparent);color:var(--brand);font-size:19px;font-weight:700;line-height:1;box-shadow:none}.swnd-app .qty button:hover:not(:disabled){background:color-mix(in oklab,var(--brand) 22%,var(--surface));border-color:color-mix(in oklab,var(--brand) 45%,transparent)}.swnd-app .qty button:active:not(:disabled){transform:scale(.94)}.swnd-app .qty button:disabled{background:var(--surface-2);border-color:transparent;color:var(--ink-3);opacity:1}.swnd-app .qty input{font-size:16px;font-weight:700;color:var(--ink);width:46px}.swnd-app .cta{position:relative}.swnd-app .cta.is-busy,.swnd-app .cta.is-busy:disabled{background:var(--accent);color:transparent;opacity:1;cursor:progress;pointer-events:none}.swnd-app .cta.is-busy .arrow{opacity:0}.swnd-app .cta.is-busy:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2.5px solid color-mix(in oklab,var(--accent-ink) 35%,transparent);border-top-color:var(--accent-ink);border-radius:50%;animation:swnd-spin .7s linear infinite}@keyframes swnd-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.swnd-app .cta.is-busy:after{animation-duration:2s}}@media(max-width:960px){.swnd-app .workspace .canvas-col{background:transparent;padding:10px 12px 12px}.swnd-app .workspace .canvas-frame{border-radius:16px;border:1px solid var(--line);box-shadow:0 2px 10px -6px color-mix(in oklab,var(--ink) 30%,transparent);background:linear-gradient(170deg,color-mix(in oklab,var(--brand) 7%,var(--surface)) 0%,color-mix(in oklab,var(--brand) 3%,var(--surface)) 45%,var(--surface) 100%)}.swnd-app .workspace .rail{border:1px solid var(--line);border-radius:16px;background:var(--surface);margin:0 12px 16px}.swnd-app .step-block:first-of-type .step-head{border-top-left-radius:15px}.swnd-app .step-block:last-of-type .step-head{border-top-right-radius:15px}.swnd-app .step-panel{border-bottom-left-radius:15px;border-bottom-right-radius:15px}.swnd-app .step-head{background:var(--surface-2)}}@media(min-width:961px){.swnd-app .workspace{grid-template-columns:minmax(320px,min(calc(100dvh - 48px),52%)) minmax(0,1fr)}.swnd-app .canvas-frame{width:100%}}@media(min-width:961px){.swnd-app .step-block[data-step="3"] .step-body-inner{max-width:620px}.swnd-app .size-row{padding:16px 18px;gap:20px;border-radius:12px}.swnd-app .size-row .info .name{font-size:16px}.swnd-app .size-row .info .dims{font-size:12px;margin-top:1px}.swnd-app .size-row .info .price{font-size:14px;margin-top:4px}.swnd-app .size-row .info .price b{font-size:16px}.swnd-app .qty button{width:38px;height:38px;font-size:21px}.swnd-app .qty input{width:54px;height:38px;font-size:17px}}@media(max-width:960px){.swnd-app{--preview-h: 36vh;--preview-h-scrolled: 28.8vh}.swnd-app .workspace .canvas-col{height:var(--preview-h);min-height:180px;background:transparent;border-radius:0}.swnd-app[data-mstep="1"].is-scrolled .workspace .canvas-col,.swnd-app[data-mstep="2"].is-scrolled .workspace .canvas-col{height:var(--preview-h-scrolled)}.swnd-app[data-mstep="1"] .step-head,.swnd-app[data-mstep="2"] .step-head{top:var(--preview-h)}.swnd-app[data-mstep="1"].is-scrolled .step-head,.swnd-app[data-mstep="2"].is-scrolled .step-head{top:var(--preview-h-scrolled)}.swnd-app .main-image{top:-11%;right:0;bottom:-11%;left:0;padding:8px 6px}.swnd-app .workspace .rail{background:var(--surface)}}@media(min-width:961px){.swnd-app{padding-inline:20px}.swnd-app .workspace{gap:20px}.swnd-app .canvas-col{background:transparent}.swnd-app .rail{border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:clip}}@media(max-width:960px){.swnd-app .workspace .canvas-col{padding:0 12px}.swnd-app .workspace .rail{margin-top:12px}}.swnd-app .meta-progress{display:flex;align-items:center;gap:9px;min-width:0}.swnd-app .progress-track{position:relative;width:64px;height:6px;flex:none;border-radius:999px;background:color-mix(in oklab,var(--ink) 12%,var(--surface));overflow:hidden}.swnd-app .progress-fill{display:block;width:0;height:100%;border-radius:inherit;background:var(--brand);transition:width .26s cubic-bezier(.16,1,.3,1),background .2s ease}.swnd-app .meta-progress.is-complete .progress-fill{background:var(--color-success, #1f8a5b)}.swnd-app .progress-label{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--ink-2)}.swnd-app .meta-progress.is-complete .progress-label{color:var(--color-success, #1f8a5b);font-weight:600}@media(max-width:960px){.swnd-app .progress-track{width:52px}}@media(prefers-reduced-motion:reduce){.swnd-app .progress-fill{transition:none}}@media(min-width:961px){.swnd-app .step-head{position:sticky;top:0;z-index:9;background:var(--surface);border-bottom:1px solid var(--line)}.swnd-app .step-block.is-open .step-head{box-shadow:0 6px 14px -12px color-mix(in oklab,var(--ink) 60%,transparent)}.swnd-app .step-block:not(.is-open) .step-head{position:static}}@media(min-width:961px){.swnd-app .step-body-inner{padding-top:16px}.swnd-app .step-block.is-open .step-head{box-shadow:0 4px 10px -10px color-mix(in oklab,var(--ink) 45%,transparent)}}.swnd-app .delivery-note{margin:-6px 0 14px;font-size:12px;line-height:1.4;color:var(--ink-2);display:flex;align-items:center;gap:6px}.swnd-app .delivery-note:before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:var(--color-success, #1f8a5b)}@media(max-width:960px){.swnd-app .step-block[data-step="1"] .step-next,.swnd-app .step-block[data-step="2"] .step-next{position:sticky;bottom:calc(12px + env(safe-area-inset-bottom,0px));left:auto;right:auto;width:100%;z-index:7}.swnd-app .step-block[data-step="1"] .step-body-inner,.swnd-app .step-block[data-step="2"] .step-body-inner{padding-bottom:20px}}.swnd-app .fact-pills{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.swnd-app .fact-pills .pill{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:600;line-height:1;background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line);white-space:nowrap}.swnd-app .fact-pills .pill-delivery{background:color-mix(in oklab,var(--color-success, #1f8a5b) 10%,var(--surface));border-color:color-mix(in oklab,var(--color-success, #1f8a5b) 28%,transparent);color:color-mix(in oklab,var(--color-success, #1f8a5b) 80%,var(--ink))}.swnd-app .fact-pills .pill-delivery:before{content:"";width:7px;height:7px;flex:none;border-radius:50%;background:var(--color-success, #1f8a5b);animation:swnd-pulse 2.4s ease-in-out infinite}@keyframes swnd-pulse{0%,to{opacity:1;box-shadow:0 0 color-mix(in oklab,var(--color-success, #1f8a5b) 55%,transparent)}50%{opacity:.75;box-shadow:0 0 0 4px color-mix(in oklab,var(--color-success, #1f8a5b) 0%,transparent)}}@media(prefers-reduced-motion:reduce){.swnd-app .fact-pills .pill-delivery:before{animation:none}}.swnd-app .back-to-designer{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:40;display:inline-flex;align-items:center;gap:7px;padding:11px 16px;border-radius:999px;background:var(--brand);color:var(--brand-ink);font-size:13px;font-weight:700;box-shadow:0 8px 22px -8px color-mix(in oklab,var(--ink) 55%,transparent);animation:swnd-rise .18s ease-out}.swnd-app .back-to-designer[hidden]{display:none}@keyframes swnd-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.swnd-app .back-to-designer{animation:none}}@media(min-width:961px){.swnd-app .rail{height:auto;min-height:0;display:flex;flex-direction:column;overflow:clip}.swnd-app .rail-scroll{flex:0 0 auto;min-height:0;overflow:visible}.swnd-app .rail-scroll>.step-block{flex:0 0 auto}.swnd-app .workspace .canvas-col{position:sticky;top:16px;align-self:start;height:calc(100dvh - 32px);min-height:0;display:flex;align-items:center;justify-content:center;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:clip}.swnd-app .workspace .canvas-frame{position:static;background:transparent;border:0;box-shadow:none;width:min(100%,calc(100dvh - 72px))}.swnd-app .step-block.is-open .step-body-inner{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}.swnd-app .step-next:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:28px;background:linear-gradient(to top,var(--surface),rgba(255,255,255,0));pointer-events:none}.swnd-app .swnd-summary{position:static;max-width:620px}}
/*# sourceMappingURL=/cdn/shop/t/10/assets/nq-designer.css.map */
