*{box-sizing:border-box}html{color-scheme:light}body{margin:0;font:16px/1.6 system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--ink);--bg:#f7f8ff;--surface:#fff;--ink:#101a33;--muted:#596a85;--line:#dce2f0;--brand:#5146e5}a{color:var(--brand);text-underline-offset:3px}a:focus-visible{outline:3px solid #978bff;outline-offset:4px}.wrap{max-width:1140px;margin:auto;padding:0 24px}header{background:var(--surface);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:80px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:800;text-decoration:none;font-size:22px}.mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;color:white;background:var(--brand);font-size:17px}.links{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.links a{font-size:14px;font-weight:650;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.crumb{font-size:14px;color:var(--muted);margin:24px 0}.hero{padding:20px 0 32px}h1{font-size:clamp(28px,4vw,42px);line-height:1.2;letter-spacing:-.025em;overflow-wrap:anywhere;margin:0 0 16px}h2{font-size:24px;line-height:1.3;margin:0 0 16px}p{margin:0 0 16px}.muted{color:var(--muted)}.eyebrow{font-size:13px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--brand);margin-bottom:12px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden}.card a.title{display:block;color:var(--ink);font-size:17px;font-weight:750;line-height:1.4;text-decoration:none}.cover{display:block;width:100%;height:210px;object-fit:cover;background:#eef0f8}.card-body{padding:20px}.card .tag{font-size:13px;color:var(--muted);margin-bottom:8px}.price{font-size:24px;font-weight:800;display:block;margin:12px 0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 20px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);text-decoration:none;font-weight:700}.btn.primary{background:var(--brand);border-color:var(--brand);color:white}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.detail{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px;align-items:start}.product-image{width:100%;max-height:520px;object-fit:contain;background:var(--surface);border:1px solid var(--line);border-radius:16px}.panel{padding:28px}.description{overflow-wrap:anywhere}.description p{white-space:pre-line}.description a{word-break:break-word}.categories{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 28px}.section{margin:40px 0}footer{margin-top:48px;border-top:1px solid var(--line);padding:28px 0;font-size:14px;color:var(--muted)}footer .links{margin-top:10px}.notice{font-size:14px;color:var(--muted)}@media(max-width:800px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail{grid-template-columns:1fr}.product-image{max-height:360px}}@media(max-width:520px){.wrap{padding-left:20px;padding-right:20px}.grid{grid-template-columns:1fr}.cover{height:240px}.panel{padding:20px}.nav{gap:6px}.links{gap:14px}.actions .btn{width:100%}}html[data-theme="dark"]{color-scheme:dark}html[data-theme="dark"] body{--bg:#080d18;--surface:#101a2a;--ink:#eef1fa;--muted:#abb8d0;--line:#2b384f;--brand:#a59aff}html[data-theme="dark"] .btn.primary{background:#6550e9;border-color:#6550e9;color:white}html[data-theme="dark"] .cover{background:#18243a}
.prose{max-width:740px}.prose ul{padding-left:22px}.prose li{margin:10px 0}.collection-intro{max-width:740px}.topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.topic-card{display:block;color:var(--ink);text-decoration:none;padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.topic-card h2{font-size:22px}.topic-card p{color:var(--muted);margin-bottom:0}.help-links{margin-top:24px}.help-links a{display:inline-flex;min-height:44px;align-items:center;margin-right:20px}@media(max-width:600px){.topic-grid{grid-template-columns:1fr}}

/* Shared text alignment and long-label safety. */
.nav>*,.links>*,.actions>*,.grid>*,.detail>*{min-width:0}.btn{gap:8px;line-height:1.35;white-space:normal;text-align:center;overflow-wrap:anywhere;vertical-align:middle}h2,h3,.card a.title,.tag,.notice,.links a{overflow-wrap:anywhere}.brand{line-height:1.25}.actions{align-items:center}.card-body{min-width:0}.card a.title{min-height:2.8em}.price{font-variant-numeric:tabular-nums}
