:root { color-scheme: light; --orange:#ff6600; --ink:#111; --muted:#666; --line:#e5e5e5; }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
body { margin:0; background:#fff; color:var(--ink); font-family:"Century Gothic",Arial,sans-serif; }
button,input { font:inherit; }
.page-shell { width:min(1180px,calc(100% - 32px)); margin:32px auto; }
.panel { border:1px solid #ffb184; border-radius:22px; padding:30px; box-shadow:0 12px 34px rgba(0,0,0,.06); }
.eyebrow { margin:0 0 8px; color:var(--orange); font-weight:700; letter-spacing:.12em; }
h1 { margin:0 0 28px; font-size:clamp(30px,4vw,46px); }
.cart-list { display:grid; gap:14px; }
.cart-line { display:grid; grid-template-columns:1fr auto; gap:18px; align-items:center; padding:18px 20px; border:1px solid var(--line); border-radius:16px; }
.cart-line-title { display:block; font-size:18px; }
.cart-line-subtitle { margin-top:5px; color:var(--muted); }
.cart-line-side { display:grid; justify-items:end; gap:7px; }
.link-button,.back-button { border:0; padding:0; background:transparent; color:var(--muted); text-decoration:underline; cursor:pointer; }
.back-button { margin-bottom:24px; color:var(--ink); font-weight:700; text-decoration:none; }
.summary { margin-top:28px; padding:26px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.summary div { display:flex; justify-content:space-between; gap:20px; font-size:22px; }
.summary p { width:min(660px,100%); margin:5px 0 20px; color:var(--muted); }
.summary p:last-child { margin-bottom:0; }
.actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px; padding-top:24px; }
.button { min-height:50px; display:inline-flex; align-items:center; justify-content:center; border:0; border-radius:999px; padding:12px 24px; font-weight:700; text-decoration:none; cursor:pointer; }
.button.primary { background:var(--orange); color:#fff; }
.button.secondary { background:var(--ink); color:#fff; }
.button:disabled { opacity:.45; cursor:not-allowed; }
.empty-state { display:grid; gap:8px; padding:28px; border:1px dashed #ccc; border-radius:16px; text-align:center; color:var(--muted); }
.feedback { margin:0 0 18px; padding:14px 16px; border:1px solid #f1a7a7; border-radius:12px; background:#fff3f3; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
label { display:grid; gap:7px; font-weight:700; }
input { width:100%; min-height:52px; border:1px solid #d6d6d6; border-radius:13px; padding:10px 13px; }
.checkout-footer { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-top:28px; padding-top:24px; border-top:1px solid var(--line); }
.checkout-footer div { display:grid; gap:5px; }
.checkout-footer strong { font-size:24px; }
@media(max-width:700px){ .page-shell{width:100%;margin:0}.panel{border-radius:0;padding:20px 14px}.cart-line{grid-template-columns:1fr}.cart-line-side{justify-items:start}.form-grid{grid-template-columns:1fr}.actions,.checkout-footer{display:grid}.button{width:100%} }
