:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#211734;background:#fbf9ff}*{box-sizing:border-box}body{margin:0;min-width:320px}.app-shell{min-height:100svh;padding:1.25rem;max-width:720px;margin:auto;background:radial-gradient(circle at top right,#e2d6ff,transparent 42%),#fbf9ff}.app-shell>header,.section-title{display:flex;align-items:center;justify-content:space-between}.app-shell section{margin:2rem 0}.eyebrow{margin:0;color:#7252b5;font-size:.75rem;font-weight:800;letter-spacing:.16em}h1{margin:.35rem 0 1rem;max-width:11ch;font-size:clamp(2.5rem,12vw,4.5rem);line-height:.98}h2{margin:0;font-size:1.25rem}.description{margin:0;color:#665c72;font-size:1rem}.category{color:#7252b5;font-weight:800;margin:0}.bag,.back,.chips button,.section-title button{border:0;background:transparent;color:#51398a;font-weight:700}.cta{border:0;border-radius:1rem;padding:1rem 1.25rem;background:#2b174f;color:#fff;font-weight:800;margin-top:1.5rem;width:100%}.chips{display:flex;gap:.5rem;overflow:auto}.chips button,.options button{white-space:nowrap;background:#eee8ff;border-radius:999px;padding:.65rem .8rem;border:0}.products{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem}.product{text-align:left;border:0;background:transparent;padding:0;color:inherit;display:grid;gap:.35rem;font:inherit}.image-placeholder{aspect-ratio:1/1;border-radius:1rem;background:linear-gradient(135deg,#d9c9ff,#f6d9ea);display:grid;place-items:center;color:#7252b5;font-weight:700;padding:1rem;overflow:hidden}.image-placeholder img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.price{font-weight:800;font-size:1.25rem}.options{display:grid;gap:.6rem}.options button{text-align:left}.options small{color:#665c72}.error{color:#b42318}.address{display:grid;gap:.35rem;margin:1rem 0;padding:1rem;border-radius:1rem;background:#fff;box-shadow:0 4px 18px #2b174f12}.address small{background:#e7dcff;color:#51398a;padding:.2rem .45rem;border-radius:999px}.address-form{display:grid;gap:.7rem;margin-top:2rem}.address-form input:not([type=checkbox]),.address-form textarea{border:1px solid #ded5ed;border-radius:.75rem;padding:.85rem;font:inherit}.address-form textarea{min-height:6rem;resize:vertical}.options button.selected{background:#7252b5;color:#fff}.upload{display:grid;gap:.6rem;padding:1rem;border-radius:1rem;background:#fff}.upload input{max-width:100%}.upload small{color:#665c72}.upload span{color:#28764c;font-weight:700}
