:root{--builder-brand-primary:#7c2338;--builder-brand-primary-dark:#5c1a29;--builder-brand-primary-light:#f4dde2;--builder-brand-secondary:#eab308;--builder-brand-secondary-dark:#92400e;--builder-brand-secondary-light:#fdf0d5;--builder-brand-primary-gradient:linear-gradient(135deg, var(--builder-brand-primary), var(--builder-brand-primary-dark))}.builder-page{color:#2a1b1e;background:#f7f8fa;min-height:100vh;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}.builder-page__body{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:2rem;max-width:1200px;margin:0 auto;padding:2rem;display:grid}@media (width<=900px){.builder-page__body{grid-template-columns:minmax(0,1fr)}}.site-header{background:#fff;border-bottom:1px solid #ede1d3;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.site-header__brand{align-items:center;gap:.75rem;display:flex}.site-header__mark{background:var(--builder-brand-primary);color:#fff;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;display:flex}.site-header__mark svg{width:1.1rem;height:1.1rem}.site-header__name{color:#2a1b1e;font-size:1.05rem;font-weight:700;line-height:1.2}.site-header__tagline{letter-spacing:.08em;text-transform:uppercase;color:#7a6f68;font-size:.65rem;display:block}.site-header__nav{align-items:center;gap:.5rem;display:flex}.site-header__nav-link{color:#7a6f68;cursor:pointer;background:0 0;border:none;border-radius:.25rem;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .18s,color .18s;display:inline-flex}.site-header__nav-link:hover:not(.active){color:#2a1b1e;background:#f7f8fa}.site-header__nav-link.active{background:var(--builder-brand-primary-gradient);color:#fff}.site-header__switcher{background:var(--builder-brand-primary-light);border-radius:.25rem;gap:.25rem;padding:.25rem;display:flex}.site-header__switcher-option{color:var(--builder-brand-primary-dark);cursor:pointer;background:0 0;border:none;border-radius:.25rem;padding:.4rem 1rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:background .18s,color .18s,box-shadow .18s}.site-header__switcher-option.active{background:var(--builder-brand-primary-gradient);color:#fff;box-shadow:0 2px 6px #2a1b1e14}.builder-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;display:flex}@media (width<=600px){.builder-header{flex-direction:column-reverse}}.builder-header__title{color:#2a1b1e;margin:0;font-size:1.75rem;font-weight:700}.builder-header__subtitle{color:#7a6f68;align-items:center;gap:.4rem;margin:.25rem 0 0;font-size:.9rem;display:flex}.builder-header__subtitle svg{flex-shrink:0;width:1.75rem;height:1.75rem}.builder-header__identity{align-items:center;gap:.75rem;display:flex}.builder-header__franchise{color:var(--builder-brand-primary);white-space:nowrap;font-size:.85rem;font-weight:600}.builder-header__logo{object-fit:contain;flex-shrink:0;width:3rem;height:3rem}.builder-steps{background-color:var(--builder-brand-primary-light);gap:0;margin-bottom:1rem;display:flex}@media (width<=900px){.builder-steps{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;min-width:0;scroll-padding-inline:.5rem;overflow-x:auto}.builder-steps::-webkit-scrollbar{display:none}.builder-step{scroll-snap-align:center;flex:none}}.builder-step{color:#7a6f68;cursor:pointer;white-space:nowrap;clip-path:polygon(0 0,calc(100% - .9rem) 0,100% 50%,calc(100% - .9rem) 100%,0 100%,.9rem 50%);background:#fff;border:none;flex:1 1 0;justify-content:center;align-items:center;gap:.35rem;margin-left:-.9rem;margin-right:.25rem;padding:.4rem 1.2rem;font-size:.8rem;font-weight:500;transition:background .18s,color .18s,box-shadow .18s;display:inline-flex;position:relative}.builder-step:first-child{clip-path:polygon(0 0,calc(100% - .9rem) 0,100% 50%,calc(100% - .9rem) 100%,0 100%);margin-left:0;padding-left:.7rem}.builder-step:last-child{clip-path:polygon(0 0,100% 0,100% 100%,0 100%,.9rem 50%);margin-right:0;padding-right:.7rem}.builder-step:hover:not(.disabled):not(.active){color:#2a1b1e;background:#f7f8fa}.builder-step.active,.builder-step.complete{background:var(--builder-brand-primary-gradient);color:#fff}.builder-step.disabled{opacity:.8;cursor:not-allowed}.builder-toolbar{justify-content:space-between;align-items:center;margin-bottom:.85rem;display:flex}.builder-toolbar__meta{letter-spacing:.04em;color:#7a6f68;font-size:.75rem;font-weight:600}.builder-actions{justify-content:space-between;align-items:center;margin-top:1.5rem;display:flex}.builder-navbtn{color:#7a6f68;cursor:pointer;background:0 0;border:none;border-radius:.25rem;align-items:center;gap:.3rem;padding:.4rem .2rem;font-size:.85rem;font-weight:600;transition:color .18s,background .18s,gap .18s;display:inline-flex}.builder-navbtn svg{flex-shrink:0;width:1rem;height:1rem;transition:transform .18s}.builder-navbtn:hover:not(:disabled){color:#2a1b1e;background:#f7f8fa;gap:.45rem}.builder-navbtn--primary{color:#fff;background:var(--builder-brand-primary-gradient);padding:.45rem .9rem}.builder-navbtn--primary:hover:not(:disabled){color:#fff;background:var(--builder-brand-primary-gradient);box-shadow:0 6px 16px #2a1b1e29}.builder-navbtn:disabled{opacity:.4;cursor:not-allowed}.builder-button{color:#2a1b1e;cursor:pointer;background:#fff;border:1px solid #ede1d3;border-radius:.25rem;align-items:center;gap:.4rem;padding:.65rem 1.5rem;font-size:.9rem;font-weight:600;transition:box-shadow .18s,transform .18s,border-color .18s;display:inline-flex}.builder-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 6px #2a1b1e14}.builder-button--primary{border-color:var(--builder-brand-primary);background:var(--builder-brand-primary-gradient);color:#fff}.builder-button--primary:hover:not(:disabled){box-shadow:0 6px 16px #2a1b1e29}.builder-button:disabled{opacity:.5;cursor:not-allowed}.step-card{background:#fff;border:1px solid #ede1d3;border-radius:.375rem;padding:1.75rem;transition:box-shadow .18s;box-shadow:0 1px 2px #2a1b1e0a,0 8px 24px #2a1b1e0f}.step-card__title{color:#2a1b1e;margin:0;font-size:1.15rem;font-weight:700}.step-card__subtitle{color:#7a6f68;margin:.25rem 0 1.25rem;font-size:.9rem}.step-card__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}@media (width<=640px){.step-card__grid{grid-template-columns:1fr}}.step-card__grid--3up{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=900px){.step-card__grid--3up{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.step-card__grid--3up{grid-template-columns:1fr}}.step-card__filters{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.25rem;display:flex}.step-card__search{color:#2a1b1e;background:#f7f8fa;border:1px solid #ede1d3;border-radius:.25rem;flex:12rem;padding:.6rem .85rem;font-size:.9rem;transition:outline-color .18s,border-color .18s}.step-card__search:focus{outline:2px solid var(--builder-brand-primary);outline-offset:1px;border-color:var(--builder-brand-primary)}.filter-chip{color:#2a1b1e;cursor:pointer;background:#f7f8fa;border:1px solid #ede1d3;border-radius:.25rem;padding:.4rem 1rem;font-size:.9rem;font-weight:500;transition:background .18s,border-color .18s,color .18s,box-shadow .18s}.filter-chip:hover:not(.filter-chip--active){border-color:var(--builder-brand-primary)}.filter-chip--active{background:var(--builder-brand-primary-gradient);border-color:var(--builder-brand-primary);color:#fff;box-shadow:0 2px 6px #2a1b1e14}.filter-chip--clear{border-style:dashed}.option-card{text-align:left;cursor:pointer;background:#f7f8fa;border:1px solid #ede1d3;border-radius:.25rem;gap:.5rem;width:100%;padding:1.1rem 1.25rem;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;display:grid}.option-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #2a1b1e0f,0 12px 32px #2a1b1e1f}.option-card.selected{background:#f2efec;border-color:#b8b0aa;box-shadow:0 4px 8px #2a1b1e0f,0 12px 32px #2a1b1e1f}.option-card__image,.cart-card__image{aspect-ratio:16/9;object-fit:cover;background:#fff;border-radius:.25rem;width:100%}.option-card__row{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.option-card__name{color:#2a1b1e;font-size:1rem;font-weight:700}.option-card__price{color:var(--builder-brand-primary-dark);white-space:nowrap;font-size:1rem;font-weight:700}.option-card__description{color:#7a6f68;font-size:.85rem}.option-card__capacity{color:#7a6f68;font-size:.8rem}.option-card__warning{color:#b91c1c;font-size:.8rem}.option-card__tags{flex-wrap:wrap;gap:.4rem;margin-top:.25rem;display:flex}.option-card__tag{background:var(--builder-brand-secondary-light);color:var(--builder-brand-secondary-dark);border-radius:.25rem;align-items:center;gap:.3rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.option-card__tag svg{width:.75rem;height:.75rem;fill:var(--builder-brand-secondary)}.option-card__selected-badge{color:#7a6f68;font-size:.8rem;font-weight:700}.step-card__empty,.step-card__error{color:#7a6f68;font-size:.9rem}.step-card__error{color:#b91c1c}.step-card__group{margin-bottom:1.5rem}.step-card__group:last-child{margin-bottom:0}.step-card__group-title{text-transform:uppercase;letter-spacing:.04em;color:#7a6f68;margin:0 0 .75rem;font-size:.85rem;font-weight:700}.cart-card{background:#f7f8fa;border:1px solid #ede1d3;border-radius:.25rem;gap:.5rem;padding:1.1rem 1.25rem;transition:box-shadow .18s,border-color .18s,background .18s;display:grid}.cart-card.in-cart{background:#f2efec;border-color:#b8b0aa;box-shadow:0 4px 8px #2a1b1e0f,0 12px 32px #2a1b1e1f}.cart-card__row{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.cart-card__field{margin:.25rem 0}.cart-card__field select{background:#fff;border:1px solid #ede1d3;border-radius:.25rem;width:100%;padding:.4rem .6rem;font-size:.85rem}.quantity-stepper{align-items:center;gap:.6rem;margin-top:.25rem;display:flex}.quantity-stepper__button{border:1px solid var(--builder-brand-primary);width:1.75rem;height:1.75rem;color:var(--builder-brand-primary);cursor:pointer;background:#fff;border-radius:2px;justify-content:center;align-items:center;font-size:1rem;font-weight:700;line-height:1;transition:background .18s,color .18s,box-shadow .18s;display:flex}.quantity-stepper__button:hover:not(:disabled){background:var(--builder-brand-primary);color:#fff;box-shadow:0 6px 16px #2a1b1e29}.quantity-stepper__button:disabled{opacity:.4;cursor:not-allowed}.quantity-stepper__count{text-align:center;color:#2a1b1e;min-width:1.5rem;font-weight:700}.add-button{border:1px solid var(--builder-brand-primary);color:var(--builder-brand-primary);cursor:pointer;background:#fff;border-radius:.25rem;align-self:start;margin-top:.25rem;padding:.4rem 1rem;font-size:.85rem;font-weight:600;transition:background .18s,color .18s,box-shadow .18s}.add-button:hover:not(:disabled){background:var(--builder-brand-primary-gradient);color:#fff;box-shadow:0 6px 16px #2a1b1e29}.add-button:disabled{opacity:.5;cursor:not-allowed}.step-review__lines{flex-direction:column;display:flex}.step-review__items .build-summary__line:last-child{border-bottom:none}.step-review__total{border-top:1px solid #ede1d3;justify-content:space-between;align-items:center;margin-top:.15rem;padding-top:.85rem;display:flex}.step-review__total span:first-child{color:#2a1b1e;font-size:1rem;font-weight:700}.step-review__total span:last-child{color:var(--builder-brand-primary-dark);font-size:1rem;font-weight:700}.step-review__contact,.step-review__save{margin-top:1.5rem}.build-summary{background:#fff;border:1px solid #ede1d3;border-radius:.375rem;overflow:hidden;box-shadow:0 1px 2px #2a1b1e0a,0 8px 24px #2a1b1e0f}.build-summary__header{background:linear-gradient(135deg, var(--builder-brand-primary), var(--builder-brand-primary-dark));color:#fff;padding:1.25rem 1.5rem}.build-summary__eyebrow{letter-spacing:.08em;text-transform:uppercase;opacity:.85;font-size:.7rem;display:block}.build-summary__total{margin:.15rem 0 0;font-size:1.75rem;font-weight:700}.build-summary__lines{padding:.5rem 1.5rem}.build-summary__line{border-bottom:1px solid #ede1d3;justify-content:space-between;align-items:center;padding:.75rem 0;font-size:.9rem;display:flex}.build-summary__line:last-child{border-bottom:none}.build-summary__line-label{color:#2a1b1e;font-weight:500}.build-summary__line-value{color:#7a6f68}.build-summary__line-value.filled{color:#2a1b1e;font-weight:600}.build-summary__line--game{padding:.85rem 0 1rem;display:block}.build-summary__game{text-align:left;flex-direction:column;align-items:flex-start;gap:.3rem;display:flex}.build-summary__game-value{color:#2a1b1e;font-size:.95rem;font-weight:600}.build-summary__game-value--opponent{font-size:1.1rem}.build-summary__game-meta{color:#7a6f68;margin-top:-.15rem;font-size:.8rem;font-weight:500;line-height:1.2}.build-summary__footer{color:#2a1b1e;border-top:1px solid #ede1d3;justify-content:space-between;align-items:center;padding:1rem 1.5rem;font-weight:700;display:flex}.field{gap:.5rem;margin-bottom:1.5rem;display:grid}.step-card__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem;display:grid}@media (width<=640px){.step-card__fields{grid-template-columns:1fr}}.field__label{color:#2a1b1e;font-size:.9rem;font-weight:600}.field__hint{color:#7a6f68;font-size:.8rem}.field__input{color:#2a1b1e;background:#f7f8fa;border:1px solid #ede1d3;border-radius:.25rem;width:100%;max-width:240px;padding:.6rem .85rem;font-size:.95rem;transition:outline-color .18s,border-color .18s}.field__input:focus{outline:2px solid var(--builder-brand-primary);outline-offset:1px;border-color:var(--builder-brand-primary)}.choice-group{flex-wrap:wrap;gap:.5rem;display:flex}.choice-pill{color:#2a1b1e;cursor:pointer;background:#f7f8fa;border:1px solid #ede1d3;border-radius:.25rem;padding:.6rem 1.25rem;font-size:.9rem;font-weight:500;transition:background .18s,border-color .18s,color .18s,box-shadow .18s}.choice-pill:hover:not(.active){border-color:var(--builder-brand-primary)}.choice-pill.active{background:var(--builder-brand-primary-gradient);border-color:var(--builder-brand-primary);color:#fff;box-shadow:0 2px 6px #2a1b1e14}.toggle-row{cursor:pointer;color:#2a1b1e;align-items:center;gap:.6rem;font-size:.9rem;font-weight:500;display:flex}.toggle-row input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--builder-brand-primary)}.field__saved{color:var(--builder-brand-primary);font-size:.8rem;font-weight:600}
