
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',system-ui,sans-serif;background:#F6F8FB;color:#0B1220;min-height:100vh;font-size:15px;line-height:1.5}
:root{
  --bg:#F6F8FB;--card:#FFFFFF;--primary:#0B1220;--secondary:#1E293B;
  --accent:#10B981;--blue:#2563EB;--muted:#64748B;--border:#E2E8F0;
  --danger:#EF4444;--warning:#F59E0B;--light:#F1F5F9;
  --radius:18px;--radius-sm:11px;
  --shadow:0 2px 16px rgba(15,23,42,0.07);--shadow-md:0 8px 32px rgba(15,23,42,0.10);
}

/* ── Top Banner Ad ── */
.ad-banner-top{background:linear-gradient(135deg,#0B1220,#1E3A5F);color:#fff;text-align:center;padding:9px 16px;font-size:12px;letter-spacing:0.3px}
.ad-banner-top .ad-tag{opacity:0.5;font-size:10px;margin-right:6px;text-transform:uppercase;letter-spacing:1px;border:1px solid rgba(255,255,255,0.2);border-radius:3px;padding:1px 5px}
.ad-banner-top a{color:#10B981;text-decoration:none;font-weight:600}

/* ── Header ── */
.site-header{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}
.site-header-inner{max-width:1300px;margin:0 auto;padding:0 20px;display:flex;align-items:center;justify-content:space-between;height:54px;gap:16px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.logo-icon{width:32px;height:32px;border-radius:9px;flex-shrink:0;display:block}
.logo-text{font-size:16px;font-weight:700;color:var(--primary);letter-spacing:-0.3px}
.logo-text span{color:var(--accent)}

/* Currency Picker */
.currency-picker{display:flex;align-items:center;gap:8px;flex-shrink:0}
.currency-picker label{font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap}
.currency-picker select{border:1.5px solid var(--border);border-radius:9px;padding:6px 10px;font-size:13px;font-weight:600;color:var(--primary);background:#fff;font-family:'DM Sans',sans-serif;outline:none;cursor:pointer;transition:border-color 0.2s;min-width:170px}
.currency-picker select:focus{border-color:var(--blue)}
@media(max-width:640px){.currency-picker select{min-width:110px;font-size:12px}.currency-picker label{display:none}}

/* ── 3-Column Layout ── */
.outer-wrap{max-width:1300px;margin:0 auto;padding:0 12px 48px;display:grid;grid-template-columns:178px 1fr 178px;gap:14px;align-items:start}
@media(max-width:1100px){.outer-wrap{display:block;max-width:760px;padding:0 12px 32px}.side-col{display:none!important}}
@media(max-width:700px){.outer-wrap{padding:0 10px 32px}}

/* ── Side Ad Columns ── */
.side-col{padding-top:14px;display:flex;flex-direction:column;gap:12px;position:sticky;top:62px;max-height:calc(100vh - 70px);overflow-y:auto;scrollbar-width:none}
.side-col::-webkit-scrollbar{display:none}
.side-ad-unit{background:#fff;border:1px solid var(--border);border-radius:14px;padding:13px;text-align:center}
.side-ad-unit .ad-lbl{font-size:9px;font-weight:700;color:#94A3B8;text-transform:uppercase;letter-spacing:0.8px;display:block;margin-bottom:7px}
.side-ad-unit .ad-icon{font-size:26px;margin-bottom:8px;display:block}
.side-ad-unit h5{font-size:12px;font-weight:700;color:var(--primary);line-height:1.3;margin-bottom:4px}
.side-ad-unit p{font-size:11px;color:var(--muted);line-height:1.4;margin-bottom:9px}
.side-ad-unit button{width:100%;background:var(--primary);color:#fff;border:none;border-radius:8px;padding:8px;font-size:11px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif}
.ad-green{background:linear-gradient(160deg,#F0FDF4,#ECFDF5);border-color:#A7F3D0}
.ad-green h5{color:#065F46}.ad-green p{color:#047857}.ad-green button{background:#10B981}
.ad-blue{background:linear-gradient(160deg,#EFF6FF,#EEF2FF);border-color:#BFDBFE}
.ad-blue h5{color:#1E40AF}.ad-blue p{color:#3B82F6}.ad-blue button{background:#2563EB}
.ad-purple{background:linear-gradient(160deg,#F5F3FF,#FAF5FF);border-color:#DDD6FE}
.ad-purple h5{color:#4C1D95}.ad-purple p{color:#7C3AED}.ad-purple button{background:#7C3AED}
.ad-amber{background:linear-gradient(160deg,#FFFBEB,#FFF7ED);border-color:#FDE68A}
.ad-amber h5{color:#92400E}.ad-amber p{color:#B45309}.ad-amber button{background:#D97706}

/* ── Center Column ── */
.center-col{min-width:0}

/* ── Hero ── */
.hero{padding:14px 0 12px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;border-bottom:1px solid var(--border);margin-bottom:14px}
.hero-left h1{font-size:clamp(18px,3vw,26px);font-weight:700;letter-spacing:-0.5px;color:var(--primary);line-height:1.2}
.hero-left h1 span{background:linear-gradient(135deg,#2563EB,#10B981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero-left p{color:var(--muted);font-size:12px;margin-top:3px}
.hero-left .trust-line{font-size:11px;color:var(--muted);margin-top:2px;opacity:0.8}
.btn-primary{background:linear-gradient(135deg,#2563EB,#10B981);color:#fff;border:none;border-radius:10px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;text-decoration:none;display:inline-flex;align-items:center;gap:5px;transition:opacity 0.2s}
.btn-primary:hover{opacity:0.9}

/* Popular badge */
.popular-badge{display:inline-block;background:#FEF3C7;color:#92400E;border-radius:5px;padding:1px 6px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;margin-left:5px;vertical-align:middle}

/* ── After-result Ad ── */
.ad-after-result{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ad-after-result .ad-lbl{font-size:9px;font-weight:700;color:#94A3B8;text-transform:uppercase;letter-spacing:1px;display:block;margin-bottom:2px}
.ad-after-result .ad-text{flex:1;min-width:130px}
.ad-after-result .ad-text strong{font-size:12px;font-weight:700;color:var(--primary);display:block;margin-bottom:2px}
.ad-after-result .ad-text span{font-size:11px;color:var(--muted)}
.ad-after-result-btn{background:var(--primary);color:#fff;border:none;border-radius:8px;padding:8px 14px;font-size:11px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;white-space:nowrap}

/* ── Tabs ── */
.tabs-section{margin-bottom:12px}
.tabs-scroll{display:flex;gap:5px;overflow-x:auto;padding-bottom:3px;scrollbar-width:none}
.tabs-scroll::-webkit-scrollbar{display:none}
.tab-btn{padding:7px 16px;border-radius:30px;border:1.5px solid var(--border);background:#fff;color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all 0.2s;font-family:'DM Sans',sans-serif;flex-shrink:0}
.tab-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}
.tab-btn:hover:not(.active){background:var(--light);color:var(--primary)}

/* ── Calc Grid ── */
.calc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(152px,1fr));gap:9px;margin-bottom:14px}
.calc-card{background:#fff;border:1.5px solid var(--border);border-radius:14px;padding:13px;cursor:pointer;transition:all 0.2s;position:relative;overflow:hidden;text-align:left;font-family:inherit;width:100%}
.calc-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#2563EB,#10B981);opacity:0;transition:opacity 0.2s}
.calc-card:hover{border-color:#93C5FD;box-shadow:var(--shadow-md);transform:translateY(-1px)}
.calc-card:hover::before,.calc-card.selected::before{opacity:1}
.calc-card.selected{border-color:#2563EB;background:#EFF6FF;box-shadow:0 0 0 3px #2563EB15}
.calc-card .c-icon{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;margin-bottom:9px;font-size:15px}
.calc-card h3{font-size:12px;font-weight:700;color:var(--primary);margin-bottom:2px;line-height:1.3}
.calc-card p{font-size:10px;color:var(--muted);line-height:1.4}
.calc-card .open-tag{display:inline-block;margin-top:5px;font-size:10px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:0.3px}

/* ── Main 2-col layout ── */
.main-layout{display:grid;grid-template-columns:1fr 334px;gap:14px;align-items:start}
@media(max-width:860px){.main-layout{grid-template-columns:1fr}.result-col{order:0}}

/* ── Input Card ── */
.input-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}
.card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid var(--border)}
.card-header-icon{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0}
.card-header h2{font-size:15px;font-weight:700;color:var(--primary);margin-bottom:2px;letter-spacing:-0.2px}
.card-header p{font-size:11px;color:var(--muted);line-height:1.4}
.currency-badge{display:inline-flex;align-items:center;gap:4px;background:var(--light);border-radius:6px;padding:2px 8px;font-size:11px;font-weight:700;color:var(--blue);margin-top:4px}

/* ── Notice / disclaimer inside calculator ── */
.calc-notice{background:#FFFBEB;border:1px solid #FDE68A;border-radius:9px;padding:9px 12px;font-size:11px;color:#92400E;margin-top:12px;line-height:1.5}
.calc-notice strong{font-weight:700}

/* ── Fields ── */
.field{margin-bottom:14px}
.field label{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:700;color:var(--secondary);margin-bottom:5px;text-transform:uppercase;letter-spacing:0.4px}
.field label .hint-tag{font-weight:400;text-transform:none;letter-spacing:0;color:var(--muted);font-size:10px}
.field input[type=number],.field select{width:100%;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:9px 12px;font-size:14px;font-weight:500;background:#fff;color:var(--primary);font-family:'DM Sans',sans-serif;outline:none;transition:border-color 0.2s,box-shadow 0.2s;appearance:none;-webkit-appearance:none}
.field input[type=number]:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2563EB15}
.field input[type=number]:hover,.field select:hover{border-color:#94A3B8}
.field .field-hint{font-size:10px;color:var(--muted);margin-top:4px;line-height:1.4}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
@media(max-width:500px){.row2{grid-template-columns:1fr}}

/* ── Slider ── */
.slider-row{display:flex;align-items:center;gap:10px;margin-top:4px;margin-bottom:6px}
.slider-row input[type=range]{flex:1;height:4px;cursor:pointer;accent-color:var(--blue);border-radius:99px}
.slider-val{font-size:13px;font-weight:700;color:var(--blue);min-width:48px;text-align:right;font-family:'DM Mono',monospace}

/* ── Calc Button ── */
.calc-btn{width:100%;padding:12px;background:linear-gradient(135deg,#2563EB 0%,#10B981 100%);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;margin-top:15px;transition:opacity 0.2s,transform 0.15s;display:flex;align-items:center;justify-content:center;gap:7px}
.calc-btn:hover{opacity:0.92;transform:translateY(-1px)}
.calc-btn:active{transform:translateY(0)}

/* ── Formula Box ── */
.formula-box{background:#0F172A;border-radius:10px;padding:13px;margin-top:14px}
.formula-title{font-size:10px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:0.8px;margin-bottom:6px;display:flex;align-items:center;gap:6px}
.formula-title::before{content:'ƒ';display:inline-block;width:15px;height:15px;background:#1E293B;border-radius:4px;font-size:10px;text-align:center;line-height:15px;color:#64748B}
.formula-box code{font-family:'DM Mono',monospace;font-size:11.5px;color:#7DD3FC;line-height:1.8;display:block;white-space:pre-wrap}

/* ── Result Column ── */
.result-col{display:flex;flex-direction:column;gap:12px}
.result-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}
.result-empty{text-align:center;padding:38px 14px;color:var(--muted)}
.result-empty .empty-icon{font-size:36px;margin-bottom:9px;opacity:0.35}
.result-empty p{font-size:13px;font-weight:500}
.result-main{background:linear-gradient(135deg,#0B1220 0%,#1E3A5F 100%);border-radius:13px;padding:18px;color:#fff;text-align:center;margin-bottom:13px;position:relative;overflow:hidden}
.result-main::after{content:'';position:absolute;top:-20px;right:-20px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,0.04);pointer-events:none}
.result-main .r-label{font-size:10px;opacity:0.6;letter-spacing:0.6px;text-transform:uppercase;margin-bottom:6px}
.result-main .r-value{font-size:clamp(22px,4vw,30px);font-weight:700;font-family:'DM Mono',monospace;letter-spacing:-0.5px;line-height:1.1;margin-bottom:5px}
.result-main .r-sub{font-size:11px;opacity:0.55;line-height:1.4}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:11px}
.stat-box{background:var(--light);border-radius:9px;padding:11px}
.stat-box .s-label{font-size:9px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.4px;margin-bottom:3px;line-height:1.3}
.stat-box .s-val{font-size:14px;font-weight:700;color:var(--primary);font-family:'DM Mono',monospace;line-height:1.2}
.s-val.green{color:#059669}.s-val.blue{color:#2563EB}.s-val.amber{color:#D97706}.s-val.red{color:#DC2626}.s-val.purple{color:#7C3AED}
.result-actions{display:flex;gap:7px;flex-wrap:wrap}
.action-btn{flex:1;padding:8px;border:1.5px solid var(--border);border-radius:9px;background:#fff;color:var(--muted);font-size:11px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.2s;display:flex;align-items:center;justify-content:center;gap:4px}
.action-btn:hover{background:var(--light);color:var(--primary);border-color:#94A3B8}
.action-btn.copied{background:#ECFDF5;color:#059669;border-color:#6EE7B7}
.action-btn:disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}

/* Export dropdown (mobile) */
.export-dropdown{position:relative;flex:1}
.export-dropdown-btn{width:100%;padding:8px;border:1.5px solid var(--border);border-radius:9px;background:#fff;color:var(--muted);font-size:11px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.2s;display:flex;align-items:center;justify-content:center;gap:4px}
.export-dropdown-btn:hover{background:var(--light);color:var(--primary);border-color:#94A3B8}
.export-menu{display:none;position:absolute;bottom:calc(100% + 6px);left:0;right:0;background:#fff;border:1.5px solid var(--border);border-radius:10px;box-shadow:var(--shadow-md);z-index:50;overflow:hidden;min-width:160px}
.export-menu.open{display:block}
.export-menu button{width:100%;padding:9px 14px;border:none;background:none;text-align:left;font-size:12px;font-weight:500;color:var(--secondary);cursor:pointer;font-family:'DM Sans',sans-serif;display:flex;align-items:center;gap:8px;transition:background 0.15s}
.export-menu button:hover{background:var(--light)}
.export-menu button:disabled{opacity:0.4;cursor:not-allowed}
.export-menu .menu-divider{height:1px;background:var(--border);margin:3px 0}
.export-help{font-size:10px;color:var(--muted);margin-top:6px;line-height:1.5;padding:0 2px}

/* Desktop: show both rows; Mobile: collapse exports into dropdown */
.export-row-desktop{display:flex;gap:7px;margin-top:6px}
.export-row-mobile{display:none}
@media(max-width:540px){
  .export-row-desktop{display:none}
  .export-row-mobile{display:block;margin-top:6px}
  .result-actions{gap:6px}
}

/* ── Result explanation ── */
.result-explain{background:var(--light);border-radius:10px;padding:12px 14px;font-size:12px;color:var(--secondary);line-height:1.6;margin-bottom:11px}
.result-explain strong{color:var(--primary);font-weight:700;display:block;margin-bottom:4px;font-size:12px}

/* ── Insight badges ── */
.insight-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:11px}
.insight{font-size:10px;font-weight:700;padding:4px 9px;border-radius:6px;text-transform:uppercase;letter-spacing:0.4px;display:inline-flex;align-items:center;gap:4px;line-height:1.3}
.insight.good{background:#ECFDF5;color:#059669;border:1px solid #A7F3D0}
.insight.info{background:#EFF6FF;color:#2563EB;border:1px solid #BFDBFE}
.insight.warn{background:#FFFBEB;color:#92400E;border:1px solid #FDE68A}
.insight.bad{background:#FEF2F2;color:#DC2626;border:1px solid #FECACA}

/* ── Tip card ── */
.tip-card{background:linear-gradient(135deg,#FEF3C7,#FFFBEB);border:1px solid #FDE68A;border-radius:10px;padding:11px 13px;font-size:12px;color:#92400E;line-height:1.5;margin-bottom:11px;display:flex;gap:9px;align-items:flex-start}
.tip-card .tip-icon{font-size:16px;flex-shrink:0;line-height:1.2}
.tip-card strong{font-weight:700;display:block;margin-bottom:2px;color:#78350F}

/* ── Assumptions card (under calc) ── */
.assumptions-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px 18px;margin-top:14px;box-shadow:var(--shadow)}
.assumptions-card .a-title{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:10px;display:flex;align-items:center;gap:6px}
.assumptions-card .a-title::before{content:'📌';font-size:13px}
.assumptions-list{list-style:none;font-size:12.5px;color:var(--secondary);line-height:1.7}
.assumptions-list li{padding:3px 0;padding-left:20px;position:relative}
.assumptions-list li::before{content:'✓';position:absolute;left:0;top:3px;color:var(--accent);font-weight:700;font-size:12px}

/* ── Chart Card ── */
.chart-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
.chart-card-header{margin-bottom:10px}
.chart-card-header h3{font-size:11px;font-weight:700;color:var(--secondary);text-transform:uppercase;letter-spacing:0.4px}
.chart-legend{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.legend-item{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--muted);font-weight:500}
.legend-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}

/* ── Detail Panels (Schedule / Example) ── */
.detail-panels{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.detail-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
.detail-toggle{width:100%;padding:14px 18px;background:none;border:none;font-family:'DM Sans',sans-serif;cursor:pointer;display:flex;justify-content:space-between;align-items:center;text-align:left;transition:background 0.15s}
.detail-toggle:hover{background:var(--light)}
.detail-toggle.open{border-bottom:1px solid var(--border)}
.detail-toggle-left{display:flex;align-items:center;gap:10px}
.detail-toggle-left .dt-icon{font-size:17px}
.detail-toggle-left h3{font-size:13px;font-weight:700;color:var(--primary)}
.detail-toggle-left p{font-size:11px;color:var(--muted);margin-top:1px}
.detail-arrow{font-size:10px;color:var(--muted);transition:transform 0.2s;flex-shrink:0}
.detail-toggle.open .detail-arrow{transform:rotate(180deg)}
.detail-body{display:none;padding:18px}
.detail-body.show{display:block}

/* ── Schedule table ── */
.schedule-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px;max-height:380px;overflow-y:auto}
.schedule-table{width:100%;border-collapse:collapse;font-size:12px;font-family:'DM Mono',monospace;min-width:420px}
.schedule-table thead th{position:sticky;top:0;z-index:2;background:#F8FAFC;font-weight:700;padding:9px 12px;text-align:right;color:var(--secondary);font-size:10px;text-transform:uppercase;letter-spacing:0.5px;border-bottom:1px solid var(--border);white-space:nowrap}
.schedule-table thead th:first-child{text-align:left;padding-left:14px}
.schedule-table tbody td{padding:8px 12px;text-align:right;border-bottom:1px solid #F1F5F9;color:var(--secondary);white-space:nowrap}
.schedule-table tbody td:first-child{text-align:left;padding-left:14px;font-weight:600;color:var(--primary)}
.schedule-table tbody tr:last-child td{border-bottom:none}
.schedule-table tbody tr:hover{background:#F8FAFC}
.schedule-table tbody tr.highlight-row{background:#FEF9EC}
.schedule-table tfoot td{background:var(--primary);color:#fff;font-weight:700;padding:9px 12px;text-align:right;font-size:11px}
.schedule-table tfoot td:first-child{text-align:left;padding-left:14px;border-radius:0 0 0 10px}
.schedule-table tfoot td:last-child{border-radius:0 0 10px 0}
.schedule-note{font-size:11px;color:var(--muted);margin-top:10px;line-height:1.6;padding:0 2px}
.schedule-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-bottom:14px}
.schedule-summary-box{background:var(--light);border-radius:9px;padding:10px 12px}
.schedule-summary-box .ss-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.4px;margin-bottom:3px}
.schedule-summary-box .ss-val{font-size:14px;font-weight:700;color:var(--primary);font-family:'DM Mono',monospace}

/* ── Worked Example ── */
.example-block{font-size:13px;color:var(--secondary);line-height:1.7}
.example-block .ex-intro{margin-bottom:12px;color:var(--secondary)}
.example-block .ex-step{background:#F8FAFC;border-left:3px solid var(--blue);border-radius:0 7px 7px 0;padding:8px 12px;margin-bottom:6px;font-family:'DM Mono',monospace;font-size:12px;color:var(--secondary);line-height:1.6}
.example-block .ex-result{background:#ECFDF5;border:1px solid #A7F3D0;border-radius:9px;padding:10px 14px;font-family:'DM Mono',monospace;font-size:12.5px;font-weight:700;color:#065F46;margin-top:8px}
.example-block .ex-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:8px;display:block}

/* Print: expand detail panels */
@media print{
  /* Hide everything non-essential */
  .ad-banner-top,.site-header,.side-col,.tabs-section,.calc-grid,
  .hero,.ad-strip,.ad-after-result,.sidebar-ad,.ad-bottom,
  .related-section,.faq-section,.footer,
  .result-actions,.detail-toggle .detail-arrow,
  .advanced-toggle,.solve-tabs,.calc-btn{display:none!important}
  /* Show everything content-related */
  body{background:#fff!important;font-size:13px}
  .outer-wrap,.main-layout{display:block!important;padding:0;max-width:100%}
  .main-layout{display:grid!important;grid-template-columns:1fr 1fr;gap:16px}
  .input-card,.result-card,.chart-card,.detail-card,.assumptions-card{
    box-shadow:none!important;border:1px solid #ccc!important;
    break-inside:avoid;margin-bottom:12px
  }
  .detail-body{display:block!important}
  .detail-panels{display:flex!important;flex-direction:column;gap:8px;margin-top:12px}
  .advanced-section{display:block!important}
  .formula-box{background:#f5f5f5!important}
  .formula-box code{color:#000!important}
  .result-main{background:#1E3A5F!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  /* Print header */
  .outer-wrap::before{
    content:'MoneyCalcKit — Financial Calculator Report';
    display:block;font-size:11px;color:#666;
    padding-bottom:8px;border-bottom:1px solid #ddd;margin-bottom:16px
  }
}

/* ── Advanced Options toggle ── */
.advanced-toggle{width:100%;background:none;border:1.5px dashed var(--border);border-radius:10px;color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px;margin-top:12px;transition:all 0.2s}
.advanced-toggle:hover{border-color:var(--blue);color:var(--blue);background:#EFF6FF}
.advanced-toggle.open{border-color:var(--blue);color:var(--blue);background:#EFF6FF}
.advanced-toggle.open .adv-arrow{transform:rotate(180deg)}
.adv-arrow{font-size:9px;transition:transform 0.2s;display:inline-block}
.advanced-section{margin-top:10px;padding:14px;background:var(--light);border-radius:12px;border:1px solid var(--border)}
.advanced-section .adv-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.6px;margin-bottom:10px;display:block}

/* ── Solve-for tabs (Part 4) ── */
.solve-tabs{display:flex;gap:4px;margin-bottom:16px;background:var(--light);border-radius:12px;padding:4px}
.solve-tab{flex:1;padding:7px 4px;border:none;background:none;border-radius:9px;font-size:11px;font-weight:600;color:var(--muted);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.2s;text-align:center;line-height:1.3}
.solve-tab.active{background:#fff;color:var(--primary);box-shadow:0 1px 6px rgba(15,23,42,0.08)}
.solve-tab:hover:not(.active){color:var(--primary)}

/* ── Keyboard focus visible ── */
button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{
  outline:3px solid #93C5FD;outline-offset:3px;border-radius:4px;
}

/* ── Sidebar Ad (in result col) ── */
.sidebar-ad{background:var(--light);border:1px solid var(--border);border-radius:13px;padding:15px;text-align:center}
.ad-slot-wrap{width:100%;overflow:hidden;min-height:50px}
.ad-slot-placeholder{background:var(--light);border:1px dashed var(--border);border-radius:10px;min-height:250px;display:flex;align-items:center;justify-content:center;color:var(--muted)}
.ad-slot-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#94A3B8}
/* Admin panel CSS removed for production */
.ss-admin-status{padding:10px 14px;border-radius:8px;font-size:12px;font-weight:600;margin-bottom:16px;display:none}
.ss-admin-status.ok{background:#ECFDF5;color:#065F46;border:1px solid #A7F3D0;display:block}
.ss-admin-status.err{background:#FEF2F2;color:#991B1B;border:1px solid #FECACA;display:block}
.sidebar-ad h4{font-size:13px;font-weight:700;color:var(--primary);margin-bottom:6px;line-height:1.3}
.sidebar-ad p{font-size:12px;color:var(--muted);margin-bottom:0;line-height:1.5}
.side-ad-unit{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px;text-align:center;box-shadow:var(--shadow)}
.side-ad-unit .ad-lbl{font-size:9px;font-weight:700;color:#94A3B8;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px;display:block}
.side-ad-unit .ad-icon{font-size:22px;display:block;margin-bottom:6px}
.side-ad-unit h5{font-size:12px;font-weight:700;color:var(--primary);margin-bottom:4px;line-height:1.3}
.side-ad-unit p{font-size:11px;color:var(--muted);margin-bottom:10px;line-height:1.4}
.side-ad-unit button{width:100%;padding:7px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;transition:opacity 0.2s}
.side-ad-unit button:hover{opacity:0.85}
.side-ad-unit.ad-green{border-color:#A7F3D0}
.side-ad-unit.ad-blue{border-color:#BFDBFE}
.side-ad-unit.ad-purple{border-color:#DDD6FE}
.side-ad-unit.ad-amber{border-color:#FDE68A}

/* ── Related ── */
.related-section{margin-top:18px}
.related-section h3{font-size:11px;font-weight:700;color:var(--secondary);margin-bottom:9px;text-transform:uppercase;letter-spacing:0.4px}
.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(136px,1fr));gap:8px}
.related-card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:11px;cursor:pointer;transition:all 0.2s;text-align:center}
.related-card:hover{border-color:var(--blue);background:#EFF6FF;transform:translateY(-1px)}
.related-card .r-icon{font-size:18px;margin-bottom:4px}
.related-card p{font-size:11px;font-weight:600;color:var(--secondary)}

/* ── Bottom Ad ── */
.ad-bottom{background:linear-gradient(135deg,#0B1220,#1E293B);border-radius:16px;padding:26px;text-align:center;margin-top:28px}
.ad-bottom .ad-label{font-size:10px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:1px;margin-bottom:11px;display:block}
.ad-bottom h3{font-size:18px;font-weight:700;color:#fff;margin-bottom:6px;letter-spacing:-0.3px}
.ad-bottom p{font-size:12px;color:#64748B;margin-bottom:16px;max-width:440px;margin-left:auto;margin-right:auto}
.ad-bottom-btns{display:flex;gap:9px;justify-content:center;flex-wrap:wrap}
.ad-bottom-btn1{background:linear-gradient(135deg,#2563EB,#10B981);color:#fff;border:none;border-radius:10px;padding:10px 20px;font-size:13px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif}
.ad-bottom-btn2{background:transparent;color:#94A3B8;border:1px solid #334155;border-radius:10px;padding:10px 20px;font-size:12px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif}

/* ── FAQ Section ── */
.faq-section{margin-top:32px;padding-top:24px;border-top:1px solid var(--border)}
.faq-section h2{font-size:16px;font-weight:700;color:var(--primary);margin-bottom:14px;letter-spacing:-0.2px}
.faq-item{background:#fff;border:1px solid var(--border);border-radius:12px;margin-bottom:8px;overflow:hidden}
.faq-q{width:100%;text-align:left;background:none;border:none;padding:14px 16px;font-size:13px;font-weight:600;color:var(--primary);cursor:pointer;font-family:'DM Sans',sans-serif;display:flex;justify-content:space-between;align-items:center;gap:10px}
.faq-q:hover{background:var(--light)}
.faq-q .arrow{font-size:10px;color:var(--muted);transition:transform 0.2s;flex-shrink:0}
.faq-q.open .arrow{transform:rotate(180deg)}
.faq-a{display:none;padding:0 16px 14px;font-size:13px;color:var(--muted);line-height:1.7}
.faq-a.show{display:block}

/* ── Footer ── */
.seo-intro{font-size:12px;color:var(--muted);line-height:1.6;padding:8px 2px 0;display:none}
.seo-intro.show{display:block}
.footer{text-align:center;padding:22px 16px;font-size:12px;color:#94A3B8;border-top:1px solid var(--border);margin-top:28px}
.footer a{color:var(--muted);text-decoration:none}
.footer a:hover{color:var(--primary)}
.footer .disclaimer{font-size:11px;color:#CBD5E1;margin-top:8px;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6}

/* ── Utilities ── */
.hidden{display:none!important}
.divider{border:none;border-top:1px solid var(--border);margin:12px 0}


/* v39 category routing + richer calculator cards */
.calc-card{background:linear-gradient(145deg,#ffffff 0%,#f8fbff 100%);box-shadow:0 8px 22px rgba(15,23,42,.05);}
.calc-card:nth-child(3n+1){background:linear-gradient(145deg,#ffffff 0%,#eff6ff 100%);}
.calc-card:nth-child(3n+2){background:linear-gradient(145deg,#ffffff 0%,#ecfdf5 100%);}
.calc-card:nth-child(3n+3){background:linear-gradient(145deg,#ffffff 0%,#fff7ed 100%);}
.calc-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(15,23,42,.12);}
.calc-card.selected{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12),0 18px 36px rgba(15,23,42,.10);}
.category-title-link{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:8px}
.category-title-link:hover{color:#2563EB}
.category-open-link{display:inline-flex;margin-top:10px;font-size:11px;font-weight:800;color:#2563EB;text-decoration:none;background:#EFF6FF;border:1px solid #BFDBFE;border-radius:999px;padding:7px 12px}
.category-open-link:hover{background:#DBEAFE}
body.category-detail-page .hero h1 span{background:linear-gradient(135deg,#2563EB,#10B981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
body.category-detail-page .seo-intro{display:block}

.local-currency-note{font-size:12px;color:var(--muted);margin-top:6px;font-weight:600}
.hero-actions:empty{display:none}
