/* EasyMathSheets: budget calculator, videos, product line-up (19/10/2026). Loaded after site.css. */
/* ---------- Budget calculator (50/30/20) and home budget demo ---------- */
.field--third{grid-column:span 1}
.calc__more[open]:has(.field--third){grid-template-columns:repeat(3,1fr)}
.field__check{font-size:.86rem;font-weight:700;color:var(--warn);min-height:0}
.field__check:empty{display:none}
.result--plan{background:var(--navy-900);border-color:var(--navy-900)}
.result--plan .result__label{color:#AFBEDA}
.plan{margin:0;font-family:var(--font-display);font-weight:800;font-size:1.35rem;line-height:1.3;color:#fff}
.plan[data-tone="good"]{color:#7BE0A8}
.plan[data-tone="bad"]{color:#FFB4AB}
.plan[data-tone="warn"]{color:var(--gold)}
.budget-table thead th{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;padding:8px 10px;text-align:right}
.budget-table thead th:first-child{text-align:left;padding-left:16px}
.budget-table td{padding:9px 10px}
.budget-table td:last-child{padding-right:16px}
.budget-table .muted{color:var(--muted);font-size:.85em;font-family:var(--font-mono)}
.budget-table .left[data-sign="neg"]{color:var(--bad);font-weight:700}
.budget-table .left[data-sign="pos"]{color:var(--good);font-weight:700}
.split-bar{display:flex;height:14px;border-radius:999px;overflow:hidden;background:var(--paper)}
.split-bar span:nth-child(1){background:var(--navy-700)}
.split-bar span:nth-child(2){background:var(--gold)}
.split-bar span:nth-child(3){background:var(--good)}
.signup--card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 18px;margin:0}
.signup__h{font-family:var(--font-display);font-weight:800;color:var(--navy-900);margin:0 0 4px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.demo__plan{margin:2px 0 0;padding:12px 14px;border-radius:var(--r);background:var(--navy-900);color:#fff;font-family:var(--font-display);font-weight:800;font-size:1.05rem;line-height:1.3;min-height:3.2em}
.demo__plan[data-tone="good"]{color:#7BE0A8}
.demo__plan[data-tone="bad"]{color:#FFB4AB}
.demo__split{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}
.demo__split div{border:1px solid var(--line);border-radius:var(--r-sm);padding:9px 10px}
.demo__split dt{font-size:.7rem;font-weight:600;color:var(--muted);line-height:1.25}
.demo__split dd{margin:4px 0 0;font-family:var(--font-mono);font-weight:700;font-size:1.02rem}
.demo__split dd[data-sign="neg"]{color:var(--bad)}
.demo__split dd[data-sign="pos"]{color:var(--good)}

/* ---------- Videos (tap to play, nothing loads before) ---------- */
.vid{position:relative;margin:0;border-radius:var(--r-lg);overflow:hidden;background:var(--navy-950);box-shadow:var(--shadow-1)}
.vid video{display:block;width:100%;height:auto;aspect-ratio:4/3;background:var(--navy-950)}
.vid--wide video{aspect-ratio:16/9}
.vid figcaption{padding:10px 14px;background:var(--white);color:var(--ink);font-size:.92rem;border-top:1px solid var(--line)}
.vid__tag{display:inline-block;font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-ink);background:var(--gold-100);padding:2px 8px;border-radius:999px;margin-right:6px}
.about-video{max-width:860px;margin:0 auto}

/* ---------- Product line-up on the home page ---------- */
.lineup{display:grid;gap:16px;grid-template-columns:1fr}
@media (min-width:640px){.lineup{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.lineup{grid-template-columns:repeat(3,1fr)}}
.lineup a{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:var(--shadow-1);transition:transform .15s ease}
.lineup a:hover{transform:translateY(-2px)}
.lineup img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:var(--paper)}
.lineup__body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:4px;flex:1}
.lineup__kicker{font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.lineup__name{font-family:var(--font-display);font-weight:800;font-size:1.12rem;color:var(--navy-900)}
.lineup__tag{font-size:.94rem;color:var(--ink)}
.lineup__price{margin-top:auto;padding-top:8px;font-family:var(--font-mono);font-weight:700;color:var(--navy-900)}
.counts a{display:block;border:1px solid var(--line);border-radius:var(--r);padding:14px;background:var(--paper);color:var(--ink);text-decoration:none}
.counts a:hover{border-color:var(--navy-500)}
.gallery .vid{grid-column:1/-1}
@media (min-width:900px){.gallery .vid{grid-column:span 2}}
.section--tight{padding-top:28px;padding-bottom:0}
.calc__sticky-plan{font-family:var(--font-display);font-weight:800;font-size:.98rem;line-height:1.3;color:#fff}
.calc__sticky-plan[data-tone="good"]{color:#7BE0A8}
.calc__sticky-plan[data-tone="bad"]{color:#FFB4AB}
