/* 實作補充（只用 tokens.css 變數） */
.search input{border:0;background:transparent;font:inherit;color:var(--text);flex:1;min-width:0;min-height:44px}
.search input:focus{outline:none}.search:focus-within{box-shadow:var(--focus-ring)}
.search .clr2{width:44px;height:44px;border:0;background:none;color:var(--mute);cursor:pointer;display:grid;place-items:center}
.search button.go{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.samplebar{background:var(--warnbg);color:var(--warn);font-size:var(--fs-13);font-weight:600;text-align:center;padding:6px 12px}
.card{position:relative}.card h3 a::after{content:"";position:absolute;inset:0}.card .btn{position:relative;z-index:1}
.card h3{font-size:var(--fs-15);line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}
.card .spec{word-break:break-word}
.stock--low{color:var(--warn)!important}.stock--out{color:var(--pend)!important}
.sbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
select.sel{appearance:auto;font:inherit;font-size:var(--fs-14);min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--bg);color:var(--text)}
.pd table{width:100%;border-collapse:collapse;margin-top:16px;font-size:var(--fs-14)}
.pd td{border-top:1px solid var(--line);padding:10px 8px;vertical-align:top;word-break:break-word}
.pd td:first-child{color:var(--mute);width:38%}
.pd h1{word-break:break-word}
.tagsample{display:inline-block;font-size:var(--fs-12);font-weight:700;color:var(--warn);background:var(--warnbg);border-radius:var(--r-pill);padding:2px 10px}
.nf{padding:48px 0}
.legal{font-size:var(--fs-12);color:var(--mute);margin-top:12px}
.opt b,.opt span,.lines span,.chk span,.chk b{overflow-wrap:anywhere}
.lines li{gap:8px}.lines li span:last-child{min-width:0;text-align:right}
.lines li span:first-child{flex:none;white-space:nowrap}
