:root{--bg: #fbfbfa;--surface: #ffffff;--text: #1a1a18;--text-dim: #6b6b66;--line: #e3e3df;--accent: #b8121b;--accent-soft: #fdf0f0;--warn: #8a5a00;--radius: 6px;--font: system-ui, -apple-system, "Segoe UI", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace}@media(prefers-color-scheme:dark){:root{--bg: #16161a;--surface: #1e1e23;--text: #ececea;--text-dim: #9a9a94;--line: #33333a;--accent: #ff6b6b;--accent-soft: #2a1c1d;--warn: #d9a441}}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);line-height:1.6;-webkit-text-size-adjust:100%}.wrap{max-width:60rem;margin:0 auto;padding:1.25rem 1rem 4rem}a{color:var(--accent)}.site-head h1{font-size:1.5rem;margin:0 0 .25rem;letter-spacing:.01em}.site-head .meta{color:var(--text-dim);font-size:.875rem;margin:0 0 1.5rem}.site-head .meta time,.site-head .meta .count{font-family:var(--font-mono)}.brand-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));padding:0;margin:0;list-style:none}.brand-card{display:block;padding:1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:inherit}.brand-card:hover{border-color:var(--accent)}.brand-card strong{display:block;font-size:1.125rem}.brand-card span{color:var(--text-dim);font-size:.875rem;font-family:var(--font-mono)}.controls{position:sticky;top:0;z-index:10;background:var(--bg);padding:.5rem 0;border-bottom:1px solid var(--line);margin-bottom:1.5rem;display:flex;gap:1rem;align-items:center}.controls input[type=search]{font:inherit;padding:.375rem .75rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);width:15rem}.controls .chips{display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:none}.controls .chips::-webkit-scrollbar{display:none}.chip{font:inherit;font-size:.875rem;padding:.25rem .75rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap}.chip:hover{border-color:var(--text-dim)}.chip.active{background:var(--text);color:var(--bg);border-color:var(--text)}@media(max-width:40rem){.controls{flex-direction:column;align-items:stretch;gap:.5rem}.controls input[type=search]{width:100%}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.section{margin:2rem 0 0}.section>h2{font-size:1.0625rem;margin:0 0 .5rem;padding-bottom:.375rem;border-bottom:2px solid var(--line)}.section>h2 .n{font-weight:400;font-size:.8125rem;color:var(--text-dim);font-family:var(--font-mono);margin-left:.5rem}table{width:100%;border-collapse:collapse;font-size:.9375rem}thead th{text-align:left;font-size:.75rem;font-weight:600;letter-spacing:.04em;color:var(--text-dim);padding:.375rem .5rem;border-bottom:1px solid var(--line)}tbody tr{border-bottom:1px solid var(--line)}tbody tr:hover{background:var(--surface)}tbody td{padding:.625rem .5rem;vertical-align:middle}.code{font-family:var(--font-mono);font-size:1.1875rem;font-weight:700;letter-spacing:.04em;color:var(--accent);background:var(--accent-soft);padding:.25rem .5rem;border-radius:var(--radius);white-space:nowrap;appearance:none;border:none;cursor:pointer;text-align:left}tr.copied .code{background:var(--text);color:var(--bg)}tr.copied{position:relative}tr.copied:after{content:"已複製";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--text);color:var(--bg);padding:.5rem 1rem;border-radius:var(--radius);font-weight:600;font-size:.875rem;z-index:10;pointer-events:none}.col-code{width:1%}.price{font-family:var(--font-mono);font-weight:700;white-space:nowrap}.price:before{content:"$";font-weight:400;color:var(--text-dim);margin-right:.0625rem}.until{font-family:var(--font-mono);font-size:.8125rem;color:var(--text-dim);white-space:nowrap}.until.soon,.until.upcoming,.until.unverified{color:var(--warn)}.until.gone{color:var(--text-dim)}.items{color:var(--text)}.src{font-size:.6875rem;color:var(--text-dim);border:1px solid var(--line);border-radius:999px;padding:.0625rem .375rem;white-space:nowrap}@media(max-width:40rem){.wrap{padding:1rem .75rem 3rem}thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}tbody tr{display:grid;grid-template-columns:auto 1fr;gap:.125rem .625rem;align-items:center;padding:.75rem 0}tbody td{padding:0}td[data-col=code]{grid-row:span 2}td[data-col=items]{font-size:.875rem;line-height:1.45}td[data-col=price]{font-size:1.0625rem}td[data-col=until]{grid-column:2;font-size:.75rem}td[data-col=src]{display:none}}.expired-block{margin-top:2.5rem;border-top:1px solid var(--line);padding-top:1rem}.expired-block summary{cursor:pointer;color:var(--text-dim);font-size:.875rem}.expired-block tbody tr{opacity:.55}.site-foot{margin-top:3rem;padding-top:1rem;border-top:1px solid var(--line);color:var(--text-dim);font-size:.8125rem}.site-foot p{margin:.375rem 0}.site-foot nav{margin-top:1rem}.site-foot nav a{color:var(--text-dim);text-decoration:none;margin:0 .25rem}.site-foot nav a:hover{text-decoration:underline}.prose{max-width:45rem;margin:0 auto}.prose h2{margin-top:2rem;margin-bottom:.75rem}.prose h3{margin-top:1.5rem;margin-bottom:.5rem}.prose p,.prose ul,.prose ol{margin-bottom:1rem}.prose ul,.prose ol{padding-left:1.5rem}.prose li{margin-bottom:.5rem}.prose code{background:var(--line);padding:.125rem .25rem;border-radius:4px;font-family:var(--font-mono);font-size:.875em}.faq-item{margin-bottom:1.5rem}.faq-item h3{color:var(--accent)}.ad-slot{min-height:90px;margin:1.5rem 0;display:flex;justify-content:center;align-items:center}@media(max-width:40rem){.ad-slot{min-height:100px}}.scenarios{display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:none;width:100%}.scenarios::-webkit-scrollbar{display:none}.search-filter-wrap{display:flex;gap:1rem;align-items:center;width:100%}.adv-controls{width:100%}.adv-controls summary{cursor:pointer;color:var(--text-dim);font-size:.875rem;padding:.25rem 0;user-select:none}.adv-panel{margin-top:.5rem;padding-top:.5rem;border-top:1px dashed var(--line);display:flex;flex-wrap:wrap;gap:1rem;font-size:.875rem}.adv-panel label{display:flex;align-items:center;gap:.25rem}.weights{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;width:100%}.weights label{display:flex;align-items:center;gap:.25rem;font-size:.8125rem;color:var(--text-dim)}.weights input[type=range]{width:3rem}.controls{flex-direction:column;align-items:stretch;gap:.5rem}
