.aca{--aca-accent:var(--calc-color-finance);color:var(--calc-text-primary);font-family:system-ui,sans-serif;line-height:1.55}.aca *{box-sizing:border-box}.aca [hidden]{display:none}.aca h2{margin:0 0 1rem;font-size:1.3rem;line-height:1.3}.aca h3{margin:1rem 0 .7rem;font-size:1.05rem}.aca p{margin:.6rem 0 1rem}.aca a{color:var(--calc-text-link);text-underline-offset:3px}.aca .aca-muted{color:var(--calc-text-secondary);font-size:.9rem}.aca .aca-kicker{color:var(--aca-accent);letter-spacing:.065em;text-transform:uppercase;margin-bottom:.5rem;font-size:.78rem;font-weight:750}.aca-notice{border-left:4px solid var(--aca-accent);background:var(--calc-bg-nested);border-radius:8px;margin-bottom:1rem;padding:1rem 1.25rem;font-size:.92rem}.aca-toolbar{flex-wrap:wrap;align-items:center;gap:.6rem;margin:.9rem 0 1.2rem;display:flex}.aca-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;gap:1.25rem;display:grid}.aca-card{border:1px solid var(--calc-border-default);background:var(--calc-bg-card);border-radius:16px;min-width:0;margin-bottom:1.25rem;padding:1.5rem}.aca-results{border-top:4px solid var(--aca-accent);position:sticky;top:1rem}.aca-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.aca-field{min-width:0}.aca label:not(.aca-check){margin-bottom:.3rem;font-size:.91rem;font-weight:650;display:block}.aca label.aca-check{align-items:flex-start;gap:.65rem;min-height:44px;margin:1rem 0 .5rem;font-size:.88rem;display:flex}.aca input[type=checkbox]{width:22px;height:22px;min-height:22px;accent-color:var(--aca-accent);flex:0 0 22px;margin-top:.2rem}.aca input,.aca select,.aca textarea{border:1px solid var(--calc-border-default);background:var(--calc-bg-input);width:100%;max-width:100%;min-height:44px;color:var(--calc-text-primary);font:inherit;border-radius:8px;padding:.65rem .75rem}.aca textarea{resize:vertical;min-height:90px}.aca small{color:var(--calc-text-secondary);margin:.3rem 0 .65rem;font-size:.8rem;line-height:1.5;display:block}.aca select{padding-right:1.5rem}.aca button{max-width:100%;min-height:44px;font:inherit;color:var(--calc-text-primary);background:var(--calc-bg-card-elevated);border:1px solid var(--calc-border-default);cursor:pointer;border-radius:8px;padding:.6rem .85rem;font-size:.91rem;font-weight:650}.aca button:hover{background:var(--calc-bg-hover)}.aca button.aca-primary{border-color:var(--aca-accent);box-shadow:inset 0 -2px var(--aca-accent)}.aca button:disabled{opacity:.5;cursor:not-allowed}.aca :focus-visible{outline:3px solid var(--aca-accent);outline-offset:3px}.aca [aria-invalid=true]{border:2px solid var(--aca-accent)}.aca .aca-error{color:var(--calc-text-primary);margin:.3rem 0;font-size:.81rem;font-weight:600}.aca .aca-error:empty{display:none}.aca details{border-top:1px solid var(--calc-border-default);margin-top:1rem;padding-top:.5rem}.aca summary{cursor:pointer;min-height:44px;padding:.6rem .2rem;font-weight:700}.aca details[open]>summary{margin-bottom:1rem}.aca-hero{letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:.5rem 0;font-size:clamp(2.2rem,4.8vw,3.5rem);font-weight:760;line-height:1.15}.aca #aca-hero-label{margin-bottom:0;font-weight:600}.aca #aca-hero-detail{color:var(--calc-text-secondary);font-size:.85rem}.aca-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:1.5rem 0;display:grid}.aca-metric{background:var(--calc-bg-nested);border-radius:9px;padding:1rem}.aca-metric span{color:var(--calc-text-secondary);font-size:.82rem;display:block}.aca-metric strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-top:.3rem;font-size:1.15rem;display:block}.aca-input-column{min-width:0}.aca-month-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.aca-month{border:1px solid var(--calc-border-default);border-radius:10px;min-width:0;margin:0;padding:1rem}.aca-month legend{color:var(--aca-accent);padding:0 .4rem;font-weight:750}.aca-month .aca-grid{gap:.6rem}.aca-month .aca-field:first-child{grid-column:1/-1}.aca-month label{font-size:.8rem}.aca-month input,.aca-month select{font-size:.9rem}.aca .aca-scroll{border:1px solid var(--calc-border-default);border-radius:9px;max-width:100%;margin:1rem 0;overflow:auto}.aca table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:.87rem}.aca th,.aca td{border-bottom:1px solid var(--calc-border-default);text-align:right;font-variant-numeric:tabular-nums;padding:.7rem .85rem}.aca th{color:var(--calc-text-secondary);background:var(--calc-bg-nested);font-weight:700}.aca th:first-child,.aca td:first-child{text-align:left;background:var(--calc-bg-card);z-index:1;position:sticky;left:0}.aca th:first-child{background:var(--calc-bg-nested)}.aca caption{text-align:left;padding:.7rem;font-weight:650}.aca .aca-trail{grid-template-columns:1.7fr 1fr;gap:.4rem .8rem;margin:0;display:grid}.aca .aca-trail dt{color:var(--calc-text-secondary)}.aca .aca-trail dd{text-align:right;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:0}.aca .aca-warning{border-left:3px solid var(--aca-accent);margin:1rem 0;padding-left:.9rem;font-size:.9rem}.aca .aca-list{padding-left:1.25rem}.aca .aca-list li{margin:.4rem 0}.aca .aca-error-list{padding:0;list-style:none}.aca .aca-error-list button{text-align:left;text-underline-offset:3px;background:0 0;border:0;font-size:.85rem;text-decoration:underline}.aca #aca-feedback{min-height:1.6rem;color:var(--aca-accent);font-weight:600}.aca svg{width:100%;height:auto;max-height:360px;display:block}.aca .aca-chart-line{fill:none;stroke:var(--aca-accent);stroke-width:2px}.aca .aca-chart-point{fill:var(--aca-accent);stroke:var(--calc-bg-card);stroke-width:1px}.aca .aca-chart-grid{stroke:var(--calc-border-default);stroke-width:1px}.aca svg text{fill:var(--calc-text-secondary);font:12px system-ui,sans-serif}.aca .aca-chart-note{color:var(--calc-text-secondary);font-size:.83rem}.aca dialog{background:var(--calc-bg-card);color:var(--calc-text-primary);border:1px solid var(--calc-border-default);border-radius:16px;width:min(620px,100% - 2rem);max-height:90vh;padding:1.5rem;overflow:auto}.aca dialog::backdrop{background:var(--calc-bg-overlay)}.aca dialog textarea,.aca .aca-fallback{font-size:.85rem}.aca #aca-provenance{font-size:.87rem}.aca .aca-rule-links{flex-wrap:wrap;gap:1rem;display:flex}.aca .aca-rule-links a{overflow-wrap:anywhere;align-items:center;min-height:44px;display:inline-flex}@media (width<=1000px){.aca-month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.aca-layout{grid-template-columns:1fr}.aca-results{position:static}.aca-card{padding:1rem}.aca-month-grid{grid-template-columns:1fr}.aca .aca-grid{gap:.75rem}.aca #aca-main-fields>.aca-field{grid-column:1/-1}.aca .aca-trail{font-size:.88rem}.aca .aca-toolbar button{flex:auto}.aca-hero{font-size:2.8rem}.aca svg text{font-size:13px}}@media (prefers-reduced-motion:reduce){.aca *{scroll-behavior:auto}}@media print{.aca #aca-presets,.aca #aca-form,.aca #aca-months-section,.aca #aca-import-section,.aca .action-bar,.aca #aca-reset-help,.aca #aca-feedback,.aca dialog,.aca .aca-fallback,.aca #aca-sensitivity-controls,.aca #aca-snapshot-controls{display:none}.aca-layout{display:block}.aca-results{position:static}.aca-card{break-inside:avoid}.aca .aca-scroll{overflow:visible}.aca table{white-space:normal;font-size:9pt}.aca details>*,.aca summary{display:block}.aca th:first-child,.aca td:first-child{position:static}.aca button{display:none}.aca{--calc-text-primary:CanvasText;--calc-text-secondary:CanvasText;--calc-bg-card:Canvas;--calc-bg-card-elevated:Canvas;--calc-bg-nested:Canvas;--calc-border-default:GrayText;--aca-accent:CanvasText;color:canvastext}.aca-input-column{display:none}.aca-card{box-shadow:none}.aca .aca-chart-point{stroke:canvas}.aca #aca-primary-warning{display:block}}.main-container{max-width:1400px;margin:0 auto;padding:40px 20px}.page-title{letter-spacing:-.035em;color:var(--calc-text-primary);max-width:1050px;font-size:clamp(1.75rem,3vw,2.7rem);font-weight:800;line-height:1.18}.page-subtitle{color:var(--calc-text-secondary);max-width:900px;margin:1rem 0 1.75rem;font-size:1.05rem;line-height:1.65}@media (width<=720px){.main-container{padding:24px 16px}}