@charset "UTF-8";:root{--background-color: #fff;--text-color: #444;--primary-bg: rgb(0, 45, 114);--primary-text: #fff;--input-bg: #fff;--input-border: #ccc;--tooltip-bg: rgb(0, 114, 206);--tooltip-text: #fff;--chart-bg: #fff;--sidebar-color: rgb(0, 45, 114)}[data-theme=dark]{--background-color: #1a1a1a;--text-color: #e0e0e0;--primary-bg: #1f3d77;--primary-text: #fff;--input-bg: #222;--input-border: #404040;--tooltip-bg: #2c5282;--tooltip-text: #fff;--chart-bg: #2d2d2d;--sidebar-color: rgb(80, 158, 47)}[data-theme=dark] .theme-toggle-icon .sun{transform:scale(1)}[data-theme=dark] .theme-toggle-icon .moon{transform:scale(0)}[data-theme=dark] .input-error input{border-color:#ef4444!important}[data-theme=dark] .input-warning input{border-color:#eab308!important}[data-theme=light] .theme-toggle-icon .sun{transform:scale(0)}[data-theme=light] .theme-toggle-icon .moon{transform:scale(1)}.skip-link{position:absolute;top:-40px;left:0;background:var(--primary-bg);color:var(--primary-text);padding:8px 16px;z-index:1001;text-decoration:none;border-radius:0 0 4px;transition:top .2s ease-in-out}.skip-link:focus{top:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Noto Sans,Liberation Sans,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";margin:0;padding:0;background-color:var(--background-color);color:var(--text-color);transition:background .2s linear}#esop-calculator{height:auto;max-width:min(800px,100%);margin:0 auto;padding:0 1rem}@media(min-width:768px){#esop-calculator{height:550px;padding:0;display:flex;flex-direction:row}}#inputs{width:100%;float:none;text-align:center;font-size:14px;margin:0 auto 2rem;padding:0;max-width:300px}@media(min-width:768px){#inputs{width:min(197px,100%);height:550px;float:none;margin-bottom:0;flex-shrink:0;padding:0;max-width:none}}#esopform{padding:0 10px 0 0}@media(max-width:768px){#esopform{padding:0}}#graph{width:100%;height:300px;overflow:hidden;background-color:var(--chart-bg);position:relative}@media(min-width:768px){#graph{width:calc(100% - min(197px,100%));height:550px;flex-grow:1}}.chart-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-color);gap:1rem}.loading-spinner{width:40px;height:40px;border:3px solid var(--input-border);border-top-color:var(--sidebar-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.loading-spinner{animation:none;border-top-color:var(--input-border);border-right-color:var(--sidebar-color)}}.chart-empty-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:var(--chart-bg);color:var(--text-color);text-align:center;padding:1rem;z-index:10}.chart-empty-state p{margin:.25rem 0}.chart-empty-state .chart-empty-hint{font-size:.875rem;opacity:.7}header,#disclaimer{background-color:var(--primary-bg);width:100%;max-width:min(800px,100%);margin:0 auto;color:var(--primary-text);text-align:center;padding:1rem;box-sizing:border-box}header{margin-bottom:10px}#disclaimer{font-size:14px;line-height:1.5;margin-top:10px}label{color:var(--text-color)}#ytd{color:var(--sidebar-color);font-weight:bolder}fieldset{border:1px solid var(--sidebar-color);text-align:center;border-radius:5px;margin:0}legend{font-size:10px;color:var(--sidebar-color);margin:0 auto}div.vertjust{display:flex;flex-flow:column nowrap;gap:1rem;padding:1rem;align-items:center}@media(min-width:768px){div.vertjust{height:100%;justify-content:space-between;padding:8px;gap:.5rem}}div.vjitem{flex:1;width:100%;max-width:300px}input{width:100%;max-width:100%;font:inherit;color:inherit;padding:0}input.autonumeric-red,input[type=text].autonumeric-red,input[type=date].autonumeric-red{background:var(--background-color);border:2px solid rgb(220,38,38);color:#dc2626}input.autonumeric-yellow,input[type=text].autonumeric-yellow,input[type=date].autonumeric-yellow{background:var(--background-color);border:2px solid rgb(202,138,4);color:#ca8a04}input[type=text],input[type=date]{width:100%;max-width:300px;margin:.5rem 0;padding:.625rem .75rem;background-color:var(--input-bg);border:1.5px solid var(--input-border);border-radius:6px;color:var(--text-color);display:block;font-size:.9375rem;transition:all .2s ease-in-out;box-shadow:0 1px 2px #0000000d;cursor:text;box-sizing:border-box}@media(min-width:768px){input[type=text],input[type=date]{max-width:none}}input[type=date]{appearance:none;min-width:0}input[type=date]::-webkit-date-and-time-value{text-align:left;margin:0}input[type=date]::-webkit-calendar-picker-indicator{background:transparent;color:transparent;cursor:pointer;position:absolute;right:0;top:0;bottom:0;width:100%;height:100%}input[type=date]:disabled{opacity:.6;cursor:not-allowed}input[type=date]:focus{outline:none;border-color:var(--sidebar-color);box-shadow:0 0 0 3px #509e2f1a,0 2px 6px #0000001a}input[type=date]:hover:not(:disabled):not(:focus){border-color:#b4b4b4;box-shadow:0 2px 4px #00000014}#years{display:block;text-align:center;font-weight:700;color:var(--sidebar-color);margin-top:.25rem;font-size:.9rem;line-height:1}input[type=range]{width:100%;margin:15px 0;background-color:transparent;appearance:none;cursor:pointer}@media(min-width:768px){input[type=range]{margin:10px 0}}input[type=range]:focus{outline:2px solid var(--sidebar-color);outline-offset:2px}input[type=range]:focus:not(:focus-visible){outline:none}input[type=range]::-webkit-slider-runnable-track{background:var(--sidebar-color);border:none;border-radius:4px;width:100%;height:6px;cursor:pointer;box-shadow:inset 0 1px 2px #0000001a}input[type=range]::-webkit-slider-thumb{margin-top:-11px;width:28px;height:28px;background:#fff;border:2px solid var(--sidebar-color);border-radius:50%;cursor:pointer;appearance:none;box-shadow:0 2px 4px #00000026;transition:all .2s ease-in-out}@media(min-width:768px){input[type=range]::-webkit-slider-thumb{margin-top:-6px;width:18px;height:18px}}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 3px 6px #0003}input[type=range]::-webkit-slider-thumb:active{transform:scale(1.05)}input[type=range]:focus::-webkit-slider-runnable-track{background:var(--sidebar-color)}input[type=range]::-moz-range-track{background:var(--sidebar-color);border:none;border-radius:4px;width:100%;height:6px;cursor:pointer;box-shadow:inset 0 1px 2px #0000001a}input[type=range]::-moz-range-thumb{width:28px;height:28px;background:#fff;border:2px solid var(--sidebar-color);border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #00000026;transition:all .2s ease-in-out}@media(min-width:768px){input[type=range]::-moz-range-thumb{width:18px;height:18px}}input[type=range]::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 3px 6px #0003}input[type=range]::-moz-range-thumb:active{transform:scale(1.05)}input[type=range]:focus-visible::-webkit-slider-thumb{outline:2px solid var(--sidebar-color);outline-offset:2px;box-shadow:0 0 0 4px #509e2f4d}input[type=range]:focus-visible::-moz-range-thumb{outline:2px solid var(--sidebar-color);outline-offset:2px;box-shadow:0 0 0 4px #509e2f4d}.tooltip{position:relative}.tooltip[data-tooltip]:before,.input-error:before,.input-warning:before{content:"ⓘ";position:absolute;right:8px;top:50%;transform:translateY(-50%);color:var(--sidebar-color);font-size:14px;cursor:help;z-index:1;pointer-events:none}.input-error,.input-warning{position:relative}.input-error input,.input-warning input{border-width:2px}.input-error input{border-color:#dc2626!important}.input-warning input{border-color:#f59e0b!important}.tooltip.input-error:before,.input-error:before{color:#dc2626}.tooltip.input-warning:before,.input-warning:before{color:#f59e0b}.input-error:after,.input-warning:after,.has-error-tooltip:after,.has-warning-tooltip:after{background-color:var(--tooltip-bg);color:var(--tooltip-text);border-radius:10px;display:none;padding:10px 15px;position:absolute;text-align:center;z-index:999;content:attr(data-error);pointer-events:none;white-space:normal;width:max-content;max-width:250px}@media(min-width:768px){.input-error:after,.input-warning:after,.has-error-tooltip:after,.has-warning-tooltip:after{top:0;right:0;transform:translate(calc(100% + 10px))}}@media(max-width:768px){.input-error:after,.input-warning:after,.has-error-tooltip:after,.has-warning-tooltip:after{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;max-width:300px}}.input-warning:after,.has-warning-tooltip:after{content:attr(data-warning)}.tooltip.input-error:after{content:attr(data-error)}.tooltip.input-warning:after{content:attr(data-warning)}.input-error:hover:after,.input-warning:hover:after,.has-error-tooltip:hover:after,.has-warning-tooltip:hover:after,.input-error:focus-within:after,.input-warning:focus-within:after,.has-error-tooltip:focus-within:after,.has-warning-tooltip:focus-within:after{display:block}@media(prefers-reduced-motion:reduce){.input-error:hover:after,.input-warning:hover:after,.has-error-tooltip:hover:after,.has-warning-tooltip:hover:after,.input-error:focus-within:after,.input-warning:focus-within:after,.has-error-tooltip:focus-within:after,.has-warning-tooltip:focus-within:after{transition:none}}.tooltip:after{background-color:var(--tooltip-bg);color:var(--tooltip-text);border-radius:10px;display:none;padding:10px 15px;position:absolute;text-align:center;z-index:999;content:attr(data-tooltip);pointer-events:none;white-space:normal;width:max-content;max-width:250px}@media(min-width:768px){.tooltip:after{top:0;right:0;transform:translate(calc(100% + 10px))}}@media(max-width:768px){.tooltip:after{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;max-width:300px}}.tooltip[data-tooltip]:hover:after,.tooltip[data-tooltip]:focus-within:after{display:block}@media(prefers-reduced-motion:reduce){.tooltip[data-tooltip]:hover:after,.tooltip[data-tooltip]:focus-within:after{transition:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;white-space:nowrap;border:0}.container{max-width:min(800px,100%);margin:0 auto;padding:0 1rem}@media(min-width:768px){.container{padding:0}}.theme-toggle{background:none;border:none;color:var(--primary-text);cursor:pointer;padding:8px;font-size:1.2rem;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:background-color .3s;-webkit-tap-highlight-color:transparent}.theme-toggle:hover{background-color:#fff3}.theme-toggle:focus{outline:none}.theme-toggle:focus-visible{outline:2px solid var(--primary-text);outline-offset:2px}.theme-toggle .theme-toggle-icon{fill:currentcolor;transition:transform .3s ease}.theme-toggle .theme-toggle-icon .sun,.theme-toggle .theme-toggle-icon .moon{transform-origin:center center;transition:transform .2s ease}.header-container{display:flex;justify-content:center;align-items:center;position:relative;min-height:60px}.header-container h1{margin:0;padding:0;font-size:1.2rem;text-align:center}@media(min-width:768px){.header-container h1{font-size:1.5rem}}.header-container .logo{position:absolute;left:0;width:80px;height:auto}@media(min-width:768px){.header-container .logo{width:100px}}.header-container .theme-toggle{position:absolute;right:0;width:44px;height:44px}@media(min-width:768px){.header-container .theme-toggle{width:40px;height:40px}}@media(max-width:400px){.header-container .logo{width:60px}.header-container h1{margin:0 70px;font-size:1rem}}.validation-messages{margin:1rem 0;width:100%;display:none}.validation-message{padding:.75rem 1rem;margin-bottom:.5rem;border-radius:4px;font-size:.9rem;line-height:1.4}.validation-error{background-color:#fee2e2;color:#991b1b;border-left:4px solid rgb(220,38,38)}[data-theme=dark] .validation-error{background-color:#7f1d1d4d;color:#fca5a5;border-left-color:#ef4444}.validation-warning{background-color:#fef3c7;color:#78350f;border-left:4px solid rgb(245,158,11)}[data-theme=dark] .validation-warning{background-color:#78350f4d;color:#fde047;border-left-color:#eab308}.toast-notification{position:fixed;bottom:2rem;right:2rem;padding:1rem 2.5rem 1rem 1.5rem;border-radius:8px;font-size:.9rem;box-shadow:0 4px 12px #00000026;max-width:400px;animation:toast-slide-in .3s ease-out;z-index:1000}@media(max-width:768px){.toast-notification{bottom:1rem;right:1rem;left:1rem;max-width:none}}.toast-dismiss{position:absolute;top:50%;right:.25rem;transform:translateY(-50%);background:none;border:none;color:inherit;font-size:1.25rem;cursor:pointer;padding:.75rem;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;opacity:.7;line-height:1}.toast-dismiss:hover{opacity:1}.toast-dismiss:focus{outline:2px solid currentcolor;outline-offset:2px}.toast-error{background-color:#dc2626;color:#fff}.toast-warning{background-color:#f59e0b;color:#fff}.toast-info{background-color:#3b82f6;color:#fff}.toast-success{background-color:#22c55e;color:#fff}.toast-fade-out{animation:toast-fade-out .3s ease-out forwards}@keyframes toast-slide-in{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes toast-fade-out{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.toast-notification{animation:none}.toast-fade-out{animation:toast-fade-out .01ms ease-out forwards}}@media(forced-colors:active){input.autonumeric-red,input.autonumeric-yellow{border-style:solid;forced-color-adjust:none}.toast-notification{border:2px solid currentcolor}.theme-toggle{border:1px solid currentcolor}input[type=range]::-webkit-slider-thumb{border:2px solid currentcolor}input[type=range]::-moz-range-thumb{border:2px solid currentcolor}}
