*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#30201a;background:#faf5eb;margin:0;font:16px/1.55 Noto Sans TC,Microsoft JhengHei,sans-serif}main{max-width:1120px;margin:auto;padding:0 24px}header{border-bottom:1px solid #cfb896;justify-content:space-between;align-items:center;gap:12px;padding:18px 0;display:flex}a{color:#8b1b2c}nav,.controls{align-items:center;gap:8px;display:flex}nav button{color:#70212c;background:0 0;border:0}nav button[aria-current]{text-underline-offset:5px;text-decoration:underline}.brand{font-size:25px;font-weight:900;line-height:1.15;text-decoration:none}.brand span,small{color:#645047;font-size:13px;display:block}.intro{border-bottom:1px solid #cfb896;grid-template-columns:1fr 1fr;align-items:center;gap:24px;padding:36px 0;display:grid}.intro img{object-fit:contain;width:100%;max-height:170px}h1,h2,h3,p{margin:0}h1,h2{color:#852032;font-family:Noto Serif TC,PMingLiU,serif}h1{margin-bottom:10px;font-size:clamp(34px,6vw,55px);line-height:1.15}h2{font-size:25px}h3{font-size:17px}.layout{grid-template-columns:minmax(0,1fr) 330px;gap:32px;margin-top:26px;display:grid}.categories{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.categories a{border:1px solid #cbb597;border-radius:4px;padding:6px 10px;text-decoration:none}.group{margin-bottom:24px;scroll-margin-top:12px}.group>p,.item p{color:#654d42;font-size:14px}.item,.cartline{border-bottom:1px solid #ddccb5;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;display:flex}.item .controls{flex-shrink:0}.item strong,.total strong{color:#842033}aside,.result{background:#fffdf8;border:1px solid #dbc5a7;border-radius:8px;padding:20px}aside{align-self:start;scroll-margin-top:10px}.total{justify-content:space-between;padding:14px 0;font-size:18px;display:flex}label{gap:4px;margin-bottom:12px;font-weight:650;display:grid}input,select,textarea,button{font:inherit;border-radius:4px}input,select,textarea{color:#30201a;background:#fffefa;border:1px solid #aa9075;width:100%;padding:8px}select{max-width:170px}button{cursor:pointer;min-height:42px;padding:7px 11px}button:disabled{opacity:.5;cursor:default}.outline{color:#772133;background:0 0;border:1px solid #bb9d7d}.primary{color:#fff;background:#891f31;border:1px solid #891f31;width:100%;font-weight:750}.primary+.outline,.result button+button{margin:8px}.error{color:#8c1430;margin:8px 0}.lookup{max-width:630px;margin:36px auto}.result{margin-top:20px}.result p{overflow-wrap:anywhere;margin:7px 0}footer{color:#654d42;border-top:1px solid #cfb896;margin-top:24px;padding:18px 0 76px}.mobile-cart{display:none}:focus-visible{outline-offset:2px;outline:3px solid #b94351}@media (max-width:760px){main{padding:0 15px}.layout{grid-template-columns:1fr;gap:12px}.intro{grid-template-columns:1fr;gap:10px;padding:25px 0}.intro img{max-height:120px}.mobile-cart{text-align:center;color:#fff;background:#891f31;border-radius:5px;padding:12px;text-decoration:none;display:block;position:sticky;bottom:0}.item select{max-width:130px}.brand{font-size:20px}nav button{padding:4px;font-size:14px}}.quantity{white-space:nowrap;gap:5px}.quantity button{min-width:44px;min-height:44px;padding:5px;font-size:19px}.quantity output{text-align:center;font-variant-numeric:tabular-nums;min-width:2ch}@media (max-width:760px){.item>.controls{flex-direction:column;align-items:flex-end}}
