:root{--berry:#4c1d95;--berry-dark:#2e1065;--berry-light:#7c3aed;--accent:#f472b6;--bg:#faf9fc;--surface:#fff;--text:#201a2b;--muted:#6b6478;--border:#e6e1ee;--danger:#b91c1c;--radius:10px}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}.container{max-width:1100px;margin:0 auto;padding:0 20px}header.site{background:var(--berry-dark);color:#fff;border-bottom:4px solid var(--accent)}header.site .bar{justify-content:space-between;align-items:center;max-width:1100px;margin:0 auto;padding:16px 20px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:8px;font-size:1.3rem;font-weight:700;display:flex}.brand .dot{background:var(--accent);border-radius:50%;width:14px;height:14px;display:inline-block}nav.main a{color:#eee6fb;margin-left:22px;font-size:.95rem;font-weight:500}nav.main a:hover{color:#fff}.cart-link{position:relative}.cart-count{background:var(--accent);color:var(--berry-dark);border-radius:999px;margin-left:4px;padding:1px 6px;font-size:.7rem;font-weight:700}main{min-height:60vh;padding:32px 0 64px}footer.site{border-top:1px solid var(--border);color:var(--muted);text-align:center;padding:24px 0;font-size:.85rem}h1{margin:0 0 8px;font-size:1.8rem}h2{font-size:1.3rem}.subtitle{color:var(--muted);margin-bottom:28px}.grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:20px;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;transition:box-shadow .15s,transform .15s;display:flex;overflow:hidden}.card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4c1d951f}.card img{aspect-ratio:4/3;object-fit:cover;background:#eee;width:100%}.card .body{flex-direction:column;flex:1;gap:6px;padding:14px;display:flex}.card .type{text-transform:uppercase;letter-spacing:.06em;color:var(--berry-light);font-size:.72rem;font-weight:700}.card .title{font-size:1rem;font-weight:600}.card .price{color:var(--berry-dark);margin-top:auto;font-weight:700}.badge-oos{color:var(--danger);background:#fee2e2;border-radius:999px;width:fit-content;padding:2px 8px;font-size:.7rem;font-weight:700;display:inline-block}.btn{background:var(--berry);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 18px;font-size:.95rem;font-weight:600;display:inline-block}.btn:hover{background:var(--berry-light)}.btn:disabled{cursor:not-allowed;background:#bbb}.btn.secondary{color:var(--berry);border:1px solid var(--berry);background:0 0}.btn.secondary:hover{background:#f3eefc}.btn.small{padding:6px 10px;font-size:.85rem}.product-detail{grid-template-columns:1fr 1fr;gap:40px;display:grid}.product-detail img{border-radius:var(--radius);width:100%}.product-detail .price{color:var(--berry-dark);margin:10px 0;font-size:1.5rem;font-weight:700}.product-detail select,.product-detail input[type=number]{border:1px solid var(--border);border-radius:6px;padding:8px;font-size:.95rem}.stock-note{color:var(--muted);margin:4px 0 16px;font-size:.85rem}.breadcrumb{color:var(--muted);margin-bottom:20px;font-size:.85rem}.breadcrumb a{color:var(--berry-light)}table.cart-table{border-collapse:collapse;width:100%;margin-bottom:24px}table.cart-table th,table.cart-table td{text-align:left;border-bottom:1px solid var(--border);padding:12px 8px}table.cart-table img{object-fit:cover;border-radius:6px;width:56px;height:56px}.line-item{align-items:center;gap:10px;display:flex}.qty-input{border:1px solid var(--border);border-radius:6px;width:56px;padding:4px}.summary-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:340px;margin-left:auto;padding:20px}.summary-row{justify-content:space-between;margin:6px 0;display:flex}.summary-row.total{border-top:1px solid var(--border);margin-top:10px;padding-top:10px;font-size:1.1rem;font-weight:700}.form-grid{grid-template-columns:1fr 1fr;gap:14px;max-width:620px;display:grid}.form-grid .full{grid-column:1/-1}.form-grid label{color:var(--muted);flex-direction:column;gap:6px;font-size:.85rem;font-weight:600;display:flex}.form-grid input{border:1px solid var(--border);border-radius:8px;padding:10px;font-family:inherit;font-size:.95rem}.alert{border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:.9rem}.alert.error{color:var(--danger);background:#fee2e2}.alert.success{color:#15803d;background:#dcfce7}.empty-state{text-align:center;color:var(--muted);padding:60px 20px}@media (width<=720px){.product-detail,.form-grid{grid-template-columns:1fr}nav.main a{margin-left:12px;font-size:.85rem}}
