.np-accounting{color:var(--ink);background:var(--bg);font-family:var(--sans);overflow-wrap:anywhere}
.np-accounting *{box-sizing:border-box}
.np-accounting h2,.np-accounting h3,.np-accounting p,.np-accounting dl,.np-accounting dd{margin:0}
.np-accounting h2{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.08;letter-spacing:-.035em;font-weight:600;text-wrap:balance}
.np-accounting p,.np-accounting dd{font-size:1rem;line-height:1.6;color:var(--ink-soft)}
.np-accounting .accounting-exercise,.np-accounting .accounting-workspace{max-width:var(--page-width);margin-inline:auto;padding:var(--space-20) var(--page-gutter)}
.np-accounting .accounting-exercise{border-bottom:1px solid var(--line)}
.np-accounting .accounting-opening{display:flex;justify-content:space-between;align-items:end;gap:var(--space-12);margin-bottom:var(--space-12)}
.np-accounting .accounting-opening h2{max-width:16ch}
.np-accounting .accounting-opening p{max-width:33ch}
.np-accounting .accounting-sheet{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:var(--space-16);align-items:start}
.np-accounting .accounting-ledger{width:100%;border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums}
.np-accounting caption{text-align:left;font-size:1.25rem;line-height:1.4;font-weight:600;padding-bottom:var(--space-6)}
.np-accounting caption span{display:block;margin-top:var(--space-2);font-size:.875rem;font-weight:400;color:var(--ink-soft);line-height:1.5}
.np-accounting th,.np-accounting td{padding:var(--space-5) 0;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.5}
.np-accounting thead th{border-top:1px solid var(--line);padding-block:var(--space-3);font-weight:400;font-size:.875rem;color:var(--ink-soft)}
.np-accounting tbody th{font-weight:500;padding-right:var(--space-6)}
.np-accounting th span{display:block;color:var(--ink-soft);font-weight:400;font-size:.875rem;margin-top:var(--space-1);max-width:44ch}
.np-accounting td,.np-accounting thead th:last-child{text-align:right;white-space:nowrap}
.np-accounting td{min-width:5ch}
.np-accounting .accounting-total th,.np-accounting .accounting-total td{font-weight:600;border-bottom:3px double var(--line)}
.np-accounting .accounting-check{background:var(--paper);padding:var(--space-8);border-top:1px solid var(--line)}
.np-accounting h3{font-size:1.25rem;font-weight:600;line-height:1.35;margin-bottom:var(--space-6)}
.np-accounting .accounting-check dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-4);padding-block:var(--space-3)}
.np-accounting .accounting-check dt{font-size:.875rem;line-height:1.5;color:var(--ink-soft)}
.np-accounting .accounting-check dd{font-variant-numeric:tabular-nums;font-size:1rem;line-height:1.5;color:var(--ink)}
.np-accounting .accounting-difference{border-top:1px solid var(--line);margin-top:var(--space-3)}
.np-accounting .accounting-difference dt,.np-accounting .accounting-difference dd{font-weight:600;color:var(--ink)}
.np-accounting .accounting-check>p{font-size:.875rem;margin-top:var(--space-6)}
.np-accounting .accounting-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:var(--space-16)}
.np-accounting .accounting-workspace-title h2{max-width:14ch}
.np-accounting .accounting-workspace-title p{max-width:31ch;margin-top:var(--space-6)}
.np-accounting .accounting-study-list>div{padding-block:var(--space-6);border-top:1px solid var(--line)}
.np-accounting .accounting-study-list>div:last-child{border-bottom:1px solid var(--line)}
.np-accounting .accounting-study-list dt{font-size:1.125rem;line-height:1.4;font-weight:600;margin-bottom:var(--space-3)}
.np-accounting .accounting-study-list dd{max-width:52ch}
.np-accounting .accounting-next{grid-column:1/-1;display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-12)}
.np-accounting .accounting-next>p{font-size:.875rem;max-width:60ch}
.np-accounting .accounting-links{display:flex;flex-wrap:wrap;gap:var(--space-6);flex-shrink:0}
.np-accounting .accounting-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-size:.9375rem;font-weight:500;text-underline-offset:5px;text-decoration-thickness:1px}
.np-accounting .accounting-links a:hover{text-decoration-thickness:2px}
.np-accounting .accounting-links a:focus-visible{outline:2px solid var(--focus);outline-offset:5px}
.np-accounting ::selection{background:var(--chip);color:var(--ink)}
@media(max-width:900px){.np-accounting .accounting-sheet{gap:var(--space-8);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.np-accounting .accounting-check{padding:var(--space-6)}.np-accounting .accounting-workspace{gap:var(--space-12)}.np-accounting .accounting-next{flex-direction:column;gap:var(--space-6)}}
@media(max-width:620px){.np-accounting .accounting-exercise,.np-accounting .accounting-workspace{padding-block:var(--space-12)}.np-accounting .accounting-opening{flex-direction:column;align-items:start;gap:var(--space-6);margin-bottom:var(--space-8)}.np-accounting .accounting-sheet,.np-accounting .accounting-workspace{grid-template-columns:minmax(0,1fr);gap:var(--space-8)}.np-accounting .accounting-opening h2{font-size:clamp(2.5rem,10vw,3.5rem)}.np-accounting .accounting-check{padding:var(--space-6)}.np-accounting tbody th{padding-right:var(--space-4)}.np-accounting th span{max-width:30ch}.np-accounting .accounting-next{margin-top:var(--space-2)}}
