.csApp{max-width:1180px;padding-bottom:56px}
.csTop{position:relative;background:transparent;backdrop-filter:none}
.csTop .brand{align-items:center}
.csTop .brand h1{font-size:31px}
.csNav{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.csNav a{display:inline-flex;align-items:center;min-height:38px;padding:8px 11px;border:1px solid var(--lineStrong);border-radius:11px;background:var(--card);color:var(--text);font-size:11px;font-weight:850;text-decoration:none}
.csNav a:hover,.csNav a:focus-visible{border-color:var(--teal);color:var(--teal)}
.csIntro{position:relative;overflow:hidden;margin-top:11px;padding:36px;border-radius:28px;background:linear-gradient(135deg,#102a43 0%,#087e8b 62%,#16a3ad 125%);color:#fff;box-shadow:0 20px 50px rgba(8,126,139,.2)}
.csIntro::after{content:"§";position:absolute;right:22px;bottom:-72px;color:rgba(255,255,255,.085);font:900 265px/1 Georgia,serif;pointer-events:none}
.csEyebrow{position:relative;z-index:1;font-size:10.5px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;opacity:.78}
.csIntro h2{position:relative;z-index:1;max-width:790px;margin:10px 0 11px;font-size:35px;line-height:1.08;letter-spacing:-.035em}
.csIntro>p{position:relative;z-index:1;max-width:850px;margin:0;color:rgba(255,255,255,.86);font-size:14px;line-height:1.62}
.csQuickFacts{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:24px}
.csQuickFacts span{padding:12px 13px;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(255,255,255,.08);font-size:10.5px;line-height:1.4;backdrop-filter:blur(5px)}
.csQuickFacts b{display:block;margin-bottom:2px;font-size:18px}
.csLayout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.82fr);gap:14px;align-items:start}
.csCalculator{border-top:4px solid var(--teal)}
.csSectionTitle{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.csSectionTitle .title{margin-bottom:0}
.csSectionTitle select{max-width:230px}
.csFieldset{min-width:0;margin:21px 0 0;padding:19px 0 0;border:0;border-top:1px solid var(--line)}
.csFieldset legend{padding:0 8px 0 0;color:var(--teal);font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.csGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,1.12fr);gap:9px 14px;align-items:center}
.csGridTop{margin-top:14px}
.csGrid>label,.csPropGrid>label,.csExpenseGrid>label{color:var(--muted);font-size:11.5px;font-weight:750;line-height:1.35}
.csMoney{display:grid;grid-template-columns:minmax(0,1fr) 48px;align-items:center;overflow:hidden;border:1px solid var(--lineStrong);border-radius:11px;background:var(--card)}
.csMoney:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 14%,transparent)}
.csMoney input{border:0;border-radius:0;box-shadow:none!important;font-size:17px;font-weight:800}
.csMoney span{padding-right:8px;color:var(--muted);font-size:10px;font-weight:900;text-align:right}
.csActions{display:grid;gap:7px}
.csAction{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px;border:1px solid var(--lineStrong);border-radius:14px;background:color-mix(in srgb,var(--bg) 42%,var(--card));cursor:pointer}
.csAction:hover{border-color:var(--teal)}
.csAction>input,.csPropHead>input,.csChecklist input{width:18px;height:18px;accent-color:var(--teal)}
.csAction b,.csAction small{display:block}
.csAction b{font-size:12.5px;line-height:1.35}
.csAction small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.35}
.csCount{display:grid;grid-template-columns:auto 62px;align-items:center;gap:7px}
.csCount small{margin:0;text-align:right}
.csCount input{text-align:center}
.csRelationFlags{margin-top:10px;padding:4px 12px 12px;border:1px dashed var(--lineStrong);border-radius:14px;background:var(--bg)}
.csRelationFlags .checkInline{margin-top:9px}
.csPropList{display:grid;gap:9px}
.csProp{padding:12px;border:1px solid var(--lineStrong);border-radius:16px;background:color-mix(in srgb,var(--bg) 45%,var(--card))}
.csProp26{border-left:4px solid var(--teal);background:color-mix(in srgb,var(--tealSoft) 55%,var(--card))}
.csPropHead{display:grid;grid-template-columns:22px minmax(0,1fr);gap:9px;align-items:start;cursor:pointer}
.csPropHead b,.csPropHead small{display:block}
.csPropHead b{font-size:13px;line-height:1.35}
.csPropHead small{margin-top:3px;color:var(--muted);font-size:10.5px;line-height:1.4}
.csPropGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(245px,1.1fr);gap:8px 13px;align-items:center;margin:11px 0 0 31px;padding-top:11px;border-top:1px dashed var(--line)}
.csSubgrid{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(245px,1.1fr);gap:8px 13px;align-items:center}
.csSubgrid[hidden]{display:none}
.csSubgrid>label{color:var(--muted);font-size:11.5px;font-weight:750;line-height:1.35}
.csExpenseGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,1.12fr);gap:8px 14px;align-items:center}
.csFormActions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.csFormActions a{text-decoration:none}
.csResults{position:sticky;top:14px}
.csResultHero{margin-top:14px;background:linear-gradient(145deg,#102a43,#087e8b)}
.csResultHero .big{font-size:40px;overflow-wrap:anywhere}
.csResultKpis{display:grid;gap:7px;margin-top:9px}
.csResultKpis>div{padding:12px 13px;border:1px solid var(--line);border-radius:15px;background:var(--card)}
.csResultKpis span{display:block;color:var(--muted);font-size:10px;font-weight:750;line-height:1.35}
.csResultKpis strong{display:block;margin-top:3px;font-size:17px}
.csWarnings:empty{display:none}
.csWarnings{padding:7px 13px 14px;box-shadow:none}
.csWarnings .ok,.csWarnings .warn,.csWarnings .info,.csWarnings .danger{margin-top:7px;font-size:11px;line-height:1.5}
.csResultCard{margin-top:10px}
.csResultCard details:first-child{margin-top:0;padding-top:0;border-top:0}
.csResultCard summary{font-size:12.5px}
.csResultCard .row{grid-template-columns:minmax(0,1fr) minmax(120px,.85fr);gap:9px;padding:8px 0}
.csResultCard .row .n{font-size:11px;line-height:1.35}
.csResultCard .row .v{font-size:12px}
.csResultActions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:15px;padding-top:14px;border-top:1px solid var(--line)}
.csResultActions .primary{grid-column:1/-1}
.csResultActions .btn{font-size:11px}
.csResultCard .copyStatus{display:block;min-height:17px;margin-top:8px}
.csDecision,.csLaw,.csPractice,.csAudit,.csFaq{margin-top:14px}
.csDecisionGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:13px}
.csDecisionGrid article{padding:15px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--bg) 43%,var(--card))}
.csDecisionGrid article>span{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:9px;background:var(--tealSoft);color:var(--teal);font-size:11px;font-weight:950}
.csDecisionGrid h3{margin:10px 0 5px;font-size:13px}
.csDecisionGrid p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}
.csLaw{border-left:4px solid var(--purple)}
.csLawGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px}
.csLawGrid article{padding:15px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--purpleSoft) 35%,var(--card))}
.csLawGrid article>span{color:var(--purple);font-size:10px;font-weight:900;text-transform:uppercase}
.csLawGrid blockquote{margin:10px 0;padding:12px;border-left:3px solid var(--purple);background:var(--card);font:500 13px/1.55 Georgia,serif}
.csLawGrid p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}
.csPracticeList{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:13px}
.csPracticeList article{display:flex;flex-direction:column;min-height:265px;padding:15px;border:1px solid var(--line);border-radius:17px;background:color-mix(in srgb,var(--bg) 38%,var(--card))}
.csPracticeList h3{margin:5px 0 0;font-size:13.5px;line-height:1.4}
.csPracticeList p{color:var(--muted);font-size:11px;line-height:1.6}
.csPracticeList a{align-self:flex-start;margin-top:auto;color:var(--teal);font-size:11px;font-weight:850;text-decoration:none}
.csCourt{color:var(--purple);font-size:9.5px;font-weight:900;text-transform:uppercase}
.csChecklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}
.csChecklist label{display:grid;grid-template-columns:20px minmax(0,1fr);gap:9px;align-items:start;padding:12px;border:1px solid var(--lineStrong);border-radius:14px;color:var(--muted);font-size:11.5px;line-height:1.5;cursor:pointer}
.csChecklist label:has(input:checked){border-color:var(--green);background:var(--greenSoft);color:var(--green)}
.csAppeal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.csAppeal>div{position:relative;padding-left:38px}
.csAppeal span{position:absolute;left:0;top:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--teal);color:#fff;font-size:11px;font-weight:900}
.csAppeal b{font-size:12px}
.csAppeal p{margin:4px 0 0;color:var(--muted);font-size:10.5px;line-height:1.5}
.csFaq details{padding:13px 2px;margin:0}
.csFaq details:first-of-type{margin-top:7px}
.csFaq summary{font-size:13px}
.csFaq p{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
@media(max-width:960px){.csLayout{grid-template-columns:1fr}.csResults{position:static;display:grid;grid-template-columns:1fr 1fr;gap:10px}.csResultHero,.csResultCard,.csWarnings{margin-top:0}.csResultKpis{margin-top:0}.csWarnings{grid-column:1/-1}.csPracticeList{grid-template-columns:repeat(2,minmax(0,1fr))}.csDecisionGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.csIntro{padding:27px 21px}.csIntro h2{font-size:29px}.csQuickFacts{grid-template-columns:repeat(2,minmax(0,1fr))}.csResults{display:block}.csResultKpis,.csResultCard,.csWarnings{margin-top:9px}.csGrid,.csPropGrid,.csExpenseGrid,.csSubgrid{grid-template-columns:1fr}.csGrid>label,.csPropGrid>label,.csExpenseGrid>label,.csSubgrid>label{margin-top:4px}.csPropGrid{margin-left:31px}.csLawGrid{grid-template-columns:1fr}.csPracticeList{grid-template-columns:1fr}.csPracticeList article{min-height:0}.csChecklist,.csAppeal{grid-template-columns:1fr}}
@media(max-width:520px){.csTop .brand{align-items:flex-start}.csIntro h2{font-size:25px}.csSectionTitle{flex-direction:column}.csSectionTitle select{max-width:none}.csAction{grid-template-columns:22px minmax(0,1fr)}.csCount{grid-column:2;grid-template-columns:minmax(0,1fr) 62px}.csCount small{text-align:left}.csDecisionGrid{grid-template-columns:1fr}.csResultHero .big{font-size:34px}}
@media print{body{background:#fff;color:#000}.csTop,.csIntro,.csDecision,.csLaw,.csPractice,.csAudit,.csFaq,.footer,.csCalculator .note,.csCalculator .checkInline,.csFormActions,.csResultActions,.copyStatus{display:none!important}.csApp{max-width:none;padding:0}.csLayout{display:block}.csCalculator,.csResultHero,.csResultKpis>div,.csResultCard,.csWarnings{box-shadow:none;border:1px solid #bbb;color:#000;background:#fff}.csResults{position:static}.csResultHero .big,.csResultHero .sec,.csResultHero .ey{color:#000}.csResultCard{break-inside:avoid}.csWarnings .info,.csWarnings .warn,.csWarnings .danger,.csWarnings .ok{color:#000;background:#fff;border:1px solid #bbb}}
