/* MarginMath site layer v2: mega header, purple theme, explore cards, trust strip, new footer */
:root{--p1:#5b34e0;--p2:#3b1e9a;--p3:#1e1452;--pw:#efeafd;--pbg:#f5f4fa}
/* theme for dashboards */
section.tool.mm-dash,.calc{--green:var(--p1);--green-wash:var(--pw)}
main>.wrap.hero::before,.thero{background:radial-gradient(1100px 420px at 85% -10%,#7b5cff 0,transparent 60%),linear-gradient(135deg,var(--p3) 0%,var(--p2) 55%,var(--p1) 100%)!important}
.mm-kpi.main,.kpi.main{background:linear-gradient(145deg,var(--p2),var(--p1))!important}
main>.wrap.hero .lede,.thero .lede{color:#e3dcff!important}
main>.wrap.hero .crumbs,main>.wrap.hero .crumbs a,main>.wrap.hero .meta,main>.wrap.hero .meta a,.thero .crumbs,.thero .crumbs a,.mm-kpi.main span,.kpi.main span,.kpi.main small{color:#d4cbff!important}
@media (prefers-color-scheme:dark){section.tool.mm-dash,.calc{--green:#a58cff;--green-wash:#2a2152}}
/* header */
header.mm2{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e7e4f2;box-shadow:0 1px 0 rgba(30,20,82,.02)}
header.mm2 .wrap{max-width:1240px;display:flex;align-items:center;gap:26px;min-height:70px}
header.mm2 .brand{display:flex;align-items:center;gap:10px;color:var(--p3);text-decoration:none;font-weight:800;font-size:1.3rem;letter-spacing:-.02em}
header.mm2 .brand svg{width:32px;height:32px}
.mnav{display:flex;align-items:center;gap:4px;flex:1}
.mnav>details{position:relative}
.mnav summary,.mnav>a{list-style:none;cursor:pointer;font-weight:700;color:#17142b;font-size:1.02rem;padding:10px 14px;border-radius:10px;text-decoration:none;display:flex;align-items:center;gap:6px}
.mnav summary::-webkit-details-marker{display:none}
.mnav summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.6}
.mnav summary:hover,.mnav>a:hover,.mnav details[open] summary{background:var(--pbg);color:var(--p1)}
.mega{position:absolute;left:0;top:calc(100% + 8px);background:#fff;border:1px solid #e7e4f2;border-radius:16px;box-shadow:0 24px 60px -20px rgba(30,20,82,.35);padding:18px;display:grid;grid-template-columns:repeat(2,minmax(230px,1fr));gap:6px;min-width:520px}
.mega a{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:12px;text-decoration:none;color:#17142b}
.mega a:hover{background:var(--pbg)}
.mega a i{width:36px;height:36px;border-radius:10px;background:var(--pw);color:var(--p1);display:grid;place-items:center;flex:none;font-style:normal;font-weight:800}
.mega a b{display:block;font-size:.97rem}.mega a span{display:block;font-size:.84rem;color:#5d5a72;line-height:1.35;margin-top:2px}
.mega .all{grid-column:1/-1;border-top:1px solid #eeebf7;margin-top:6px;padding-top:12px;font-weight:700;color:var(--p1)}
.hbtns{display:flex;gap:10px;margin-left:auto}
.btn-o,.btn-p{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:10px 20px;font-weight:700;text-decoration:none;font-size:.97rem;white-space:nowrap}
.btn-o{border:1.5px solid #17142b;color:#17142b;background:#fff}.btn-o:hover{background:var(--pbg)}
.btn-p{background:var(--p2);color:#fff;border:1.5px solid var(--p2)}.btn-p:hover{background:var(--p1);border-color:var(--p1)}
.mtoggle{display:none}
@media (max-width:980px){
 header.mm2 .wrap{flex-wrap:wrap;gap:8px;padding-top:8px;padding-bottom:8px}
 .mtoggle{display:inline-flex;margin-left:auto;border:1.5px solid #d9d4ee;border-radius:10px;padding:8px 12px;font-weight:700;background:#fff;cursor:pointer}
 .mnav,.hbtns{display:none;width:100%}
 header.mm2.open .mnav{display:flex;flex-direction:column;align-items:stretch}
 header.mm2.open .hbtns{display:flex;margin:6px 0 10px}
 .mega{position:static;box-shadow:none;border:0;min-width:0;grid-template-columns:1fr;padding:4px 0 8px}
}
/* explore cards */
.explore{background:#fff;padding:46px 0 10px;margin-top:56px}
.explore .wrap{max-width:1240px}
.explore h2{font-size:clamp(1.6rem,3vw,2.3rem);letter-spacing:-.03em;margin:0 0 6px;text-align:center}
.explore p.sub2{text-align:center;color:#5d5a72;margin:0 0 26px}
.ecards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ecard{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;border:1px solid #e7e4f2;border-radius:16px;padding:26px 30px;text-decoration:none;color:#17142b;box-shadow:0 10px 26px -18px rgba(30,20,82,.45);transition:transform .15s,box-shadow .15s}
.ecard:hover{transform:translateY(-2px);box-shadow:0 18px 36px -18px rgba(30,20,82,.5);border-color:#cfc6f5}
.ecard b{font-size:1.15rem}.ecard span{display:block;font-size:.9rem;color:#5d5a72;margin-top:4px;font-weight:400}
.ecard svg{flex:none;width:26px;height:26px;color:var(--p1)}
@media (max-width:760px){.ecards{grid-template-columns:1fr}}
/* trust strip */
.trust2{max-width:1240px;margin:34px auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.trust2 div{background:var(--pbg);border-radius:14px;padding:16px 18px;display:flex;gap:12px;align-items:flex-start}
.trust2 i{width:38px;height:38px;border-radius:50%;background:#fff;display:grid;place-items:center;flex:none;color:var(--p1);font-style:normal;font-weight:800;box-shadow:0 4px 10px -6px rgba(30,20,82,.4)}
.trust2 b{display:block;font-size:.95rem}.trust2 span{font-size:.84rem;color:#5d5a72;line-height:1.4}
@media (max-width:900px){.trust2{grid-template-columns:1fr 1fr}}@media (max-width:520px){.trust2{grid-template-columns:1fr}}
/* footer */
footer.mm2{background:var(--pbg);border-top:1px solid #e7e4f2;margin-top:56px;padding:46px 0 26px;color:#3d3a52;font-size:.97rem}
footer.mm2 .wrap{max-width:1240px}
.f2grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.f2grid h2{font-size:1.15rem;margin:0 0 14px;color:#17142b;letter-spacing:-.01em}
.f2grid ul{list-style:none;margin:0;padding:0}.f2grid li{margin:0 0 12px}
.f2grid a{color:#3d3a52;text-decoration:none}.f2grid a:hover{color:var(--p1);text-decoration:underline}
.f2mid{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e3dff0;margin-top:30px;padding-top:26px}
.f2mid .brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.35rem;color:var(--p3);text-decoration:none}
.f2mid .brand svg{width:34px;height:34px}
.f2mid p{margin:6px 0 0;color:#5d5a72;max-width:52ch;font-size:.92rem}
.social{display:flex;gap:12px}.social a{width:42px;height:42px;border-radius:12px;background:#fff;border:1px solid #e3dff0;display:grid;place-items:center;color:#17142b}.social a:hover{color:var(--p1);border-color:var(--p1)}
.social svg{width:20px;height:20px}
.f2legal{display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center;border-top:1px solid #e3dff0;margin-top:24px;padding-top:18px;font-size:.88rem;color:#5d5a72}
.f2legal a{color:#3d3a52;text-decoration:none}.f2legal a:hover{text-decoration:underline}
.f2legal .copy{flex-basis:100%;margin-top:6px}
@media (max-width:900px){.f2grid{grid-template-columns:1fr 1fr}}@media (max-width:520px){.f2grid{grid-template-columns:1fr}}
@media (prefers-color-scheme:dark){header.mm2,.explore,.ecard,.mega,.btn-o,.social a{background:var(--card);color:var(--ink);border-color:var(--rule)}.mnav summary,.mnav>a,.mega a,.ecard,header.mm2 .brand,.f2mid .brand,.f2grid h2{color:var(--ink)}footer.mm2,.trust2 div{background:#15121f}.f2grid a,.f2legal a,footer.mm2{color:var(--muted)}.btn-o{border-color:var(--ink)}}
@media print{header.mm2,.explore,.trust2,footer.mm2{display:none!important}}
.trust2 p{margin:0}.explore{padding-bottom:46px}.explore+footer.mm2{margin-top:0}
:root{--green:#5b34e0;--green-wash:#efeafd}@media (prefers-color-scheme:dark){:root{--green:#a58cff;--green-wash:#2a2152}}
.mbar{background:var(--p2)!important}
/* v3: one uniform background top to bottom (light lavender), purple accents */
:root{--paper:#f5f4fa}
body{background:#f5f4fa!important}
main>.wrap.hero::before{display:none!important}
.thero{background:transparent!important;color:var(--ink)!important;padding:26px 0 26px!important}
main>.wrap.hero{color:var(--ink)!important;padding-bottom:26px!important}
main>.wrap.hero h1,.thero h1{color:#17142b!important}
main>.wrap.hero .lede,.thero .lede{color:#4a4763!important}
main>.wrap.hero .crumbs,main>.wrap.hero .crumbs a,main>.wrap.hero .meta,main>.wrap.hero .meta a,.thero .crumbs,.thero .crumbs a{color:#5d5a72!important}
main>.wrap.hero .meta a,.thero .crumbs a{color:var(--p1)!important}
main>.wrap.hero .trust li,.chips2 li{background:#fff!important;border:1px solid #e3dff0!important;color:#3d3a52!important}
main>.wrap.hero .trust svg{color:var(--p1)!important}
main>.wrap.hero+.wrap{margin-top:0!important}
.calc{margin-top:6px!important}
.hero-art{background:linear-gradient(135deg,#2b1873,#3b1e9a 50%,#5b34e0);border-radius:28px;box-shadow:0 24px 50px -24px rgba(59,30,154,.6)}
.hero-art svg{filter:none!important}
.explore{background:transparent!important;margin-top:30px!important}
footer.mm2{background:#f5f4fa!important;border-top:1px solid #e3dff0}
.card,.card.inputs,section.tool.mm-dash .tool-in,.panel,.mm-panel,.kpi:not(.main),.mm-kpi:not(.main),.ecard,.cc,.taxmain .faq details,.faq details{background:#fff}
.trust2 div{background:#fff!important;border:1px solid #ebe8f5}
.chero{background:transparent!important;color:var(--ink)!important}.chero h1{color:#17142b!important}.chero .lede{color:#4a4763!important}.chero .crumbs,.chero .crumbs a{color:#5d5a72!important}
@media (prefers-color-scheme:dark){body{background:#100d1c!important}main>.wrap.hero h1,.thero h1,.chero h1{color:var(--ink)!important}main>.wrap.hero .lede,.thero .lede,.chero .lede{color:var(--muted)!important}footer.mm2{background:#100d1c!important}.card,.panel,.mm-panel,.kpi:not(.main),.mm-kpi:not(.main),.ecard,.cc,.trust2 div,main>.wrap.hero .trust li,.chips2 li{background:var(--card)!important;color:var(--ink)!important}}
:root{--v-profit:#5b34e0;--v-f4:#2a78d6}.slip .stat.main output{color:var(--p1)!important}
@media (prefers-color-scheme:dark){:root{--v-profit:#a58cff}}
.viz-root{--v-profit:#5b34e0!important;--v-f4:#2a78d6!important;--v-profit-wash:rgba(91,52,224,.10)!important}
@media (prefers-color-scheme:dark){.viz-root{--v-profit:#a58cff!important}}
.hero-art.il{background:none!important;box-shadow:none!important;border-radius:0}.hero-art.il svg{width:460px;max-width:100%;height:auto}
main>.wrap.hero .hero-art.il{grid-row:1/span 6;align-self:center}
@media (max-width:1100px){.hero-art.il svg{width:340px}}
.chero{padding-bottom:4px!important}
/* formulas as readable cards, not code */
.formula{font-family:var(--sans)!important;white-space:normal!important;overflow:visible!important;background:#fff!important;border:1px solid #e3dff0!important;border-left:4px solid var(--p1)!important;border-radius:12px!important;padding:14px 18px 14px 18px!important;font-size:1.02rem!important;font-weight:650;color:#17142b;line-height:1.5}
.formula::before{content:"Formula";display:block;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--p1);margin-bottom:4px}
pre.embed,#embed{display:none!important}
@media (prefers-color-scheme:dark){.formula{background:var(--card)!important;color:var(--ink)}}
/* v9: hover mega menus (TaxAct style) */
.mnav .dd{position:relative}
.ddb{font:inherit;cursor:pointer;font-weight:700;color:#17142b;font-size:1.02rem;padding:10px 14px;border-radius:10px;border:0;background:none;display:flex;align-items:center;gap:7px;min-height:auto}
.ddb::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.6;transition:transform .2s}
.ddb:hover,.dd:hover .ddb,.dd.open .ddb,.dd:focus-within .ddb{background:var(--pbg);color:var(--p1)}
.dd .mega{display:none;opacity:0;transform:translateY(6px);transition:opacity .16s ease,transform .16s ease}
.dd .mega::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
@media (hover:hover) and (min-width:981px){.dd:hover .mega,.dd:focus-within .mega{display:grid;opacity:1;transform:none}.dd:hover .ddb::after{transform:rotate(225deg) translateY(-2px)}}
.dd.open .mega{display:grid;opacity:1;transform:none}.dd.open .ddb::after{transform:rotate(225deg) translateY(-2px)}
.mega a{transition:background .12s}.mega a:hover i{background:var(--p1);color:#fff}
@media (max-width:980px){.ddb{width:100%;justify-content:space-between}.dd .mega{position:static;box-shadow:none;border:0;min-width:0;grid-template-columns:1fr;padding:4px 0 8px;transform:none}.dd .mega::before{display:none}}
@media (prefers-color-scheme:dark){.ddb{color:var(--ink)}}
.ddb{white-space:nowrap;padding:10px 12px}header.mm2 .wrap{gap:18px}
@media (max-width:1180px) and (min-width:981px){.ddb{padding:8px 8px;font-size:.95rem}.btn-o{display:none}}
