/* ============================================================
   CalcuTools Architecture v1 — shared across ALL calculator pages
   Trust Bar · Split Chart · Quick Summary (In 30 Seconds) ·
   Action Panel · Related sections · FAQ · Guide Divider
   Include AFTER each page's own <style> block so page-specific
   --nav/--primary variables (if any) still take effect.
   ============================================================ */

/* ── Trust bar ── */
.trust-bar{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:22px;}
.trust-badge{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#065f46;background:#f0fdf4;border:1px solid #6ee7b7;padding:7px 13px;border-radius:999px;}

/* ── Split chart (e.g. Principal vs Interest, Invested vs Returns) ── */
.split-chart{margin-top:22px;}
.split-chart-label{display:flex;justify-content:space-between;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:6px;}
.split-bar{display:flex;height:22px;border-radius:999px;overflow:hidden;background:#f1f5f9;}
.split-seg-a{background:#2563eb;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;transition:width .4s ease;}
.split-seg-b{background:#f59e0b;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;transition:width .4s ease;}
.split-legend{display:flex;gap:18px;margin-top:10px;font-size:12px;color:var(--muted);font-weight:600;}
.split-legend span{display:inline-flex;align-items:center;gap:6px;}
.split-dot{width:10px;height:10px;border-radius:3px;display:inline-block;}

/* ── In 30 Seconds (Quick Insights) ── */
.quick-summary{background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px 26px;margin-top:24px;}
.quick-summary-title{font-family:'Sora',sans-serif;font-size:16px;font-weight:800;color:var(--nav);margin-bottom:14px;display:flex;align-items:center;gap:8px;}
.quick-summary-title .badge{font-size:11px;font-weight:800;color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;padding:3px 9px;border-radius:999px;}
.qs-row{display:flex;gap:12px;padding:10px 0;border-top:1px solid var(--border);}
.qs-row:first-of-type{border-top:none;}
.qs-icon{font-size:16px;flex-shrink:0;width:22px;}
.qs-label{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.3px;margin-bottom:2px;}
.qs-val{font-size:14px;color:var(--text);line-height:1.55;}

/* ── Action Panel (Recommended Next Actions) ── */
.action-panel{background:#fff;border:1px solid var(--border);border-radius:16px;padding:26px 26px 22px;margin-top:24px;}
.action-head{margin-bottom:18px;}
.action-eyebrow{font-size:12px;font-weight:800;color:#2563eb;text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px;}
.action-title{font-family:'Sora',sans-serif;font-size:19px;font-weight:800;color:var(--nav);}
.action-sub{font-size:13px;color:var(--muted);margin-top:4px;}
.action-progress-wrap{margin-top:14px;background:#f1f5f9;border-radius:999px;height:8px;overflow:hidden;}
.action-progress-bar{height:100%;background:linear-gradient(90deg,#2563eb,#60a5fa);border-radius:999px;transition:width .3s ease;}
.action-progress-label{font-size:12px;color:var(--muted);margin-top:6px;font-weight:700;}
.action-item{border:1.5px solid var(--border);border-radius:12px;margin-bottom:10px;background:#f8fafc;overflow:hidden;}
.action-row{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;user-select:none;}
.action-check{width:22px;height:22px;border-radius:7px;border:2px solid #cbd5e1;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;color:#fff;font-weight:800;background:#fff;}
.action-check.done{background:#16a34a;border-color:#16a34a;}
.action-icon{font-size:18px;flex-shrink:0;}
.action-label{font-weight:700;font-size:14px;color:var(--text);flex:1;}
.action-meta{font-size:12px;color:var(--muted);font-weight:600;white-space:nowrap;}
.action-arrow{font-size:12px;color:#94a3b8;}
.action-item .action-sub{display:none;padding:0 16px 16px;}
.action-item.open .action-sub{display:block;}
.action-doc-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px dashed var(--border);}
.action-doc-row:first-child{border-top:none;}
.action-doc-check{width:18px;height:18px;border-radius:5px;border:2px solid #cbd5e1;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;color:#fff;font-weight:800;background:#fff;cursor:pointer;}
.action-doc-check.done{background:#2563eb;border-color:#2563eb;}
.action-doc-label{font-size:13px;color:#475569;cursor:pointer;}
.action-link-btn{display:inline-block;margin-top:10px;font-size:12px;font-weight:800;color:#2563eb;text-decoration:none;background:#eff6ff;border:1.5px solid #bfdbfe;padding:7px 12px;border-radius:8px;}
.action-note{font-size:12.5px;color:#475569;line-height:1.7;}
.plan-saved-banner{display:none;margin-bottom:16px;padding:12px 16px;background:#eff6ff;border:1.5px solid #bfdbfe;border-radius:12px;font-size:13px;color:#1e40af;font-weight:600;align-items:center;gap:8px;}

/* ── Related sections (Calculators / PDF Tools) ── */
.related-section{background:#fff;padding:28px;border-radius:16px;border:1px solid var(--border);margin-top:24px;}
.related-title{font-family:'Sora',sans-serif;font-size:17px;font-weight:800;color:var(--nav);margin-bottom:16px;}
.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;}
.related-card{display:flex;align-items:flex-start;gap:10px;padding:14px;background:var(--bg);border:1.5px solid var(--border);border-radius:12px;text-decoration:none;transition:.2s;}
.related-card:hover{border-color:var(--primary);}
.related-card-icon{font-size:20px;flex-shrink:0;width:28px;}
.related-card-name{font-weight:700;font-size:13px;color:var(--text);}
.related-card-desc{font-size:11px;color:var(--muted);margin-top:2px;}

/* ── FAQ ── */
.faq-section{background:#fff;padding:28px;border-radius:16px;border:1px solid var(--border);margin-top:24px;}
.faq-item{border-top:1px solid #e2e8f0;padding:0;}
.faq-q{padding:14px 0;font-weight:700;font-size:14px;color:#0f172a;cursor:pointer;display:flex;justify-content:space-between;align-items:center;line-height:1.5;user-select:none;}
.faq-q:hover{color:#2563eb;}
.faq-q span{font-size:20px;font-weight:400;color:#94a3b8;flex-shrink:0;margin-left:12px;line-height:1;}
.faq-a{display:none;padding:0 0 14px;font-size:14px;color:#475569;line-height:1.75;}
.faq-item.open .faq-a{display:block;}
.faq-item.open .faq-q{color:#2563eb;}
.faq-item.open .faq-q span{color:#2563eb;}

/* ── Complete Guide divider ── */
.guide-divider{display:flex;align-items:center;gap:14px;margin:36px 0 8px;}
.guide-divider .line{flex:1;height:2px;background:var(--border);}
.guide-divider .label{font-family:'Sora',sans-serif;font-size:13px;font-weight:800;color:#2563eb;text-transform:uppercase;letter-spacing:1px;white-space:nowrap;}

/* ── Dark mode ── */
[data-theme="dark"] .action-panel,[data-theme="dark"] .quick-summary,[data-theme="dark"] .related-section,
[data-theme="dark"] .faq-section{background:#1e293b;border-color:#334155;color:#e2e8f0;}
[data-theme="dark"] .action-item{background:#0f172a;border-color:#334155;}
[data-theme="dark"] .action-doc-label{color:#cbd5e1;}
[data-theme="dark"] .action-link-btn{background:#1e3a5f;border-color:#2d4a70;}
[data-theme="dark"] .action-note{color:#cbd5e1;}
[data-theme="dark"] .plan-saved-banner{background:#1e3a5f;border-color:#2d4a70;color:#93c5fd;}
[data-theme="dark"] .action-progress-wrap{background:#0f172a;}
[data-theme="dark"] .faq-q{color:#e2e8f0;}
[data-theme="dark"] .faq-a{color:#94a3b8;}
[data-theme="dark"] .qs-val{color:#e2e8f0;}
[data-theme="dark"] .split-bar{background:#0f172a;}
[data-theme="dark"] .guide-divider .line{background:#334155;}
[data-theme="dark"] .trust-badge{background:#0f2f22;border-color:#166534;color:#86efac;}

/* ── Mobile ── */
@media(max-width:600px){
  .action-panel{padding:20px 16px 18px;}
  .action-row{padding:12px;}
  .quick-summary{padding:18px 16px;}
  .trust-bar{gap:6px;}
  .trust-badge{font-size:11px;padding:6px 10px;}
  .related-grid{grid-template-columns:1fr!important;}
}

/* ---------- Calculator Engine decision layer ---------- */
.ct-decision-panel{background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px 26px;margin-top:24px;box-shadow:0 2px 10px rgba(15,23,42,.03)}
.ct-decision-head h2{font-family:'Sora',sans-serif;font-size:20px;line-height:1.3;color:var(--nav);margin:4px 0 6px}
.ct-decision-head p{color:var(--muted);font-size:13px;line-height:1.6;margin:0}
.ct-decision-eyebrow{font-size:11px;font-weight:800;color:#2563eb;text-transform:uppercase;letter-spacing:.6px}
.ct-decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}
.ct-decision-card{border:1px solid var(--border);border-radius:12px;padding:16px;background:#f8fafc}
.ct-decision-card h3{font-size:14px;margin:0 0 12px;color:var(--nav)}
.ct-table-wrap{overflow-x:auto}
.ct-decision-table{width:100%;border-collapse:collapse;font-size:13px;background:#fff;border-radius:10px;overflow:hidden}
.ct-decision-table th,.ct-decision-table td{padding:10px 9px;text-align:right;border-bottom:1px solid #e2e8f0;white-space:nowrap}
.ct-decision-table th:first-child,.ct-decision-table td:first-child{text-align:left}
.ct-decision-table th{font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:#64748b;background:#f1f5f9}
.ct-decision-table tr.current td{font-weight:800;background:#eff6ff}
.ct-current-badge{display:inline-block;font-size:9px;color:#1d4ed8;background:#dbeafe;border-radius:999px;padding:2px 6px;vertical-align:middle}
.ct-decision-note{margin-top:14px;padding:12px 14px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;color:#1e3a8a;font-size:12px;line-height:1.6}
.ct-validation-message{margin:12px 0 0;padding:10px 12px;border:1px solid #fecaca;background:#fef2f2;color:#991b1b;border-radius:9px;font-size:13px;line-height:1.5}
@media (max-width:700px){.ct-decision-panel{padding:18px 16px}.ct-decision-grid{grid-template-columns:1fr}.ct-decision-table{font-size:12px}}
[data-theme="dark"] .ct-decision-panel{background:#0f172a;border-color:#334155}
[data-theme="dark"] .ct-decision-head h2,.ct-decision-card h3{color:#f8fafc}
[data-theme="dark"] .ct-decision-card{background:#111827;border-color:#334155}
[data-theme="dark"] .ct-decision-table{background:#0f172a;color:#e2e8f0}
[data-theme="dark"] .ct-decision-table th{background:#1e293b;color:#94a3b8}
[data-theme="dark"] .ct-decision-table th,.ct-decision-table td{border-color:#334155}
[data-theme="dark"] .ct-decision-table tr.current td{background:#172554}
[data-theme="dark"] .ct-decision-note{background:#172554;border-color:#1e40af;color:#bfdbfe}
[data-theme="dark"] .ct-validation-message{background:#450a0a;border-color:#7f1d1d;color:#fecaca}
