:root { --ink:#19312f; --muted:#637372; --paper:#f7f6f1; --surface:#fff; --accent:#e07850; --line:#dfe5df; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,sans-serif; }
.site-header { display:flex; justify-content:space-between; align-items:center; padding:1.2rem max(1.2rem,calc((100% - 1100px)/2)); background:var(--surface); border-bottom:1px solid var(--line); }
.brand { color:var(--ink); font-size:1.25rem; font-weight:800; text-decoration:none; } nav { display:flex; gap:1.2rem; } nav a { color:var(--ink); text-decoration:none; font-weight:600; }
.shell { max-width:1100px; margin:0 auto; padding:2rem 1.2rem 5rem; } h1,h2,p { margin-top:0; } h1 { font-size:clamp(2.2rem,6vw,4.5rem); line-height:1; letter-spacing:-.05em; max-width:650px; } h2 { font-size:1.1rem; } p { color:var(--muted); line-height:1.55; }
.hero { padding:3rem 0 2rem; } .eyebrow { color:var(--accent); font-size:.75rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.toolbar { display:flex; align-items:end; gap:1rem; margin:1rem 0 2rem; padding:1rem; background:var(--surface); border:1px solid var(--line); border-radius:16px; } label { display:grid; gap:.4rem; color:var(--muted); font-size:.85rem; font-weight:700; } .search { flex:1; } input,select,textarea { width:100%; box-sizing:border-box; padding:.75rem .85rem; border:1px solid var(--line); border-radius:10px; background:#fff; color:var(--ink); font:inherit; } textarea { min-height:110px; resize:vertical; }
.button { display:inline-block; border:0; border-radius:999px; padding:.72rem 1.05rem; background:var(--ink); color:#fff; text-decoration:none; cursor:pointer; font:inherit; font-weight:700; } .button:disabled { opacity:.5; cursor:not-allowed; } .button.secondary { background:#edf0eb; color:var(--ink); }
.product-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:1rem; } .product-card,.panel,.success-card { background:var(--surface); border:1px solid var(--line); border-radius:18px; overflow:hidden; } .product-placeholder { display:grid; place-items:center; min-height:145px; background:#dce8df; color:var(--accent); font-size:3rem; } .product-content { padding:1rem; } .product-content p { min-height:3rem; } .product-footer { display:flex; justify-content:space-between; align-items:center; gap:.5rem; }
.alert,.toast { margin:1rem 0; padding:1rem; border-radius:12px; } .alert.error { background:#ffe5df; color:#8c3021; } .toast { background:#e0f1e5; } .empty,.success-card { padding:2rem; } .muted { color:var(--muted); }
.page-heading { display:flex; justify-content:space-between; align-items:center; gap:1rem; margin:2rem 0; } .cart-layout { display:grid; grid-template-columns:1fr 280px; gap:1rem; } .panel { padding:1rem; } .cart-row { display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--line); } .cart-row:last-child { border-bottom:0; } .cart-row small { display:block; color:var(--muted); } .summary { display:grid; align-content:start; gap:.7rem; height:max-content; } .summary strong { font-size:1.6rem; }
.checkout-form { display:grid; gap:1rem; max-width:620px; padding:1.5rem; background:var(--surface); border:1px solid var(--line); border-radius:18px; } .success-card { max-width:700px; } .order-result { display:flex; align-items:center; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--line); } .order-result span { margin-right:auto; }
@media (max-width:650px) { .toolbar,.page-heading { align-items:stretch; flex-direction:column; } .cart-layout { grid-template-columns:1fr; } .cart-row { grid-template-columns:1fr auto; } .cart-row strong:last-child { grid-column:2; } }
.auth-card { max-width:520px; margin:3rem auto; } .metrics { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:.8rem; margin:1rem 0; } .metrics div { display:grid; gap:.25rem; padding:1rem; background:var(--surface); border:1px solid var(--line); border-radius:14px; } .metrics strong { font-size:1.6rem; } .metrics span,.order-admin small { color:var(--muted); } .admin-section { margin:1rem 0; } .admin-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; } .admin-section form { display:grid; gap:.8rem; } .order-admin { display:flex; align-items:center; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--line); } .order-admin div { display:grid; gap:.2rem; margin-right:auto; } @media (max-width:650px) { .admin-columns { grid-template-columns:1fr; } .order-admin { align-items:stretch; flex-direction:column; } }
.checkbox { display:flex; align-items:center; gap:.5rem; }
.checkbox input { width:auto; }
.product-image { display:block; width:100%; height:145px; object-fit:cover; background:#dce8df; }
.product-meta,.availability { font-size:.78rem; margin:.25rem 0; }
.availability { color:var(--muted); }
