html:where(:not(:has([data-portal-root]))){--control-track:#555;--control-thumb:#fff}html:where(:not(:has([data-portal-root])))[data-theme=light]{--control-track:#b5b5b5}:where(html:not(:has([data-portal-root]))) input[type=checkbox]{accent-color:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) input.ui-switch[type=checkbox]{position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;flex:0 0 44px;width:44px;min-width:44px;height:24px;padding:0;margin:0;border:0;border-radius:999px;background:var(--control-track);cursor:pointer;box-shadow:none;vertical-align:middle;transition:background-color .18s ease,filter .18s ease}:where(html:not(:has([data-portal-root]))) input.ui-switch[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border:0;border-radius:50%;background:var(--control-thumb);box-shadow:0 1px 2px #0003;transform:translateX(0);transition:transform .18s ease}:where(html:not(:has([data-portal-root]))) input.ui-switch[type=checkbox]:checked{background:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) input.ui-switch[type=checkbox]:checked:after{transform:translateX(20px)}:where(html:not(:has([data-portal-root]))) input.ui-switch.ui-switch[type=checkbox]:focus-visible{outline:2px solid hsl(var(--foreground));outline-offset:-2px;box-shadow:none}:where(html:not(:has([data-portal-root]))) input.ui-switch[type=checkbox]:disabled{opacity:.45;cursor:not-allowed}:where(html:not(:has([data-portal-root]))) input.ui-range[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;min-width:0;height:32px;padding:0;background:transparent;border:0;cursor:pointer;border-radius:999px}:where(html:not(:has([data-portal-root]))) input.ui-range::-webkit-slider-runnable-track{height:6px;border:0;border-radius:999px;background:linear-gradient(to right,hsl(var(--primary)) 0 var(--range-progress),var(--control-track) var(--range-progress) 100%)}:where(html:not(:has([data-portal-root]))) input.ui-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;box-sizing:border-box;width:20px;height:20px;margin-top:-7px;background:var(--control-thumb);border:2px solid hsl(var(--primary));border-radius:50%;box-shadow:none;-webkit-transition:transform .15s ease,background-color .15s ease;transition:transform .15s ease,background-color .15s ease}:where(html:not(:has([data-portal-root]))) input.ui-range::-moz-range-track{height:6px;border:0;border-radius:999px;background:var(--control-track)}:where(html:not(:has([data-portal-root]))) input.ui-range::-moz-range-progress{height:6px;border-radius:999px;background:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) input.ui-range::-moz-range-thumb{box-sizing:border-box;width:20px;height:20px;background:var(--control-thumb);border:2px solid hsl(var(--primary));border-radius:50%;box-shadow:none;-moz-transition:transform .15s ease,background-color .15s ease;transition:transform .15s ease,background-color .15s ease}:where(html:not(:has([data-portal-root]))) .appshell-main input.ui-range[type=range]:focus-visible{outline:none}:where(html:not(:has([data-portal-root]))) input.ui-range:focus-visible::-webkit-slider-thumb{border-width:3px;background:#fff0c2;box-shadow:none}:where(html:not(:has([data-portal-root]))) input.ui-range:focus-visible::-moz-range-thumb{border-width:3px;background:#fff0c2;box-shadow:none}:where(html:not(:has([data-portal-root]))) input.ui-range:disabled{opacity:.45;cursor:not-allowed}:where(html:not(:has([data-portal-root]))) .modifier-toggle{display:inline-flex;min-height:44px;align-items:center;gap:10px;padding:8px 12px;border-radius:10px;background:hsl(var(--card));cursor:pointer;font-size:14px}:where(html:not(:has([data-portal-root]))) .modifier-toggle[data-disabled=true]{cursor:not-allowed;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .component-presence{display:grid;place-items:center;min-width:44px;min-height:44px;cursor:pointer}@media (hover:hover) and (pointer:fine){:where(html:not(:has([data-portal-root]))) input.ui-range:hover:not(:disabled),:where(html:not(:has([data-portal-root]))) input.ui-switch:hover:not(:disabled){filter:brightness(1.15)}:where(html:not(:has([data-portal-root]))) input.ui-range:hover:not(:disabled)::-webkit-slider-thumb{transform:scale(1.1)}:where(html:not(:has([data-portal-root]))) input.ui-range:hover:not(:disabled)::-moz-range-thumb{transform:scale(1.1)}}@media (prefers-reduced-motion:reduce){:where(html:not(:has([data-portal-root]))) input.ui-switch[type=checkbox],:where(html:not(:has([data-portal-root]))) input.ui-switch[type=checkbox]:after{transition:none}:where(html:not(:has([data-portal-root]))) input.ui-range::-webkit-slider-thumb{-webkit-transition:none!important;transition:none!important;transform:none!important}:where(html:not(:has([data-portal-root]))) input.ui-range::-moz-range-thumb{-moz-transition:none!important;transition:none!important;transform:none!important}}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main{--check-surface:#464646;--check-mark:hsl(var(--foreground));--check-edge:hsl(var(--primary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main input:is([type=checkbox],[type=radio]):not(.ui-switch):not(.sr-only):not([hidden]){-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;width:20px;min-width:20px;height:20px;flex:0 0 20px;padding:0;border:0;border-radius:5px;background-color:var(--check-surface);background-position:50%;background-repeat:no-repeat;box-shadow:none;vertical-align:middle;cursor:pointer}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main input[type=checkbox]:not(.ui-switch):not(.sr-only):checked{background-color:var(--check-edge);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23151515' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 10 3.5 3.5L15 7'/%3E%3C/svg%3E");box-shadow:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main input[type=radio]:not(.sr-only):checked{background-color:var(--check-edge);background-image:radial-gradient(circle,#151515 0 4px,transparent 4.5px);box-shadow:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main input:is([type=checkbox],[type=radio]):not(.ui-switch):not(.sr-only):focus-visible{outline:0;box-shadow:inset 3px 0 0 var(--check-mark)}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main input:is([type=checkbox],[type=radio]):disabled{opacity:.45;cursor:not-allowed}@media(forced-colors:active){:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main input:is([type=checkbox],[type=radio]):not(.ui-switch):not(.sr-only){-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;background-image:none;box-shadow:none;border:1px solid ButtonText}}html:where(:not(:has([data-portal-root])))[data-theme=light] .appshell-main{--check-surface:#d6d6d6}:where(html:not(:has([data-portal-root]))) .hourly-stage{min-width:0;padding:24px;border-radius:14px;background:hsl(var(--card))}:where(html:not(:has([data-portal-root]))) .hourly-stage-title{display:flex;align-items:center;gap:12px;margin-bottom:24px;font-size:18px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-stage-title>span{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:hsl(var(--secondary));color:var(--brand-text);font-size:14px}:where(html:not(:has([data-portal-root]))) .hourly-input-groups{display:grid;gap:24px}:where(html:not(:has([data-portal-root]))) .hourly-input-groups>fieldset{min-width:0;padding:0}:where(html:not(:has([data-portal-root]))) .hourly-input-groups>fieldset+fieldset{padding-top:24px;border-top:1px solid hsl(var(--border))}:where(html:not(:has([data-portal-root]))) .hourly-input-groups legend{float:left;width:100%;margin-bottom:16px;font-size:15px}:where(html:not(:has([data-portal-root]))) .hourly-input-groups legend+*{clear:both}:where(html:not(:has([data-portal-root]))) .hourly-fields-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:20px}:where(html:not(:has([data-portal-root]))) .hourly-fields-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}:where(html:not(:has([data-portal-root]))) .hourly-field-help summary{width:-moz-fit-content;width:fit-content;font-size:12px}:where(html:not(:has([data-portal-root]))) .hourly-field-help summary:hover{color:hsl(var(--foreground))}:where(html:not(:has([data-portal-root]))) .hourly-field-help[open]{max-width:65ch}:where(html:not(:has([data-portal-root]))) .hourly-rate-controls{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr);align-items:end;gap:24px}:where(html:not(:has([data-portal-root]))) .hourly-rate-picker{padding-bottom:20px;border-bottom:1px solid hsl(var(--border))}:where(html:not(:has([data-portal-root]))) .hourly-result-section{padding-block:20px;border-top:1px solid hsl(var(--border))}:where(html:not(:has([data-portal-root]))) .hourly-explanation{padding-block:12px}:where(html:not(:has([data-portal-root]))) .hourly-save-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;border-top:1px solid hsl(var(--border))}:where(html:not(:has([data-portal-root]))) .hourly-save-actions>p:first-child{max-width:65ch}:where(html:not(:has([data-portal-root]))) .hourly-save-actions>[role]{flex-basis:100%}@media (max-width:767px){:where(html:not(:has([data-portal-root]))) .hourly-stage{padding:20px 16px}:where(html:not(:has([data-portal-root]))) .hourly-fields-grid,:where(html:not(:has([data-portal-root]))) .hourly-rate-controls{grid-template-columns:minmax(0,1fr);gap:16px}:where(html:not(:has([data-portal-root]))) .hourly-save-actions>button{width:100%}}:where(html:not(:has([data-portal-root]))) .hourly-current-header{display:flex;align-items:center;flex-wrap:wrap;gap:16px}:where(html:not(:has([data-portal-root]))) .hourly-current-title{display:flex;align-items:center;gap:10px}:where(html:not(:has([data-portal-root]))) .hourly-current-value{margin-left:auto;font-size:24px;font-weight:650}:where(html:not(:has([data-portal-root]))) .hourly-workspace-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:20px}:where(html:not(:has([data-portal-root]))) .hourly-workspace-grid .hourly-stage{padding:20px}:where(html:not(:has([data-portal-root]))) .hourly-workspace-grid .hourly-stage-title{font-size:16px;margin-bottom:16px}:where(html:not(:has([data-portal-root]))) .hourly-workspace-grid .hourly-input-groups{gap:18px}:where(html:not(:has([data-portal-root]))) .hourly-workspace-grid .hourly-input-groups>fieldset+fieldset{border:0;padding:0}:where(html:not(:has([data-portal-root]))) .hourly-workspace-grid .hourly-input-groups legend{font-size:13px;margin-bottom:12px}:where(html:not(:has([data-portal-root]))) .hourly-workspace-grid .hourly-fields-grid{grid-template-columns:minmax(0,1fr);gap:16px}:where(html:not(:has([data-portal-root]))) .hourly-group-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:10px;background:var(--control-surface)}:where(html:not(:has([data-portal-root]))) .hourly-group-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:1;padding:8px 10px;border:0;border-radius:7px;font-size:13px;font-weight:600;color:hsl(var(--muted-foreground));transition:color .15s,background .15s,transform .15s}:where(html:not(:has([data-portal-root]))) .hourly-group-step{display:inline-grid;place-items:center;flex:none;min-width:20px;height:20px;border-radius:50%;color:var(--brand-text);background:hsl(var(--card));font-variant-numeric:tabular-nums}:where(html:not(:has([data-portal-root]))) .hourly-group-tabs button[aria-selected=true]{background:hsl(var(--card));color:hsl(var(--foreground))}:where(html:not(:has([data-portal-root]))) .hourly-group-tabs button:hover{color:hsl(var(--foreground));transform:translateY(-1px)}:where(html:not(:has([data-portal-root]))) .hourly-group-tabs button:focus-visible{box-shadow:inset 3px 0 hsl(var(--primary));outline:none}:where(html:not(:has([data-portal-root]))) .hourly-result-stage{position:sticky;top:20px}:where(html:not(:has([data-portal-root]))) .hourly-result-stage .hourly-rate-controls{grid-template-columns:minmax(0,1fr);gap:12px}:where(html:not(:has([data-portal-root]))) .hourly-result-stage .hourly-rate-picker{padding-bottom:12px}:where(html:not(:has([data-portal-root]))) .hourly-result-stage .hourly-rate-picker input{font-size:24px;font-weight:650;font-variant-numeric:tabular-nums}:where(html:not(:has([data-portal-root]))) .hourly-result-stage .hourly-save-actions{display:grid;gap:10px;padding-top:12px}:where(html:not(:has([data-portal-root]))) .hourly-analysis-details{padding:16px 20px;border-radius:12px;background:hsl(var(--card))}:where(html:not(:has([data-portal-root]))) .hourly-analysis-details>summary{cursor:pointer;font-size:14px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-analysis-details>.hourly-result-visuals{margin-top:20px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results{gap:12px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results>.hourly-visual-panel{padding:0;background:transparent}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-rate-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-rate-card{padding:0;background:transparent;box-shadow:none}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-rate-card .hourly-visual-heading{font-size:12px;gap:6px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-rate-card .hourly-visual-heading svg{width:18px;height:18px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-rate-value{margin-top:5px;font-size:20px}:where(html:not(:has([data-portal-root]))) .hourly-rate-note{margin-top:6px;font-size:12px;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-balance-details summary,:where(html:not(:has([data-portal-root]))) .hourly-funding-status summary,:where(html:not(:has([data-portal-root]))) .hourly-rate-note summary{cursor:pointer}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-money-flow{display:grid;gap:8px;margin-block:0 12px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-flow-step{display:flex;align-items:baseline;gap:12px;flex:none;padding:0;background:transparent}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-flow-arrow,:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-flow-icon{display:none}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-flow-step strong{margin-left:auto;font-size:18px;text-align:right}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-flow-step span{font-size:12px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-goal-summary{padding:12px;background:var(--control-surface);box-shadow:none;margin-bottom:12px;border-radius:10px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-goal-summary .hourly-visual-heading{font-size:13px;gap:8px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-goal-summary .hourly-visual-heading svg{width:18px;height:18px}:where(html:not(:has([data-portal-root]))) .hourly-month-outcome{font-size:19px;font-weight:650;margin-top:6px}:where(html:not(:has([data-portal-root]))) .hourly-balance-details{font-size:12px;margin-top:8px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-grid{grid-template-columns:minmax(0,1fr);gap:10px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:10px 0 0;background:transparent;border-radius:0;border-top:1px solid hsl(var(--border))}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-card>dt{font-size:12px;color:hsl(var(--foreground))}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-card>dt svg{width:16px;height:16px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-amount{font-size:13px;text-align:right}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-amount>span{font-size:11px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-card>dd:nth-of-type(2){grid-column:1/-1}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-track{height:4px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-status{grid-column:1/-1;font-size:11px;display:flex;flex-wrap:wrap;gap:4px 12px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-status>span svg{display:none}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-status .hourly-visual-note{max-width:60ch}@media (max-width:1099px){:where(html:not(:has([data-portal-root]))) .hourly-workspace-grid{grid-template-columns:minmax(0,1fr)}:where(html:not(:has([data-portal-root]))) .hourly-result-stage{position:static}:where(html:not(:has([data-portal-root]))) .hourly-current-value{font-size:20px}}@media (max-width:479px){:where(html:not(:has([data-portal-root]))) .hourly-workspace-grid .hourly-stage{padding:16px}:where(html:not(:has([data-portal-root]))) .hourly-current-header{gap:12px}:where(html:not(:has([data-portal-root]))) .hourly-current-header>button{width:100%}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-card{grid-template-columns:minmax(0,1fr)}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-amount{text-align:left}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-card>dd{grid-column:1}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-flow-step{flex-wrap:wrap;gap:3px 10px}:where(html:not(:has([data-portal-root]))) .hourly-analysis-details{padding:16px}}@media (prefers-reduced-motion:reduce){:where(html:not(:has([data-portal-root]))) .hourly-group-tabs button{transition:none;transform:none}}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-card[hidden]{display:none}:where(html:not(:has([data-portal-root]))) .hourly-result-stage>.space-y-5{display:grid;gap:12px}:where(html:not(:has([data-portal-root]))) .hourly-result-stage>.space-y-5>:not([hidden])~:not([hidden]){margin-top:0}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-card .hourly-funding-status:not(:has(details)){display:none}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-card{gap:4px 12px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-funding-grid{gap:8px}:where(html:not(:has([data-portal-root]))) .hourly-primary-results .hourly-flow-step strong{font-size:20px}.gdg-r17m35ur{flex-grow:1;border:none;outline:none;background-color:var(--gdg-bg-header-has-focus);border-radius:9px;padding:0 8px;box-shadow:0 0 0 1px var(--gdg-border-color);color:var(--gdg-text-group-header);min-height:var(--r17m35ur-0);font:var(--gdg-header-font-style) var(--gdg-font-family)}.gdg-c1tqibwd{padding:0 8px;display:flex;align-items:center;background-color:var(--gdg-bg-header)}.gdg-s1dgczr6 .dvn-scroller{overflow:var(--s1dgczr6-0);transform:translateZ(0)}.gdg-s1dgczr6 .dvn-hidden{visibility:hidden}.gdg-s1dgczr6 .dvn-scroll-inner{display:flex;pointer-events:none}.gdg-s1dgczr6 .dvn-scroll-inner>*{flex-shrink:0}.gdg-s1dgczr6 .dvn-scroll-inner .dvn-spacer{flex-grow:1}.gdg-s1dgczr6 .dvn-scroll-inner .dvn-stack{display:flex;flex-direction:column}.gdg-s1dgczr6 .dvn-underlay>*{position:absolute;left:0;top:0}.gdg-s1dgczr6 canvas{outline:none}.gdg-s1dgczr6 canvas *{height:0}.gdg-wmyidgi{position:relative;min-width:10px;min-height:10px;max-width:100%;max-height:100%;width:var(--wmyidgi-0);height:var(--wmyidgi-1);overflow:hidden;overflow:clip;direction:ltr}.gdg-wmyidgi>:first-child{position:absolute;left:0;top:0;width:100%;height:100%}.gdg-b1ygi5by{display:flex;flex-wrap:wrap;margin-top:auto;margin-bottom:auto;overflow:auto}.gdg-b1ygi5by .boe-bubble{display:flex;justify-content:center;align-items:center;border-radius:var(--gdg-rounding-radius,calc(var(--gdg-bubble-height) / 2));padding:0 var(--gdg-bubble-padding);height:var(--gdg-bubble-height);background-color:var(--gdg-bg-bubble);color:var(--gdg-text-dark);margin:var(--gdg-bubble-margin);white-space:nowrap}.gdg-b1ygi5by textarea{position:absolute;top:0;left:0;width:0;height:0;opacity:0}.gdg-u1rrojo{display:flex;flex-grow:1;align-items:center;min-height:21px}.gdg-u1rrojo .gdg-link-area{flex-grow:1;flex-shrink:1;cursor:pointer;margin-right:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--gdg-link-color);text-decoration:underline!important}.gdg-u1rrojo .gdg-edit-icon{flex-shrink:0;width:32px;color:var(--gdg-accent-color);cursor:pointer;display:flex;justify-content:center;align-items:center}.gdg-u1rrojo .gdg-edit-icon>*{width:24px;height:24px}.gdg-u1rrojo textarea{position:absolute;top:0;left:0;width:0;height:0;opacity:0}.gdg-m1pnx84e{min-width:var(--m1pnx84e-0);width:100%;display:flex;align-items:flex-start;justify-content:space-between;position:relative;color:var(--gdg-text-dark)}.gdg-m1pnx84e .gdg-g1y0xocz{flex-shrink:1;min-width:0}.gdg-m1pnx84e .gdg-spacer{flex:1}.gdg-m1pnx84e .gdg-edit-icon{position:relative;cursor:pointer;display:flex;justify-content:center;align-items:center;color:var(--gdg-accent-color);padding:0;height:24px;width:24px;flex-shrink:0;transition:all "0.125s ease";border-radius:6px}.gdg-m1pnx84e .gdg-edit-icon>*{width:16px;height:16px}.gdg-m1pnx84e .gdg-edit-hover :hover{background-color:var(--gdg-accent-light);transition:background-color .15s}.gdg-m1pnx84e .gdg-checkmark-hover :hover{color:#ffffff;background-color:var(--gdg-accent-color)}.gdg-m1pnx84e .gdg-md-edit-textarea{position:relative;top:0;left:0;width:0;height:0;margin-top:25px;opacity:0;padding:0}.gdg-m1pnx84e .gdg-ml-6{margin-left:6px}.gdg-d4zsq0x{display:flex;flex-wrap:wrap}.gdg-d4zsq0x .doe-bubble{display:flex;justify-content:center;align-items:center;padding:0 8px;height:24px;background-color:var(--gdg-bg-cell);color:var(--gdg-text-dark);margin:2px;border-radius:var(--gdg-rounding-radius,6px);box-shadow:0 0 1px rgba(62,65,86,.4),0 1px 3px rgba(62,65,86,.4)}.gdg-d4zsq0x .doe-bubble img{height:16px;-o-object-fit:contain;object-fit:contain;margin-right:4px}.gdg-d4zsq0x textarea{position:absolute;top:0;left:0;width:0;height:0;opacity:0}.gdg-i2iowwq{display:flex;height:100%}.gdg-i2iowwq .gdg-centering-container{display:flex;justify-content:center;align-items:center;height:100%}.gdg-i2iowwq .gdg-centering-container canvas,.gdg-i2iowwq .gdg-centering-container img{max-height:calc(100vh - var(--overlay-top) - 20px);-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none}.gdg-i2iowwq .gdg-centering-container canvas{max-width:380px}.gdg-i2iowwq .gdg-edit-icon{position:absolute;top:12px;right:0;width:48px;height:48px;color:var(--gdg-accent-color);cursor:pointer;display:flex;justify-content:center;align-items:center}.gdg-i2iowwq .gdg-edit-icon>*{width:24px;height:24px}.gdg-i2iowwq textarea{position:absolute;top:0;left:0;width:0;height:0;opacity:0}.gdg-n15fjm3e{display:flex;margin:6px 0 3px;color:var(--gdg-text-dark)}.gdg-n15fjm3e>input{padding:0;color:var(--gdg-text-dark);background-color:var(--gdg-bg-cell)}.gdg-d19meir1,.gdg-n15fjm3e>input{font-size:var(--gdg-editor-font-size);font-family:var(--gdg-font-family)}.gdg-d19meir1{position:absolute;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box;--overlay-top:var(--d19meir1-0);left:var(--d19meir1-1);top:var(--d19meir1-0);min-width:var(--d19meir1-2);min-height:var(--d19meir1-3);width:-moz-max-content;width:max-content;max-width:400px;max-height:calc(100vh - var(--d19meir1-4));text-align:start}@keyframes glide_fade_in-gdg-d19meir1{0%{opacity:0}to{opacity:100%}}.gdg-d19meir1.gdg-style{border-radius:2px;background-color:var(--gdg-bg-cell);box-shadow:0 0 0 1px var(--gdg-accent-color),0 0 1px rgba(62,65,86,.4),0 6px 12px rgba(62,65,86,.15);animation:glide_fade_in-gdg-d19meir1 60ms 1}.gdg-d19meir1.gdg-pad{padding:var(--d19meir1-5) 8.5px 3px}.gdg-d19meir1 .gdg-clip-region{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;border-radius:2px;flex-grow:1}.gdg-d19meir1 .gdg-clip-region .gdg-growing-entry{height:100%}.gdg-d19meir1 .gdg-clip-region input.gdg-input{width:100%;border:0;outline:none}.gdg-d19meir1 .gdg-clip-region textarea.gdg-input{border:0;outline:none}.gdg-seveqep{position:absolute;top:4px;right:20px;background-color:var(--gdg-bg-cell);color:var(--gdg-text-dark);padding:8px;border:1px solid var(--gdg-border-color);border-radius:6px;font-size:var(--gdg-editor-font-size);animation:gdg-search-fadein-gdg-seveqep .15s forwards}.gdg-seveqep.out{animation:gdg-search-fadeout-gdg-seveqep .15s forwards}.gdg-seveqep .gdg-search-bar-inner{display:flex}.gdg-seveqep .gdg-search-status{padding-top:4px;font-size:11px}.gdg-seveqep .gdg-search-progress{position:absolute;height:4px;left:0;bottom:0;background-color:var(--gdg-text-light)}.gdg-seveqep input{width:220px;color:var(--gdg-text-dark);background-color:var(--gdg-bg-cell);border:0;outline:none}.gdg-seveqep button{width:24px;height:24px;padding:0;border:none;outline:none;background:none;display:flex;justify-content:center;align-items:center;cursor:pointer;color:var(--gdg-text-medium)}.gdg-seveqep button:hover{color:var(--gdg-text-dark)}.gdg-seveqep button .button-icon{width:16px;height:16px}.gdg-seveqep button:disabled{opacity:.4;pointer-events:none}@keyframes gdg-search-fadeout-gdg-seveqep{0%{transform:translateX(0)}to{transform:translateX(400px)}}@keyframes gdg-search-fadein-gdg-seveqep{0%{transform:translateX(400px)}to{transform:translateX(0)}}.gdg-mnuv029{word-break:break-word;-webkit-touch-callout:default;padding-top:6px}.gdg-mnuv029>*{margin:0}.gdg-mnuv029 :last-child{margin-bottom:0}.gdg-mnuv029 p img{width:100%}.gdg-izpuzkl{position:absolute;left:0;right:0;top:0;bottom:0;width:100%;height:100%;border-radius:0;resize:none;white-space:pre-wrap;min-width:100%;overflow:hidden;border:0;background-color:transparent;font-size:var(--gdg-editor-font-size);line-height:16px;font-family:var(--gdg-font-family);-webkit-text-fill-color:var(--gdg-text-dark);color:var(--gdg-text-dark);padding:0;margin:0}.gdg-invalid .gdg-izpuzkl{text-decoration:underline;text-decoration-color:#d60606}.gdg-izpuzkl ::-moz-placeholder{color:var(--gdg-text-light)}.gdg-izpuzkl ::placeholder{color:var(--gdg-text-light)}.gdg-s69h75o{visibility:hidden;white-space:pre-wrap;word-wrap:break-word;width:-moz-max-content;width:max-content;max-width:100%;min-width:100%;font-size:var(--gdg-editor-font-size);line-height:16px;font-family:var(--gdg-font-family);color:var(--gdg-text-dark);margin:0;padding:0 0 2px}.gdg-g1y0xocz{position:relative;margin-top:6px}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])){--interaction-hover:#363636;--interaction-selected:#303030;--interaction-focus:#353535}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator]))[data-theme=light]{--interaction-hover:#e3e3e3;--interaction-selected:#e3e3e3;--interaction-focus:#dedede}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-choice,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) :is(button,summary,.ui-action-link,.summary-action-link,nav a){transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .admin-grid-boundary,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main [role=dialog],:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main details.border,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) button{border-color:transparent}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) .ui-button[data-variant=outline],:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) .ui-button[data-variant=secondary]{background-color:hsl(var(--secondary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) .ui-button[data-variant=primary]{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) .ui-button{border:0}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main nav:not(.workspace-tabs) a[aria-current=page]{color:hsl(var(--foreground));background-color:var(--control-surface);box-shadow:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-button[aria-pressed=true],:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice[data-selected=true],:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .workspace-tabs :is(a[aria-current=page],button[aria-pressed=true]),:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main nav:not(.workspace-tabs) a[aria-current=page]{background-color:var(--interaction-selected);color:hsl(var(--foreground));box-shadow:inset 3px 0 0 hsl(var(--primary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .work-selection-row[data-selected=true]{background-color:var(--interaction-selected);color:hsl(var(--foreground));box-shadow:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .workspace-tabs a[aria-current=page]:after{content:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .hourly-mode-choice{position:relative;display:flex;align-items:center;min-height:46px;gap:8px;padding:12px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice:focus-within,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .work-selection-row:focus-within,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) :is(button,a,summary,[tabindex],input,select,textarea):focus-visible{outline:none;box-shadow:inset 5px 0 0 hsl(var(--primary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice:focus-within,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) :is(button,a,summary):focus-visible{background-color:var(--interaction-focus)}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) .ui-button[data-variant=destructive]:focus-visible,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) .ui-button[data-variant=primary]:focus-visible{box-shadow:inset 5px 0 0 hsl(var(--foreground))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) .ui-button[data-variant=primary]:focus-visible{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) .ui-button[data-variant=destructive]:focus-visible{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .hourly-mode-choice input:focus-visible{box-shadow:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice[aria-selected=true] .ui-choice:focus-visible{box-shadow:inset 5px 0 0 hsl(var(--primary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-main,.auth-form) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){background-color:var(--control-surface);border-color:transparent}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-main,.auth-form) :is(input,select,textarea)[aria-invalid=true]{outline:none;box-shadow:inset 5px 0 0 hsl(var(--destructive))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) input.ui-switch.ui-switch[type=checkbox]:focus-visible{outline:none;box-shadow:none;background-color:hsl(var(--primary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) input.ui-range[type=range]::-webkit-slider-thumb{border:0;background:hsl(var(--primary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) input.ui-range[type=range]::-moz-range-thumb{border:0;background:hsl(var(--primary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) input.ui-range:focus-visible::-webkit-slider-thumb{border:0;background:hsl(var(--foreground));transform:scale(1.2)}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) input.ui-range:focus-visible::-moz-range-thumb{border:0;background:hsl(var(--foreground));transform:scale(1.2)}@media (hover:hover) and (pointer:fine){:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice:hover,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) :is(summary,nav a,.summary-action-link):not(.appshell-nav-item):hover,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) button:not(:disabled):not([popovertarget]):not(.appshell-nav-item):hover{transform:none;box-shadow:0 6px 14px #0003}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) .ui-button[data-variant=primary]:hover:not(:disabled){background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) .ui-button[data-variant=destructive]:hover:not(:disabled){background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-layout .appshell-nav-item:hover .appshell-nav-label{transform:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice button:hover{transform:none}}@media (prefers-reduced-motion:reduce){:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) :is(button,summary,.ui-action-link,.summary-action-link,nav a){transition:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice:hover,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) :is(button,summary,a):hover{transform:none}}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-button{transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-button:focus-visible{outline:none;box-shadow:inset 5px 0 0 hsl(var(--foreground))}@media (hover:hover) and (pointer:fine){:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-button:hover:not(:disabled){transform:none}}@media (prefers-reduced-motion:reduce){:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-button{transition:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-button:hover:not(:disabled){transform:none}}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main :is(section,article,div,fieldset).border[class*=border-]{border-color:transparent}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .hourly-economics section[class*="bg-primary/"],:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .hourly-economics section[data-current=true]{background-color:var(--interaction-selected);box-shadow:inset 3px 0 0 hsl(var(--primary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .account-logout-dialog{position:fixed;inset:0;margin:auto;width:min(408px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;background:transparent}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .account-logout-dialog::backdrop{background:#0009}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .account-logout-dialog .ui-button[data-variant=outline]{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .account-logout-dialog .ui-button[data-variant=destructive]{background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-layout .appshell-nav-item:is(:hover,:focus-visible){transform:none;box-shadow:none;background:hsl(var(--secondary));color:hsl(var(--foreground))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-layout .appshell-nav-item[aria-current=page]:is(:hover,:focus-visible){background:color-mix(in srgb,var(--appshell-sidebar-active),hsl(var(--foreground)) 4%)}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-layout .appshell-nav-item:focus-visible{box-shadow:inset 3px 0 0 var(--section-accent)}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-layout .appshell-nav-item :is(svg,svg *,span){transform:none;animation:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-layout .appshell-clear-action:is(:hover,:focus-visible){background:hsl(var(--destructive)/.12);color:hsl(var(--destructive))}:where(html:not(:has([data-portal-root]))) .hourly-result-visuals{display:grid;gap:20px}:where(html:not(:has([data-portal-root]))) .hourly-visual-panel{min-width:0;padding:20px;border-radius:12px;background:var(--control-surface)}:where(html:not(:has([data-portal-root]))) .hourly-visual-heading{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600;line-height:1.45;color:hsl(var(--foreground))}:where(html:not(:has([data-portal-root]))) .hourly-visual-heading>svg{width:26px;height:26px;flex:none;color:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) .hourly-inline-icon{display:flex;align-items:center;gap:8px}:where(html:not(:has([data-portal-root]))) .hourly-inline-icon>svg{flex:none;width:20px;height:20px}:where(html:not(:has([data-portal-root]))) .hourly-visual-note{margin-top:10px;font-size:13px;line-height:1.6;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-visual-details{margin-top:16px;font-size:13px;line-height:1.6;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-visual-details summary{cursor:pointer;width:-moz-fit-content;width:fit-content;font-weight:500;color:hsl(var(--foreground));border-radius:4px}:where(html:not(:has([data-portal-root]))) .hourly-visual-details p{margin-top:10px}:where(html:not(:has([data-portal-root]))) .hourly-rate-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}:where(html:not(:has([data-portal-root]))) .hourly-rate-card-goal{background:hsl(var(--secondary));box-shadow:inset 3px 0 hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) .hourly-rate-value{display:block;margin-top:16px;font-size:25px;line-height:1.3;font-weight:600;overflow-wrap:anywhere}:where(html:not(:has([data-portal-root]))) .hourly-plan-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}:where(html:not(:has([data-portal-root]))) .hourly-plan-totals>div{display:flex;flex-direction:column;justify-content:space-between;gap:8px}:where(html:not(:has([data-portal-root]))) .hourly-plan-totals span{color:hsl(var(--muted-foreground));font-size:13px}:where(html:not(:has([data-portal-root]))) .hourly-plan-totals strong{font-size:20px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-budget-composition{margin-top:20px}:where(html:not(:has([data-portal-root]))) .hourly-budget-track{display:flex;height:12px;overflow:hidden;border-radius:8px;background:hsl(var(--secondary))}:where(html:not(:has([data-portal-root]))) .hourly-budget-track>span{height:100%;flex:none}:where(html:not(:has([data-portal-root]))) .hourly-budget-composition [data-tone=service]{--budget-color:hsl(var(--info))}:where(html:not(:has([data-portal-root]))) .hourly-budget-composition [data-tone=owner]{--budget-color:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) .hourly-budget-composition [data-tone=development]{--budget-color:hsl(var(--success))}:where(html:not(:has([data-portal-root]))) .hourly-budget-composition [data-tone=additional]{--budget-color:hsl(var(--section-parts))}:where(html:not(:has([data-portal-root]))) .hourly-budget-track>span{background:var(--budget-color)}:where(html:not(:has([data-portal-root]))) .hourly-budget-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin-top:18px}:where(html:not(:has([data-portal-root]))) .hourly-budget-legend>div{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:13px}:where(html:not(:has([data-portal-root]))) .hourly-budget-legend svg{color:var(--budget-color);width:22px;height:22px}:where(html:not(:has([data-portal-root]))) .hourly-budget-legend strong{font-weight:500}:where(html:not(:has([data-portal-root]))) .hourly-money-flow{display:flex;flex-wrap:wrap;gap:16px;margin-block:20px}:where(html:not(:has([data-portal-root]))) .hourly-flow-step{position:relative;flex:1 1 160px;display:grid;gap:8px;padding:16px;border-radius:10px;background:hsl(var(--card))}:where(html:not(:has([data-portal-root]))) .hourly-flow-icon{width:24px;height:24px;color:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) .hourly-flow-step>span{color:hsl(var(--muted-foreground));font-size:13px}:where(html:not(:has([data-portal-root]))) .hourly-flow-step>strong{margin-top:auto;font-size:21px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-flow-arrow{position:absolute;top:calc(50% - 10px);left:-18px;width:20px;height:20px;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-funding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}:where(html:not(:has([data-portal-root]))) .hourly-funding-card{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-width:0;padding:16px;border-radius:10px}:where(html:not(:has([data-portal-root]))) .hourly-funding-card[data-status=not_applicable]{background:hsl(var(--card))}:where(html:not(:has([data-portal-root]))) .hourly-funding-amount{font-size:19px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-funding-amount>span{font-size:13px;font-weight:400;color:hsl(var(--muted-foreground));white-space:nowrap}:where(html:not(:has([data-portal-root]))) .hourly-funding-track{height:7px;overflow:hidden;border-radius:8px;background:hsl(var(--foreground)/.1)}:where(html:not(:has([data-portal-root]))) .hourly-funding-track>span{display:block;height:100%;border-radius:inherit;background:currentColor}:where(html:not(:has([data-portal-root]))) .hourly-goal-summary{box-shadow:inset 3px 0 currentColor}:where(html:not(:has([data-portal-root]))) .hourly-goal-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}:where(html:not(:has([data-portal-root]))) .hourly-goal-totals dt{font-size:13px;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-goal-totals dd{margin-top:6px;font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}:where(html:not(:has([data-portal-root]))) .hourly-business-card[data-status=met]{background:hsl(var(--success)/.08)}:where(html:not(:has([data-portal-root]))) .hourly-business-card[data-status=shortfall]{background:hsl(var(--destructive)/.08)}:where(html:not(:has([data-portal-root]))) .hourly-business-headline{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:16px;margin-top:20px}:where(html:not(:has([data-portal-root]))) .hourly-business-value{font-size:34px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-business-headline>div{display:flex;flex-direction:column;gap:6px}:where(html:not(:has([data-portal-root]))) .hourly-business-headline>div>span{font-size:13px;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-business-headline>div>output{font-size:22px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-business-targets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}:where(html:not(:has([data-portal-root]))) .hourly-business-targets>div{display:grid;grid-template-columns:24px minmax(0,1fr);gap:6px 10px}:where(html:not(:has([data-portal-root]))) .hourly-business-targets svg{grid-row:span 2;width:24px;height:24px;color:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) .hourly-business-targets span{font-size:13px;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-business-targets strong{font-size:20px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-growth-chart{margin-top:20px;display:grid;gap:12px}:where(html:not(:has([data-portal-root]))) .hourly-chart-direction{display:flex;justify-content:space-between;gap:16px;font-size:12px;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-growth-row{padding:16px;min-width:0;border-radius:10px;background:hsl(var(--card))}:where(html:not(:has([data-portal-root]))) .hourly-growth-row-title{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:15px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-growth-row-title h5{flex-wrap:wrap}:where(html:not(:has([data-portal-root]))) .hourly-current-chip{padding:2px 7px;border-radius:6px;color:hsl(var(--primary));background:var(--control-surface);font-size:11px;font-weight:500}:where(html:not(:has([data-portal-root]))) .hourly-signed-track{position:relative;height:24px;margin-block:14px;border-radius:6px;background:hsl(var(--foreground)/.035)}:where(html:not(:has([data-portal-root]))) .hourly-chart-zero{position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-chart-bar{position:absolute;top:4px;height:16px;border-radius:3px}:where(html:not(:has([data-portal-root]))) .hourly-chart-bar[data-sign=positive]{background:hsl(var(--success))}:where(html:not(:has([data-portal-root]))) .hourly-chart-bar[data-sign=negative]{background:hsl(var(--destructive))}:where(html:not(:has([data-portal-root]))) .hourly-growth-metrics{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;margin-top:12px}:where(html:not(:has([data-portal-root]))) .hourly-growth-metrics dd{text-align:right;color:hsl(var(--foreground));font-variant-numeric:tabular-nums}:where(html:not(:has([data-portal-root]))) .hourly-team-requirements-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}:where(html:not(:has([data-portal-root]))) .hourly-team-requirement{min-width:0;padding:16px;border-radius:10px}:where(html:not(:has([data-portal-root]))) .hourly-team-requirement output{overflow-wrap:anywhere}:where(html:not(:has([data-portal-root]))) .hourly-remedy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}:where(html:not(:has([data-portal-root]))) .hourly-remedy-grid>div{padding:16px;min-width:0;border-radius:10px;background:hsl(var(--card));font-size:13px;line-height:1.6}:where(html:not(:has([data-portal-root]))) .hourly-remedy-grid h5{font-size:15px;font-weight:600;margin-bottom:10px}:where(html:not(:has([data-portal-root]))) .hourly-remedy-grid h5 svg{color:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) .hourly-remedy-grid details{margin-top:12px;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-remedy-grid summary{cursor:pointer}@media (max-width:1199px){:where(html:not(:has([data-portal-root]))) .hourly-remedy-grid,:where(html:not(:has([data-portal-root]))) .hourly-team-requirements-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:767px){:where(html:not(:has([data-portal-root]))) .hourly-visual-panel{padding:16px}:where(html:not(:has([data-portal-root]))) .hourly-budget-legend,:where(html:not(:has([data-portal-root]))) .hourly-business-targets,:where(html:not(:has([data-portal-root]))) .hourly-funding-grid,:where(html:not(:has([data-portal-root]))) .hourly-goal-totals,:where(html:not(:has([data-portal-root]))) .hourly-plan-totals,:where(html:not(:has([data-portal-root]))) .hourly-rate-cards{grid-template-columns:minmax(0,1fr)}:where(html:not(:has([data-portal-root]))) .hourly-money-flow{flex-direction:column}:where(html:not(:has([data-portal-root]))) .hourly-flow-step{flex-basis:auto;grid-template-columns:24px minmax(0,1fr);align-items:center}:where(html:not(:has([data-portal-root]))) .hourly-flow-step>strong{grid-column:2}:where(html:not(:has([data-portal-root]))) .hourly-flow-arrow{top:-18px;left:calc(50% - 10px);transform:rotate(90deg)}:where(html:not(:has([data-portal-root]))) .hourly-flow-icon{grid-row:span 2}:where(html:not(:has([data-portal-root]))) .hourly-chart-direction{font-size:11px}:where(html:not(:has([data-portal-root]))) .hourly-business-value{font-size:29px}}:where(html:not(:has([data-portal-root]))) .hourly-business-dashboard{--hourly-positive:hsl(var(--success));--hourly-negative:hsl(var(--destructive));display:grid;gap:14px}:where(html:not(:has([data-portal-root]))) .hourly-scale-markers{display:grid;gap:8px;margin-top:6px}:where(html:not(:has([data-portal-root]))) .hourly-scale-marker-row{position:relative;padding-top:8px;font-size:12px}:where(html:not(:has([data-portal-root]))) .hourly-scale-tick{position:absolute;top:-7px;width:2px;height:14px;background:hsl(var(--info));transform:translateX(-1px);pointer-events:none}:where(html:not(:has([data-portal-root]))) .hourly-scale-marker-row[data-kind=goal] .hourly-scale-tick{top:-38px;height:16px;background:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) .hourly-scale-marker-row p{display:flex;align-items:center;flex-wrap:wrap;gap:6px}:where(html:not(:has([data-portal-root]))) .hourly-scale-marker-row svg{width:15px;height:15px;flex:none}:where(html:not(:has([data-portal-root]))) .hourly-scale-marker-row output{margin-left:auto;font-weight:650;font-variant-numeric:tabular-nums}:where(html:not(:has([data-portal-root]))) .hourly-scale-marker-row small{display:block;color:hsl(var(--muted-foreground));margin-top:4px}:where(html:not(:has([data-portal-root]))) .hourly-cash-ledger{display:grid;gap:9px;font-size:13px}:where(html:not(:has([data-portal-root]))) .hourly-cash-ledger>div,:where(html:not(:has([data-portal-root]))) .hourly-detail-ledger>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px}:where(html:not(:has([data-portal-root]))) .hourly-cash-ledger dt{color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-cash-ledger dd{font-size:17px;font-weight:650;font-variant-numeric:tabular-nums;text-align:right}:where(html:not(:has([data-portal-root]))) .hourly-budget-total{padding-top:10px;border-top:1px solid hsl(var(--border))}:where(html:not(:has([data-portal-root]))) .hourly-budget-total dt{display:flex;align-items:center;gap:6px;color:hsl(var(--foreground));font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-budget-total svg{width:16px;height:16px;flex:none}:where(html:not(:has([data-portal-root]))) .hourly-balance-headline{padding:15px;border-radius:10px;background:var(--control-surface)}:where(html:not(:has([data-portal-root]))) .hourly-balance-headline>p:first-child{font-size:13px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-balance-headline>output{display:block;margin-top:5px;font-size:clamp(25px,3vw,34px);line-height:1.3;font-weight:650;overflow-wrap:anywhere}:where(html:not(:has([data-portal-root]))) .hourly-outcome-caption{margin-top:7px;font-size:12px;line-height:1.5;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-employee-income{display:flex;align-items:baseline;flex-wrap:wrap;justify-content:space-between;gap:5px 14px;font-size:12px}:where(html:not(:has([data-portal-root]))) .hourly-employee-income p{flex-basis:100%;line-height:1.5}:where(html:not(:has([data-portal-root]))) .hourly-rate-chart figcaption{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px}:where(html:not(:has([data-portal-root]))) .hourly-rate-chart figcaption span{color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-rate-chart svg{display:block;width:100%;height:108px;margin-top:10px;overflow:visible}:where(html:not(:has([data-portal-root]))) .hourly-chart-baseline{stroke:hsl(var(--muted-foreground));stroke-width:1;vector-effect:non-scaling-stroke}:where(html:not(:has([data-portal-root]))) .hourly-balance-line{fill:none;stroke-width:3;vector-effect:non-scaling-stroke}:where(html:not(:has([data-portal-root]))) .hourly-chart-recommended{stroke:hsl(var(--primary));stroke-dasharray:4 4;stroke-width:1.5;vector-effect:non-scaling-stroke}:where(html:not(:has([data-portal-root]))) .hourly-chart-selected{stroke:hsl(var(--foreground));stroke-width:1;vector-effect:non-scaling-stroke}:where(html:not(:has([data-portal-root]))) .hourly-chart-dot{fill:hsl(var(--foreground));stroke:hsl(var(--card));stroke-width:2;vector-effect:non-scaling-stroke}:where(html:not(:has([data-portal-root]))) .hourly-chart-endpoints{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;font-size:11px;font-variant-numeric:tabular-nums}:where(html:not(:has([data-portal-root]))) .hourly-chart-caption{font-size:11px;color:hsl(var(--muted-foreground));margin-top:6px}:where(html:not(:has([data-portal-root]))) .hourly-rate-comparison{display:grid;gap:7px;margin-top:12px;font-size:12px}:where(html:not(:has([data-portal-root]))) .hourly-rate-comparison>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 14px}:where(html:not(:has([data-portal-root]))) .hourly-rate-comparison dt span{display:block;color:hsl(var(--muted-foreground));font-size:11px}:where(html:not(:has([data-portal-root]))) .hourly-rate-comparison dd{font-weight:600;font-variant-numeric:tabular-nums}:where(html:not(:has([data-portal-root]))) .hourly-plan-status{display:flex;gap:8px;align-items:start;font-size:12px}:where(html:not(:has([data-portal-root]))) .hourly-plan-status svg{width:16px;height:16px;flex:none}:where(html:not(:has([data-portal-root]))) .hourly-calculation-warning{display:flex;gap:10px;font-size:13px;color:hsl(var(--destructive))}:where(html:not(:has([data-portal-root]))) .hourly-calculation-warning>svg{width:20px;height:20px;flex:none}:where(html:not(:has([data-portal-root]))) .hourly-calculation-warning p{margin-top:6px}:where(html:not(:has([data-portal-root]))) .hourly-business-details{padding:16px 20px}:where(html:not(:has([data-portal-root]))) .hourly-breakdown-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:20px}:where(html:not(:has([data-portal-root]))) .hourly-breakdown-grid h4{font-size:14px;font-weight:650;margin-bottom:14px}:where(html:not(:has([data-portal-root]))) .hourly-detail-ledger{display:grid;gap:10px;font-size:13px}:where(html:not(:has([data-portal-root]))) .hourly-detail-ledger dd{font-variant-numeric:tabular-nums;font-weight:600;text-align:right}:where(html:not(:has([data-portal-root]))) .hourly-detail-total{padding-top:10px;border-top:1px solid hsl(var(--border));font-weight:650}:where(html:not(:has([data-portal-root]))) .hourly-breakdown-grid p,:where(html:not(:has([data-portal-root]))) .hourly-flat-details>p{font-size:12px;line-height:1.6;margin-top:14px;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-flat-details{margin-top:20px;padding-top:14px;border-top:1px solid hsl(var(--border))}:where(html:not(:has([data-portal-root]))) .hourly-flat-details>summary{cursor:pointer;font-size:13px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-table-scroll{overflow-x:auto;margin-top:14px}:where(html:not(:has([data-portal-root]))) .hourly-table-scroll table{width:100%;font-size:12px;border-collapse:collapse}:where(html:not(:has([data-portal-root]))) .hourly-table-scroll caption{text-align:left;margin-bottom:10px;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-table-scroll :is(th,td){text-align:left;padding:10px 12px;font-variant-numeric:tabular-nums;border-bottom:1px solid hsl(var(--border))}:where(html:not(:has([data-portal-root]))) .hourly-table-scroll tr[data-current=true]{background:var(--control-surface)}:where(html:not(:has([data-portal-root]))) .hourly-business-details .hourly-explanation{margin-top:20px;border-top:1px solid hsl(var(--border))}@media(max-width:767px){:where(html:not(:has([data-portal-root]))) .hourly-breakdown-grid{grid-template-columns:minmax(0,1fr);gap:24px}}@media(max-width:479px){:where(html:not(:has([data-portal-root]))) .hourly-business-details{padding:16px}:where(html:not(:has([data-portal-root]))) .hourly-cash-ledger>div,:where(html:not(:has([data-portal-root]))) .hourly-detail-ledger>div{flex-wrap:wrap;gap:3px 12px}:where(html:not(:has([data-portal-root]))) .hourly-cash-ledger dd,:where(html:not(:has([data-portal-root]))) .hourly-detail-ledger dd{margin-left:auto}}:where(html:not(:has([data-portal-root]))) .hourly-rate-track{position:relative}:where(html:not(:has([data-portal-root]))) .hourly-range-ticks{position:absolute;top:0;left:10px;right:10px;height:32px;pointer-events:none}:where(html:not(:has([data-portal-root]))) .hourly-range-ticks>span{position:absolute;top:23px;height:9px;width:2px;transform:translateX(-1px);background:hsl(var(--info))}:where(html:not(:has([data-portal-root]))) .hourly-range-ticks>span[data-kind=goal]{top:0;height:10px;width:3px;background:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) .hourly-financial-snapshot{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}:where(html:not(:has([data-portal-root]))) .hourly-financial-snapshot>div{display:grid;align-content:start;gap:5px}:where(html:not(:has([data-portal-root]))) .hourly-financial-snapshot dt{font-size:12px;display:flex;align-items:center;gap:6px}:where(html:not(:has([data-portal-root]))) .hourly-financial-snapshot svg{width:16px;height:16px;flex:none}:where(html:not(:has([data-portal-root]))) .hourly-financial-snapshot dd{font-size:20px;text-align:left;margin:0}:where(html:not(:has([data-portal-root]))) .hourly-payroll-note{margin-top:-5px;font-size:11px;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .hourly-scenario-details{margin-top:10px;font-size:12px}:where(html:not(:has([data-portal-root]))) .hourly-scenario-details>summary{cursor:pointer}:where(html:not(:has([data-portal-root]))) .hourly-rate-chart svg{width:calc(100% - 20px);margin-inline:10px;height:90px}:where(html:not(:has([data-portal-root]))) .hourly-chart-zero-label{fill:hsl(var(--muted-foreground));font-size:20px}:where(html:not(:has([data-portal-root]))) .hourly-scale-marker-row[data-kind=goal] svg{color:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) .hourly-scale-marker-row[data-kind=minimum] svg{color:hsl(var(--info))}:where(html:not(:has([data-portal-root]))) .hourly-selected-axis{position:relative;margin:0 10px;padding-block:7px}:where(html:not(:has([data-portal-root]))) .hourly-selected-leader{position:absolute;top:-5px;height:10px;width:1px;background:hsl(var(--foreground))}:where(html:not(:has([data-portal-root]))) .hourly-selected-caption{position:relative;width:168px;max-width:100%;transform:translateX(-50%);text-align:center;font-size:11px;line-height:1.5}:where(html:not(:has([data-portal-root]))) .hourly-selected-caption strong{display:flex;align-items:center;justify-content:center;gap:5px;font-weight:650}:where(html:not(:has([data-portal-root]))) .hourly-selected-caption>span{display:block;font-variant-numeric:tabular-nums}:where(html:not(:has([data-portal-root]))) .hourly-selected-key{width:6px;height:6px;border-radius:50%;background:hsl(var(--foreground));flex:none}:where(html:not(:has([data-portal-root]))) .hourly-financial-snapshot dt{align-items:flex-start;line-height:1.4}:where(html:not(:has([data-portal-root]))) .hourly-financial-snapshot dd{font-size:18px}:where(html:not(:has([data-portal-root]))) .hourly-financial-snapshot svg{margin-top:1px;color:hsl(var(--info))}:where(html:not(:has([data-portal-root]))) .hourly-financial-snapshot>div:last-child svg{color:hsl(var(--primary))}:where(html:not(:has([data-portal-root]))) .hourly-employee-income>span{display:flex;align-items:center;gap:6px}:where(html:not(:has([data-portal-root]))) .hourly-employee-income svg{width:16px;height:16px;flex:none}:where(html:not(:has([data-portal-root]))) .hourly-analysis-accordion .hourly-analysis-details{padding:0}:where(html:not(:has([data-portal-root]))) .hourly-analysis-accordion .hourly-analysis-details>summary{font-size:16px}:where(html:not(:has([data-portal-root]))) .hourly-analysis-label{display:flex;align-items:center;gap:10px}:where(html:not(:has([data-portal-root]))) .hourly-analysis-label>svg,:where(html:not(:has([data-portal-root]))) .hourly-team-comparison h4>svg{color:hsl(var(--info));flex:none}:where(html:not(:has([data-portal-root]))) .hourly-analysis-accordion .hourly-detail-content{padding:6px 16px 20px}:where(html:not(:has([data-portal-root]))) .hourly-analysis-accordion .hourly-breakdown-grid{margin-top:0}:where(html:not(:has([data-portal-root]))) .hourly-team-comparison{margin-top:22px;padding-top:18px;border-top:1px solid hsl(var(--border))}:where(html:not(:has([data-portal-root]))) .hourly-team-comparison h4{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600}:where(html:not(:has([data-portal-root]))) .hourly-team-comparison>p{margin-top:14px;font-size:12px;line-height:1.6;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .calculator-article{display:grid;gap:24px}:where(html:not(:has([data-portal-root]))) .calculator-article-hero{display:flex;align-items:center;gap:24px;padding:28px;background:hsl(var(--card));border-radius:14px}:where(html:not(:has([data-portal-root]))) .calculator-article-hero>img{flex:none;width:96px;height:96px}:where(html:not(:has([data-portal-root]))) .calculator-article-kicker{font-size:13px;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .calculator-article-hero h2{margin-top:8px;font-size:25px;line-height:1.3;font-weight:600}:where(html:not(:has([data-portal-root]))) .calculator-article-hero h2+p{max-width:65ch;margin-top:12px;font-size:15px;line-height:1.6;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .calculator-article-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}:where(html:not(:has([data-portal-root]))) .calculator-article-benefits>section{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;padding:24px;border-radius:14px;background:hsl(var(--card))}:where(html:not(:has([data-portal-root]))) .calculator-article-benefit-icon{width:64px;height:64px;-o-object-fit:contain;object-fit:contain}:where(html:not(:has([data-portal-root]))) .calculator-article-benefits h3{font-size:17px;font-weight:600;line-height:1.4}:where(html:not(:has([data-portal-root]))) .calculator-article-benefits p{margin-top:10px;font-size:14px;line-height:1.6;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .calculator-article-bottom{display:grid;justify-items:start;gap:16px;padding:24px;border-radius:14px;background:hsl(var(--card))}:where(html:not(:has([data-portal-root]))) .calculator-article-bottom h3{font-size:18px;font-weight:600}:where(html:not(:has([data-portal-root]))) .calculator-article-steps{display:grid;gap:12px;padding-left:22px;list-style:decimal;font-size:14px;line-height:1.6;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .calculator-article-steps strong{color:hsl(var(--foreground))}:where(html:not(:has([data-portal-root]))) .calculator-article-bottom>p{font-size:14px;line-height:1.6;color:hsl(var(--muted-foreground))}:where(html:not(:has([data-portal-root]))) .calculator-article-bottom .calculator-article-source{font-size:12px}:where(html:not(:has([data-portal-root]))) .calculator-article-bottom .summary-action-link{white-space:normal;gap:8px}:where(html:not(:has([data-portal-root]))) .calculator-article-bottom .summary-action-link svg{flex:none}@media (min-width:768px){:where(html:not(:has([data-portal-root]))) .appshell-sidebar .appshell-nav-item{min-height:38px;padding-block:7px}}@media (max-width:767px){:where(html:not(:has([data-portal-root]))) .calculator-article-hero{align-items:flex-start;padding:20px;gap:16px}:where(html:not(:has([data-portal-root]))) .calculator-article-hero>img{width:56px;height:56px}:where(html:not(:has([data-portal-root]))) .calculator-article-hero h2{font-size:21px}:where(html:not(:has([data-portal-root]))) .calculator-article-benefits{grid-template-columns:minmax(0,1fr)}:where(html:not(:has([data-portal-root]))) .calculator-article-benefits>section{grid-template-columns:48px minmax(0,1fr);gap:12px}:where(html:not(:has([data-portal-root]))) .calculator-article-benefit-icon{width:48px;height:48px}:where(html:not(:has([data-portal-root]))) .calculator-article-benefits>section,:where(html:not(:has([data-portal-root]))) .calculator-article-bottom{padding:20px}}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])){--select-menu-surface:#3d3d3d;--select-option-active:#505050}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator]))[data-theme=light]{--select-menu-surface:#fff;--select-option-active:#e9eef3}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-select-menu.ui-select-menu{box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;padding:6px;border:0;border-radius:12px;background:var(--select-menu-surface);color:hsl(var(--foreground));box-shadow:0 10px 30px #0005,0 2px 6px #0003;font-size:14px}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator]))[data-theme=light] .ui-select-menu{box-shadow:0 10px 30px #17304b26,0 2px 6px #17304b1a}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-select-menu-fixed{position:fixed;z-index:1000}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-select-option.ui-select-option{position:relative;min-height:36px;padding:8px 12px;border-radius:8px;cursor:pointer;overflow-wrap:anywhere}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-select-option:is([data-active=true],[aria-selected=true]){background:var(--select-option-active);box-shadow:inset 3px 0 hsl(var(--primary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-select-option[aria-disabled=true]{opacity:.5;cursor:not-allowed;box-shadow:none}@media (hover:hover){:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-select-option:hover:not([aria-disabled=true]){background:var(--select-option-active)}}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .calculator-help-list details{padding:0;overflow:hidden;border:0}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .calculator-help-list summary{padding:14px 16px;border-radius:10px;transform:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .calculator-help-list details[open] summary{background:var(--interaction-selected);box-shadow:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .calculator-help-list summary:hover{transform:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .calculator-help-list summary:focus-visible{outline:none;box-shadow:inset 5px 0 hsl(var(--primary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .calculator-help-list details>p{margin:0;padding:8px 16px 16px}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .calculator-help-list details>p+p{padding-top:0}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .calculator-help-list details>ul{margin:0;padding:8px 16px 16px 36px}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .calculator-help-list details>ul>li{padding-left:2px}@media (hover:hover) and (pointer:fine){:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice:hover,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-button:hover:not(:disabled),:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-layout,.auth-stage,.calculation-dialog,.feedback-toast) :is(button,summary,nav a):hover{transform:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-button:hover:not(:disabled)>svg{transform:translateY(-1px);transition:transform .16s ease}}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .ui-choice:focus-within,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .work-selection-row:focus-within{box-shadow:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .hourly-mode-choice:has(input:focus-visible){box-shadow:inset 5px 0 hsl(var(--primary))}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .system-unit-component-row{box-shadow:none;transform:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .system-unit-component-row label>span{min-height:20px}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .system-unit-component-row input{background-color:var(--control-surface)}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-main .system-unit-component-row button[aria-pressed=true]{box-shadow:none;background:var(--interaction-selected)}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-select-option:is([data-active=true],[aria-selected=true]){box-shadow:none}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) :is(.appshell-main,.auth-form,.calculation-dialog) :is(input.ui-input,select.ui-select,textarea){padding-left:18px}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .help-tip-surface{pointer-events:none}@media (prefers-reduced-motion:reduce){:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .ui-button:hover:not(:disabled)>svg{transform:none}}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .quantity-control input.ui-input{padding-inline:4px}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .quantity-control .ui-button{width:32px}@media (max-width:767px){:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-sidebar{transform:translateX(calc(-100% - 32px));visibility:hidden;pointer-events:none;transition:transform .18s ease}:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-sidebar.is-open{transform:none;visibility:visible;pointer-events:auto;transition:transform .18s ease}}@media (max-width:767px) and (prefers-reduced-motion:reduce){:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-sidebar,:where(html:where(:not(:has([data-portal-root]))):has([data-app-surface=calculator])) .appshell-sidebar.is-open{transition:none}}