.calc-main{max-width:700px;margin:0 auto;padding:3rem 2rem 5rem}.calc-step{width:100%}.step-head{margin-bottom:1.875rem}.step-head h2{margin-bottom:.4rem;font-size:1.55rem;font-weight:400}.step-head p{color:var(--s600);max-width:560px;font-size:.875rem;line-height:1.65}.mode-grid{grid-template-columns:1fr 1fr;gap:1.125rem;display:grid}.mode-card{border:1.5px solid var(--border);border-radius:var(--r);text-align:left;cursor:pointer;background:#fff;flex-direction:column;gap:.5rem;padding:1.75rem;transition:all .16s;display:flex;position:relative;overflow:hidden}.mode-card:after{content:"";background:var(--v);transform-origin:0;height:3px;transition:transform .18s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.mode-card:hover{border-color:var(--v);background:var(--vx);box-shadow:var(--sh-md);transform:translateY(-2px)}.mode-card:hover:after{transform:scaleX(1)}.mode-featured{border-color:var(--v);background:var(--vx)}.mode-featured:after{transform:scaleX(1)}.mode-icon{font-size:1.75rem}.mode-card h3{font-size:1rem;font-family:var(--fb);font-weight:600}.mode-card p{color:var(--s600);font-size:.83rem;line-height:1.5}.mode-tag{text-transform:uppercase;letter-spacing:.06em;background:var(--s100);color:var(--s600);border-radius:20px;align-self:flex-start;padding:.2rem .6rem;font-size:.66rem;font-weight:700;display:inline-block}.mode-tag-v{background:var(--v);color:#fff}.calc-card{border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--sh-xs);background:#fff;margin-bottom:1.375rem;padding:1.75rem;transition:box-shadow .2s}.calc-card:focus-within{box-shadow:var(--sh-sm);border-color:var(--vc)}.people-grid{grid-template-columns:1fr auto 1fr;align-items:start;gap:1.25rem;margin-bottom:1.25rem;display:grid}.person-block{flex-direction:column;gap:1.125rem;display:flex}.person-hdr{border-bottom:1px solid var(--border);align-items:center;gap:.7rem;padding-bottom:.875rem;display:flex}.person-av{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.84rem;font-weight:600;display:flex}.av-a{background:var(--v)}.av-b{background:var(--s800)}.person-role{font-size:.875rem;font-weight:600}.person-hint{color:var(--s400);font-size:.7rem}.vs{justify-content:center;align-items:center;padding-top:3.5rem;display:flex}.vs-circle{background:var(--s100);border:1px solid var(--border);width:32px;height:32px;color:var(--s400);border-radius:50%;justify-content:center;align-items:center;font-size:.6rem;font-weight:700;display:flex}.pfx-wrap{align-items:center;display:flex;position:relative}.pfx{color:var(--s400);pointer-events:none;z-index:1;font-weight:500;position:absolute;left:.875rem}.pfx-wrap .form-input{padding-left:1.625rem}.income-bar{background:var(--vx);border-radius:var(--rs);border:1px solid var(--vc);color:var(--v9);gap:1.75rem;padding:.8rem .875rem;font-size:.82rem;display:flex}.income-bar strong{color:var(--vd)}.dates-grid{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.dur-err{color:var(--danger)}.child-block{margin-bottom:1rem}.child-block-hdr{justify-content:space-between;align-items:center;margin-bottom:.7rem;display:flex}.child-num{text-transform:uppercase;letter-spacing:.08em;color:var(--s400);font-size:.7rem;font-weight:700}.child-fields{grid-template-columns:1fr 1fr 1fr;gap:.875rem;display:grid}.child-divider{background:var(--border);height:1px;margin:1rem 0}.step-footer{justify-content:flex-end;gap:.875rem;margin-top:1.375rem;display:flex}.calc-err{border-radius:var(--rs);color:#9a2b2b;background:#e85b5b14;border:1px solid #e85b5b4d;margin-top:.75rem;padding:.7rem .875rem;font-size:.84rem}.cs-title{margin-bottom:.875rem;font-size:.875rem;font-weight:600}.cs-rows{flex-direction:column;display:flex}.cs-row{border-bottom:1px solid var(--border);justify-content:space-between;padding:.65rem 0;font-size:.85rem;display:flex}.cs-row:last-child{border-bottom:none}.cs-row span{color:var(--s600)}.ndi-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.ndi-col{background:var(--s50);border-radius:var(--rs);border:1px solid var(--border);overflow:hidden}.ndi-name{background:var(--v);color:#fff;padding:.7rem 1rem;font-size:.84rem;font-weight:600}.ndi-row{border-bottom:1px solid var(--border);justify-content:space-between;padding:.55rem 1rem;font-size:.8rem;display:flex}.ndi-row:last-child{border-bottom:none}.ndi-row span{color:var(--s600)}.ndi-total{background:var(--vx);font-weight:600}.ndi-total span{color:var(--v9)}.ndi-total strong{color:var(--vd)}.res-actions{flex-wrap:wrap;align-items:center;gap:.875rem;margin-top:1.375rem;display:flex}.result-hero{background:linear-gradient(135deg, var(--v) 0%, var(--vl) 100%);border-radius:var(--r);color:#fff;text-align:center;margin-bottom:1.25rem;padding:1.75rem}.result-hero-label{text-transform:uppercase;letter-spacing:.1em;opacity:.65;margin-bottom:.5rem;font-size:.75rem;font-weight:700}.result-hero-value{font-family:var(--fd);margin-bottom:.25rem;font-size:2.8rem;line-height:1}.result-hero-sub{opacity:.7;font-size:.82rem}.detail-note-sm{color:var(--s400);margin-top:-.25rem;font-size:.77rem}.dt-note{color:var(--s600);background:var(--vx);border-bottom:1px solid var(--vc);padding:.65rem 1.125rem;font-size:.79rem}.dt{border-collapse:collapse;width:100%;font-size:.84rem}.dt th,.dt td{border-bottom:1px solid var(--border);text-align:left;padding:.65rem 1.125rem}.dt tr:last-child th,.dt tr:last-child td{border-bottom:none}.dt th{color:var(--s600);width:60%;font-weight:400}.dt td{color:var(--s900);text-align:right;font-weight:500}.dt thead th{text-transform:uppercase;letter-spacing:.07em;color:var(--s400);background:var(--s50);font-size:.67rem;font-weight:700}.dt-section td{text-transform:uppercase;letter-spacing:.07em;color:var(--s400);background:var(--s50);padding:.45rem 1.125rem;font-size:.67rem;font-weight:700}.dt-total th,.dt-total td{background:var(--vx);border-top:1.5px solid var(--vc);color:var(--vd)!important;font-weight:700!important}.tax-grid{grid-template-columns:1fr 1fr;gap:1.125rem;display:grid}.tax-col{border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--sh-xs);background:#fff;overflow:hidden}.tax-name{background:var(--v);color:#fff;padding:.8rem 1.125rem;font-size:.875rem;font-weight:600}@media (max-width:640px){.tax-grid,.mode-grid,.people-grid{grid-template-columns:1fr}.vs{display:none}.dates-grid,.child-fields,.ndi-grid{grid-template-columns:1fr}}
