*{box-sizing:border-box}body{margin:0;background:#f8fbff;color:#0f172a;font-family:'Plus Jakarta Sans',Inter,system-ui,sans-serif}.wrap{width:min(1050px,calc(100% - 28px));margin:auto}.hero{padding:42px 0 24px}.hero h1{font-size:36px;margin:0 0 8px}.hero p{margin:0;color:#64748b;font-size:13px}.layout{display:grid;grid-template-columns:1fr 320px;gap:18px;padding-bottom:70px}.card,.summary{background:#fff;border:1px solid #dbeafe;border-radius:18px;box-shadow:0 14px 40px rgba(37,99,235,.07)}.items{padding:6px 18px}.item{display:grid;grid-template-columns:70px 1fr auto;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid #eef2f7}.item:last-child{border-bottom:0}.thumb{width:70px;height:70px;border-radius:12px;background:#eff6ff;border:1px solid #dbeafe;object-fit:contain;padding:5px}.placeholder{display:grid;place-items:center;color:#2563eb;font-size:24px}.name{font-weight:800;font-size:14px}.meta{font-size:10px;color:#64748b;margin-top:4px;text-transform:uppercase}.price{font-weight:900;color:#1d4ed8;margin-top:7px}.controls{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:8px}.qty{padding:8px;border:1px solid #bfdbfe;border-radius:9px}.remove{border:0;background:#fef2f2;color:#dc2626;border-radius:9px;padding:9px;cursor:pointer}.checkout{display:inline-flex;text-decoration:none;background:#2563eb;color:#fff;padding:9px 11px;border-radius:9px;font-size:11px;font-weight:900}.summary{padding:20px;height:max-content;position:sticky;top:90px}.summary h2{margin:0 0 16px;font-size:18px}.line{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#64748b;margin:10px 0}.line.total{padding-top:13px;border-top:1px solid #e2e8f0;color:#0f172a;font-size:16px;font-weight:900}.note{font-size:10px;color:#64748b;line-height:1.6;margin-top:12px}.empty{text-align:center;padding:65px 20px}.empty i{font-size:38px;color:#93c5fd}.empty h3{margin:14px 0 6px}.empty p{color:#64748b;font-size:12px}.browse{display:inline-flex;margin-top:14px;text-decoration:none;background:#2563eb;color:#fff;padding:11px 15px;border-radius:10px;font-size:12px;font-weight:900}@media(max-width:760px){.layout{grid-template-columns:1fr}.summary{position:static}.item{grid-template-columns:58px 1fr}.thumb{width:58px;height:58px}.item>div:last-child{grid-column:1/-1}.controls{justify-content:flex-start}.hero h1{font-size:30px}}