:root { font-family: system-ui, sans-serif; color: #202124; background: #fff; line-height: 1.6; }
* { box-sizing: border-box; }
body { margin: 0; }
header, main { max-width: 960px; margin: auto; padding: 24px; }
header { display: flex; justify-content: space-between; gap: 16px; border-bottom: 1px solid #ddd; }
a { color: #176043; overflow-wrap: anywhere; }
header a:first-child { font-weight: 750; font-size: 24px; text-decoration: none; }
h1 { font-size: 28px; line-height: 1.3; overflow-wrap: anywhere; }
.product-image { display: block; width: 100%; max-width: 480px; aspect-ratio: 1; object-fit: contain; margin: 0 auto 24px; }
.description { white-space: pre-wrap; overflow-wrap: anywhere; }
.price { font-size: 24px; font-weight: 700; }
table { width: 100%; border-collapse: collapse; table-layout: fixed; }
td, th { padding: 12px 6px; text-align: left; border-bottom: 1px solid #ddd; overflow-wrap: anywhere; }
.action { display: inline-block; padding: 12px 0; font-weight: 700; }
li { margin-bottom: 16px; }
nav { display: flex; justify-content: space-between; gap: 16px; }
@media (max-width: 480px) { header, main { padding: 16px; } h1 { font-size: 22px; } }
