:root{--brand:#14b8a6;--brand-50:#ecfdf5;--ink:#0f172a;--muted:#64748b;--panel:#ffffff;--ring:#d1fae5;--shadow:0 10px 30px rgba(2,6,23,.08);--link-bg: #f0f9ff;--link-border: #e0f2fe;--link-color: #0369a1}html{scroll-behavior:smooth}html,body{margin:0;padding:0;background:#f8fafc;color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,Noto Sans TC,sans-serif}.wrap{position:relative;max-width:1160px;margin:0 auto;padding:18px 12px 28px}.pill{font-size:12px;background:#ecfeff;color:#0f766e;padding:4px 8px;border-radius:999px;border:1px solid #a5f3fc}.link{font-size:12px;color:var(--link-color);background:var(--link-bg);border:1px solid var(--link-border);text-decoration:none;font-weight:600;padding:3px 8px;border-radius:6px;transition:background .2s}.link:hover{background:var(--link-border)}.h{font-weight:700;font-size:17px;margin:2px 0 6px}.meta{font-size:14px;color:#374151;line-height:1.5}.tag{font-size:11px;padding:2px 8px;border-radius:999px;background:#f0fdf4;border:1px solid #bbf7d0;color:#065f46;margin-right:6px}.grid{display:flex;flex-wrap:wrap;gap:14px}.card{flex:1 1 520px;min-width:280px;background:var(--panel);border:1px solid #e5e7eb;border-left:6px solid var(--brand);border-radius:14px;padding:14px 16px 40px;box-shadow:var(--shadow);display:block;transition:opacity .3s ease;position:relative}.share-btn{position:absolute;bottom:12px;right:16px;background:var(--brand-50);color:var(--brand);border:1px solid var(--ring);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s}.share-btn:hover{background:var(--brand);color:#fff;border-color:var(--brand);transform:scale(1.05)}.tabs-container{margin:12px 0}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tabs label{-webkit-user-select:none;user-select:none;cursor:pointer;font-size:13px;color:#065f46;border:1px solid var(--ring);background:var(--brand-50);padding:6px 10px;border-radius:999px;transition:all .2s;min-width:42px;text-align:center;box-sizing:border-box}.tabs-input{position:absolute;opacity:0}.tabs-input:checked+label{background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:0 4px 14px #14b8a640}.card.hidden{display:none}.card.expired-hidden{display:none!important}.promo-card{display:flex;align-items:center;justify-content:center;gap:14px;text-decoration:none;background-image:linear-gradient(#00000080,#00000080),url(https://i.meee.com.tw/6cI1hr0.jpg);background-size:cover;background-position:center;border-radius:14px;padding:16px;margin-top:10px;border:1px solid #e5e7eb;box-shadow:0 4px 12px #0206170d;transition:transform .2s ease,box-shadow .2s ease}.promo-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #02061714}.promo-avatar{width:60px;height:60px;border-radius:999px;object-fit:cover;border:2px solid rgba(255,255,255,.8);flex-shrink:0}.promo-text{font-size:16px;font-weight:600;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5)}.promo-text small{display:block;font-size:13px;font-weight:400;color:#ffffffe6}.reset{position:fixed;right:16px;bottom:16px;z-index:3}#reset-filters-label{background:var(--brand);color:#fff;border:none;border-radius:999px;padding:10px 12px;font-size:13px;cursor:pointer;box-shadow:0 10px 24px #14b8a647}.form-section{background:var(--panel);border:1px solid #e5e7eb;border-radius:14px;padding:20px 24px;margin-top:20px;box-shadow:var(--shadow)}.form-section h2{margin:0 0 12px;color:var(--brand);font-size:20px;text-align:center}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--ink)}.form-group input{width:100%;padding:10px 12px;font-size:15px;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box}.form-group input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--ring)}.submit-btn{background:var(--brand);color:#fff;border:none;border-radius:999px;padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 10px 24px #14b8a647;transition:all .2s;display:block;margin:0 auto}.submit-btn:disabled,.submit-btn.cooldown{background:var(--muted);cursor:not-allowed;box-shadow:none}#form-status{font-size:13px;margin-top:10px;text-align:center}.status-success{color:#065f46}.status-error{color:#991b1b}
/* ===== Theme Switcher Styles ===== */
.theme-switcher {
  position: absolute;
  top: 18px; /* Match .wrap padding */
  right: 12px; /* Match .wrap padding */
  display: flex;
  align-items: center;
  z-index: 10;
}
.theme-label {
  font-size: 12px;
  margin-right: 4px;
  color: var(--ink);
  -webkit-user-select: none; /* Disable text selection */
  user-select: none;
}
.theme-select {
  font-size: 12px;
  padding: 2px 4px;
  border-radius: 6px;
  border: 1px solid #d1d5db;
  background: var(--panel);
  color: var(--ink);
  cursor: pointer;
}
.theme-select:focus {
  outline: none;
  border-color: var(--brand);
  box-shadow: 0 0 0 3px var(--ring);
}

/* ===== Dark Mode Styles ===== */
html[data-theme="dark"] {
  --brand-50: #134e4a;
  --ink: #e2e8f0;
  --muted: #94a3b8;
  --panel: #0f172a; /* 主背景 (最暗) */
  --panel-card: #1e293b; /* 卡片背景 (次暗) */
  --ring: #0f766e;
  --shadow: 0 10px 30px rgba(0,0,0,.25);
  --link-bg: #1e3a8a;
  --link-border: #1e40af;
  --link-color: #93c5fd;
}

html[data-theme="dark"] body,
html[data-theme="dark"] {
  background: var(--panel);
  color: var(--ink);
}

/* 卡片、表單使用稍亮的背景色 */
html[data-theme="dark"] .card,
html[data-theme="dark"] .form-section {
  background: var(--panel-card);
  border-color: #334155;
}
html[data-theme="dark"] .promo-card {
  border-color: #334155;
}

/* 修正：日期藥丸 .pill */
html[data-theme="dark"] .pill {
  background: #164e63;
  color: #67e8f9;
  border-color: #083344;
}

/* 修正：分類標籤 .tag */
html[data-theme="dark"] .tag {
  background: #064e3b;
  color: #a7f3d0;
  border-color: #052e16;
}

/* 修正：篩選按鈕 .tabs label (未選中) */
html[data-theme="dark"] .tabs label {
  color: #67e8f9; /* 使用更亮的青色 */
  border-color: var(--ring);
  background: var(--brand-50);
}

/* 修正：篩選按鈕 .tabs label (已選中) */
html[data-theme="dark"] .tabs-input:checked+label {
  background: var(--brand);
  color: #fff;
  border-color: var(--brand);
}

/* 修正：LINE 社群方塊 */
html[data-theme="dark"] [style*="background:rgba(255,255,255,.90)"] {
  background: rgba(30, 41, 59, .9) !important; /* --panel-card 的顏色 */
  border-color: var(--ring) !important;
}

/* 修正：表單輸入框 */
html[data-theme="dark"] .form-group input {
  background: #334155;
  color: var(--ink);
  border-color: #475569;
}

/* 修正：模式切換器 */
html[data-theme="dark"] .theme-label {
  color: var(--ink);
}
html[data-theme="dark"] .theme-select {
  background: var(--panel-card);
  color: var(--ink);
  border-color: #334155;
}
/* 修正：卡片內的 meta 文字（地區、時間）在深色模式下的顏色 */
html[data-theme="dark"] .meta {
  color: #cbd5e1; /* 使用更亮的灰色 */
}