.calculators-layout .container{width:min(100% - (var(--ds-page-gutter) * 2),var(--ds-content-max));max-width:var(--ds-content-max);margin-inline:auto}@media (min-width:769px){.calculators-layout:has(.calc-page-header){padding-top:var(--ds-breadcrumb-content-gap,var(--ds-space-6))}}.calculator-section-workspace{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:28px;display:grid}.calculator-section-main{min-width:0}.calculator-section-main>.container{width:100%;max-width:none;margin-inline:0}.calculator-section-main .service-length-wide-layout{display:block}.calculator-section-main .service-length-wide-rail{display:none!important}.calculator-section-rail{min-width:0}@media (max-width:1200px){.calculator-section-workspace{display:block}.calculator-section-rail{display:none!important}}.service-length-wide-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:28px;display:grid}.service-length-wide-main{min-width:0}@media (max-width:1200px){.service-length-wide-layout{display:block}.service-length-wide-rail{display:none!important}}.mortgage-layout,.mortgage-settings,.mortgage-results,.allowance-form-section,.allowance-form-section__body,.mortgage-input-block,.mortgage-input-wrapper{box-sizing:border-box;min-width:0;max-width:100%}.mortgage-layout>*,.allowance-form-section__body>*,.mortgage-input-block>*{min-width:0;max-width:100%}.mortgage-layout{gap:var(--ds-space-5);grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr);align-items:start;width:100%;display:grid}.mortgage-settings,.mortgage-results{min-width:0}.mortgage-settings.card{box-sizing:border-box;padding:var(--ds-space-5);border-radius:var(--ds-radius-lg);background:var(--ds-color-surface);box-shadow:var(--ds-shadow-card);border:0}.mortgage-mode-body{margin-top:var(--ds-space-6)}.calc-divider{height:1px;margin:var(--ds-space-5) 0;background:var(--ds-color-border)}.calc-section-title{margin:0 0 var(--ds-space-4);color:var(--ds-color-heading);font-size:var(--ds-font-size-sm);font-weight:var(--ds-weight-bold);line-height:1.35}.mortgage-input-row{align-items:center;gap:var(--ds-space-2);grid-template-columns:minmax(0,1fr) auto;min-width:0;display:grid}.flex-grow{min-width:0}.mortgage-percent-wrapper{min-width:64px;height:var(--ds-control-height);padding:0 var(--ds-space-3);border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-md);background:var(--ds-color-surface-muted);color:var(--ds-color-heading);justify-content:center;align-items:center;display:flex}.percent-display{font-size:var(--ds-font-size-sm);font-weight:var(--ds-weight-bold);white-space:nowrap}.info-tooltip-container{align-items:center;margin-inline-start:4px;display:inline-flex;position:relative}.info-icon{color:var(--ds-color-link);cursor:help}.tooltip-text{z-index:30;width:min(280px,70vw);padding:var(--ds-space-3);border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-md);background:var(--ds-color-surface);box-shadow:var(--ds-shadow-float);color:var(--ds-color-text);font-size:var(--ds-font-size-xs);white-space:normal;opacity:0;visibility:hidden;pointer-events:none;font-weight:400;line-height:1.45;transition:opacity .15s,transform .15s,visibility .15s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(4px)}.info-tooltip-container:hover .tooltip-text,.info-tooltip-container:focus-within .tooltip-text{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.result-card-sticky{top:calc(var(--header-height,64px) + var(--ds-space-4));position:sticky}.allowance-mobile-result,.print-only{display:none}.calc-ui-card__header{padding:var(--ds-space-5) var(--ds-space-5) 0}.calc-ui-card__title{color:var(--ds-color-heading);font-size:var(--ds-font-size-lg);font-weight:var(--ds-weight-bold);margin:0;line-height:1.3}.calc-ui-card__description{margin:var(--ds-space-1) 0 0;color:var(--ds-color-muted);font-size:var(--ds-font-size-xs);line-height:1.5}.calc-ui-card__body{padding:var(--ds-space-5)}.calc-ui-card__header+.calc-ui-card__body{padding-top:var(--ds-space-4)}.calc-ui-section+.calc-ui-section{margin-top:var(--ds-space-6);padding-top:var(--ds-space-5);border-top:1px solid var(--ds-color-border)}.calc-ui-section__header{margin-bottom:var(--ds-space-3)}.calc-ui-section__title{color:var(--ds-color-heading);font-size:var(--ds-font-size-sm);margin:0;font-weight:700;line-height:1.35}.calc-ui-section__description{margin:var(--ds-space-1) 0 0;color:var(--ds-color-muted);font-size:var(--ds-font-size-xs);line-height:1.5}.calc-ui-notice{padding:var(--ds-space-3);border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-md);background:var(--ds-color-surface-muted);color:var(--ds-color-text);font-size:var(--ds-font-size-xs);line-height:1.5}.calc-ui-notice--info{border-color:color-mix(in srgb,var(--ds-color-info) 28%,var(--ds-color-border));background:color-mix(in srgb,var(--ds-color-info) 7%,var(--ds-color-surface))}.calc-ui-notice--success{border-color:color-mix(in srgb,var(--ds-color-success) 28%,var(--ds-color-border));background:color-mix(in srgb,var(--ds-color-success) 7%,var(--ds-color-surface))}.calc-ui-notice--warning{border-color:color-mix(in srgb,var(--ds-color-warning) 32%,var(--ds-color-border));background:color-mix(in srgb,var(--ds-color-warning) 8%,var(--ds-color-surface))}.calc-empty-state{padding:var(--ds-space-6) var(--ds-space-3);text-align:center;color:var(--ds-color-muted);font-size:var(--ds-font-size-sm);line-height:1.5}.calc-details-card{margin-top:var(--ds-space-4)}.periods-container{gap:var(--ds-space-3);display:grid}.period-container{padding:0 0 var(--ds-space-5);border-bottom:1px solid var(--ds-color-border);position:relative}.period-container:last-child{border-bottom:0;padding-bottom:0}.period-container.z-active{z-index:20}.period-header{justify-content:space-between;align-items:center;gap:var(--ds-space-3);margin-bottom:var(--ds-space-4);display:flex}.period-title{color:var(--ds-color-heading);font-size:var(--ds-font-size-sm);font-weight:700}.delete-period{border-radius:var(--ds-radius-md);width:36px;height:36px;color:color-mix(in srgb,var(--ds-color-danger) 70%,var(--ds-color-muted));cursor:pointer;background:0 0;border:0;flex:0 0 36px;justify-content:center;align-items:center;display:inline-flex}.delete-period:hover{background:var(--ds-color-surface-muted)}.date-input-container{gap:var(--ds-space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.date-input-group{min-width:0}.date-input-group>label{margin:0 0 var(--ds-space-2);color:var(--ds-color-heading);font-size:var(--ds-font-size-xs);font-weight:600;display:block}.service-date-field{position:relative;overflow:visible}.service-date-field .service-date-icon{display:none}.custom-coefficient-input{margin-top:var(--ds-space-2)}.add-period-button,.service-length-details-card .print-button{width:100%}.add-period-button{margin-top:var(--ds-space-4)}.initial-help{padding:var(--ds-space-4);border-radius:var(--ds-radius-md);background:var(--ds-color-surface-muted);color:var(--ds-color-muted);font-size:var(--ds-font-size-sm);text-align:center}.initial-help p{margin:0}.service-length-details{padding:var(--ds-space-3);border-radius:var(--ds-radius-md);background:var(--ds-color-surface-muted);gap:0;display:grid}.period-details{background:0 0;border-radius:0;padding:0}.period-details+.period-details{margin-top:var(--ds-space-3);padding-top:var(--ds-space-3);border-top:1px solid var(--ds-color-border)}.period-details h4{margin:0 0 var(--ds-space-2);color:var(--ds-color-heading);font-size:var(--ds-font-size-xs);font-weight:700}.period-details p{margin:var(--ds-space-1) 0 0;color:var(--ds-color-muted);font-size:var(--ds-font-size-xs);line-height:1.4}.service-length-share{margin-top:var(--ds-space-4);padding-top:var(--ds-space-4);border-top:1px solid var(--ds-color-border)}.service-length-share-heading{margin-bottom:var(--ds-space-2);color:var(--ds-color-muted);font-size:var(--ds-font-size-xs);font-weight:600}.service-length-share-actions{gap:var(--ds-space-2);grid-template-columns:2fr 1fr 1fr;display:grid}.service-length-share-actions .print-button,.service-length-share-button{width:100%;margin-top:0}.service-length-share-button .fa-telegram-plane{color:var(--ds-color-action-secondary)}.service-length-share-max{color:var(--ds-color-action-secondary);letter-spacing:-.03em;font-size:10px;font-weight:800}.date-grid-nis{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.military-mortgage-import-note{align-items:flex-start;gap:var(--ds-space-2);margin-bottom:var(--ds-space-4);padding:var(--ds-space-3) var(--ds-space-4);border:1px solid color-mix(in srgb,var(--ds-color-success) 28%,var(--ds-color-border));border-radius:var(--ds-radius-md);background:color-mix(in srgb,var(--ds-color-success) 7%,var(--ds-color-surface));color:var(--ds-color-text);font-size:var(--ds-font-size-xs);line-height:1.45;display:flex}.military-mortgage-import-note i{color:var(--ds-color-success);margin-top:2px}.military-mortgage-page .result-card-sticky>.ds-button,.military-mortgage-page .result-rows-container+.ds-button,.mortgage-results .result-card-sticky>.ds-button{width:100%;margin-top:var(--ds-space-3)}.ds-root .mortgage-results a.ds-button--primary,.ds-root .mortgage-results a.ds-button--primary:hover{color:#fff}.ds-root a.calculator-inline-link{color:var(--ds-color-link);text-underline-offset:2px;text-decoration:underline}.military-mortgage-extra-credit{margin-top:var(--ds-space-5);padding-top:var(--ds-space-4);border-top:1px solid var(--ds-color-border)}.military-mortgage-extra-credit__toggle{align-items:center;gap:var(--ds-space-2);color:var(--ds-color-heading);font-size:var(--ds-font-size-sm);cursor:pointer;font-weight:700;display:flex}.military-mortgage-extra-credit__toggle input{width:18px;height:18px;accent-color:var(--ds-color-primary);margin:0}.military-mortgage-extra-credit__hint{margin:var(--ds-space-2) 0 0 26px;color:var(--ds-color-muted);font-size:var(--ds-font-size-xs);line-height:1.4}.military-mortgage-extra-credit__fields{margin-top:var(--ds-space-4)}.mortgage-layout:has(.nfp-controls-row){grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);gap:30px}.nfp-controls-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:15px;margin-bottom:20px}.nfp-field-label{margin-bottom:8px}.nfp-sex-toggle{width:100%;height:var(--ds-control-height);margin:0;display:grid}.nfp-category-field{margin-bottom:0}.nfp-category-hint{margin-top:8px;line-height:1.45}.nfp-category-summary{margin-top:0;line-height:1.45}.nfp-requirements-list{margin-top:0}.nfp-inline-link{color:var(--ds-color-link);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.nfp-divider-top{margin-top:0}.nfp-exercise-row{margin-bottom:5px}.nfp-exercise-row .custom-select{background:var(--ds-color-surface-muted)}.exercise-inputs-stack{box-sizing:border-box;flex-direction:column;align-items:stretch;gap:10px;width:100%;display:flex}.exercise-select-full,.exercise-select-full .custom-select-container{width:100%}.exercise-data-row{box-sizing:border-box;justify-content:flex-end;align-items:center;gap:10px;width:100%;margin:0;padding:0;display:flex}.exercise-weight-cell{flex:1;min-width:0}.exercise-weight-cell .custom-select{height:var(--ds-control-height)}.exercise-result-cell{width:100px;margin:0}.exercise-result-cell .styled-input{height:var(--ds-control-height)}.exercise-points-cell{justify-content:flex-end;width:50px;margin:0;display:flex}.nfp-points-box{width:50px;height:var(--ds-control-height);box-sizing:border-box;border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-md);background:var(--ds-color-surface-muted);color:var(--ds-color-link);justify-content:center;align-items:center;margin:0;font-weight:600;display:flex}.nfp-threshold-msg{text-align:right;justify-content:flex-end;align-items:center;min-height:20px;margin-top:5px;display:flex}.nfp-threshold-text{font-size:13px;font-weight:500}.nfp-threshold-text.is-met{color:var(--ds-color-success)}.nfp-threshold-text.is-missed{color:var(--ds-color-danger)}.thr-grid{grid-template-columns:1fr;gap:5px;display:grid}.thr-line{border-bottom:1px solid color-mix(in srgb,var(--ds-color-text) 5%,transparent);justify-content:space-between;padding:4px 0;font-size:14px;display:flex}.thr-line span{color:var(--ds-color-muted)}.exercises-grid,.nfp-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.nfp-res-cell{border-radius:var(--ds-radius-md);background:var(--ds-color-surface-muted);text-align:center;flex-direction:column;align-items:center;padding:10px;display:flex}.nfp-res-cell .result-row-label{margin-bottom:5px;font-size:13px}.nfp-res-cell .result-row-value{font-size:16px}.nfp-warning-box{border-radius:var(--ds-radius-md);background:color-mix(in srgb,var(--ds-color-danger) 5%,transparent);text-align:center;margin-top:20px;padding:20px}.nfp-warning-text{color:var(--ds-color-danger);margin:0;font-size:13px}.nfp-modal-note{border-radius:var(--ds-radius-md);background:color-mix(in srgb,var(--ds-color-link) 5%,transparent);margin-top:15px;padding:12px;font-size:13px}.rolldate-panel{z-index:2200;width:100%;padding-bottom:env(safe-area-inset-bottom,20px);background:var(--ds-color-surface);border-radius:20px 20px 0 0;margin:0 auto;transition:transform .3s cubic-bezier(.2,.8,.2,1);position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -10px 34px #0000002e}.rolldate-panel.show{transform:translateY(0)}.rolldate-header{border-bottom:1px solid var(--ds-color-border);padding:0}.rolldate-button-container{justify-content:space-between;align-items:center;width:100%;padding:8px 16px;display:flex}.rolldate-confirm,.rolldate-cancel,.rolldate-today{border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-md);font:inherit;color:var(--ds-color-text);cursor:pointer;background:0 0;padding:7px 15px;font-size:15px}.rolldate-confirm{color:var(--ds-color-link)}.rolldate-cancel{color:var(--ds-color-danger)}.rolldate-today{color:#5856d6}.rolldate-confirm:hover,.rolldate-cancel:hover,.rolldate-today:hover{border-color:var(--ds-color-link)}.rolldate-selectors{background:var(--ds-color-surface);height:220px;display:flex;position:relative;overflow:hidden}.rolldate-selectors>div{text-align:center;scroll-behavior:smooth;scroll-snap-type:y mandatory;scrollbar-width:none;flex:1;height:220px;overflow-y:auto}.rolldate-selectors>div::-webkit-scrollbar{display:none}.rolldate-option{scroll-snap-align:center;scroll-snap-stop:always;height:44px;color:var(--ds-color-text);opacity:.45;justify-content:center;align-items:center;padding:8px 5px;font-size:16px;font-weight:400;display:flex}.rolldate-option.selected{color:var(--ds-color-text);opacity:.45;font-weight:400}.rolldate-selectors:before{content:"";z-index:1;border-top:1px solid var(--ds-color-border);border-bottom:1px solid var(--ds-color-border);pointer-events:none;height:44px;position:absolute;top:50%;left:10%;right:10%;transform:translateY(-50%)}.rolldate-selectors:after{content:"";z-index:2;background:linear-gradient(to bottom,var(--ds-color-surface) 0%,transparent 34%,transparent 66%,var(--ds-color-surface) 100%);pointer-events:none;position:absolute;inset:0}@media (max-width:900px){.mortgage-layout{grid-template-columns:1fr}.result-card-sticky{position:static}.mortgage-layout:has(.nfp-controls-row){grid-template-columns:1fr;gap:20px}}@media (max-width:768px){.calculators-layout .container{width:min(100% - (var(--ds-page-gutter-mobile) * 2),var(--ds-content-max))}.mortgage-layout{grid-template-columns:minmax(0,1fr);gap:0}.mortgage-settings,.mortgage-results,.result-card-sticky,.allowance-form-section,.allowance-form-section__body,.mortgage-input-block,.mortgage-input-wrapper{width:100%;min-width:0;max-width:100%}.mortgage-settings.card{padding:var(--ds-space-4) 0;box-shadow:none;background:0 0;border:0;border-radius:0}.mortgage-mode-body{margin-top:var(--ds-space-5)}.calc-divider{margin:var(--ds-space-4) 0}.calc-section-title{margin-bottom:var(--ds-space-3)}.mortgage-percent-wrapper{height:var(--ds-control-height-mobile);min-width:58px;padding-inline:var(--ds-space-2)}.allowance-mobile-result{display:block}.calc-ui-card__header{padding:var(--ds-space-4) 0 0}.calc-ui-card__title{font-size:var(--ds-font-size-md)}.calc-ui-card__body{padding:var(--ds-space-4) 0}.calc-ui-card__header+.calc-ui-card__body{padding-top:var(--ds-space-3)}.calc-ui-section+.calc-ui-section{margin-top:var(--ds-space-5);padding-top:var(--ds-space-4)}.calc-ui-notice{padding:var(--ds-space-2) 0;background:0 0;border-color:#0000}.date-input-container{grid-template-columns:repeat(2,minmax(0,1fr))}.date-input-group:nth-child(3){grid-column:1/-1}.period-header{margin-bottom:var(--ds-space-3)}.mortgage-layout:has(.nfp-controls-row){gap:0}.nfp-controls-row{margin-bottom:var(--ds-space-4);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:end;gap:10px}.nfp-sex-toggle,.exercise-weight-cell .custom-select,.exercise-result-cell .styled-input,.nfp-points-box{height:var(--ds-control-height-mobile)}}@media (min-width:769px){.rolldate-panel{border:1px solid var(--ds-color-border);opacity:0;pointer-events:none;border-radius:20px;width:min(420px,100vw - 40px);padding-bottom:15px;inset:50% auto auto 50%;transform:translate(-50%,-46%)scale(.96);box-shadow:0 20px 50px #0003}.rolldate-panel.show{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}}@media print{.print-only{display:block!important}.calc-page-header,.mortgage-settings,.calc-instruction-trigger,.notification{display:none!important}.mortgage-layout{display:block!important}.mortgage-results{width:100%!important;display:block!important}.result-card-sticky{box-shadow:none!important;border:0!important;position:static!important}body:has(.service-length-result-card) *{visibility:hidden!important}:is(body:has(.service-length-result-card) .print-only,body:has(.service-length-result-card) .print-only *,body:has(.service-length-result-card) .mortgage-results,body:has(.service-length-result-card) .mortgage-results *){visibility:visible!important}body:has(.service-length-result-card) .print-only{display:block!important}body:has(.service-length-result-card) .container:has(.service-length-result-card){width:100%!important;max-width:none!important;margin:0!important;padding:0!important;position:absolute!important;inset:0 auto auto 0!important}body:has(.service-length-result-card) .mortgage-layout{margin:0!important;display:block!important}:is(body:has(.service-length-result-card) .mortgage-settings,body:has(.service-length-result-card) .print-button,body:has(.service-length-result-card) .service-length-share,body:has(.service-length-result-card) .calc-page-header,body:has(.service-length-result-card) .notification){display:none!important}body:has(.service-length-result-card) .mortgage-results{width:100%!important;margin:18px 0 0!important;padding:0!important;display:block!important}:is(body:has(.service-length-result-card) .service-length-result-card,body:has(.service-length-result-card) .service-length-details-card){width:100%!important;box-shadow:none!important;color:#000!important;background:#fff!important;border-radius:0!important;margin:0 0 18px!important;padding:16px 0!important;display:block!important}body:has(.service-length-result-card) .service-length-result-item{background:#fff!important;padding:8px 0!important}body:has(.service-length-result-card) .service-length-result-label{color:#555!important}:is(body:has(.service-length-result-card) .service-length-result-value,body:has(.service-length-result-card) .service-length-details-heading,body:has(.service-length-result-card) .service-length-details){color:#000!important}body:has(.service-length-result-card) .service-length-details{background:#fff!important;padding:0!important}body:has(.service-length-result-card) .period-details{page-break-inside:avoid}body:has(.service-length-result-card) .print-header{text-align:center;border-bottom:1pt solid #eee;margin-bottom:30pt;padding-bottom:10pt}body:has(.service-length-result-card) .print-logo{flex-direction:column;align-items:center;gap:8pt;margin-bottom:10pt;display:flex!important}body:has(.service-length-result-card) .print-site-name{letter-spacing:1pt;text-transform:uppercase;font-size:16pt;font-weight:700;color:#00264f!important}body:has(.service-length-result-card) .print-title{text-align:left;margin:20pt 0 10pt;font-size:18pt;font-weight:700;color:#000!important}}
