.elf-custom-studio{padding:56px 0 80px;background:rgb(var(--color-background));color:rgb(var(--color-foreground))}
.elf-custom-studio__hero{text-align:center;max-width:820px;margin:0 auto 64px}
.elf-custom-studio__eyebrow{font-size:1.1rem;letter-spacing:.22em;text-transform:uppercase;margin:0 0 12px}
.elf-custom-studio__title{margin:0 0 18px;font-size:clamp(3.6rem,6vw,6.4rem);line-height:1.02}
.elf-custom-studio__intro{max-width:680px;margin:0 auto 28px;font-size:1.6rem;line-height:1.65}
.elf-custom-studio__steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(var(--color-foreground),.12);margin:0 0 72px;border:1px solid rgba(var(--color-foreground),.12)}
.elf-custom-step{background:rgb(var(--color-background));padding:30px 24px;min-height:170px}
.elf-custom-step span{font-size:1.1rem;letter-spacing:.15em;opacity:.65}
.elf-custom-step h3{margin:16px 0 8px;font-size:2rem}
.elf-custom-step p{margin:0;line-height:1.55;opacity:.78}
.elf-custom-builder{border-top:1px solid rgba(var(--color-foreground),.14);padding-top:54px}
.elf-custom-builder__header{text-align:center;margin-bottom:36px}
.elf-custom-builder__header h2{margin:0;font-size:3.2rem}
.elf-custom-builder__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.elf-custom-builder__form,.elf-custom-preview{border:1px solid rgba(var(--color-foreground),.14);padding:32px}
.elf-custom-field{margin-bottom:28px}
.elf-custom-field label{display:block;font-size:1.25rem;font-weight:600;margin-bottom:10px}
.elf-custom-field select,.elf-custom-field textarea{width:100%;min-height:48px;border:1px solid rgba(var(--color-foreground),.25);background:rgb(var(--color-background));padding:12px 14px;font:inherit}
.elf-custom-field textarea{resize:vertical}
.elf-custom-field__help{font-size:1.2rem;line-height:1.5;opacity:.68;margin:8px 0 0}
.elf-upload{position:relative;border:1px dashed rgba(var(--color-foreground),.35);min-height:150px;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px}
.elf-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.elf-upload__copy{display:flex;flex-direction:column;gap:8px;pointer-events:none}
.elf-upload__copy strong{font-size:1.5rem}.elf-upload__copy span{font-size:1.2rem;opacity:.65}
.elf-artwork-preview{margin-top:14px}.elf-artwork-preview img{display:block;max-width:180px;max-height:180px;object-fit:contain;border:1px solid rgba(var(--color-foreground),.12)}
.elf-custom-status{min-height:24px;margin:14px 0 0;font-size:1.3rem}
.elf-custom-preview__header{margin-bottom:20px}.elf-custom-preview__header h3{margin:0;font-size:2.2rem}
.elf-preview-stage{aspect-ratio:4/3;background:rgba(var(--color-foreground),.035);display:flex;align-items:center;justify-content:center;overflow:hidden}
.elf-preview-placeholder{text-align:center;display:flex;flex-direction:column;gap:10px;max-width:320px;padding:30px;opacity:.65}
.elf-preview-placeholder__icon{font-size:3.2rem}.elf-preview-placeholder strong{font-size:1.5rem}.elf-preview-placeholder span:last-child{line-height:1.5;font-size:1.2rem}
.elf-preview-image{width:100%;height:100%;object-fit:contain}
.elf-preview-actions{display:flex;gap:12px;margin-top:18px}
.elf-preview-actions .button{flex:1}
.elf-custom-summary{margin:24px 0;border-top:1px solid rgba(var(--color-foreground),.12);border-bottom:1px solid rgba(var(--color-foreground),.12)}
.elf-custom-summary div{display:flex;justify-content:space-between;gap:20px;padding:13px 0}.elf-custom-summary span{opacity:.65}
.elf-add-cart{width:100%;margin-top:20px}.elf-add-cart:disabled{opacity:.45;cursor:not-allowed}
.elf-custom-studio .button{min-height:48px}
@media screen and (max-width:749px){.elf-custom-studio{padding:38px 0 56px}.elf-custom-studio__hero{margin-bottom:42px}.elf-custom-studio__intro{font-size:1.45rem}.elf-custom-studio__steps{grid-template-columns:1fr 1fr;margin-bottom:48px}.elf-custom-step{padding:22px 18px;min-height:150px}.elf-custom-builder__grid{grid-template-columns:1fr;gap:24px}.elf-custom-builder__form,.elf-custom-preview{padding:22px}.elf-custom-builder__header h2{font-size:2.6rem}.elf-preview-actions{flex-direction:column}}
