.fiscal-calendar-page{--fiscal-green:#285c50;--fiscal-green-soft:#eaf2ed;--fiscal-red:#8a4338;--fiscal-red-soft:#f8ebe8;--fiscal-grey:#65747a;--fiscal-grey-soft:#edf0ef}
.fiscal-calendar-page *{box-sizing:border-box}
.fiscal-calendar-page .visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.fiscal-calendar-hero{background:radial-gradient(circle at 86% 20%,rgba(223,180,127,.16),transparent 27%),linear-gradient(125deg,#0b2834,#123845);color:#fff}
.fiscal-calendar-hero .hero-copy{color:#d5e0e2}
.fiscal-calendar-hero .seo-trail,.fiscal-calendar-hero .seo-trail a{color:#c4d1d4}
.fiscal-calendar-hero .seo-hero-fact{border-color:rgba(255,255,255,.24)}
.fiscal-calendar-hero .seo-hero-fact strong{color:var(--accent-2)}
.fiscal-purpose{border-bottom:1px solid #cbd5d3;background:#eaf1ef}
.fiscal-purpose-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid #cbd5d3}
.fiscal-purpose-grid>div,.fiscal-purpose-grid>a{display:grid;align-content:center;gap:5px;min-height:108px;padding:20px 24px;border-right:1px solid #cbd5d3;text-decoration:none}
.fiscal-purpose-grid span{color:#64777c;font-size:.61rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.fiscal-purpose-grid strong{color:#173f4c;font:600 1rem/1.25 var(--serif)}.fiscal-purpose-grid>a{background:#173f4c}.fiscal-purpose-grid>a span{color:#aec1c5}.fiscal-purpose-grid>a strong{color:#fff}.fiscal-purpose-grid>a:hover,.fiscal-purpose-grid>a:focus-visible{background:#235566;outline:0}
.fiscal-scope{border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#f5f1e9)}
.fiscal-scope-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.fiscal-scope-grid>div{position:relative;display:flex;min-height:112px;align-items:center;gap:14px;padding:22px 24px;border-right:1px solid var(--line)}
.fiscal-scope-grid>div:first-child{border-left:1px solid var(--line)}
.fiscal-scope-grid span{color:#93683f;font:600 1.25rem/1 var(--serif)}
.fiscal-scope-grid small{color:var(--muted);font-size:.76rem;line-height:1.4}
.fiscal-tool-section{padding:clamp(54px,7vw,82px) 0;background:linear-gradient(135deg,#f3eee6,#fff 58%,#edf3f2)}
.fiscal-tool-intro{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.65fr);gap:clamp(30px,6vw,72px);align-items:end;margin-bottom:34px;padding-bottom:25px;border-bottom:1px solid var(--line)}
.fiscal-tool-intro h2{max-width:750px;margin:0;font:500 clamp(2rem,3.6vw,3.3rem)/1.02 var(--serif);letter-spacing:-.03em}
.fiscal-tool-intro>p{margin:0;color:var(--muted);font-size:.92rem}
.fiscal-tool-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:18px;align-items:start;padding:12px;border:1px solid var(--line);background:rgba(255,255,255,.62);box-shadow:0 24px 58px rgba(16,46,60,.1)}
.fiscal-form{min-width:0;padding:clamp(24px,4vw,42px);border-top:3px solid var(--accent);background:#fff;box-shadow:0 14px 34px rgba(16,46,60,.065)}
.fiscal-form[aria-busy="true"]{cursor:progress}
.fiscal-progress{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.fiscal-progress>div:first-child{display:flex;justify-content:space-between;gap:20px;align-items:baseline}
.fiscal-progress strong{color:var(--ink);font-size:.86rem}
.fiscal-progress>div:first-child span{color:var(--muted);font-size:.69rem}
.fiscal-progress-track{height:4px;margin:12px 0 13px;background:#e1ddd4;overflow:hidden}
.fiscal-progress-track span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--accent),var(--fiscal-green));transition:width .25s ease}
.fiscal-progress ol{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0;padding:0;list-style:none}
.fiscal-progress li{color:#718086;font:700 .61rem/1.35 var(--sans);letter-spacing:.06em;text-transform:uppercase}
.fiscal-progress li[aria-current="true"]{color:#815a34}
.fiscal-step{min-width:0;margin:0;padding:0;border:0}
.fiscal-step[hidden]{display:none}
.fiscal-step legend{width:100%;padding:0;color:var(--ink);font:500 clamp(1.65rem,3vw,2.35rem)/1.08 var(--serif);letter-spacing:-.02em}
.fiscal-step-copy{max-width:720px;margin:9px 0 24px;color:var(--muted);font-size:.84rem}
.fiscal-fields{display:grid;gap:16px;margin-bottom:18px}
.fiscal-fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.fiscal-fields.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.fiscal-fields.one{grid-template-columns:1fr}
.fiscal-fields label{position:relative;display:flex;min-width:0;flex-direction:column;gap:7px;color:#253f49;font-size:.75rem;font-weight:750;letter-spacing:.02em}
.fiscal-fields label:has(>.fiscal-label-help){padding-right:38px}
.fiscal-fields label:has(>.fiscal-label-help)>input,.fiscal-fields label:has(>.fiscal-label-help)>select,.fiscal-fields label:has(>.fiscal-label-help)>textarea,.fiscal-fields label:has(>.fiscal-label-help)>small{width:calc(100% + 38px)}
.fiscal-fields input,.fiscal-fields select,.fiscal-fields textarea{width:100%;min-width:0;min-height:49px;padding:11px 12px;border:1px solid #b8c1c2;border-radius:2px;background:#fdfbf7;color:var(--ink);font:400 .9rem/1.35 var(--sans)}
.fiscal-fields textarea{min-height:92px;resize:vertical}
.fiscal-fields input:focus,.fiscal-fields select:focus,.fiscal-fields textarea:focus{border-color:var(--accent);outline:2px solid rgba(181,140,92,.2);outline-offset:1px;box-shadow:none}
.fiscal-fields small{color:var(--muted);font-size:.68rem;font-weight:400;line-height:1.45;letter-spacing:0}
.fiscal-fields small a{color:var(--ink);font-weight:750}
.fiscal-question-group{margin:0 0 15px;padding:18px;border:1px solid #d4d9d5;border-radius:5px;background:#fcfaf6}
.fiscal-question-group>header{display:grid;gap:3px;margin:-2px 0 16px;padding-bottom:13px;border-bottom:1px solid #dedbd4}.fiscal-question-group>header span{color:#8a6239;font-size:.58rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.fiscal-question-group>header strong{color:#173f4c;font:600 1rem/1.25 var(--serif)}.fiscal-question-group .fiscal-fields:last-child{margin-bottom:0}
.fiscal-progressive-panel{margin-top:4px;padding:15px;border-left:3px solid #4e7c78;background:#eef3f0}.fiscal-progressive-panel[hidden]{display:none}.fiscal-progressive-panel>p{margin:0 0 13px;color:#586c6f;font-size:.7rem}.fiscal-progressive-panel .fiscal-fields{margin-bottom:0}
.fiscal-label-help{position:absolute;z-index:8;top:-12px;right:-9px}
.fiscal-help{position:relative;display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;padding:0;border:0;border-radius:50%;background:transparent;color:#805a36;font-size:0;cursor:help;-webkit-tap-highlight-color:transparent;transition:color .16s ease,transform .16s ease}
.fiscal-help::before{content:"";position:absolute;inset:50% auto auto 50%;width:21px;height:21px;border:1px solid rgba(167,123,78,.82);border-radius:50%;background:#fffaf2;box-shadow:0 3px 9px rgba(16,46,60,.08);transform:translate(-50%,-50%);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}
.fiscal-help::after{content:"?";position:relative;z-index:1;font:800 .67rem/1 var(--sans)}
.fiscal-help:hover,.fiscal-help:focus-visible,.fiscal-help[aria-expanded="true"]{color:#fff;outline:none;transform:translateY(-1px)}
.fiscal-help:hover::before,.fiscal-help:focus-visible::before,.fiscal-help[aria-expanded="true"]::before{border-color:#173f4d;background:#173f4d;box-shadow:0 0 0 3px rgba(23,63,77,.12),0 5px 13px rgba(16,46,60,.16)}
.fiscal-help:focus-visible{outline:2px solid rgba(191,151,100,.42);outline-offset:2px}
.fiscal-help-panel{position:fixed;z-index:10000;width:min(340px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;padding:13px 15px;border:1px solid rgba(231,193,145,.42);border-radius:7px;background:linear-gradient(145deg,#0c2a36,#173f4d);color:#f7f3eb;box-shadow:0 18px 42px rgba(4,20,28,.3);font:500 .76rem/1.52 var(--sans);text-align:left;text-transform:none;letter-spacing:0;white-space:normal;overflow-wrap:anywhere;pointer-events:none}
.fiscal-help-panel[hidden]{display:none}
.fiscal-check{display:flex;gap:12px;align-items:flex-start;margin:22px 0;padding:16px;border:1px solid var(--line);background:#f7f3ec;cursor:pointer}
.fiscal-check input{flex:none;width:20px;height:20px;margin-top:2px;accent-color:var(--fiscal-green)}
.fiscal-check span,.fiscal-check strong,.fiscal-check small{display:block}
.fiscal-check strong{color:var(--ink);font-size:.83rem}
.fiscal-check small{margin-top:4px;color:var(--muted);font-size:.7rem;line-height:1.45}
.fiscal-step-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:29px;padding-top:21px;border-top:1px solid var(--line)}
.fiscal-step-actions .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:0;white-space:nowrap}
.fiscal-secondary-button{border:1px solid rgba(16,46,60,.22);background:#fff;color:var(--ink)}
.fiscal-secondary-button:hover{border-color:var(--ink);background:#f5f1e9}
.fiscal-review-notice{margin:20px 0;padding:18px 20px;border-left:4px solid var(--fiscal-green);background:var(--fiscal-green-soft)}
.fiscal-review-notice strong{font-family:var(--brand);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase}
.fiscal-review-notice p{margin:5px 0 0;color:#385a52;font-size:.78rem}
.fiscal-summary{position:sticky;top:140px;min-width:0;padding:28px 24px;border-top:3px solid var(--accent);background:linear-gradient(145deg,#0c2b37,#164451);color:#fff;box-shadow:0 20px 46px rgba(9,34,44,.2)}
.fiscal-summary h2{margin:0;font:500 1.75rem/1.08 var(--serif)}
.fiscal-summary dl{margin:25px 0;border-top:1px solid rgba(255,255,255,.16)}
.fiscal-summary dl>div{display:grid;grid-template-columns:75px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.fiscal-summary dt{color:var(--accent-2);font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.fiscal-summary dd{min-width:0;margin:0;color:#edf2f2;font-size:.78rem;overflow-wrap:anywhere}
.fiscal-summary button{display:flex;width:100%;justify-content:space-between;gap:12px;padding:13px 0;border:0;border-bottom:1px solid rgba(223,180,127,.5);background:transparent;color:#fff;font:700 .76rem/1.4 var(--sans);text-align:left;cursor:pointer}
.fiscal-summary>p:last-child{margin:18px 0 0;color:#bac9cc;font-size:.67rem}
.fiscal-results-section{padding:clamp(58px,8vw,90px) 0;background:linear-gradient(145deg,#f4efe7,#fffdf9 55%,#edf3f1)}
.fiscal-results{min-width:0}
.fiscal-result-empty{padding:30px;border:1px solid var(--line);border-left:4px solid var(--accent);background:#f5f1e9}
.fiscal-result-empty strong{font:500 1.45rem/1.2 var(--serif)}
.fiscal-result-empty p{margin:8px 0 0;color:var(--muted)}
.fiscal-result-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.58fr);gap:18px 50px;align-items:end;margin:0;padding:clamp(27px,4.4vw,48px);border:1px solid rgba(255,255,255,.12);border-top:5px solid var(--accent);background:radial-gradient(circle at 88% 20%,rgba(223,180,127,.13),transparent 28%),linear-gradient(125deg,#0b2935,#163f4c);color:#fff;box-shadow:0 20px 46px rgba(9,34,44,.15);scroll-margin-top:120px}
.fiscal-result-header .eyebrow{grid-column:1/-1;margin:0;color:#dfb47f}
.fiscal-result-header h2{margin:0;color:#fff;font:500 clamp(2.1rem,4vw,3.65rem)/1 var(--serif);letter-spacing:-.03em}
.fiscal-result-header h2:focus{outline:0}
.fiscal-result-header>p:last-child{margin:0;color:#d3dfe1;font-size:.86rem;line-height:1.55}
.fiscal-result-dashboard{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);gap:12px;margin:12px 0 30px}
.fiscal-next-deadline{display:grid;align-content:center;min-height:228px;padding:clamp(25px,3.6vw,38px);border:1px solid #b9cbc7;border-top:5px solid var(--fiscal-green);background:#fff;box-shadow:0 14px 34px rgba(16,46,60,.07)}
.fiscal-next-deadline>span{color:#42665f;font-size:.62rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.fiscal-next-deadline>time,.fiscal-next-deadline>strong{display:block;margin:10px 0 9px;color:#173f4c;font:600 clamp(1.7rem,3.4vw,2.75rem)/1.05 var(--serif)}
.fiscal-next-deadline>p{margin:0;color:#596c70;font-size:.78rem;line-height:1.55}
.fiscal-result-jumps{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.fiscal-result-jumps a{display:inline-flex;align-items:center;min-height:38px;padding:9px 13px;border:1px solid rgba(23,63,76,.18);background:#f3f7f4;color:#214e46;font-size:.67rem;font-weight:800;text-decoration:none}
.fiscal-result-jumps a:after{content:"↓";margin-left:8px;color:#8a6239}
.fiscal-result-jumps a:hover,.fiscal-result-jumps a:focus-visible{border-color:#285c50;background:#e4efe9;outline:0}
.fiscal-warning{margin:0 0 28px;padding:20px 23px;border:1px solid rgba(138,67,56,.2);border-left:4px solid var(--fiscal-red);background:var(--fiscal-red-soft)}
.fiscal-warning strong{font-family:var(--brand);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
.fiscal-warning ul{margin:10px 0 0;padding-left:20px;color:#6f3d35;font-size:.82rem}
.fiscal-result-summary{display:grid;grid-template-columns:1fr;gap:7px;margin:0}.fiscal-result-summary>div{display:flex;align-items:center;gap:14px;min-height:68px;padding:13px 17px;border:1px solid var(--line);border-left:5px solid var(--fiscal-grey);background:#fff}.fiscal-result-summary>div.is-dates{border-left-color:#315f70;background:#eef4f5}.fiscal-result-summary>div.is-probable{border-left-color:var(--fiscal-green);background:var(--fiscal-green-soft)}.fiscal-result-summary>div.is-confirm{border-left-color:var(--accent);background:#f7f0e6}.fiscal-result-summary strong{min-width:34px;color:#173f4c;font:600 1.85rem/1 var(--serif);text-align:center}.fiscal-result-summary span{color:#52666c;font-size:.66rem;font-weight:850;line-height:1.25;text-transform:uppercase;letter-spacing:.035em}
.fiscal-models-output{margin-top:46px;padding-top:34px;border-top:1px solid var(--line);scroll-margin-top:120px}
.fiscal-models-output>h3{margin:0;color:#173f4c;font:500 clamp(1.95rem,3.2vw,2.8rem)/1.08 var(--serif);letter-spacing:-.02em}
.fiscal-models-output>p{max-width:820px;margin:9px 0 26px;color:#5c6e72;font-size:.78rem;line-height:1.55}
.fiscal-state-groups{display:grid;gap:28px}
.fiscal-state-group{padding:12px;border:1px solid var(--line);background:rgba(255,255,255,.72)}
.fiscal-state-head{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px 24px;border-left:5px solid var(--fiscal-grey);background:var(--fiscal-grey-soft)}
.fiscal-state-head>div{display:grid;gap:4px}.fiscal-state-head span{color:#66777c;font-size:.58rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.fiscal-state-head h3{margin:0;color:#173f4c;font:600 clamp(1.45rem,2.8vw,2.25rem)/1.08 var(--serif);letter-spacing:-.02em}.fiscal-state-head p{max-width:760px;margin:2px 0 0;color:#607177;font-size:.75rem;line-height:1.45}.fiscal-state-head>strong{flex:0 0 auto;padding:9px 11px;border:1px solid rgba(23,63,76,.2);background:rgba(255,255,255,.7);color:#173f4c;font-size:.65rem;letter-spacing:.05em;text-transform:uppercase}
.fiscal-state-group.is-probable .fiscal-state-head{border-left-color:var(--fiscal-green);background:linear-gradient(120deg,#e4f0e9,#f3f7f3)}.fiscal-state-group.is-confirm .fiscal-state-head{border-left-color:var(--accent);background:linear-gradient(120deg,#f5eadc,#faf6ef)}.fiscal-state-group.is-unlikely .fiscal-state-head{border-left-color:var(--fiscal-grey);background:var(--fiscal-grey-soft)}
.fiscal-state-group>summary{cursor:pointer;list-style:none}.fiscal-state-group>summary::-webkit-details-marker{display:none}.fiscal-state-group>summary:after{content:"+";flex:0 0 auto;color:#51656b;font:600 1.5rem/1 var(--serif)}.fiscal-state-group[open]>summary:after{content:"−"}.fiscal-state-group>summary>strong{margin-left:auto}
.fiscal-model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.fiscal-model-card{display:flex;min-width:0;flex-direction:column;padding:24px;border:1px solid var(--line);background:#fff;box-shadow:0 10px 26px rgba(16,46,60,.055)}
.fiscal-model-card:last-child:nth-child(odd){grid-column:1/-1}
.fiscal-model-number{color:#8a6239;font-family:var(--brand);font-size:.63rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.fiscal-model-card h4{margin:16px 0 9px;font:500 1.4rem/1.12 var(--serif)}
.fiscal-model-card>p{margin:0;color:var(--muted);font-size:.8rem}
.fiscal-model-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0 0}
.fiscal-model-card dl>div{min-width:0;padding:10px;border:1px solid rgba(16,46,60,.1);background:#f8f5ef}
.fiscal-model-card dt{color:#6c797d;font-size:.57rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.fiscal-model-card dd{margin:4px 0 0;color:var(--ink);font-size:.69rem;overflow-wrap:anywhere}
.fiscal-model-card .fiscal-model-warning{margin:17px 0 0;padding:12px 13px;border-left:3px solid var(--accent);background:#f7f1e8;color:#624c36;font-size:.72rem}
.fiscal-model-warning-label{display:block;margin:18px 0 -10px;color:#815b37;font-size:.56rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.fiscal-model-card.is-confirm .fiscal-model-warning{border-left-color:#b1814f}.fiscal-model-card.is-unlikely .fiscal-model-warning{border-left-color:#849397;background:#f0f2f1;color:#526267}
.fiscal-model-sources{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:auto;padding-top:18px}
.fiscal-model-sources a{color:#315d54;font-size:.68rem;font-weight:750;overflow-wrap:anywhere}
.fiscal-calendar-output,.fiscal-checklist-output{margin-top:46px;padding-top:30px;border-top:1px solid var(--line);scroll-margin-top:120px}
.fiscal-calendar-output>h3,.fiscal-checklist-output>h3{margin:0 0 20px;font:500 clamp(1.85rem,3vw,2.65rem)/1.08 var(--serif)}
.fiscal-calendar-output.is-primary{margin:0;padding:clamp(24px,4vw,38px);border:1px solid #b9cbc7;border-top:5px solid var(--fiscal-green);background:#fff;box-shadow:0 18px 44px rgba(16,46,60,.08)}
.fiscal-calendar-output.is-primary>h3{margin-bottom:8px;color:#173f4c;font-size:clamp(2rem,3.4vw,3rem)}.fiscal-calendar-intro{max-width:850px;margin:0 0 24px;color:#52696b;font-size:.78rem;line-height:1.5}
.fiscal-calendar-output ol{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.fiscal-calendar-output li{display:grid;grid-template-columns:112px minmax(0,1fr);gap:20px;padding:11px;border:1px solid #d6dedb;background:#fbfcfa;break-inside:avoid}
.fiscal-calendar-output time{display:grid;align-content:center;justify-items:center;min-height:112px;padding:13px 10px;background:#e5efea;color:#1f6255;text-align:center;text-transform:uppercase}
.fiscal-calendar-output time strong{font:600 2.3rem/1 var(--serif)}
.fiscal-calendar-output time span{margin-top:5px;color:#456b63;font-size:.62rem;font-weight:850;letter-spacing:.07em}
.fiscal-calendar-output li.is-past{opacity:.78}.fiscal-calendar-output li.is-past time{background:#ecefed;color:#627277}.fiscal-calendar-output li.is-past time strong{text-decoration:line-through;text-decoration-thickness:1px}
.fiscal-calendar-output li>div{display:grid;align-content:start;gap:10px;min-width:0;padding:8px 5px 5px}
.fiscal-calendar-output li>div>strong{color:#304d55;font-size:.68rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}
.fiscal-deadline-models{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.fiscal-deadline-models article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;min-width:0;padding:12px 13px;border-left:3px solid var(--fiscal-green);background:#f1f5f2}
.fiscal-deadline-models strong{color:#173f4c;font-size:.8rem}
.fiscal-deadline-models span{color:#6b797b;font-size:.65rem;font-weight:750;text-align:right}
.fiscal-deadline-models small{grid-column:1/-1;color:#607176;font-size:.64rem;line-height:1.4}
.fiscal-deadline-models a{grid-column:1/-1;justify-self:start;color:#315d54;font-size:.64rem;font-weight:800}
.fiscal-checklist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.fiscal-checklist-grid article{display:flex;min-width:0;min-height:205px;flex-direction:column;padding:23px;border:1px solid var(--line);border-top:3px solid var(--accent);background:#fff;break-inside:avoid}
.fiscal-checklist-grid article:last-child:nth-child(odd){grid-column:1/-1;min-height:0}
.fiscal-checklist-grid span{color:#8a6239;font-size:.59rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.fiscal-checklist-grid h4{margin:18px 0 8px;font:500 1.28rem/1.15 var(--serif)}
.fiscal-checklist-grid p{margin:0;color:var(--muted);font-size:.77rem}
.fiscal-checklist-grid a{align-self:flex-start;margin-top:auto;padding-top:15px;color:#315d54;font-size:.7rem;font-weight:800}
.fiscal-result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:40px;padding:24px;border:1px solid var(--line);background:#f5f1e9}
.fiscal-result-actions .button{margin:0}
.fiscal-link-button{border:0;background:transparent;color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.fiscal-snapshot-note{margin:18px 0 0;color:var(--muted);font-size:.69rem}
.fiscal-explainer{background:linear-gradient(180deg,#f5f1e9,#fffdf9)}
.fiscal-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:28px 0 38px}
.fiscal-method-grid article{padding:24px;border:1px solid var(--line);border-top:3px solid var(--accent);background:#fff}
.fiscal-method-grid span{color:#8a6239;font-family:var(--brand);font-size:.7rem}
.fiscal-method-grid h3{margin:18px 0 8px;font:500 1.25rem/1.15 var(--serif)}
.fiscal-method-grid p{margin:0;color:var(--muted);font-size:.76rem}

@media(max-width:960px){
  .fiscal-purpose-grid{grid-template-columns:1fr 1fr}.fiscal-purpose-grid>a{grid-column:1/-1}
  .fiscal-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fiscal-scope-grid>div:nth-child(3){border-left:1px solid var(--line);border-top:1px solid var(--line)}
  .fiscal-scope-grid>div:nth-child(4){border-top:1px solid var(--line)}
  .fiscal-tool-shell{grid-template-columns:minmax(0,1fr) 260px}
  .fiscal-summary{top:24px}
  .fiscal-result-dashboard{grid-template-columns:1fr}
  .fiscal-result-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fiscal-result-summary>div{border-top:4px solid var(--fiscal-grey);border-left:1px solid var(--line)}
  .fiscal-result-summary>div.is-dates{border-top-color:#315f70}.fiscal-result-summary>div.is-probable{border-top-color:var(--fiscal-green)}.fiscal-result-summary>div.is-confirm{border-top-color:var(--accent)}
  .fiscal-model-card dl{grid-template-columns:1fr}
}
@media(max-width:780px){
  .fiscal-tool-intro,.fiscal-tool-shell,.fiscal-result-header{grid-template-columns:1fr}
  .fiscal-form{grid-row:1}
  .fiscal-summary{position:static;grid-row:2;padding:24px}
  .fiscal-summary dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
  .fiscal-fields.two,.fiscal-fields.three,.fiscal-method-grid{grid-template-columns:1fr}
  .fiscal-model-grid{grid-template-columns:1fr}
  .fiscal-model-card:last-child:nth-child(odd){grid-column:auto}
}
@media(max-width:600px){
  .fiscal-purpose-grid{grid-template-columns:1fr}.fiscal-purpose-grid>a{grid-column:auto}.fiscal-purpose-grid>div,.fiscal-purpose-grid>a{min-height:84px;padding:17px 18px}
  .fiscal-scope-grid{grid-template-columns:1fr}
  .fiscal-scope-grid>div,.fiscal-scope-grid>div:first-child,.fiscal-scope-grid>div:nth-child(3){min-height:76px;border:0;border-bottom:1px solid var(--line)}
  .fiscal-tool-shell{padding:6px;gap:6px}
  .fiscal-form{padding:25px 18px}
  .fiscal-progress>div:first-child{display:block}
  .fiscal-progress>div:first-child span{display:block;margin-top:3px}
  .fiscal-progress ol{gap:4px}
  .fiscal-progress li{font-size:.52rem;letter-spacing:.02em}
  .fiscal-step-actions{align-items:stretch;flex-direction:column-reverse}
  .fiscal-step-actions>span{display:none}
  .fiscal-step-actions .button{width:100%}
  .fiscal-summary dl{grid-template-columns:1fr}
  .fiscal-help-panel{padding:12px 13px;font-size:.78rem;line-height:1.48}
  .fiscal-result-header{padding:27px 20px;scroll-margin-top:78px}.fiscal-result-header h2{font-size:2.15rem}.fiscal-result-header>p:last-child{font-size:.78rem}
  .fiscal-next-deadline{min-height:0;padding:24px 20px}.fiscal-next-deadline>time,.fiscal-next-deadline>strong{font-size:1.9rem}
  .fiscal-result-jumps{display:grid;grid-template-columns:1fr 1fr}.fiscal-result-jumps a:last-child{grid-column:1/-1}
  .fiscal-result-summary{gap:5px}.fiscal-result-summary>div{display:grid;justify-items:center;align-content:center;gap:6px;min-height:92px;padding:10px 6px;text-align:center}.fiscal-result-summary strong{min-width:0}.fiscal-result-summary span{font-size:.55rem}
  .fiscal-models-output,.fiscal-calendar-output,.fiscal-checklist-output{scroll-margin-top:78px}
  .fiscal-state-group{padding:6px}
  .fiscal-state-head{align-items:flex-start;flex-wrap:wrap;padding:18px 16px}.fiscal-state-head h3{font-size:1.45rem}.fiscal-state-head p{font-size:.7rem}.fiscal-state-head>strong{order:2}.fiscal-state-group>summary:after{margin-left:auto}
  .fiscal-model-card{padding:21px 18px}
  .fiscal-calendar-output li{grid-template-columns:1fr;gap:8px;padding:17px 4px}
  .fiscal-calendar-output.is-primary{padding:21px 17px}
  .fiscal-calendar-output time{display:flex;min-height:0;justify-content:flex-start;gap:8px;padding:12px 15px;text-align:left}.fiscal-calendar-output time strong{font-size:1.65rem}.fiscal-calendar-output time span{margin:0;align-self:center}
  .fiscal-calendar-output li>div{grid-template-columns:1fr;padding:7px 10px 3px}
  .fiscal-deadline-models{grid-template-columns:1fr}
  .fiscal-calendar-output a{grid-column:1/-1;grid-row:auto;margin-top:5px;white-space:normal}
  .fiscal-checklist-grid{grid-template-columns:1fr}
  .fiscal-checklist-grid article,.fiscal-checklist-grid article:last-child:nth-child(odd){grid-column:auto;min-height:0}
  .fiscal-checklist-grid a{margin-top:14px}
  .fiscal-result-actions{padding:18px}
  .fiscal-result-actions .button{width:100%}
}
@media(max-width:350px){
  .fiscal-form{padding:22px 14px}
  .fiscal-summary{padding:22px 18px}
  .fiscal-progress ol{grid-template-columns:repeat(2,1fr)}
  .fiscal-model-card dl{gap:5px}
}
@media(prefers-reduced-motion:reduce){.fiscal-progress-track span{transition:none}}

@media print{
  @page{size:A4;margin:14mm}
  html,body{background:#fff!important;color:#102e3c!important;font-size:10pt}
  .site-header,.fiscal-calendar-hero,.fiscal-scope,.fiscal-tool-intro,.fiscal-form,.fiscal-explainer,.preparation-band,.footer,.fiscal-result-actions,.fiscal-result-jumps,.skip-link{display:none!important}
  .fiscal-tool-section,.fiscal-results-section{padding:0!important;background:#fff!important}
  .fiscal-tool-shell{display:block;padding:0;border:0;box-shadow:none}
  .fiscal-summary{position:static;margin:0 0 10mm;padding:7mm;background:#102e3c!important;color:#fff!important;box-shadow:none;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .fiscal-summary button,.fiscal-summary>p:last-child{display:none}
  .fiscal-summary dl{display:grid;grid-template-columns:repeat(2,1fr);margin-bottom:0}
  .fiscal-results-section>.wrap,.fiscal-tool-section>.wrap{width:100%;max-width:none}
  .fiscal-result-header{display:block;margin-bottom:6mm}
  .fiscal-result-header h2{font-size:23pt}
  .fiscal-result-dashboard{display:block;margin-bottom:6mm}.fiscal-next-deadline{min-height:0;margin-bottom:3mm;padding:5mm}.fiscal-result-summary{grid-template-columns:repeat(3,1fr)}
  .fiscal-model-grid,.fiscal-checklist-grid{grid-template-columns:repeat(2,1fr)}
  .fiscal-model-card,.fiscal-checklist-grid article,.fiscal-state-group,.fiscal-warning,.fiscal-calendar-output li{break-inside:avoid;box-shadow:none}
  .fiscal-model-card:last-child:nth-child(odd),.fiscal-checklist-grid article:last-child:nth-child(odd){grid-column:1/-1}
  .fiscal-model-sources a{color:#102e3c;text-decoration:none}
  .fiscal-model-sources a:after,.fiscal-calendar-output a:after{content:" (" attr(href) ")";font-weight:400;overflow-wrap:anywhere}
  .fiscal-calendar-output li{grid-template-columns:28mm 1fr}
  .fiscal-calendar-output time{min-height:22mm}.fiscal-calendar-output li>div{grid-template-columns:1fr}
  .fiscal-deadline-models{grid-template-columns:1fr}.fiscal-calendar-output a{grid-column:1/-1;grid-row:auto;white-space:normal}
  .fiscal-state-group,.fiscal-calendar-output,.fiscal-checklist-output{margin-top:7mm}
  .fiscal-state-group:not([open])>.fiscal-model-grid{display:grid!important}
}
