.wizard{display:flex;flex-direction:column;min-height:100dvh;max-width:var(--layout-mobile-max, 640px);margin:0 auto;padding:var(--space-4)}.wizard__controls{display:flex;flex-direction:column;flex:1;min-width:0}.wizard__content{flex:1;padding:var(--space-4) 0;animation:slideUp .35s ease-out}.wizard__nav{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0;position:sticky;bottom:0;background:var(--color-bg);border-top:1px solid var(--color-border);z-index:var(--z-nav)}.wizard__nav-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);width:100%}.wizard__btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border:none;border-radius:var(--radius-md);font-family:var(--font-body);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease-out;min-height:48px;min-width:100px}.wizard__btn:active:not(:disabled){transform:scale(.96);transition-duration:80ms}.wizard__btn:disabled{opacity:.35;cursor:not-allowed}.wizard__btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.wizard__btn--back{background:var(--color-surface);color:var(--color-text-secondary)}.wizard__btn--back:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.wizard__btn--next{background:var(--color-primary);color:#fff;margin-left:auto;box-shadow:var(--shadow-sm);min-width:180px;position:relative;overflow:hidden}.wizard__btn--next:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.18) 45%,rgba(255,255,255,.18) 55%,transparent 65%);background-size:200% 100%;animation:shimmer 3s ease-in-out infinite;pointer-events:none}.wizard__btn--next:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-glow)}.wizard__btn--next:disabled:after{display:none}.wizard__progress{font-family:var(--font-body);font-size:12px;color:var(--color-text-muted);text-align:center;white-space:nowrap}.wizard__skip-cta{width:100%;padding:var(--space-2) var(--space-4);background:var(--gradient-cta);color:#fff;font-family:var(--font-body);font-size:13px;font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease-out;box-shadow:0 3px 12px #e7548033;display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:40px;position:relative;overflow:hidden;margin-top:var(--space-3)}.wizard__skip-cta:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.2) 45%,rgba(255,255,255,.2) 55%,transparent 65%);background-size:200% 100%;animation:shimmer 2.5s ease-in-out infinite;pointer-events:none}.wizard__skip-cta:hover{transform:translateY(-1px);box-shadow:0 6px 20px #e754804d}.wizard__skip-cta:active{transform:translateY(0);transition-duration:80ms}.wizard__edit-banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-accent-soft);border:1px solid var(--color-accent);border-radius:var(--radius-md);color:var(--color-accent);font-family:var(--font-body);font-size:13px;font-weight:600;margin-bottom:var(--space-3)}.wizard__edit-banner--build{background:#d4740a14;border-color:var(--color-cta);color:var(--color-cta)}.step-indicator{display:flex;justify-content:center;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) 0 var(--space-2)}.step-indicator__step{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);flex:1;max-width:100px;position:relative}.step-indicator__step:not(:last-child):after{content:"";position:absolute;top:15px;left:calc(50% + 16px);width:calc(100% - 32px);height:2px;background:var(--color-border);transition:background .3s ease-out}.step-indicator__step--completed:not(:last-child):after{background:var(--color-accent)}.step-indicator__dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-pixel);font-size:8px;position:relative;z-index:1;transition:all .3s ease-out}.step-indicator__step--upcoming .step-indicator__dot{background:#fff;color:var(--color-text-muted);border:2px solid var(--color-border)}.step-indicator__step--active .step-indicator__dot{background:var(--color-primary);color:#fff;border:2px solid var(--color-primary);box-shadow:var(--shadow-glow);animation:pulseGlow 2.5s ease-in-out infinite}.step-indicator__step--completed .step-indicator__dot{background:var(--color-accent);color:#fff;border:2px solid var(--color-accent)}.step-indicator__label{font-family:var(--font-pixel);font-size:8px;text-align:center;color:var(--color-text-muted);transition:color .3s ease-out;letter-spacing:-.5px}.step-indicator__step--active .step-indicator__label{color:var(--color-primary)}.step-indicator__step--completed .step-indicator__label{color:var(--color-accent)}@media(max-width:400px){.wizard{padding:var(--space-3)}.wizard__content{padding:var(--space-3) 0}.step-indicator__label{font-size:7px}.step-indicator__dot{width:28px;height:28px;font-size:7px}.step-indicator__step:not(:last-child):after{top:13px}.wizard__btn{padding:var(--space-3) var(--space-4);font-size:14px;min-width:80px}.wizard__btn--next{min-width:140px}}@media(min-width:1024px){.wizard{flex-direction:row;max-width:var(--layout-max-width, 1120px);padding:0;gap:0}.wizard>.preview-panel{width:var(--layout-preview-width, 55%);flex-shrink:0;background:var(--gradient-surface);border-right:1px solid var(--color-border)}.wizard__controls{width:var(--layout-controls-width, 45%);padding:var(--space-6) var(--layout-controls-padding, 32px);overflow-y:auto;max-height:100dvh}.wizard__nav{position:sticky;bottom:0;padding:var(--space-4) 0;background:var(--color-bg)}}@supports (padding-bottom: env(safe-area-inset-bottom)){.wizard__nav{padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom))}}.sprite-preview{position:relative;display:inline-block;cursor:pointer}.sprite-preview__canvas{display:block;image-rendering:pixelated;image-rendering:crisp-edges}.sprite-preview__loading{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-surface);border-radius:var(--radius-md);animation:sprite-shimmer 1s ease-in-out infinite alternate}@keyframes sprite-shimmer{0%{opacity:.4}to{opacity:.8}}.print-preview{background:var(--color-surface, #f5ddd0);border:1px solid var(--color-border, #e0c4b8);border-radius:12px;padding:14px}.print-preview__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.print-preview__title{margin:0;font-size:15px;font-weight:700;color:var(--color-text, #2a1a1a)}.print-preview__badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary, #999);background:var(--color-bg, #ffffff);padding:3px 8px;border-radius:4px}.print-preview__canvas-wrap{background:var(--color-bg, #ffffff);border:1px solid var(--color-border, #e0c4b8);border-radius:8px;overflow:hidden;display:flex;justify-content:center}.print-preview__canvas{width:100%;height:auto;display:block}.print-preview__info{display:block;margin-top:8px;font-size:10px;color:var(--color-text-secondary, #666);text-align:center;font-style:italic}.mockup-carousel{display:flex;flex-direction:column;gap:var(--space-3)}.mockup-carousel__main{width:100%;aspect-ratio:1 / 1;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border)}.mockup-carousel__image{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .2s ease-out}.mockup-carousel__thumbs{display:flex;gap:var(--space-2);justify-content:center}.mockup-carousel__thumb{width:56px;height:56px;border-radius:var(--radius-md);overflow:hidden;border:2px solid var(--color-border);cursor:pointer;padding:0;background:var(--color-surface);transition:all .2s ease-out;flex-shrink:0}.mockup-carousel__thumb:hover{border-color:var(--color-border-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.mockup-carousel__thumb--active{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.mockup-carousel__thumb-img{width:100%;height:100%;object-fit:cover;display:block}.mockup-carousel__thumb:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media(min-width:1024px){.mockup-carousel__thumb{width:64px;height:64px}.mockup-carousel__main{border-radius:var(--radius-lg)}}.preview-panel{display:none}@media(min-width:1024px){.preview-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;position:sticky;top:0;height:100dvh;padding:var(--space-8);overflow:hidden}.preview-panel__inner{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:480px}.preview-panel__sprite-area{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-8);background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);min-width:280px;animation:fadeIn .5s ease-out;cursor:pointer;transition:box-shadow .3s ease-out}.preview-panel__sprite-area:hover{box-shadow:var(--shadow-lg)}.preview-panel__character-name{font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--color-text);margin:0;text-align:center}.preview-panel__tap-hint{font-family:var(--font-pixel);font-size:7px;color:var(--color-text-muted);margin:0;letter-spacing:.5px}.preview-panel__sprite-area--family{padding:var(--space-6) var(--space-8)}.preview-panel__family-row{display:flex;align-items:flex-end;justify-content:center;gap:var(--space-4);flex-wrap:wrap;cursor:pointer}.preview-panel__family-member{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);animation:slideUp .4s ease-out}.preview-panel__family-member:nth-child(2){animation-delay:60ms}.preview-panel__family-member:nth-child(3){animation-delay:.12s}.preview-panel__family-member:nth-child(4){animation-delay:.18s}.preview-panel__family-member:nth-child(5){animation-delay:.24s}.preview-panel__family-member:nth-child(6){animation-delay:.3s}.preview-panel__family-member:nth-child(7){animation-delay:.36s}.preview-panel__family-member--mom{animation-delay:0ms}.preview-panel__family-name{font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--color-text-secondary);text-align:center;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-panel__family-member--mom .preview-panel__family-name{color:var(--color-primary);font-weight:700}.preview-panel__print-area{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);animation:slideUp .4s ease-out}.preview-panel__print-area canvas{width:100%;height:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}}.sprite-builder{display:flex;flex-direction:column;gap:20px}.beard-picker-wrapper{max-height:0;overflow:hidden;transition:max-height .25s ease-out,margin-top .25s ease-out;margin-top:-20px}.beard-picker-wrapper--visible{max-height:200px;margin-top:0}.section-label,.option-grid__label,.color-slider__label{display:block;font-family:var(--font-display);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.thumbnail-grid{display:flex;flex-wrap:wrap;gap:8px}.thumbnail-grid__item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;border:2px solid var(--color-border, #333);border-radius:10px;background:var(--color-bg, #ffffff);color:var(--color-text, #eee);cursor:pointer;transition:border-color .15s,background .15s,transform .1s;min-width:64px}.thumbnail-grid__item:hover{background:var(--color-surface-hover, #e8c9b8);border-color:var(--color-text-secondary, #666);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.thumbnail-grid__item:active{transform:scale(.95) translateY(0);transition-duration:80ms}.thumbnail-grid__item--active{border-color:var(--color-primary, #6c63ff);background:#e754801f;box-shadow:0 0 0 1px #e754804d;animation:popIn .25s ease-out}.thumbnail-grid__label{font-size:10px;font-weight:500;text-align:center;line-height:1.2;max-width:80px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.thumbnail-grid__item--active .thumbnail-grid__label{color:var(--color-primary, #6c63ff);font-weight:700}.thumbnail-grid__empty{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--color-text-secondary, #666);border:1px dashed var(--color-border, #444);border-radius:6px}.sprite-thumbnail{image-rendering:pixelated;image-rendering:crisp-edges}.option-carousel__item .sprite-thumbnail{flex-shrink:0}.option-carousel__item .sprite-thumbnail--outfit{transform:translateY(-30%)}.option-carousel__item .sprite-thumbnail--beard{transform:translateY(-20%)}.option-carousel__item .thumbnail-grid__empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--color-text-secondary, #888);border:none;border-radius:0}.body-picker__color-fill,.color-swatch-fill{display:block;width:100%;aspect-ratio:1;border-radius:50%;box-shadow:inset 0 1px 3px #0000001f}.body-picker__row{display:flex;flex-wrap:wrap;gap:8px}.body-picker__swatch{width:40px;height:40px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:border-color .15s,transform .1s;padding:0}.body-picker__swatch:hover{transform:scale(1.1)}.body-picker__swatch--active{border-color:var(--color-primary, #6c63ff);box-shadow:0 0 0 2px #e7548059}.color-slider__swatch{width:32px;height:32px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:border-color .15s,transform .1s;padding:0}.color-slider__swatch--active{border-color:#fff;box-shadow:0 0 0 2px var(--color-primary, #E7548C)}.option-grid__scroll{display:flex;flex-wrap:wrap;gap:6px}.option-grid__item{padding:8px 14px;border-radius:8px;border:1px solid var(--color-border, #333);background:var(--color-bg, #ffffff);color:var(--color-text, #eee);font-size:13px;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.option-grid__item:hover{background:var(--color-surface-hover, #e8c9b8)}.option-grid__item--active{background:var(--color-primary, #6c63ff);border-color:var(--color-primary, #6c63ff);color:#fff;font-weight:600}.option-carousel__wrapper{position:relative;display:flex;align-items:center}.option-carousel__track{display:flex;align-items:center;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px 0}.option-carousel__track::-webkit-scrollbar{display:none}.option-carousel__item{flex:0 0 calc((100% - (var(--carousel-visible, 4) - 1) * 8px) / var(--carousel-visible, 4));min-width:0;min-height:0;overflow:hidden;scroll-snap-align:start;display:flex;align-items:center;justify-content:center;padding:4px;border:2px solid var(--color-border, #ddd);border-radius:50%;aspect-ratio:1;background:var(--color-bg, #ffffff);color:var(--color-text, #eee);cursor:pointer;transition:border-color .15s,background .15s,transform .1s}.option-carousel__item:hover{border-color:var(--color-text-secondary, #999);transform:scale(1.08);box-shadow:var(--shadow-sm)}.option-carousel__item:active{transform:scale(.95);transition-duration:80ms}.option-carousel__item--active{border-color:var(--color-primary, #E7548C);box-shadow:0 0 0 2px var(--color-primary, #E7548C);animation:popIn .25s ease-out}.option-carousel__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:28px;height:28px;border-radius:50%;border:1px solid var(--color-border, #444);background:var(--color-surface, #f5ddd0);color:var(--color-text, #eee);font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 6px #0006;transition:opacity .2s,background .15s}.option-carousel__arrow:hover{background:var(--color-surface-hover, #e8c9b8)}.option-carousel__arrow--left{left:-14px}.option-carousel__arrow--right{right:-14px}.option-carousel__arrow--hidden{opacity:0;pointer-events:none}.mom-step{display:flex;flex-direction:column;gap:var(--space-4)}.mom-step__preview{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);position:sticky;top:0;z-index:var(--z-sticky);background:var(--color-bg);padding:var(--space-3) 0;margin-left:calc(-1 * var(--space-4));margin-right:calc(-1 * var(--space-4));padding-left:var(--space-4);padding-right:var(--space-4)}.mom-step__label{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--color-text)}.mom-step__name-input{background:#fff;border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:16px;width:100%;max-width:280px;text-align:center;outline:none;transition:border-color .2s ease-out,box-shadow .2s ease-out}.mom-step__name-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.thumbnail-grid__item:focus-visible,.body-picker__card:focus-visible,.option-carousel__item:focus-visible,.option-grid__item:focus-visible,.color-slider__swatch:focus-visible,.body-picker__swatch:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.mom-step__name-input::placeholder{color:var(--color-text-muted)}.mom-step__helper{font-family:var(--font-body);font-size:13px;color:var(--color-text-muted)}@media(min-width:1024px){.mom-step__preview{display:none}}@media(max-width:400px){.thumbnail-grid__item{padding:4px;min-width:56px}.thumbnail-grid__label{font-size:9px;max-width:52px}.body-picker__card{padding:4px}.color-slider__swatch{width:28px;height:28px}.option-grid__item{padding:6px 10px;font-size:12px}.sprite-builder{gap:16px}.option-carousel__item{padding:4px}.option-carousel__arrow{width:24px;height:24px;font-size:16px}.option-carousel__arrow--left{left:-12px}.option-carousel__arrow--right{right:-12px}}.tabbed-builder{border:1px solid var(--color-border, #ddd);border-radius:var(--radius-lg, 16px);background:var(--color-bg, #fff);overflow:hidden;display:flex;flex-direction:column}.tabbed-builder__tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border, #ddd);background:var(--color-surface, #f9f4f0);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tabbed-builder__tabs::-webkit-scrollbar{display:none}.tabbed-builder__tab{flex:1 0 auto;display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 14px;border:none;background:none;cursor:pointer;color:var(--color-text-secondary, #888);transition:color .15s,background .15s;position:relative;min-width:0}.tabbed-builder__tab:hover{color:var(--color-text, #333);background:#e754800d}.tabbed-builder__tab--active{color:var(--color-primary, #E7548C);background:#e7548014}.tabbed-builder__tab--active:after{content:"";position:absolute;bottom:0;left:12px;right:12px;height:3px;border-radius:3px 3px 0 0;background:var(--color-primary, #E7548C)}.tabbed-builder__tab-icon{display:flex;align-items:center;justify-content:center}.tabbed-builder__tab-label{font-family:var(--font-body, "Inter", sans-serif);font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.tabbed-builder__preview{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px 16px 8px;cursor:pointer;-webkit-user-select:none;user-select:none;min-height:160px}.tabbed-builder__sprite{image-rendering:pixelated;image-rendering:crisp-edges}.tabbed-builder__rotate-hint{font-family:var(--font-body, "Inter", sans-serif);font-size:11px;color:var(--color-text-muted, #aaa);margin:4px 0 0}.tabbed-builder__options{padding:12px 16px 16px;border-top:1px solid var(--color-border, #eee);min-height:120px}.tabbed-builder__options .section-label{margin-top:0}@media(max-width:480px){.tabbed-builder__tab{padding:8px 10px}.tabbed-builder__tab-label{font-size:9px}.tabbed-builder__preview{padding:12px 12px 6px;min-height:120px}.tabbed-builder__preview .sprite-preview,.tabbed-builder__preview .sprite-preview__canvas{width:96px!important;height:96px!important}.tabbed-builder__options{padding:10px 12px 14px}}@media(max-width:360px){.tabbed-builder__tab-label{display:none}.tabbed-builder__tab{padding:10px 12px}}.tabbed-builder__tab:focus-visible{outline:2px solid var(--color-primary, #E7548C);outline-offset:-2px}.mom-step__name-field{display:flex;flex-direction:column;gap:4px;width:100%}.mom-step__label{font-size:14px;font-weight:600;color:var(--color-text, #2a1a1a)}.mom-step__helper{font-size:12px;color:var(--color-text-secondary, #8a6a6a);font-style:italic}.kids-step{display:flex;flex-direction:column;gap:12px}.kids-step__subtitle{font-family:var(--font-body);font-size:14px;color:var(--color-text-secondary);margin:0;text-align:center}.kids-step__list{display:flex;flex-direction:column;gap:8px}.kids-step__add-btn{align-self:center;display:inline-flex;align-items:center;gap:6px;padding:10px 24px;border:2px dashed var(--color-border, #444);border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary, #999);font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer;transition:border-color .2s ease-out,color .2s ease-out,background .2s ease-out,transform .2s ease-out}.kids-step__add-btn:hover{border-color:var(--color-primary, #6c63ff);color:var(--color-primary, #6c63ff);background:var(--color-primary-soft);transform:translateY(-1px)}.kids-step__add-btn:active{transform:scale(.97);transition-duration:80ms}.kids-step__count{font-size:12px;color:var(--color-text-secondary, #666);text-align:center;margin:0}.child-card{border:1px solid var(--color-border, #333);border-radius:10px;background:var(--color-bg, #ffffff);overflow:hidden;transition:border-color .2s ease-out,box-shadow .2s ease-out}.child-card:hover{box-shadow:var(--shadow-sm)}.child-card--expanded{border-color:var(--color-primary, #6c63ff);box-shadow:0 0 0 1px var(--color-primary-soft)}.child-card__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 14px;background:transparent;border:none;color:var(--color-text, #eee);cursor:pointer;gap:8px}.child-card__header-left{display:flex;align-items:center;gap:10px}.child-card__name{font-size:15px;font-weight:600}.child-card__header-right{display:flex;align-items:center;gap:8px}.child-card__remove-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-sm);border:1px solid transparent;background:var(--color-danger-soft, rgba(217, 83, 79, .1));color:var(--color-danger, #D9534F);font-family:var(--font-body);font-size:12px;font-weight:600;cursor:pointer;min-height:auto;line-height:1;transition:background .2s ease-out,border-color .2s ease-out,color .2s ease-out,transform .2s ease-out}.child-card__remove-btn:hover{background:#d9534f2e;border-color:var(--color-danger, #D9534F)}.child-card__remove-btn:active{transform:scale(.95);transition-duration:80ms}.child-card__remove-label{display:none}@media(min-width:400px){.child-card__remove-label{display:inline}}.child-card__chevron{color:var(--color-text-secondary, #666);transition:transform .25s ease-out;flex-shrink:0}.child-card__chevron--open{transform:rotate(180deg)}.child-card__body{padding:0 14px 16px;display:flex;flex-direction:column;gap:16px;animation:slideUp .25s ease-out}.child-card__preview{display:flex;justify-content:center;padding:8px 0}.child-card__field{display:flex;flex-direction:column;gap:4px}.child-card__label{font-family:var(--font-display);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.child-card__input{background:#fff;border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);padding:var(--space-3);font-family:var(--font-body);font-size:16px;outline:none;transition:border-color .2s ease-out,box-shadow .2s ease-out}.child-card__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.child-card__input::placeholder{color:var(--color-text-muted)}.child-card__input[type=date]{color-scheme:light}.child-card__textarea{background:var(--color-bg, #ffffff);border:1px solid var(--color-border, #333);border-radius:8px;color:var(--color-text, #eee);padding:10px 12px;font-size:14px;font-family:inherit;resize:vertical;min-height:60px;outline:none;transition:border-color .15s}.child-card__textarea:focus{border-color:var(--color-primary, #6c63ff)}.child-card__textarea::placeholder{color:var(--color-text-secondary, #666)}.child-card__input--error{border-color:var(--color-danger, #e74c3c)}.child-card__input--error:focus{border-color:var(--color-danger, #e74c3c);box-shadow:0 0 0 2px #e74c3c33}.child-card__error{font-size:11px;color:var(--color-danger, #e74c3c)}.child-card__helper{font-size:11px;color:var(--color-text-secondary, #666);line-height:1.3}.child-card__char-count{font-size:11px;color:var(--color-text-secondary, #666);text-align:right}.child-card__level-messages{display:flex;flex-direction:column;gap:14px;margin-top:4px;padding-top:12px;border-top:1px solid var(--color-border, #333)}.child-card__level-messages-title{font-family:var(--font-display);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary);margin:0}.child-card__gender-toggle{display:flex;gap:0;border:1px solid var(--color-border, #444);border-radius:8px;overflow:hidden;align-self:center}.child-card__gender-btn{flex:1;padding:8px 20px;border:none;background:var(--color-bg, #ffffff);color:var(--color-text-secondary, #999);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.child-card__gender-btn:first-child{border-right:1px solid var(--color-border, #444)}.child-card__gender-btn--active{background:var(--color-primary, #6c63ff);color:#fff;animation:popIn .2s ease-out}.drink-picker__label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary, #999);margin-bottom:10px}.drink-picker__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px}.drink-picker__item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border:1px solid var(--color-border, #333);border-radius:10px;background:var(--color-surface, #f5ddd0);color:var(--color-text, #eee);cursor:pointer;transition:background .15s,border-color .15s,transform .1s}.drink-picker__item:hover{background:var(--color-surface-hover, #e8c9b8)}.drink-picker__item:active{transform:scale(.96)}.drink-picker__item--active{background:var(--color-primary, #6c63ff);border-color:var(--color-primary, #6c63ff);color:#fff}.drink-picker__sprite{width:32px;height:32px;image-rendering:pixelated;image-rendering:crisp-edges}.drink-picker__name{font-size:12px;font-weight:500;text-align:center;line-height:1.2}.photo-cropper-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000d9;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px}.photo-cropper{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:420px;width:100%}.photo-cropper__title{font-size:16px;font-weight:700;color:var(--color-text, #eee);margin:0}.photo-cropper__hint{font-size:12px;color:var(--color-text-secondary, #999);text-align:center;margin:0}.photo-cropper__canvas-wrap{position:relative;touch-action:none;cursor:grab;border-radius:8px;overflow:hidden;border:2px solid var(--color-border, #333)}.photo-cropper__canvas-wrap:active{cursor:grabbing}.photo-cropper__canvas{display:block}.photo-cropper__actions{display:flex;gap:12px;width:100%;justify-content:center}.photo-cropper__btn{padding:12px 28px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:opacity .15s,transform .1s}.photo-cropper__btn:active{transform:scale(.97)}.photo-cropper__btn--confirm{background:var(--color-primary, #e75480);color:#fff}.photo-cropper__btn--confirm:hover{opacity:.9}.photo-cropper__btn--cancel{background:var(--color-surface, #f5ddd0);color:var(--color-text-secondary, #8a6a6a);border:1px solid var(--color-border, #e0c4b8)}.photo-cropper__btn--cancel:hover{background:var(--color-surface-hover, #e8c9b8)}.photo-cropper__zoom{display:flex;align-items:center;gap:10px}.photo-cropper__zoom-label{font-size:12px;color:var(--color-text-secondary, #999)}.photo-cropper__zoom-slider{width:120px;accent-color:var(--color-primary, #e75480)}.photo-upload__label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary, #999);margin-bottom:10px}.photo-upload__input{display:none}.photo-upload__dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 16px;border:2px dashed var(--color-border, #444);border-radius:12px;background:var(--color-surface, #f5ddd0);cursor:pointer;transition:border-color .15s,background .15s}.photo-upload__dropzone:hover,.photo-upload__dropzone:focus-visible{border-color:var(--color-primary, #6c63ff);background:var(--color-surface-hover, #e8c9b8)}.photo-upload__icon{font-size:32px}.photo-upload__text{font-size:14px;color:var(--color-text, #eee);font-weight:500}.photo-upload__hint{font-size:12px;color:var(--color-text-secondary, #666)}.photo-upload__preview-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px}.photo-upload__preview-img{max-width:100%;max-height:200px;border-radius:10px;object-fit:contain;border:1px solid var(--color-border, #333)}.photo-upload__remove-btn{padding:6px 14px;border:none;border-radius:6px;background:#e74c3c26;color:#e74c3c;font-size:13px;cursor:pointer;transition:background .15s}.photo-upload__remove-btn:hover{background:#e74c3c4d}.photo-upload__dropzone--uploading{cursor:default;pointer-events:none;opacity:.7}.photo-upload__spinner{animation:spin 1s linear infinite;color:var(--color-primary, #6c63ff)}.photo-upload--error .photo-upload__dropzone{border-color:var(--color-danger, #e74c3c)}.photo-upload__error{font-size:11px;color:var(--color-danger, #e74c3c);margin-top:4px}@media(min-width:1024px){.personalize-step__inline-preview{display:none}}.personalize-step{display:flex;flex-direction:column;gap:24px}.personalize-step__subtitle{font-size:14px;color:var(--color-text-secondary, #999);margin:0;text-align:center}.personalize-step__section{display:flex;flex-direction:column;gap:6px}.personalize-step__label{font-family:var(--font-display);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.personalize-step__textarea{background:#fff;border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:15px;resize:vertical;min-height:80px;outline:none;transition:border-color .2s ease-out,box-shadow .2s ease-out}.personalize-step__textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.personalize-step__textarea::placeholder{color:var(--color-text-muted)}.personalize-step__char-count{font-size:11px;color:var(--color-text-secondary, #666);text-align:right}.personalize-step__input{background:#fff;border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:16px;outline:none;transition:border-color .2s ease-out,box-shadow .2s ease-out}.personalize-step__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.personalize-step__input::placeholder{color:var(--color-text-muted)}.personalize-step__error{font-size:11px;color:var(--color-danger, #e74c3c)}.personalize-step__input--error,.photo-upload--error .photo-upload__dropzone{border-color:var(--color-danger, #e74c3c)}.personalize-step__helper{font-size:13px;color:var(--color-text-secondary, #8a6a6a);margin:0}.personalize-step__helper-text{font-size:11px;color:var(--color-text-secondary, #666)}.personalize-step__level-fields{padding:10px 14px 14px;display:flex;flex-direction:column;gap:12px}.personalize-step__level-field{display:flex;flex-direction:column;gap:4px}.product-step{display:flex;flex-direction:column;gap:var(--space-6)}.product-step__section{display:flex;flex-direction:column;gap:var(--space-3)}.product-step__section-title{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--color-text);margin:0}.product-step__variants{display:flex;flex-direction:column;gap:var(--space-2)}.variant-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:#fff;border:2px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease-out;position:relative;text-align:left;width:100%;font-family:inherit}.variant-card:hover{border-color:var(--color-border-strong);background:var(--color-surface);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.variant-card:active{transform:scale(.98);transition-duration:80ms}.variant-card--selected{border-color:var(--color-primary);background:var(--color-primary-soft);box-shadow:0 0 0 1px var(--color-primary);animation:popIn .25s ease-out}.variant-card--selected:hover{background:var(--color-primary-soft);transform:none}.variant-card__icon-wrap{width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:var(--color-surface);border-radius:var(--radius-md);color:var(--color-primary);flex-shrink:0;overflow:hidden}.variant-card__thumb{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-sm)}.variant-card__info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.variant-card__name{font-family:var(--font-body);font-size:15px;font-weight:600;color:var(--color-text)}.variant-card__price{font-family:var(--font-body);font-size:13px;color:var(--color-text-secondary)}.variant-card__desc{font-family:var(--font-body);font-size:12px;color:var(--color-text-secondary);line-height:1.3}.variant-card__badge{font-family:var(--font-pixel);font-size:7px;padding:3px 8px;background:var(--color-primary);color:#fff;border-radius:var(--radius-sm);text-transform:uppercase;white-space:nowrap;flex-shrink:0}.size-picker{display:flex;gap:var(--space-2)}.size-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-3) var(--space-2);border:2px solid var(--color-border);border-radius:var(--radius-md);background:#fff;cursor:pointer;transition:all .2s ease-out;position:relative;font-family:inherit}.size-option:hover{border-color:var(--color-border-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.size-option:active{transform:scale(.97);transition-duration:80ms}.size-option--selected{border-color:var(--color-primary);background:var(--color-primary-soft);animation:popIn .25s ease-out}.size-option__label{font-family:var(--font-body);font-size:15px;font-weight:600;color:var(--color-text)}.size-option__price{font-family:var(--font-body);font-size:13px;color:var(--color-text-secondary)}.size-option__badge{position:absolute;top:-8px;right:-4px;font-family:var(--font-pixel);font-size:6px;padding:2px 6px;background:var(--color-primary);color:#fff;border-radius:var(--radius-sm)}.frame-color-picker{display:flex;gap:var(--space-3)}.frame-swatch{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);background:#fff;cursor:pointer;transition:all .2s ease-out;font-family:inherit;flex:1}.frame-swatch:hover{border-color:var(--color-border-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.frame-swatch:active{transform:scale(.97);transition-duration:80ms}.frame-swatch--selected{border-color:var(--color-primary);background:var(--color-primary-soft);animation:popIn .25s ease-out}.frame-swatch__color{width:40px;height:40px;border-radius:50%;border:2px solid var(--color-border);box-shadow:inset 0 1px 3px #0000001a}.frame-swatch--selected .frame-swatch__color{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-soft),inset 0 1px 3px #0000001a}.frame-swatch__label{font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--color-text)}.product-step__error{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);color:#dc2626;font-family:var(--font-body);font-size:14px}.product-cta:disabled{opacity:.7;cursor:not-allowed;transform:none}.product-cta:disabled:after{animation:none}.quality-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-4)}.quality-card__title{font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--color-text);margin:0 0 var(--space-3);display:flex;align-items:center;gap:var(--space-2)}.quality-card__title svg{color:var(--color-star)}.quality-card__item{font-family:var(--font-body);font-size:13px;color:var(--color-text-secondary);padding:var(--space-1) 0;display:flex;align-items:center;gap:var(--space-2)}.quality-card__check{color:var(--color-accent);flex-shrink:0}.trust-row{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2) 0}.trust-item{display:flex;align-items:center;gap:var(--space-1);font-family:var(--font-body);font-size:12px;font-weight:500;color:var(--color-trust)}.trust-item__icon{flex-shrink:0}.product-step__upsells{display:flex;flex-direction:column;gap:var(--space-3)}.product-step__upsell{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);gap:var(--space-3)}.product-step__upsell-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.product-step__upsell-name{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:var(--space-2)}.product-step__upsell-icon{color:var(--color-primary);flex-shrink:0}.product-step__upsell-desc{font-family:var(--font-body);font-size:12px;color:var(--color-text-secondary);line-height:1.4}.product-step__upsell-price{font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--color-primary)}.product-step__upsell-toggle{display:flex;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;flex-shrink:0}.product-step__toggle-btn{padding:var(--space-2) var(--space-4);border:none;background:#fff;color:var(--color-text-secondary);font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease-out,color .2s ease-out;min-height:44px}.product-step__toggle-btn:first-child{border-right:1px solid var(--color-border)}.product-step__toggle-btn--active{background:var(--color-primary);color:#fff;animation:popIn .2s ease-out}.product-cta{width:100%;padding:var(--space-4) var(--space-8);background:var(--gradient-cta);color:#fff;font-family:var(--font-body);font-size:16px;font-weight:700;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease-out;box-shadow:0 4px 16px #e7548040;display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:56px;position:relative;overflow:hidden}.product-cta:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.2) 45%,rgba(255,255,255,.2) 55%,transparent 65%);background-size:200% 100%;animation:shimmer 2.5s ease-in-out infinite;pointer-events:none}.product-cta:hover{transform:translateY(-2px);box-shadow:0 8px 24px #e7548059}.product-cta:active{transform:translateY(0);transition-duration:80ms}.product-cta__price{font-weight:400;opacity:.9}.product-cta--secondary{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary);box-shadow:none;min-height:48px;font-size:15px}.product-cta--secondary:after{display:none}.product-cta--secondary:hover{background:#e754800f;box-shadow:none;transform:translateY(-1px)}.product-cta--secondary:active{transform:translateY(0);background:#e754801a}.variant-card:focus-visible,.size-option:focus-visible,.product-step__toggle-btn:focus-visible,.product-cta:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.product-step__locked-section{display:flex;flex-direction:column;gap:var(--space-4)}.product-step__locked-banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-secondary);font-family:var(--font-body);font-size:13px;font-weight:500}.product-step__locked-summary{display:flex;flex-direction:column;gap:var(--space-2)}.product-step__locked-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-4);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.product-step__locked-label{font-family:var(--font-body);font-size:14px;color:var(--color-text-secondary)}.product-step__locked-value{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--color-text)}.product-step__success{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-accent-soft);border:1px solid var(--color-accent);border-radius:var(--radius-md);color:var(--color-accent);font-family:var(--font-body);font-size:14px}.product-step__success p{margin:0}.product-step__success-sub{font-size:12px;opacity:.85;margin-top:var(--space-1)}.product-step__success svg{flex-shrink:0;margin-top:2px}@media(min-width:1024px){.product-step__inline-preview{display:none}}.product-step__options{display:flex;flex-direction:column;gap:var(--space-2, 8px)}.product-option{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3, 12px);padding:var(--space-3, 12px) var(--space-4, 16px);background:#fff;border:2px solid var(--color-border, #ddd);border-radius:var(--radius-md, 12px);cursor:pointer;transition:all .2s ease-out;text-align:left;width:100%;font-family:inherit}.product-option:hover{border-color:var(--color-border-strong, #bbb);background:var(--color-surface, #f9f4f0);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.product-option:active{transform:scale(.98);transition-duration:80ms}.product-option--selected{border-color:var(--color-primary, #E7548C);background:var(--color-primary-soft, rgba(231, 84, 128, .06));box-shadow:0 0 0 1px var(--color-primary, #E7548C)}.product-option--selected:hover{background:var(--color-primary-soft, rgba(231, 84, 128, .06));transform:none}.product-option__left{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.product-option__name{font-family:var(--font-display, "Clash Display", sans-serif);font-size:15px;font-weight:600;color:var(--color-text, #333);display:flex;align-items:center;gap:8px}.product-option__badge{font-family:var(--font-pixel, "Press Start 2P", monospace);font-size:7px;padding:3px 8px;background:var(--color-primary, #E7548C);color:#fff;border-radius:var(--radius-sm, 6px);text-transform:uppercase;white-space:nowrap}.product-option__desc{font-size:12px;color:var(--color-text-secondary, #888);line-height:1.3}.product-option__right{display:flex;align-items:center;gap:8px;flex-shrink:0}.product-option__price{font-family:var(--font-display, "Clash Display", sans-serif);font-size:15px;font-weight:700;color:var(--color-text, #333);white-space:nowrap}.product-option__check{color:var(--color-primary, #E7548C)}.product-step__mockup{margin-top:var(--space-2, 8px);border-radius:var(--radius-lg, 16px);overflow:hidden}.product-option:focus-visible{outline:2px solid var(--color-primary, #E7548C);outline-offset:2px}.review-step{display:flex;flex-direction:column;gap:20px}.review-step__subtitle{font-size:14px;color:var(--color-text-secondary, #999);margin:0;text-align:center}.review-step__incomplete-banner{display:flex;align-items:flex-start;gap:var(--space-3, 12px);padding:var(--space-4, 16px);background:#d4740a14;border:1px solid var(--color-cta, #D4740A);border-radius:var(--radius-md, 10px);color:var(--color-cta, #D4740A)}.review-step__incomplete-banner svg{flex-shrink:0;margin-top:2px}.review-step__incomplete-title{font-family:var(--font-body);font-size:14px;font-weight:600;margin:0 0 4px;color:var(--color-text, #2A1A1A)}.review-step__incomplete-desc{font-family:var(--font-body);font-size:13px;margin:0;color:var(--color-text-secondary, #7A5A5A)}.review-step__section{background:var(--color-surface, #f5ddd0);border:1px solid var(--color-border, #333);border-radius:12px;padding:14px}.review-step__section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.review-step__section-title{margin:0;font-size:15px;font-weight:700;color:var(--color-text, #eee)}.review-step__edit-btn{padding:4px 12px;border:1px solid var(--color-border, #444);border-radius:6px;background:transparent;color:var(--color-primary, #6c63ff);font-size:12px;font-weight:600;cursor:pointer;transition:background .15s}.review-step__edit-btn:hover{background:#e754801a}.review-step__character{display:flex;align-items:center;gap:12px}.review-step__character-name{font-size:15px;font-weight:600}.review-step__character-info{display:flex;flex-direction:column;gap:2px}.review-step__character-meta{font-size:11px;color:var(--color-text-secondary, #999)}.review-step__characters-grid{display:flex;flex-wrap:wrap;gap:12px}.review-step__characters-grid .review-step__character{flex-direction:column;align-items:center;gap:4px}.review-step__characters-grid .review-step__character-name{font-size:12px;font-weight:500;color:var(--color-text-secondary, #ccc)}.review-step__details{display:flex;flex-direction:column;gap:8px}.review-step__detail-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.review-step__detail-label{font-size:13px;color:var(--color-text-secondary, #999);flex-shrink:0}.review-step__detail-value{font-size:13px;font-weight:500;text-align:right}.review-step__detail-value--wrap{max-width:250px;word-break:break-word;white-space:pre-wrap;font-size:12px;line-height:1.4}.review-step__photo-thumb{width:100%;max-width:200px;aspect-ratio:1;object-fit:cover;border-radius:8px;border:1px solid var(--color-border, #444)}.review-step__locked-banner{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--color-surface, #f5ddd0);border:1px solid var(--color-border-strong, #666);border-radius:8px;color:var(--color-text-secondary, #999);font-size:13px;font-weight:500;margin-bottom:12px}.review-step__locked-summary{display:flex;flex-direction:column;gap:8px}.review-step__locked-item{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;background:#fff;border:1px solid var(--color-border, #ddd);border-radius:6px}.review-step__locked-label{font-size:14px;color:var(--color-text-secondary, #999)}.review-step__locked-value{font-size:14px;font-weight:600;color:var(--color-text, #333)}.review-step__locked-value-row{display:flex;align-items:center;gap:8px}.review-step__product-thumb{width:32px;height:32px;object-fit:cover;border-radius:4px}.review-step__error{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px}.review-step__success{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;background:var(--color-accent-soft, #f0fdf4);border:1px solid var(--color-accent, #22c55e);border-radius:8px;color:var(--color-accent, #22c55e);font-size:14px}.review-step__success p{margin:0}.review-step__success-sub{font-size:12px;opacity:.85;margin-top:4px}.review-step__success svg{flex-shrink:0;margin-top:2px}.review-step__save-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 32px;border:none;border-radius:12px;background:linear-gradient(135deg,var(--color-primary, #e75480),#c44569);color:#fff;font-size:18px;font-weight:700;cursor:pointer;transition:opacity .15s,transform .1s;align-self:center;width:100%}.review-step__save-btn:hover{opacity:.92}.review-step__save-btn:active{transform:scale(.97)}.review-step__save-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.review-step__play-link{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 32px;border:2px solid var(--color-primary, #e75480);border-radius:12px;background:transparent;color:var(--color-primary, #e75480);font-size:16px;font-weight:700;text-decoration:none;text-align:center;transition:background .15s}.review-step__play-link:hover{background:#e7548014}.review-step__locked-badge{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--color-text-secondary, #999)}.review-step__buy-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 32px;border:none;border-radius:12px;background:linear-gradient(135deg,var(--color-primary, #e75480),#c44569);color:#fff;font-size:18px;font-weight:700;cursor:pointer;transition:opacity .15s,transform .1s;width:100%}.review-step__buy-btn:hover{opacity:.92}.review-step__buy-btn:active{transform:scale(.97)}.review-step__buy-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.review-step__buy-price{opacity:.9}.review-step--confirmation{display:flex;align-items:center;justify-content:center;min-height:400px;text-align:center}.review-step__confirmation-card{display:flex;flex-direction:column;align-items:center;gap:16px;padding:40px 32px;background:#f0fdf4;border:2px solid #86efac;border-radius:16px;color:#166534}.review-step__confirmation-card h2{font-size:20px;font-weight:700;margin:0}.review-step__confirmation-card p{font-size:15px;color:#15803d;margin:0;line-height:1.5}.accordion-wizard{width:100%;max-width:680px;margin:0 auto;font-family:var(--font-body)}.accordion-wizard__edit-banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-accent-soft);border:1px solid var(--color-accent);border-radius:var(--radius-md);color:var(--color-accent);font-size:13px;font-weight:600;margin-bottom:var(--space-4)}.accordion-wizard__edit-banner--build{background:#d4740a14;border-color:var(--color-cta);color:var(--color-cta)}.accordion-wizard__start-cta{display:flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-6);background:var(--gradient-cta);color:#fff;font-family:var(--font-body);font-size:17px;font-weight:700;border:none;border-radius:var(--radius-lg);cursor:pointer;min-height:56px;box-shadow:var(--shadow-md),0 4px 20px #e7548040;position:relative;overflow:hidden;transition:transform .15s ease-out,box-shadow .15s ease-out}.accordion-wizard__start-cta:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.18) 45%,rgba(255,255,255,.18) 55%,transparent 65%);background-size:200% 100%;animation:shimmer 3s ease-in-out infinite;pointer-events:none}.accordion-wizard__start-cta:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),0 8px 28px #e754804d}.accordion-wizard__start-cta:active{transform:scale(.98);transition-duration:80ms}.accordion-wizard__start-cta-arrow{margin-left:auto;opacity:.8}.accordion-wizard__choice{padding:var(--space-4) 0;animation:slideUp .3s ease-out}.accordion-wizard__choice-title{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--color-text);text-align:center;margin:0 0 var(--space-1)}.accordion-wizard__choice-subtitle{font-size:14px;color:var(--color-text-secondary);text-align:center;margin:0 0 var(--space-5)}.accordion-wizard__choice-cards{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}@media(max-width:480px){.accordion-wizard__choice-cards{grid-template-columns:1fr}}.accordion-wizard__choice-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-5);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;text-align:left;transition:border-color .2s,box-shadow .2s,transform .15s;font-family:var(--font-body)}.accordion-wizard__choice-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.accordion-wizard__choice-card:active{transform:scale(.98)}.accordion-wizard__choice-card--build{border-color:var(--color-primary-soft)}.accordion-wizard__choice-card--build:hover{border-color:var(--color-primary);box-shadow:0 4px 16px #e7548026}.accordion-wizard__choice-card--quick:hover{border-color:var(--color-border-strong)}.accordion-wizard__choice-icon{color:var(--color-primary);flex-shrink:0}.accordion-wizard__choice-card--quick .accordion-wizard__choice-icon{color:var(--color-cta)}.accordion-wizard__choice-name{font-size:16px;font-weight:700;color:var(--color-text)}.accordion-wizard__choice-desc{font-size:13px;color:var(--color-text-secondary);line-height:1.5;margin:0}.accordion-wizard__choice-refund{font-size:12px;color:var(--color-accent);font-weight:600;margin:0}.accordion-wizard__choice-cta{font-size:13px;font-weight:700;color:var(--color-primary);margin-top:var(--space-1)}.accordion-wizard__choice-card--quick .accordion-wizard__choice-cta{color:var(--color-cta)}.accordion-wizard__choice-footer{font-size:12px;color:var(--color-text-muted);text-align:center;margin:var(--space-4) 0 0}.accordion-wizard__sections{display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;animation:slideUp .3s ease-out}.accordion-section{border-bottom:1px solid var(--color-border);background:var(--color-bg)}.accordion-section:last-child{border-bottom:none}.accordion-section__header{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-5);background:none;border:none;cursor:pointer;font-family:var(--font-body);text-align:left;transition:background .15s;min-height:56px}.accordion-section__header:hover:not(:disabled){background:var(--color-surface)}.accordion-section--locked .accordion-section__header{cursor:default;opacity:.5}.accordion-section--open .accordion-section__header{background:var(--color-surface);border-bottom:1px solid var(--color-border)}.accordion-section--complete:not(.accordion-section--open) .accordion-section__header{background:#2e8b5708}.accordion-section__num{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-border);color:var(--color-text-secondary);font-family:var(--font-pixel);font-size:8px;flex-shrink:0;transition:background .2s,color .2s}.accordion-section--open .accordion-section__num{background:var(--color-primary);color:#fff}.accordion-section--complete:not(.accordion-section--open) .accordion-section__num{background:var(--color-accent);color:#fff}.accordion-section__label{flex:1;font-size:15px;font-weight:700;color:var(--color-text)}.accordion-section--locked .accordion-section__label{color:var(--color-text-muted)}.accordion-section__header-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.accordion-section__check{color:var(--color-accent)}.accordion-section__chevron{color:var(--color-text-muted);transition:transform .25s ease-out}.accordion-section__chevron--open{transform:rotate(180deg)}.accordion-section__body{animation:slideUp .25s ease-out}.accordion-section__step-content{padding:var(--space-4) var(--space-5) var(--space-5)}.accordion-section__step-content .mom-step__preview{position:sticky;top:0;z-index:var(--z-sticky);background:var(--color-bg);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border);display:flex;justify-content:center;margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-5)) var(--space-4)}.accordion-kids-bar{position:sticky;top:0;z-index:var(--z-sticky);display:flex;gap:var(--space-4);padding:var(--space-3) var(--space-5);background:var(--color-bg);border-bottom:1px solid var(--color-border);overflow-x:auto;scrollbar-width:none}.accordion-kids-bar::-webkit-scrollbar{display:none}.accordion-kids-bar__kid{display:flex;flex-direction:column;align-items:center;gap:2px;flex-shrink:0}.accordion-kids-bar__name{font-family:var(--font-pixel);font-size:7px;color:var(--color-text-secondary);text-align:center;max-width:56px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accordion-section__nav{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5) var(--space-5);border-top:1px solid var(--color-border)}.accordion-section__btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:none;border-radius:var(--radius-md);font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer;transition:all .18s ease-out;min-height:44px;white-space:nowrap}.accordion-section__btn:active:not(:disabled){transform:scale(.96);transition-duration:80ms}.accordion-section__btn:disabled{opacity:.35;cursor:not-allowed}.accordion-section__btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.accordion-section__btn--back{background:var(--color-surface);color:var(--color-text-secondary);min-width:80px}.accordion-section__btn--back:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.accordion-section__back-icon{transform:rotate(90deg)}.accordion-section__btn--next{background:var(--color-primary);color:#fff;margin-left:auto;min-width:160px;position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}.accordion-section__btn--next:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.18) 45%,rgba(255,255,255,.18) 55%,transparent 65%);background-size:200% 100%;animation:shimmer 3s ease-in-out infinite;pointer-events:none}.accordion-section__btn--next:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-glow)}.accordion-section__btn--next:disabled:after{display:none}.accordion-section__skip{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:none;border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);font-family:var(--font-body);font-size:12px;font-weight:600;color:var(--color-cta);cursor:pointer;transition:all .15s;white-space:nowrap}.accordion-section__skip:hover{background:#d4740a0f;border-color:var(--color-cta)}@media(max-width:480px){.accordion-section__header{padding:var(--space-3) var(--space-4)}.accordion-section__step-content{padding:var(--space-3) var(--space-4) var(--space-4)}.accordion-section__nav{padding:var(--space-3) var(--space-4) var(--space-4);flex-wrap:wrap}.accordion-section__btn--next{min-width:0;flex:1}.accordion-section__skip{order:3;width:100%;justify-content:center}.accordion-section__step-content .mom-step__preview{margin:calc(-1 * var(--space-3)) calc(-1 * var(--space-4)) var(--space-3);padding:var(--space-3) var(--space-4)}.accordion-kids-bar{padding:var(--space-2) var(--space-4)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.choice-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;padding:var(--space-6);max-width:540px;margin:0 auto;animation:fadeIn .4s ease-out}.choice-screen__header{text-align:center;margin-bottom:var(--space-8)}.choice-screen__title{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--color-primary);margin:0 0 var(--space-2)}.choice-screen__subtitle{font-family:var(--font-body);font-size:16px;color:var(--color-text-secondary);margin:0}.choice-screen__options{display:flex;flex-direction:column;gap:var(--space-4);width:100%}.choice-screen__card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-6);border-radius:var(--radius-lg);border:2px solid var(--color-border);background:var(--color-surface);cursor:pointer;transition:all .2s ease-out;-webkit-tap-highlight-color:transparent;font-family:var(--font-body)}.choice-screen__card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.choice-screen__card:active{transform:scale(.98);transition-duration:80ms}.choice-screen__card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.choice-screen__card--build .choice-screen__card-icon{color:var(--color-primary)}.choice-screen__card--build:hover{border-color:var(--color-primary)}.choice-screen__card--quick .choice-screen__card-icon{color:var(--color-cta)}.choice-screen__card--quick:hover{border-color:var(--color-cta)}.choice-screen__card-title{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--color-text);margin:var(--space-3) 0 var(--space-2)}.choice-screen__card-desc{font-size:14px;color:var(--color-text-secondary);margin:0 0 var(--space-2);line-height:1.5}.choice-screen__card-refund{font-size:13px;color:var(--color-accent);font-weight:600;margin:0 0 var(--space-3)}.choice-screen__card-cta{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-size:15px;font-weight:600;color:#fff;background:var(--color-primary);margin-top:var(--space-2);min-width:160px}.choice-screen__card--quick .choice-screen__card-cta{background:var(--color-cta)}.choice-screen__footer{font-size:13px;color:var(--color-text-muted);text-align:center;margin-top:var(--space-6)}@media(max-width:400px){.choice-screen{padding:var(--space-4)}.choice-screen__title{font-size:24px}.choice-screen__card{padding:var(--space-4)}.choice-screen__card-title{font-size:18px}}.wb-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#2a1a1a80;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:20px;animation:wb-fade-in .2s ease-out}@keyframes wb-fade-in{0%{opacity:0}to{opacity:1}}.wb-modal{background:var(--color-bg, #FFF8F5);border-radius:20px;padding:36px 28px 28px;max-width:360px;width:100%;text-align:center;box-shadow:0 20px 60px #2a1a1a33;animation:wb-slide-up .3s ease-out}@keyframes wb-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.wb-modal__icon{font-size:48px;margin-bottom:12px;line-height:1}.wb-modal__title{font-family:var(--font-display, "Fredoka", sans-serif);font-size:22px;font-weight:700;color:var(--color-text, #2A1A1A);margin:0 0 8px}.wb-modal__text{font-family:var(--font-body, "Nunito", sans-serif);font-size:15px;line-height:1.5;color:var(--color-text-secondary, #7A5A5A);margin:0 0 24px}.wb-modal__actions{display:flex;flex-direction:column;gap:10px}.wb-btn{display:block;width:100%;padding:14px 20px;border:none;border-radius:12px;font-family:var(--font-body, "Nunito", sans-serif);font-size:15px;font-weight:700;cursor:pointer;transition:transform .1s ease-out,box-shadow .1s ease-out}.wb-btn:active{transform:scale(.98)}.wb-btn--primary{background:linear-gradient(135deg,var(--color-primary, #E75480) 0%,#D4426E 100%);color:#fff;box-shadow:0 4px 16px #e754804d}.wb-btn--primary:hover{box-shadow:0 6px 20px #e7548066}.wb-btn--secondary{background:var(--color-surface, #FDF0E9);color:var(--color-text-secondary, #7A5A5A);border:1px solid var(--color-border, #E8CFC2)}.wb-btn--secondary:hover{background:var(--color-surface-elevated, #FAE8DF)}:root{--font-display: "Fredoka", "Varela Round", sans-serif;--font-body: "Nunito", "Nunito Sans", system-ui, sans-serif;--font-pixel: "Press Start 2P", monospace;--color-bg: #FFF8F5;--color-surface: #FDF0E9;--color-surface-elevated: #FAE8DF;--color-surface-hover: #F0D4C4;--color-text: #2A1A1A;--color-text-secondary: #7A5A5A;--color-text-muted: #A08080;--color-border: #E8CFC2;--color-border-strong: #D4B0A0;--color-primary: #E75480;--color-primary-hover: #D4426E;--color-primary-soft: rgba(231, 84, 128, .1);--color-cta: #D4740A;--color-cta-hover: #B8620A;--color-accent: #2E8B57;--color-accent-soft: rgba(46, 139, 87, .1);--color-danger: #D9534F;--color-danger-soft: rgba(217, 83, 79, .1);--color-trust: #2E7D5B;--color-urgency: #D4740A;--color-star: #F5A623;--color-selection-bg: rgba(231, 84, 128, .25);--gradient-cta: linear-gradient(135deg, #E75480 0%, #D4740A 100%);--gradient-surface: linear-gradient(180deg, #FFF8F5 0%, #FDF0E9 100%);--gradient-overlay: linear-gradient(180deg, transparent 0%, rgba(42, 26, 26, .6) 100%);--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;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(42, 26, 26, .06);--shadow-md: 0 4px 12px rgba(42, 26, 26, .08);--shadow-lg: 0 8px 24px rgba(42, 26, 26, .1);--shadow-xl: 0 16px 40px rgba(42, 26, 26, .14);--shadow-glow: 0 0 20px rgba(231, 84, 128, .2);--layout-max-width: 1120px;--layout-preview-width: 55%;--layout-controls-width: 45%;--layout-mobile-max: 640px;--layout-gap: 24px;--layout-controls-padding: 32px;--nav-height: 64px;--z-base: 0;--z-preview: 1;--z-sticky: 5;--z-nav: 10;--z-dropdown: 20;--z-modal: 50}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none}canvas{image-rendering:pixelated;image-rendering:crisp-edges;image-rendering:-webkit-optimize-contrast}button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}input,textarea,select{-webkit-tap-highlight-color:transparent;font-family:inherit}button:not(.color-slider__swatch):not(.body-picker__swatch){min-height:44px}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}::selection{background:var(--color-selection-bg);color:var(--color-text)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{transform:scale(.96)}60%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 0 var(--color-primary-soft)}50%{box-shadow:0 0 12px 4px var(--color-primary-soft)}}@keyframes gentleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.edit-mode-status{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;padding:var(--space-8);text-align:center;gap:var(--space-4)}.edit-mode-status__spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.edit-mode-status__title{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--color-text);margin:0}.edit-mode-status__text{font-family:var(--font-body);font-size:15px;color:var(--color-text-secondary);margin:0;max-width:400px}.edit-mode-status--error .edit-mode-status__title{color:var(--color-danger)}.customizer{max-width:640px;margin:0 auto;padding:16px;min-height:100dvh}.customizer h1{font-size:1.4rem;text-align:center;margin:0 0 24px}
