/* ── Subscription tier-list + Focused-companion toggles (Settings) ── */
.tier-list { display: flex; flex-direction: column; gap: 8px; }
.tier-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 14px; border: 1px solid rgba(27,54,93,0.12); border-radius: 10px; background: rgba(255,255,255,0.5); }
.tier-row.current { border-color: var(--gold, #C5A572); background: rgba(197,165,114,0.10); }
.tier-name-btn { background: none; border: none; padding: 0; text-align: left; cursor: pointer; display: flex; flex-direction: column; gap: 2px; font: inherit; color: inherit; }
.tier-nm { font-family: var(--serif, 'EB Garamond', Georgia, serif); font-size: 1.05rem; color: var(--navy, #1B365D); text-decoration: underline; text-decoration-color: rgba(27,54,93,0.25); text-underline-offset: 3px; }
.tier-price { font-size: 0.8rem; color: #6b7280; }
.tier-current { font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--gold, #C5A572); font-weight: 600; }
.tier-switch { font: 600 0.8rem/1 var(--sans, 'Inter', sans-serif); padding: 9px 15px; border-radius: 999px; border: 1px solid var(--navy, #1B365D); background: var(--navy, #1B365D); color: #fff; cursor: pointer; flex-shrink: 0; }
.tier-switch:hover { opacity: 0.9; }

.focused-list .settings-item { align-items: center; }
.focused-name-btn { background: none; border: none; padding: 0; cursor: pointer; font-family: var(--serif, 'EB Garamond', Georgia, serif); font-size: 1rem; color: var(--navy, #1B365D); text-decoration: underline; text-decoration-color: rgba(27,54,93,0.25); text-underline-offset: 3px; }
.focused-toggle { width: 46px; height: 26px; border-radius: 999px; background: #d1d5db; position: relative; cursor: pointer; flex-shrink: 0; transition: background 0.2s; }
.focused-toggle::after { content: ''; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: transform 0.2s; box-shadow: 0 1px 3px rgba(0,0,0,0.2); }
.focused-toggle.on { background: var(--navy, #1B365D); }
.focused-toggle.on::after { transform: translateX(20px); }
.focused-toggle.locked { background: #e5e0d5; }
.focused-toggle.locked::after { background: #b8b0a0; }

/* lightbox — tier + focused detail */
.sub-lb-overlay { position: fixed; inset: 0; background: rgba(20,18,14,0.55); z-index: 9998; opacity: 0; pointer-events: none; transition: opacity 0.2s; }
.sub-lb-overlay.active { opacity: 1; pointer-events: auto; }
.sub-lb { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -48%); width: min(420px, 90vw); max-height: 80vh; overflow-y: auto; background: var(--bg-card, #FAF8F5); border-radius: 14px; padding: 30px 26px 26px; z-index: 9999; opacity: 0; pointer-events: none; transition: opacity 0.2s, transform 0.2s; box-shadow: 0 20px 60px rgba(0,0,0,0.30); }
.sub-lb.active { opacity: 1; pointer-events: auto; transform: translate(-50%, -50%); }
.sub-lb-close { position: absolute; top: 10px; right: 14px; background: none; border: none; font-size: 1.7rem; line-height: 1; color: #6b7280; cursor: pointer; }
.sub-lb .lb-title { font-family: var(--serif, 'EB Garamond', Georgia, serif); font-size: 1.4rem; color: var(--navy, #1B365D); margin: 0 0 6px; }
.sub-lb .lb-price { font-size: 0.9rem; color: var(--gold, #C5A572); }
.sub-lb .lb-tagline { font-style: italic; color: #6b7280; margin: 0 0 14px; }
.sub-lb .lb-surface { color: #3A2E25; line-height: 1.6; }
.sub-lb .lb-list { margin: 0 0 18px; padding-left: 18px; }
.sub-lb .lb-list li { margin-bottom: 7px; line-height: 1.45; color: #3A2E25; }
.sub-lb .lb-cta { display: inline-block; margin-top: 10px; background: var(--navy, #1B365D); color: #fff; border: none; border-radius: 999px; padding: 12px 22px; font: 600 0.9rem/1 var(--sans, 'Inter', sans-serif); cursor: pointer; }
.sub-lb .lb-cta:hover { opacity: 0.9; }
.sub-lb .lb-current { color: var(--gold, #C5A572); font-weight: 600; font-size: 0.85rem; letter-spacing: 0.05em; text-transform: uppercase; }
.sub-lb .lb-locked { margin-top: 14px; padding-top: 14px; border-top: 1px solid rgba(27,54,93,0.12); }
