.fps-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.625rem;padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-lg);z-index:1000;max-width:calc(100vw - 32px);font-size:clamp(.8125rem,1.4vw,.875rem)}.fps-toast--error{border-color:var(--error)}.fps-toast--error svg{color:var(--error);flex-shrink:0}.toast-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;margin-left:.5rem;transition:color .15s}.toast-close:hover{color:var(--text-primary)}.build-wizard-section{margin-top:clamp(2rem,4vw,2.5rem);padding-top:clamp(1.5rem,2.5vw,2rem);border-top:1px solid var(--border)}.wizard-progress-bar{margin-bottom:clamp(1.25rem,2.5vw,1.75rem)}.progress-track{height:6px;background:var(--bg-tertiary);border-radius:3px;margin-bottom:clamp(.875rem,1.75vw,1.125rem);overflow:hidden;box-shadow:inset 0 1px 3px #0000001a}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-hover) 100%);border-radius:3px;transition:width .4s cubic-bezier(.4,0,.2,1);box-shadow:0 0 12px rgba(var(--accent-rgb, 74, 159, 212),.4)}.progress-steps{display:flex;flex-wrap:nowrap;gap:clamp(.5rem,1.5vw,.75rem);overflow-x:auto;padding-bottom:8px;scroll-behavior:smooth}.progress-step{flex:1;min-width:clamp(75px,18vw,100px);padding:clamp(.5rem,1vw,.75rem) clamp(.5rem,1vw,.75rem);background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:clamp(.625rem,1vw,.75rem);text-align:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.progress-step:hover{border-color:var(--accent);background:var(--bg-tertiary);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--accent-rgb, 74, 159, 212),.2)}.progress-step.is-active{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);border-color:var(--accent);color:var(--bg-primary);font-weight:600;box-shadow:0 4px 16px rgba(var(--accent-rgb, 74, 159, 212),.3);transform:translateY(-2px)}.progress-step.is-completed{border-color:var(--accent);color:var(--accent);background:rgba(var(--accent-rgb, 74, 159, 212),.08)}.progress-step.is-upcoming{opacity:.5;cursor:not-allowed}.step-name{display:block;font-weight:600;letter-spacing:.01em}.step-value{display:block;font-size:clamp(.5rem,.8vw,.625rem);margin-top:2px;opacity:.85}.wizard-content{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(var(--bg-secondary-rgb, 36, 36, 36),.8) 100%);border:1px solid var(--border);border-radius:12px;padding:clamp(1.5rem,3vw,2rem);box-shadow:var(--shadow-md),inset 0 1px 2px #ffffff0d;transition:all .3s ease}.wizard-step-area{min-height:160px}.step-panel{animation:fadeIn .25s ease}.wizard-header{text-align:center;margin-bottom:clamp(.875rem,1.75vw,1.125rem)}.wizard-icon{font-size:clamp(1.75rem,3.5vw,2.25rem);margin-bottom:.5rem}.wizard-title{font-size:clamp(1.125rem,2vw,1.375rem);font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.wizard-game{color:var(--accent)}.wizard-subtitle{color:var(--text-secondary);margin:0;font-size:clamp(.8125rem,1.4vw,.875rem)}.step-question{font-size:clamp(.9375rem,1.6vw,1.0625rem);font-weight:600;color:var(--text-primary);text-align:center;margin:0 0 .25rem}.step-subtitle{color:var(--text-muted);text-align:center;margin:0 0 clamp(.75rem,1.5vw,1rem);font-size:clamp(.75rem,1.25vw,.8125rem)}.budget-control{display:flex;align-items:center;justify-content:center;gap:clamp(.75rem,1.5vw,1rem);margin-bottom:clamp(1.25rem,2.5vw,1.75rem);padding:clamp(1rem,2vw,1.5rem);background:rgba(var(--accent-rgb, 74, 159, 212),.06);border:1px solid rgba(var(--accent-rgb, 74, 159, 212),.12);border-radius:12px}.budget-btn{display:flex;align-items:center;justify-content:center;width:clamp(44px,10vw,56px);height:clamp(44px,10vw,56px);background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);border:none;border-radius:10px;color:var(--bg-primary);font-size:clamp(1.125rem,2vw,1.5rem);font-weight:700;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px rgba(var(--accent-rgb, 74, 159, 212),.3);flex-shrink:0}.budget-btn:hover{transform:scale(1.08);box-shadow:0 6px 20px rgba(var(--accent-rgb, 74, 159, 212),.4)}.budget-btn:active{transform:scale(.95);box-shadow:0 2px 6px rgba(var(--accent-rgb, 74, 159, 212),.3)}.budget-input{font-size:clamp(1.25rem,3vw,1.75rem);font-weight:700;color:var(--accent);background:var(--bg-tertiary);border:2px solid rgba(var(--accent-rgb, 74, 159, 212),.2);border-radius:10px;padding:clamp(.5rem,1vw,.75rem) clamp(.875rem,1.5vw,1.125rem);text-align:center;width:clamp(120px,30vw,160px);transition:all .2s ease}.budget-input:hover{border-color:rgba(var(--accent-rgb, 74, 159, 212),.4)}.budget-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb, 74, 159, 212),.1)}.btn-start-build{display:block;width:100%;max-width:220px;margin:0 auto;padding:.625rem 1.25rem;background:var(--accent);border:none;border-radius:8px;color:var(--bg-primary);font-size:clamp(.875rem,1.5vw,.9375rem);font-weight:600;cursor:pointer;transition:opacity .15s}.btn-start-build:hover{opacity:.9}.wizard-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:clamp(.75rem,2vw,1rem);max-width:480px;margin:0 auto}.wizard-chips--cases{max-width:520px}.wizard-chip{flex-direction:column;align-items:center;justify-content:center;gap:clamp(.375rem,1vw,.5rem);padding:clamp(.875rem,2vw,1.125rem) clamp(.625rem,1.5vw,.875rem);background:var(--bg-tertiary);border:2px solid var(--border);border-radius:10px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm);min-height:100px;display:flex;touch-action:manipulation}.wizard-chip:hover{border-color:var(--accent);background:rgba(var(--accent-rgb, 74, 159, 212),.08);transform:translateY(-3px);box-shadow:0 6px 16px rgba(var(--accent-rgb, 74, 159, 212),.2)}.wizard-chip.is-selected{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);border-color:var(--accent);color:var(--bg-primary);font-weight:600;box-shadow:0 8px 24px rgba(var(--accent-rgb, 74, 159, 212),.4);transform:translateY(-3px) scale(1.02);position:relative}.wizard-chip.is-selected:after{content:"";position:absolute;top:-6px;right:-6px;width:20px;height:20px;background:var(--success);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(var(--accent-rgb, 74, 159, 212),.3)}.chip-logo{height:clamp(20px,4vw,28px);width:auto;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.wizard-chip.is-selected .chip-logo{filter:brightness(0) invert(1) drop-shadow(0 1px 2px rgba(0,0,0,.2))}.chip-text{font-size:clamp(.8125rem,1.4vw,.9375rem);font-weight:500;text-align:center;word-wrap:break-word}.wizard-chip--any{background:var(--bg-secondary);border-color:var(--text-muted)}.wizard-chip--any:hover{border-color:var(--accent);background:rgba(var(--accent-rgb, 74, 159, 212),.08)}.wizard-chip--any span{font-weight:600;font-size:clamp(.75rem,1.25vw,.8125rem)}.wizard-chip--case{padding:clamp(.75rem,1.5vw,1rem)}.case-img{height:clamp(48px,8vw,64px);width:auto;object-fit:contain;margin-bottom:clamp(.25rem,.5vw,.375rem)}.wizard-chip--case.is-selected .case-img{filter:brightness(0) invert(1) drop-shadow(0 1px 2px rgba(0,0,0,.2))}.wizard-edit-actions{display:flex;justify-content:center;margin-top:clamp(.875rem,1.75vw,1.125rem)}.btn-regenerate{display:flex;align-items:center;gap:.5rem;padding:.5rem .875rem;background:var(--accent);border:none;border-radius:6px;color:var(--bg-primary);font-size:clamp(.8125rem,1.4vw,.875rem);font-weight:600;cursor:pointer;transition:opacity .15s}.btn-regenerate:hover{opacity:.9}.wizard-results{background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;padding:clamp(1rem,2vw,1.25rem)}.wizard-building{display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(2rem,4vw,2.5rem) clamp(1rem,2vw,1.5rem)}.building-icon{font-size:clamp(2.5rem,5vw,3.5rem);margin-bottom:clamp(1rem,2vw,1.5rem);animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.wizard-building h3{font-size:clamp(1.125rem,2vw,1.375rem);color:var(--text-primary);margin:0 0 clamp(.375rem,.75vw,.5rem);font-weight:700}.building-subtitle{color:var(--text-secondary);margin:0 0 clamp(1.25rem,2.5vw,1.75rem);font-size:clamp(.8125rem,1.4vw,.875rem)}.building-progress{width:100%;max-width:320px;padding:clamp(1rem,2vw,1.5rem);background:rgba(var(--accent-rgb, 74, 159, 212),.06);border:1px solid rgba(var(--accent-rgb, 74, 159, 212),.12);border-radius:12px}.building-counter{display:block;font-size:clamp(.6875rem,1.1vw,.75rem);color:var(--text-muted);margin-bottom:clamp(.5rem,1vw,.75rem);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.building-current{display:flex;align-items:center;justify-content:center;gap:clamp(.375rem,1vw,.5rem);font-size:clamp(.875rem,1.5vw,1rem);color:var(--text-primary);margin-bottom:clamp(.75rem,1.5vw,1rem);font-weight:600}.building-step-icon{font-size:clamp(1.125rem,2vw,1.5rem);animation:bounce 1.5s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.building-bar{height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden;box-shadow:inset 0 1px 3px #0000001a}.building-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-hover) 100%);border-radius:4px;transition:width .4s cubic-bezier(.4,0,.2,1);box-shadow:0 0 8px rgba(var(--accent-rgb, 74, 159, 212),.4)}.wizard-error,.wizard-incomplete{text-align:center;padding:clamp(1.25rem,2.5vw,1.75rem) clamp(.75rem,1.5vw,1rem)}.error-icon{font-size:clamp(2rem,4vw,2.5rem);margin-bottom:.75rem}.wizard-error h3{color:var(--error);margin:0 0 .5rem;font-size:clamp(1rem,1.75vw,1.125rem)}.wizard-incomplete h3{color:var(--warning);margin:.75rem 0 .5rem;font-size:clamp(1rem,1.75vw,1.125rem)}.wizard-error p,.wizard-incomplete p{color:var(--text-secondary);margin:0 0 .5rem;font-size:clamp(.8125rem,1.4vw,.875rem)}.incomplete-hint{color:var(--text-muted)!important;font-size:clamp(.75rem,1.25vw,.8125rem)!important;margin-bottom:clamp(1rem,2vw,1.25rem)!important}.wizard-success{animation:fadeInScale .4s cubic-bezier(.4,0,.2,1)}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.success-header{display:flex;align-items:center;gap:clamp(.875rem,1.5vw,1.125rem);margin-bottom:clamp(1.25rem,2.5vw,1.75rem);padding-bottom:clamp(1rem,2vw,1.25rem);border-bottom:1px solid var(--border)}.success-check{display:flex;align-items:center;justify-content:center;width:clamp(44px,8vw,56px);height:clamp(44px,8vw,56px);background:linear-gradient(135deg,var(--success) 0%,rgba(74,222,128,.8) 100%);border-radius:50%;color:#fff;flex-shrink:0;font-size:clamp(1.5rem,3vw,2rem);box-shadow:0 8px 24px #4ade804d;animation:scaleInBounce .6s cubic-bezier(.34,1.56,.64,1)}@keyframes scaleInBounce{0%{transform:scale(0);opacity:0}50%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}.success-text h3{font-size:clamp(1.125rem,2vw,1.375rem);font-weight:700;color:var(--text-primary);margin:0 0 clamp(.25rem,.5vw,.375rem)}.success-text p{font-size:clamp(.8125rem,1.4vw,.875rem);color:var(--text-secondary);margin:0}.build-summary{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,2vw,1.25rem);margin-bottom:clamp(1rem,2vw,1.25rem)}@media(max-width:520px){.build-summary{grid-template-columns:1fr}}.build-specs{display:flex;flex-direction:column;gap:.625rem}.spec-row{display:flex;justify-content:space-between;align-items:center;padding:.625rem;background:var(--bg-tertiary);border-radius:8px}.spec-row--hero{display:flex;align-items:center;gap:.625rem}.spec-logo{height:20px;width:auto;object-fit:contain}.spec-text{display:flex;flex-direction:column}.spec-label{font-size:.625rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.spec-value{font-size:clamp(.8125rem,1.4vw,.875rem);font-weight:600;color:var(--text-primary)}.spec-row--total{margin-top:.375rem;background:var(--bg-secondary);border:1px solid var(--border)}.spec-row--total .spec-label{font-size:clamp(.8125rem,1.4vw,.875rem);color:var(--text-secondary)}.spec-price{font-size:clamp(1rem,1.75vw,1.125rem);font-weight:700;color:var(--accent)}.build-images{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(.5rem,1.5vw,.75rem);margin-bottom:clamp(1.25rem,2.5vw,1.75rem)}@media(max-width:360px){.build-images{grid-template-columns:repeat(3,1fr)}}.build-img{aspect-ratio:1;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:clamp(.375rem,1vw,.5rem);transition:all .2s ease;cursor:pointer;position:relative}.build-img:hover{border-color:var(--accent);background:rgba(var(--accent-rgb, 74, 159, 212),.08);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--accent-rgb, 74, 159, 212),.2)}.build-img img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .2s ease}.build-img:hover img{transform:scale(1.05)}.wizard-actions{display:flex;flex-wrap:wrap;gap:clamp(.625rem,1.5vw,1rem);justify-content:center;margin-top:clamp(1.5rem,3vw,2rem)}.btn-reset,.btn-view,.btn-buy,.btn-primary,.btn-secondary{display:flex;align-items:center;justify-content:center;gap:clamp(.375rem,.75vw,.5rem);padding:clamp(.625rem,1.25vw,.875rem) clamp(1rem,1.75vw,1.5rem);border-radius:10px;font-size:clamp(.8125rem,1.4vw,.9375rem);font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);min-height:44px;text-transform:uppercase;letter-spacing:.02em}.btn-reset{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary)}.btn-reset:hover{border-color:var(--accent);background:rgba(var(--accent-rgb, 74, 159, 212),.08);color:var(--text-primary)}.btn-view{background:transparent;border:2px solid var(--accent);color:var(--accent)}.btn-view:hover{background:rgba(var(--accent-rgb, 74, 159, 212),.1);box-shadow:0 4px 12px rgba(var(--accent-rgb, 74, 159, 212),.2);transform:translateY(-2px)}.btn-buy{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);border:none;color:var(--bg-primary);flex:1;max-width:220px;box-shadow:0 4px 12px rgba(var(--accent-rgb, 74, 159, 212),.3)}.btn-buy:hover{box-shadow:0 6px 20px rgba(var(--accent-rgb, 74, 159, 212),.4);transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);border:none;color:var(--bg-primary);box-shadow:0 4px 12px rgba(var(--accent-rgb, 74, 159, 212),.3)}.btn-primary:hover{box-shadow:0 6px 20px rgba(var(--accent-rgb, 74, 159, 212),.4);transform:translateY(-2px)}.btn-secondary{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary)}.btn-secondary:hover{border-color:var(--accent);background:rgba(var(--accent-rgb, 74, 159, 212),.08)}@media(max-width:480px){.wizard-actions{flex-direction:column-reverse}.btn-buy{max-width:none;flex:none;width:100%}}