/* 色彩變數與基礎設定 */
:root { --price-ivory:#fffaf0; --price-ivory-2:#f6ecd2; --price-paper:#fffdf7; --price-ink:#172033; --price-muted:#6e7481; --price-line:#eadbb8; --price-soft:#dfc17b; --price-gold:#d4ac45; --price-gold-2:#a8751c; --price-gold-dark:#765015; --price-green:#2f9b6d; --price-red:#d95f5f; --price-shadow:0 18px 46px rgba(123,84,21,.14); --price-grad-gold:linear-gradient(135deg,#f3dc82 0%,#c99b32 54%,#8e6420 100%); --price-grad-page:linear-gradient(180deg,#fffaf0 0%,#f6ecd2 100%); }
* { box-sizing:border-box; }
body.pricing-page { min-height:100vh; color:var(--price-ink); background:var(--price-grad-page); font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; overflow-x:hidden; position:relative; }
.pricing-page a { text-decoration:none; }
.pricing-page .text-muted-custom { color:var(--price-muted) !important; }
.pricing-page .text-white,.pricing-page .text-light { color:var(--price-ink) !important; }
.pricing-page .text-info,.pricing-page .text-primary { color:var(--price-gold-dark) !important; }
.pricing-page .text-success { color:var(--price-green) !important; }
.pricing-page .border-info { border-color:var(--price-soft) !important; }
.pricing-page .z-index-10 { position:relative; z-index:10; }

/* 導覽列 */
.hero-bg-lights { display:none; }
.pricing-page .navbar { min-height:66px; border-bottom:1px solid var(--price-line) !important; background:rgba(255,253,247,.88); backdrop-filter:blur(12px); box-shadow:0 10px 28px rgba(123,84,21,.08); }
.pricing-page .navbar-brand span,.pricing-page .navbar .nav-link { color:var(--price-ink) !important; }
.pricing-page .navbar .nav-link { font-weight:700; opacity:.72; }
.pricing-page .navbar .nav-link:hover,.pricing-page .navbar .nav-link.active { color:var(--price-gold-dark) !important; opacity:1; }
.pricing-page .navbar-toggler i { color:var(--price-gold-dark) !important; }
.logo-icon-container { width:34px; height:34px; display:flex; align-items:center; justify-content:center; color:#fff; background:var(--price-grad-gold); border-radius:8px; box-shadow:0 10px 24px rgba(168,117,28,.22); }

/* 按鈕與表單 */
.pricing-page .btn-primary-custom { color:#fff !important; background:var(--price-grad-gold); border:1px solid transparent; box-shadow:0 16px 32px rgba(168,117,28,.25); transition:transform .2s ease,box-shadow .2s ease; }
.pricing-page .btn-primary-custom:hover { color:#fff !important; transform:translateY(-2px); box-shadow:0 22px 42px rgba(168,117,28,.32); }
.pricing-page .btn-outline-custom { color:var(--price-gold-dark) !important; background:rgba(255,253,247,.86); border:1px solid var(--price-line); transition:transform .2s ease,background .2s ease,border-color .2s ease; }
.pricing-page .btn-outline-custom:hover { color:var(--price-gold-dark) !important; background:#fff; border-color:var(--price-soft); transform:translateY(-2px); }
.pricing-page .badge { border-radius:8px !important; background:rgba(212,172,69,.16) !important; color:var(--price-gold-dark) !important; border-color:rgba(212,172,69,.28) !important; }
.pricing-page .form-switch .form-check-input { width:3.65rem; height:1.85rem; cursor:pointer; background-color:#fff; border-color:var(--price-line); box-shadow:inset 0 1px 3px rgba(123,84,21,.12); }
.pricing-page .form-switch .form-check-input:checked { background-color:var(--price-gold); border-color:var(--price-gold); }
.pricing-page .form-switch .form-check-input:focus { border-color:var(--price-soft); box-shadow:0 0 0 .25rem rgba(212,172,69,.2); }

/* 定價卡片 */
.pricing-card { height:100%; position:relative; display:flex; flex-direction:column; overflow:hidden; color:var(--price-ink); background:rgba(255,253,247,.9) !important; border:1px solid var(--price-line); border-radius:8px; box-shadow:0 14px 34px rgba(123,84,21,.08); transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.pricing-card:hover { transform:translateY(-5px); border-color:var(--price-soft); box-shadow:var(--price-shadow); }
.pricing-header { padding:1.7rem 1.7rem 1.1rem; border-bottom:1px solid var(--price-line); background:linear-gradient(180deg,#fffdf8,#fbf4e5); }
.pricing-body { padding:1.7rem; flex-grow:1; display:flex; flex-direction:column; }
.pricing-price { font-size:3.1rem; font-weight:900; color:var(--price-ink); letter-spacing:0; transition:opacity .2s ease-in-out; }
.pricing-currency { display:inline-block; margin-top:.55rem; color:var(--price-gold-dark); font-size:1.2rem; font-weight:800; vertical-align:top; }
.pricing-period { color:var(--price-muted); font-size:1rem; font-weight:600; }
.feature-list { list-style:none; padding-left:0; margin-bottom:2rem; font-size:.95rem; }
.feature-list li { display:flex; align-items:flex-start; gap:.72rem; margin-bottom:.72rem; color:var(--price-muted); line-height:1.55; }
.feature-list li i { min-width:18px; margin-top:.2rem; color:var(--price-green) !important; font-size:1rem; }
.popular-badge { position:absolute; top:12px; right:14px; z-index:10; padding:.42rem .78rem; color:#fff; background:var(--price-grad-gold); border-radius:8px; font-size:.85rem; font-weight:800; box-shadow:0 10px 22px rgba(168,117,28,.25); }
.pro-card { border:2px solid var(--price-gold); box-shadow:0 18px 48px rgba(168,117,28,.18); }
.pro-card::before { content:''; position:absolute; inset:0 auto auto 0; width:100%; height:5px; background:var(--price-grad-gold); }
.btn-pricing { width:100%; min-height:48px; border-radius:8px; padding:.76rem 1.35rem; font-size:1rem; font-weight:800; }

/* 比較表 */
.table-responsive { border:1px solid var(--price-line); border-radius:8px; background:rgba(255,253,247,.86); box-shadow:0 16px 38px rgba(123,84,21,.08); }
.table-comparison { margin:0; overflow:hidden; --bs-table-bg:transparent; --bs-table-color:var(--price-muted); }
.table-comparison th { padding:1.2rem 1rem; color:var(--price-ink); background:#fbf4e5 !important; border-bottom:1px solid var(--price-line); font-weight:800; }
.table-comparison td { padding:1.12rem 1rem; color:var(--price-muted); background:transparent !important; border-bottom:1px solid var(--price-line); vertical-align:middle; }
.table-comparison tr:last-child td { border-bottom:0; }
.table-comparison .text-dark { color:var(--price-ink) !important; }

/* 付款說明 */
.payment-notes { position:relative; overflow:hidden; padding:2.2rem; color:var(--price-ink); background:rgba(255,253,247,.9); border:1px solid var(--price-line); border-left:6px solid var(--price-gold); border-radius:8px; box-shadow:var(--price-shadow); }
.payment-notes::after { content:''; position:absolute; top:0; right:0; width:190px; height:100%; background:linear-gradient(135deg,rgba(243,220,130,.22),transparent); pointer-events:none; }
.payment-notes .rounded-circle { border-radius:8px !important; background:rgba(212,172,69,.16) !important; }
.payment-notes i { color:var(--price-gold-dark) !important; }
.payment-notes .text-dark { color:var(--price-ink) !important; }

/* Footer 覆寫 */
.pricing-page .bg-footer { background:#17120a !important; border-top-color:rgba(234,219,184,.28) !important; }
.pricing-page .bg-footer .text-white,.pricing-page .bg-footer a,.pricing-page .bg-footer p,.pricing-page .bg-footer span { color:#fffaf0 !important; }
.pricing-page .bg-dark-custom { background:rgba(255,255,255,.08) !important; }
.pricing-page .bg-dark-custom:hover { background:rgba(255,255,255,.14) !important; }
