/* ── 手寫的自訂樣式 ── */

:root{
  --bg:#1C1512; --surface:#261D18; --ink:#F3E7D3; --ink-2:#C9B79A; --ink-3:#9A8776;
  --ink-3:#9A8776; --line:#3B2E25; --line-2:#2C221C;
  --o-500:#C9A227; --o-600:#A9861A; --o-400:#DCBB4A; --o-300:#E8D083;
  --o-200:#4A3B18; --o-100:#352A12; --o-50:#241C0D;
  --r:2px; --r-sm:2px;
}

body{
  background:var(--bg);
  background-image:
    radial-gradient(900px 400px at 50% -10%, rgba(201,162,39,.10), transparent 60%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.014) 0 2px, transparent 2px 7px);
  color:var(--ink);
}
.steam{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.steam i{position:absolute;top:14%;width:2px;height:90px;border-radius:2px;
  background:linear-gradient(180deg,transparent,rgba(243,231,211,.10),transparent);
  animation:rise 7s ease-in-out infinite}
.steam i:nth-child(1){left:22%;animation-delay:0s}
.steam i:nth-child(2){left:50%;animation-delay:2.3s;height:120px}
.steam i:nth-child(3){left:77%;animation-delay:4.1s}
@keyframes rise{0%{transform:translateY(20px) scaleY(.6);opacity:0}
  40%{opacity:1}100%{transform:translateY(-90px) scaleY(1.2);opacity:0}}
@media (prefers-reduced-motion:reduce){.steam i{animation:none;opacity:.35}}
.sheet{position:relative;z-index:1}

.crest{display:flex;align-items:center;gap:12px;justify-content:center;margin-bottom:14px}
.crest-line{width:52px;height:1px;background:linear-gradient(90deg,transparent,var(--o-500),transparent)}
.crest-mark{font-family:"Noto Serif TC",serif;font-size:15px;color:var(--o-500);letter-spacing:.3em}

.brand h1{font-family:"Noto Serif TC",serif;font-weight:900;letter-spacing:.22em;
  background:linear-gradient(180deg,#F0DFA8,var(--o-500));-webkit-background-clip:text;
  background-clip:text;color:transparent}
.tagline{font-family:"Noto Serif TC",serif;letter-spacing:.16em;color:var(--ink-2)}
.avatar{background:transparent;border:1px solid var(--o-500);border-radius:50%;box-shadow:0 0 24px rgba(201,162,39,.25)}

.block-head h2{font-family:"Noto Serif TC",serif;font-size:16px;letter-spacing:.3em;color:var(--o-500);font-weight:600}
.block-head{border-bottom:1px solid var(--line)}
.more-link{color:var(--ink-2);letter-spacing:.1em}

/* 方案 = 菜單條目：虛線把名稱與價格連起來 */
.plan{background:transparent;border:none;border-bottom:1px dotted var(--line);border-radius:0;padding:18px 4px}
.plan:hover{background:rgba(201,162,39,.05)}
.plan.on{background:rgba(201,162,39,.09);box-shadow:inset 3px 0 0 var(--o-500)}
.plan-name{font-family:"Noto Serif TC",serif;font-size:19px;font-weight:600;letter-spacing:.06em}
.plan-sub{color:var(--ink-3);font-size:12.5px;letter-spacing:.08em}
.plan-price b{font-family:"Noto Serif TC",serif;color:var(--o-400);font-weight:600}
.plan-was{color:var(--ink-3)}
.plan-tag{background:transparent;border:1px solid var(--o-500);color:var(--o-400);
  letter-spacing:.2em;font-size:10px;border-radius:0}
.plan-feats li::before{content:"·";color:var(--o-500);font-size:20px;line-height:1}
.tick{border-color:var(--o-500)}

.pay{background:var(--surface);border:1px solid var(--line);border-radius:2px}
.pay.on{border-color:var(--o-500);background:rgba(201,162,39,.08)}
.fld > span{letter-spacing:.14em;font-size:12px;color:var(--o-500)}
.fld input,.fld textarea,.fld select{background:var(--surface);border:1px solid var(--line);
  border-radius:2px;color:var(--ink)}
.fld input::placeholder,.fld textarea::placeholder{color:#6B5B4A}
.fld input:focus,.fld textarea:focus,.fld select:focus{border-color:var(--o-500);box-shadow:none}

.checkout{background:rgba(28,21,18,.96);border-top:1px solid var(--o-500)}
.total b{font-family:"Noto Serif TC",serif;color:var(--o-400)}
.pay-btn{background:linear-gradient(180deg,var(--o-400),var(--o-600));color:#241C0D;
  font-family:"Noto Serif TC",serif;font-weight:900;letter-spacing:.3em;border-radius:2px;
  box-shadow:0 6px 22px rgba(201,162,39,.28)}
.line-box{background:var(--surface);border-color:var(--line)}
.sk{background:linear-gradient(90deg,#261D18,#33271F,#261D18)}
.toast{background:#33271F;color:var(--ink);border:1px solid var(--line)}
.disclaimer,.copyright,.fineprint{color:#6B5B4A;letter-spacing:.06em}

