:root{--spring-1:#7dd3fc;--spring-2:#bae6fd;--spring-3:#262626;--spring-4:#f9f9f9;--spring-5:#fff;--spring-6:#facc15;--spring-7:#737373;--spring-8:#262626;--spring-9:#a16207;--spring-10:#f9f9f9;--spring-11:#0a0a0a;--spring-12:#000;--spring-13:#f9f9f9;--midnight-1:#171717;--midnight-2:#0a0a0a;--midnight-3:#e5e5e5;--midnight-4:#212121;--midnight-5:#353535;--midnight-6:#4c1d95;--midnight-7:#a3a3a3;--midnight-8:#e5e5e5;--midnight-9:magenta;--midnight-10:#212121;--midnight-11:#fff;--midnight-12:#353535;--midnight-13:#212121;--space-0:0;--space-2xs:.125rem;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--layout-max-width:1100px;--layout-max-menu-height:56px;--layout-padding-y:var(--space-lg);--layout-padding-x:var(--space-xl);--header-padding-y:var(--space-sm);--header-padding-x:var(--space-md);--sidebar-width-open:220px;--sidebar-width-collapsed:80px;--dashboard-gap:var(--space-md);--right-panel-width:320px;--right-panel-top-offset:3rem;--right-panel-margin-right:var(--space-sm);--auth-card-max-width:420px;--auth-card-padding:var(--space-xl);--border-width:1px;--widget-border-width:1px;--widget-border-radius:16px;--widget-border-radius-small:8px;--transition-fast:.2s;--color-error:red;--color-border:currentColor;--modal-overlay-bg:#00000080;--font-sans:"Segoe UI","Helvetica Neue",Arial,sans-serif}body.theme-light{--color-bg:var(--spring-1);--color-text:var(--spring-3);--color-header-bg:var(--spring-2);--color-modal-bg:var(--spring-2);--color-link:var(--spring-7);--color-link-hover:var(--spring-11);--color-link-hover-inverted:var(--spring-9);--color-border:var(--spring-5);--color-surface:var(--spring-4);--color-button-bg:var(--spring-6);--color-button-text:var(--spring-8);--color-button-border:var(--spring-6);--color-input-bg:var(--spring-10);--color-input-border:var(--spring-5);--color-input-text:var(--spring-3);--color-shadow:var(--spring-12);--tooltip-bg:var(--spring-13)}body.theme-dark{--color-bg:var(--midnight-1);--color-text:var(--midnight-3);--color-header-bg:var(--midnight-2);--color-modal-bg:var(--midnight-2);--color-link:var(--midnight-7);--color-link-hover:var(--midnight-11);--color-link-hover-inverted:var(--midnight-9);--color-border:var(--midnight-5);--color-surface:var(--midnight-4);--color-button-bg:var(--midnight-6);--color-button-text:var(--midnight-8);--color-button-border:var(--midnight-6);--color-input-bg:var(--midnight-10);--color-input-border:var(--midnight-5);--color-input-text:var(--midnight-3);--color-shadow:var(--midnight-12);--tooltip-bg:var(--midnight-13)}.react-calendar{background:#fff;border:1px solid #a0a096;width:350px;max-width:100%;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{margin:-.5em;display:flex}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar :before,.react-calendar :after{box-sizing:border-box}.react-calendar button{border:0;outline:none;margin:0}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{height:44px;margin-bottom:1em;display:flex}.react-calendar__navigation button{background:0 0;min-width:44px}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{font:inherit;justify-content:center;align-items:center;font-size:.75em;font-weight:700;display:flex}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{text-align:center;max-width:100%;font:inherit;background:0 0;padding:10px 6.6667px;font-size:.833em}.react-calendar__tile:disabled{color:#ababab;background-color:#f0f0f0}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{color:#fff;background:#006edc}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);scrollbar-gutter:stable;margin:0}a{color:var(--color-link);transition:color var(--transition-fast);text-decoration:none}a:hover,a:focus,a:active{color:var(--color-link-hover,var(--color-link));text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}button{background:var(--color-button-bg);color:var(--color-button-text);border:var(--border-width)solid var(--color-button-border);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);border-radius:6px;padding:.5rem .85rem}button:hover{background:var(--color-button-bg)}@supports (color:color-mix(in lab, red, red)){button:hover{background:color-mix(in srgb,var(--color-button-bg)85%,white)}}button:active{box-shadow:none;transform:translateY(0)}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-header{z-index:5;border-bottom:var(--border-width)solid var(--color-border);background:var(--color-header-bg);position:sticky;top:0}.app-header-main-navigation{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;padding:var(--header-padding-y)var(--header-padding-x);min-height:var(--layout-max-menu-height);margin:0 auto;display:flex}.app-header-nav{flex:1;justify-content:center;display:flex}.app-header-menu{align-items:center;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.app-header-right{justify-content:flex-end;align-items:center;gap:var(--space-sm);display:flex}.app-main-area{flex:1;display:flex}.app-content-wrapper,.app-content-narrow{max-width:var(--layout-max-width);padding:var(--layout-padding-y)var(--layout-padding-x);box-sizing:border-box;width:100%;margin:0 auto}.app-sidebar-left{border-right:var(--border-width)solid var(--color-border);padding:var(--space-sm);transition:width var(--transition-fast);overflow:hidden}.app-sidebar-left-open{width:var(--sidebar-width-open)}.app-sidebar-left-collapsed{width:var(--sidebar-width-collapsed)}.app-sidebar-toggle{margin-bottom:var(--space-md);display:block}.app-main-content{padding:var(--space-md);flex:1}.app-right-panel{top:var(--right-panel-top-offset);right:var(--right-panel-margin-right);width:var(--right-panel-width);border:var(--border-width)solid var(--color-border);max-height:calc(100vh - 3.5rem);padding:var(--space-sm);z-index:10;position:fixed;overflow:auto}.app-right-panel-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.app-right-panel-body{font-size:.9rem}.app-main-inner{width:100%;max-width:var(--layout-max-width);margin:0 auto}.dashboard-grid{gap:var(--dashboard-gap);grid-template-columns:repeat(12,1fr);display:grid}.dashboard-card{border:var(--widget-border-width)solid var(--color-border);border-radius:var(--widget-border-radius);padding:var(--space-md);background-color:var(--color-surface);grid-column:var(--col-start)/span var(--col-span)}.form-error{color:var(--color-error);margin:var(--space-sm)0 var(--space-md)}.form-section{padding:var(--space-md);border-radius:var(--widget-border-radius-small);border:var(--border-width)solid var(--color-border);margin:0 0 var(--space-lg);max-width:var(--layout-max-width);width:100%}.form-field{margin-top:.75rem}.form-field label{gap:var(--space-md);grid-template-columns:180px 1fr;align-items:center;display:grid}.form-field .label-text{justify-content:space-between;align-items:center;gap:.35rem;width:100%;display:flex}.form-field .label-tooltip,.form-field .label-tooltip-asterisk{background-color:var(--tooltip-bg);border:1px solid var(--color-input-border);width:1.5rem;height:1.5rem;color:var(--color-text);opacity:.85;cursor:help;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;font-size:.85rem;font-weight:600;transition:all .15s;display:flex}.form-field .label-tooltip-asterisk{font-size:1.2rem}.form-field .p-asterix{transform:translateY(-2px)}.form-field .label-tooltip:hover,.form-field .label-tooltip-asterisk:hover{opacity:1;transform:scale(1.05)}.form-field .label-tooltip[data-tooltip]:after,.form-field .label-tooltip-asterisk[data-tooltip]:after{background:var(--tooltip-bg)}[data-tooltip]{cursor:help;position:relative}[data-tooltip]:after{content:attr(data-tooltip);background:var(--color-button-bg);color:var(--color-text);border:var(--border-width)solid var(--color-border);box-shadow:6px 6px 20px var(--color-shadow);border-radius:8px;padding:.75rem;position:absolute;bottom:calc(100% + 6px);left:0;transform:none;white-space:normal!important;overflow-wrap:break-word!important;width:fit-content!important;min-width:340px!important;max-width:min(800px,92vw)!important}@supports (color:color-mix(in lab, red, red)){[data-tooltip]:after{box-shadow:6px 6px 20px color-mix(in srgb,var(--color-shadow)75%,transparent)}}[data-tooltip]:after{opacity:0;pointer-events:none;z-index:2000;font-size:.9rem;line-height:1.4;transition:opacity .12s,transform .12s}[data-tooltip]:before{display:none}[data-tooltip]:hover:after,[data-tooltip]:focus:after{opacity:1;pointer-events:auto}@media (max-width:520px){[data-tooltip]:after{top:calc(100% + 8px);left:8px;transform:none}[data-tooltip]:before{display:none}}.form-field input[type=checkbox]{grid-column:2;justify-self:start;margin:0}.form-field input:not([type=checkbox]),.form-field textarea,.form-field select{box-sizing:border-box;border:var(--border-width)solid var(--color-input-border);background-color:var(--color-input-bg);border-radius:6px;width:100%;max-width:none;margin-top:0;padding:8px}.label-required{color:var(--color-error);font-weight:700}fieldset{border:none;margin:0;padding:0}legend{padding:0 var(--space-xs)}.form-field input[type=checkbox]{appearance:none;border:2px solid var(--color-input-border);background-color:var(--color-input-bg);cursor:pointer;border-radius:6px;flex-shrink:0;width:1.5rem;height:1.5rem;margin:0;transition:all .15s;position:relative}.form-field input[type=checkbox]:checked{background-color:var(--color-button-bg);border-color:var(--color-button-bg)}.form-field input[type=checkbox]:checked:after{content:"";border:solid var(--color-button-text);border-width:0 3px 3px 0;width:.45rem;height:.85rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-60%)rotate(45deg)}.form-field input[type=checkbox]:hover{box-shadow:0 0 0 4px var(--color-shadow)}.form-field input[type=checkbox]:focus-visible{outline:2px solid var(--color-button-bg);outline-offset:2px}.auth-shell{justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.auth-card{width:100%;max-width:var(--auth-card-max-width);padding:var(--auth-card-padding);border:var(--border-width)solid var(--color-border)}.profile-menu{display:inline-block;position:relative}.profile-menu-dropdown{border:var(--border-width)solid var(--color-border);background:var(--color-bg);margin-top:.25rem;padding:.5rem;position:absolute;right:0}.modal-overlay{z-index:10000;background:var(--modal-overlay-bg);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{border:var(--border-width)solid var(--color-border);background:var(--color-modal-bg);width:90%;max-width:400px;color:var(--color-text);border-radius:8px;padding:20px}@keyframes fs-loader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:768px){.app-header-main-navigation{align-items:center;gap:var(--space-md);grid-template-columns:auto 1fr auto;display:grid}.app-header-nav{justify-content:center;margin:0}.app-header-menu{flex-wrap:wrap;justify-content:center}.app-header-right{justify-content:flex-end}}@media (max-width:900px){.dashboard-grid{grid-template-columns:1fr}.dashboard-card{grid-column:1/-1}}@media (max-width:640px){.form-field label{gap:var(--space-xs);grid-template-columns:1fr}.form-field input[type=checkbox]{margin-top:0}}.date-picker-calendar{position:relative}.date-picker-calendar .react-calendar{background-color:var(--color-input-bg);border:1px solid var(--color-input-border);box-shadow:0 6px 24px var(--color-shadow);border-radius:8px;margin-top:2px;position:absolute}@supports (color:color-mix(in lab, red, red)){.date-picker-calendar .react-calendar{box-shadow:0 6px 24px color-mix(in srgb,var(--color-shadow)20%,transparent)}}.date-picker-calendar .react-calendar{overflow:hidden}.date-picker-calendar .react-calendar__tile{transition:background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast);border-radius:8px;padding:.25rem 0;line-height:2.25rem}.date-picker-calendar .react-calendar__tile:enabled:hover{background:var(--color-button-bg)}@supports (color:color-mix(in lab, red, red)){.date-picker-calendar .react-calendar__tile:enabled:hover{background:color-mix(in srgb,var(--color-button-bg)85%,var(--color-surface))}}.date-picker-calendar .react-calendar__tile--now{outline:2px solid var(--color-button-bg)}@supports (color:color-mix(in lab, red, red)){.date-picker-calendar .react-calendar__tile--now{outline:2px solid color-mix(in srgb,var(--color-button-bg)35%,transparent)}}.date-picker-calendar .react-calendar__tile--now{outline-offset:0}.date-picker-calendar .react-calendar__tile--active{background:var(--color-button-bg);color:var(--color-button-text)}.date-picker-calendar .react-calendar__tile:focus{box-shadow:0 0 0 2px var(--color-button-bg)inset}@supports (color:color-mix(in lab, red, red)){.date-picker-calendar .react-calendar__tile:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-button-bg)40%,transparent)inset}}.date-picker-calendar .react-calendar__tile--rangeStart,.date-picker-calendar .react-calendar__tile--rangeEnd{background:var(--color-button-bg)}@supports (color:color-mix(in lab, red, red)){.date-picker-calendar .react-calendar__tile--rangeStart,.date-picker-calendar .react-calendar__tile--rangeEnd{background:color-mix(in srgb,var(--color-button-bg)85%,var(--color-surface))}}.date-picker-calendar .react-calendar__tile--rangeStart,.date-picker-calendar .react-calendar__tile--rangeEnd{color:var(--color-button-text)}.date-picker-calendar .react-calendar__tile--range{background:var(--color-button-bg)}.date-picker-calendar .react-calendar__tile.is-weekend{color:var(--color-text)}@supports (color:color-mix(in lab, red, red)){.date-picker-calendar .react-calendar__tile.is-weekend{color:color-mix(in srgb,var(--color-text)65%,transparent)}}.date-picker-calendar .react-calendar__navigation button:enabled:hover{background:var(--color-button-bg)}@supports (color:color-mix(in lab, red, red)){.date-picker-calendar .react-calendar__navigation button:enabled:hover{background:color-mix(in srgb,var(--color-button-bg)85%,var(--color-surface))}}.date-picker-calendar .react-calendar__navigation button{color:var(--color-text);background:0 0;border:none}.date-picker-calendar .react-calendar__navigation__label{color:var(--color-text)!important;box-shadow:none!important;background:0 0!important}.date-picker-calendar .react-calendar__year-view .react-calendar__tile,.date-picker-calendar .react-calendar__decade-view .react-calendar__tile,.date-picker-calendar .react-calendar__century-view .react-calendar__tile,.date-picker-calendar .react-calendar__month-view__months .react-calendar__tile{color:var(--color-text);background:0 0}.date-picker-calendar .react-calendar__year-view .react-calendar__tile--active,.date-picker-calendar .react-calendar__decade-view .react-calendar__tile--active,.date-picker-calendar .react-calendar__century-view .react-calendar__tile--active,.date-picker-calendar .react-calendar__month-view__months .react-calendar__tile--active{background:var(--color-button-bg)!important;color:var(--color-button-text)!important}
