:root{--bg: #fff8f7;--bg-soft: #fff0f2;--surface: #ffffff;--surface-soft: #fff7f8;--surface-strong: #fff1f3;--text: #1f1f29;--text-soft: #444052;--muted: #726b7d;--primary: #e85d75;--primary-dark: #c93f59;--primary-soft: #ffe1e7;--accent: #ff9f68;--accent-soft: #fff0e6;--border: #efd4da;--border-soft: #f6e3e7;--success: #168a4a;--warning: #b7791f;--shadow-sm: 0 8px 24px rgba(65, 31, 42, .06);--shadow-md: 0 18px 50px rgba(65, 31, 42, .1);--shadow-lg: 0 30px 80px rgba(232, 93, 117, .18);--radius-sm: 14px;--radius-md: 22px;--radius-lg: 32px;--radius-pill: 999px;--container: 1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:radial-gradient(circle at top left,rgba(255,255,255,.9) 0,transparent 34rem),linear-gradient(180deg,#fff8f7,#fff2f4 48%,#fff8f7);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans TC,Microsoft JhengHei,sans-serif;font-size:16px;line-height:1.9;letter-spacing:.01em}a{color:inherit;text-decoration:none}p{margin-top:0;margin-bottom:1.15rem}ul,ol{line-height:1.95}img{max-width:100%;display:block}::selection{color:#fff;background:var(--primary)}.container{width:min(var(--container),calc(100% - 32px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:50;background:#fff8f7d1;border-bottom:1px solid rgba(239,212,218,.88);backdrop-filter:blur(18px)}.header-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:inline-flex;align-items:center;gap:10px;font-weight:900;font-size:19px;letter-spacing:-.035em}.logo:before{content:"";width:13px;height:13px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff 0 15%,transparent 16%),linear-gradient(135deg,var(--primary),var(--accent));box-shadow:0 0 0 6px #e85d751f}.nav{display:flex;align-items:center;gap:6px}.nav a{position:relative;display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border-radius:var(--radius-pill);color:var(--muted);font-size:15px;font-weight:750;transition:color .16s ease,background .16s ease,transform .16s ease}.nav a:hover{color:var(--primary-dark);background:#fff;transform:translateY(-1px)}.mobile-nav{display:none}.hero,.page-hero{position:relative;overflow:hidden;padding:96px 0 84px;background:radial-gradient(circle at 10% 15%,rgba(255,255,255,.9) 0,transparent 30%),radial-gradient(circle at 78% 8%,rgba(255,159,104,.18) 0,transparent 28%),linear-gradient(135deg,#fff8f7,#ffe4ea);border-bottom:1px solid var(--border-soft)}.hero:after,.page-hero:after{content:"";position:absolute;right:-180px;bottom:-260px;width:520px;height:520px;border-radius:50%;background:#e85d751a;pointer-events:none}.home-hero{padding-top:110px;padding-bottom:96px}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:48px;align-items:center}.eyebrow{margin:0 0 14px;color:var(--primary-dark);font-size:13px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}h1,h2,h3{margin-top:0;color:var(--text);letter-spacing:-.055em;line-height:1.16}h1{max-width:900px;margin-bottom:24px;font-size:clamp(42px,6vw,76px)}h2{margin-bottom:16px;font-size:clamp(28px,3.8vw,46px)}h3{margin-bottom:10px;font-size:clamp(21px,2vw,26px)}.hero-text,.page-hero p{max-width:860px;color:var(--text-soft);font-size:18px;line-height:2}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero-note{display:inline-flex;max-width:760px;margin-top:26px;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--muted);background:#ffffffb8;box-shadow:var(--shadow-sm);line-height:1.8}.hero-card{padding:30px;border:1px solid rgba(255,255,255,.9);border-radius:var(--radius-lg);background:linear-gradient(180deg,#ffffffe6,#ffffffb8);box-shadow:var(--shadow-lg)}.hero-card h2{font-size:26px;margin-bottom:18px}.quick-link-grid{display:grid;gap:12px}.quick-link-grid a{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 16px;border:1px solid var(--border-soft);border-radius:16px;color:var(--primary-dark);background:#fff;font-weight:850;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.quick-link-grid a:after{content:"→";opacity:.65}.quick-link-grid a:hover{transform:translate(4px);border-color:var(--primary);box-shadow:var(--shadow-sm)}.section{padding:82px 0}.section.muted{background:radial-gradient(circle at 16% 12%,rgba(255,255,255,.9) 0,transparent 24%),var(--surface-strong)}.section-heading{max-width:800px;margin-bottom:34px}.section-heading p{color:var(--muted);font-size:17px;line-height:1.95}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:var(--radius-pill);border:1px solid transparent;font-weight:900;line-height:1;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.button:hover{transform:translateY(-2px)}.button.primary{color:#fff;background:linear-gradient(135deg,var(--primary),#ef7b65);box-shadow:0 16px 34px #e85d7547}.button.primary:hover{box-shadow:0 20px 44px #e85d755c}.button.secondary{color:var(--primary-dark);background:#fff;border-color:var(--border)}.button.secondary:hover{border-color:var(--primary);box-shadow:var(--shadow-sm)}.text-link{display:inline-flex;align-items:center;gap:6px;color:var(--primary-dark);font-weight:900}.text-link:after{content:"→";transition:transform .16s ease}.text-link:hover:after{transform:translate(4px)}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.stat-card{padding:26px;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:#ffffffd1;box-shadow:var(--shadow-sm)}.stat-card strong{display:block;color:var(--primary-dark);font-size:34px;line-height:1}.stat-card span{display:block;margin-top:10px;font-weight:900;font-size:18px}.stat-card p{margin:8px 0 0;color:var(--muted);line-height:1.8}.deal-grid,.region-grid,.category-grid,.pill-grid{display:grid;gap:18px}.deal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.region-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pill-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.deal-card,.region-card,.category-card,.pill-card,.content-panel,.checklist-card,.notice-box{border:1px solid var(--border-soft);border-radius:var(--radius-md);background:#ffffffe0;box-shadow:var(--shadow-sm)}.deal-card,.region-card,.content-panel,.checklist-card,.notice-box{padding:26px}.deal-card,.region-card,.category-card,.pill-card{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}.deal-card:hover,.region-card:hover,.category-card:hover,.pill-card:hover{transform:translateY(-4px);border-color:#e85d7573;box-shadow:var(--shadow-md);background:#fff}.deal-card p,.region-card p,.content-panel p,.checklist-card p{color:var(--muted);line-height:1.9}.deal-card h3 a:hover,.latest-row h3 a:hover{color:var(--primary-dark)}.deal-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.deal-meta span,.small-label{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:var(--radius-pill);color:var(--primary-dark);background:var(--primary-soft);font-size:13px;font-weight:850}.deal-info{display:grid;gap:5px;margin:18px 0;color:var(--muted);font-size:14px;line-height:1.75}.category-card,.pill-card{display:flex;flex-direction:column;min-height:116px;padding:20px;justify-content:space-between}.category-card strong,.pill-card strong{font-size:20px;letter-spacing:-.04em}.category-card span,.pill-card span{color:var(--muted);font-size:14px;line-height:1.6}.category-card.highlight,.pill-card.highlight{background:linear-gradient(135deg,#fff,#fff4f6);border-color:#e85d7547}.latest-list{display:grid;gap:14px}.latest-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:22px;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm)}.latest-row h3{margin:10px 0 8px;font-size:22px}.latest-row p{margin:0;color:var(--muted)}.latest-meta{display:grid;justify-items:end;gap:8px;white-space:nowrap}.latest-meta span{color:var(--warning);font-size:13px;font-weight:850}.latest-meta strong{color:var(--primary-dark)}.content-panel{max-width:920px}.content-panel.narrow{max-width:860px}.content-panel h2{margin-top:44px;font-size:clamp(26px,3vw,36px)}.content-panel h2:first-child{margin-top:0}.content-panel h3{margin-top:30px}.content-panel p,.content-panel li{color:var(--text-soft);font-size:17px;line-height:2.05}.content-panel ul,.content-panel ol{padding-left:1.5rem;margin-top:10px;margin-bottom:24px}.content-panel li+li{margin-top:8px}.notice-box{margin:30px 0;background:linear-gradient(135deg,#fff,#fff5f0);border-color:#ff9f6859}.notice-box p{margin:8px 0 0}.content-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:34px;align-items:start}.content-grid p{color:var(--muted);font-size:17px;line-height:2}.checklist-card ul{margin:0;padding-left:1.4rem}.checklist-card li{color:var(--text-soft);line-height:2}.checklist-card li+li{margin-top:4px}.faq-list{display:grid;gap:14px;max-width:920px}details{border:1px solid var(--border-soft);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}summary{cursor:pointer;padding:20px 24px;font-weight:900;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:"+";float:right;color:var(--primary-dark);font-size:22px;line-height:1}details[open] summary:after{content:"–"}details p{margin:0;padding:0 24px 22px;color:var(--muted);line-height:1.95}.compare-table{display:grid;overflow:hidden;margin:28px 0;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:#fff}.compare-table>div{display:grid;grid-template-columns:1fr .7fr 1.5fr}.compare-table>div:first-child{background:var(--surface-strong);font-weight:900}.compare-table strong,.compare-table span{padding:14px 16px;border-bottom:1px solid var(--border-soft);line-height:1.75}.compare-table>div:last-child span{border-bottom:0}.filter-panel{margin-bottom:34px;padding:26px;border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:radial-gradient(circle at top right,rgba(255,159,104,.12),transparent 34%),#ffffffe6;box-shadow:var(--shadow-md)}.filter-header{display:flex;align-items:start;justify-content:space-between;gap:24px;margin-bottom:20px}.filter-header h2{margin-bottom:0}.result-count{margin:0;color:var(--muted);white-space:nowrap}.result-count strong{color:var(--primary-dark);font-size:22px}.filter-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:14px}.filter-field{display:grid;gap:8px}.filter-field span{color:var(--text-soft);font-size:14px;font-weight:850}.filter-field input,.filter-field select{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--border);border-radius:16px;color:var(--text);background:#fff;font:inherit;outline:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.filter-field input:focus,.filter-field select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #e85d751f}.filter-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.restaurant-list [hidden]{display:none}.restaurant-card{display:flex;flex-direction:column}.restaurant-card .text-link{margin-top:auto}.discount-preview{margin:18px 0;padding:16px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-soft)}.discount-preview p{margin:6px 0 0}.condition-tags{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 18px}.condition-tags span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:var(--radius-pill);color:var(--text-soft);background:#fafafa;border:1px solid #eee;font-size:13px;font-weight:750}.empty-state{margin-top:24px;padding:36px;border:1px dashed var(--primary);border-radius:var(--radius-lg);text-align:center;background:#ffffffc7}.empty-state p{max-width:680px;margin-inline:auto;color:var(--muted)}.site-footer{background:radial-gradient(circle at top left,rgba(255,255,255,.9) 0,transparent 28rem),#fff;border-top:1px solid var(--border-soft)}.footer-top{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.35fr);gap:48px;padding:54px 0 36px}.footer-brand strong{display:block;margin-bottom:10px;font-size:20px}.footer-brand p{max-width:560px;color:var(--muted);line-height:1.9}.footer-section-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.footer-section h2{margin:0 0 12px;font-size:16px;letter-spacing:0}.footer-section nav{display:grid;gap:8px}.footer-section a{color:var(--muted);font-size:14px;line-height:1.5}.footer-section a:hover{color:var(--primary-dark)}.footer-bottom{display:flex;justify-content:space-between;gap:16px;padding:20px 0 30px;border-top:1px solid var(--border-soft);color:var(--muted);font-size:14px}.footer-bottom p{margin:0}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(232,93,117,.35);outline-offset:3px}@media(max-width:1100px){.deal-grid,.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.region-grid,.pill-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.desktop-nav{display:none}.mobile-nav{display:flex}}@media(max-width:980px){.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-header{flex-direction:column}.result-count{white-space:normal}}@media(max-width:860px){body{font-size:15px}.header-inner{min-height:66px}.logo{font-size:17px}.nav a{min-height:36px;padding:0 9px;font-size:14px}.hero,.page-hero,.home-hero{padding:66px 0 58px}.hero-grid,.content-grid,.footer-top{grid-template-columns:1fr}h1{font-size:clamp(34px,11vw,54px)}h2{font-size:clamp(26px,8vw,38px)}.hero-text,.page-hero p{font-size:16px;line-height:1.95}.section{padding:58px 0}.stats-grid,.deal-grid,.region-grid,.category-grid,.pill-grid,.footer-section-grid,.latest-row{grid-template-columns:1fr}.latest-meta{justify-items:start}.compare-table{overflow-x:auto}.compare-table>div{min-width:620px}.footer-bottom{flex-direction:column}}@media(max-width:620px){.filter-grid{grid-template-columns:1fr}}@media(max-width:520px){.container{width:min(100% - 24px,var(--container))}.mobile-nav{gap:2px}.mobile-nav a{padding:0 7px;font-size:13px}.hero-actions{flex-direction:column}.button{width:100%}.deal-card,.region-card,.content-panel,.checklist-card,.notice-box,.hero-card,.filter-panel{padding:22px}}
