@charset "UTF-8";:root{--font-display: "Outfit", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", monospace;--font-body: "Outfit", system-ui, sans-serif;--text-xs: .7rem;--text-sm: .8rem;--text-base: .9rem;--text-md: 1rem;--text-lg: 1.15rem;--text-xl: 1.35rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--weight-light: 300;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .12s;--duration-base: .2s;--duration-slow: .35s;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .35);--shadow-md: 0 8px 24px rgba(0, 0, 0, .4);--shadow-lg: 0 16px 48px rgba(0, 0, 0, .5);--shadow-glow-green: 0 0 20px rgba(52, 211, 153, .15);--shadow-glow-red: 0 0 20px rgba(251, 113, 133, .15)}[data-theme=dark],:root{color-scheme:dark;--surface-0: #07080a;--surface-1: #0d0f13;--surface-2: #13161c;--surface-3: #1a1e26;--surface-4: #222730;--glass-bg: rgba(19, 22, 28, .7);--glass-border: rgba(255, 255, 255, .06);--glass-blur: 12px;--border-subtle: rgba(255, 255, 255, .06);--border-default: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .16);--fg-primary: #f0f0f3;--fg-secondary: #9ca3b0;--fg-muted: #5c6370;--fg-inverse: #07080a;--accent-positive: #34d399;--accent-positive-dim: rgba(52, 211, 153, .12);--accent-positive-mid: rgba(52, 211, 153, .25);--accent-positive-text: #6ee7b7;--accent-negative: #fb7185;--accent-negative-dim: rgba(251, 113, 133, .12);--accent-negative-mid: rgba(251, 113, 133, .25);--accent-negative-text: #fda4af;--accent-blue: #60a5fa;--accent-blue-dim: rgba(96, 165, 250, .12);--accent-amber: #fbbf24;--accent-amber-dim: rgba(251, 191, 36, .12);--input-bg: #0d0f13;--input-border: rgba(255, 255, 255, .08);--input-border-focus: var(--accent-positive);--input-placeholder: #4a5060;--btn-primary-bg: var(--accent-positive);--btn-primary-fg: #07080a;--btn-secondary-bg: var(--surface-3);--btn-secondary-fg: var(--fg-primary);--btn-ghost-hover: rgba(255, 255, 255, .06);--sidebar-bg: var(--surface-1);--sidebar-border: var(--border-subtle);--popup-bg: #13161c;--popup-border: var(--border-default);--popup-shadow: 0 20px 40px rgba(0, 0, 0, .6);--noise-opacity: .03}[data-theme=light]{color-scheme:light;--surface-0: #f8f9fb;--surface-1: #ffffff;--surface-2: #f1f3f6;--surface-3: #e8eaef;--surface-4: #dde0e6;--glass-bg: rgba(255, 255, 255, .75);--glass-border: rgba(0, 0, 0, .06);--glass-blur: 12px;--border-subtle: rgba(0, 0, 0, .06);--border-default: rgba(0, 0, 0, .1);--border-strong: rgba(0, 0, 0, .16);--fg-primary: #111318;--fg-secondary: #5c6370;--fg-muted: #9ca3b0;--fg-inverse: #f0f0f3;--accent-positive: #059669;--accent-positive-dim: rgba(5, 150, 105, .08);--accent-positive-mid: rgba(5, 150, 105, .18);--accent-positive-text: #047857;--accent-negative: #e11d48;--accent-negative-dim: rgba(225, 29, 72, .08);--accent-negative-mid: rgba(225, 29, 72, .18);--accent-negative-text: #be123c;--accent-blue: #2563eb;--accent-blue-dim: rgba(37, 99, 235, .08);--accent-amber: #d97706;--accent-amber-dim: rgba(217, 119, 6, .08);--input-bg: #ffffff;--input-border: rgba(0, 0, 0, .12);--input-border-focus: var(--accent-positive);--input-placeholder: #9ca3b0;--btn-primary-bg: var(--accent-positive);--btn-primary-fg: #ffffff;--btn-secondary-bg: var(--surface-3);--btn-secondary-fg: var(--fg-primary);--btn-ghost-hover: rgba(0, 0, 0, .04);--sidebar-bg: var(--surface-1);--sidebar-border: var(--border-subtle);--popup-bg: #ffffff;--popup-border: var(--border-default);--popup-shadow: 0 20px 40px rgba(0, 0, 0, .12);--noise-opacity: .015;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 8px 24px rgba(0, 0, 0, .08);--shadow-lg: 0 16px 48px rgba(0, 0, 0, .1);--shadow-glow-green: 0 0 20px rgba(5, 150, 105, .1);--shadow-glow-red: 0 0 20px rgba(225, 29, 72, .1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none}body{font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:1.55;color:var(--fg-primary);background:var(--surface-0);min-width:320px;min-height:100vh;overflow-x:hidden}#root{min-height:100vh;isolation:isolate}#root:before{content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:var(--noise-opacity);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px 200px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--fg-muted)}a{color:inherit;text-decoration:none}::selection{background:var(--accent-positive-mid);color:var(--fg-primary)}:focus-visible{outline:2px solid var(--accent-positive);outline-offset:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.react-datepicker{background:var(--popup-bg)!important;border:1px solid var(--popup-border)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--popup-shadow)!important;font-family:var(--font-body)!important}.react-datepicker__header{background:var(--surface-3)!important;border-bottom:1px solid var(--border-subtle)!important;padding-top:.6rem!important}.react-datepicker__current-month,.react-datepicker__day-name{color:var(--fg-primary)!important}.react-datepicker__day-name{font-weight:var(--weight-medium);color:var(--fg-secondary)!important}.react-datepicker__day{color:var(--fg-primary)!important;border-radius:var(--radius-sm)!important}.react-datepicker__day:hover{background:var(--surface-4)!important;color:var(--fg-primary)!important}.react-datepicker__day--selected,.react-datepicker__day--keyboard-selected{background:var(--accent-positive)!important;color:var(--fg-inverse)!important}.react-datepicker__day--outside-month{color:var(--fg-muted)!important}.react-datepicker__day--disabled{color:var(--fg-muted)!important;cursor:not-allowed!important;opacity:.5}.react-datepicker__day--disabled:hover{background:transparent!important}.react-datepicker__day--today{font-weight:var(--weight-semibold);border:1px solid var(--accent-positive);background:var(--accent-positive-dim)}.react-datepicker__day--today.react-datepicker__day--selected{background:var(--accent-positive)!important;border-color:var(--accent-positive)}.react-datepicker__navigation{top:.6rem!important}.react-datepicker__navigation-icon:before{border-color:var(--fg-secondary)!important;border-width:2px 2px 0 0!important}.react-datepicker__navigation:hover *:before{border-color:var(--fg-primary)!important}.react-datepicker__month-container{float:none!important}.react-datepicker__month{margin:.6rem!important}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + .85rem);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media(max-width:400px),(max-height:550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-body);font-weight:var(--weight-medium);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),transform 80ms var(--ease-out);white-space:nowrap;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.ui-btn:active:not(:disabled){transform:translateY(1px)}.ui-btn:disabled{opacity:.45;cursor:not-allowed}.ui-btn--sm{height:30px;padding:0 var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-sm)}.ui-btn--md{height:36px;padding:0 var(--space-5);font-size:var(--text-base)}.ui-btn--lg{height:42px;padding:0 var(--space-6);font-size:var(--text-md)}.ui-btn--primary{background:var(--btn-primary-bg);color:var(--btn-primary-fg);font-weight:var(--weight-semibold)}.ui-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-glow-green);filter:brightness(1.1)}.ui-btn--secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-fg);border-color:var(--border-subtle)}.ui-btn--secondary:hover:not(:disabled){background:var(--surface-4);border-color:var(--border-default)}.ui-btn--ghost{background:transparent;color:var(--fg-secondary)}.ui-btn--ghost:hover:not(:disabled){background:var(--btn-ghost-hover);color:var(--fg-primary)}.ui-btn--danger{background:var(--accent-negative-dim);color:var(--accent-negative);border-color:transparent}.ui-btn--danger:hover:not(:disabled){background:var(--accent-negative-mid);box-shadow:var(--shadow-glow-red)}.ui-btn--loading .ui-btn__label{opacity:0}.ui-btn--loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:btn-spin .6s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.ui-btn__icon{display:inline-flex;align-items:center;font-size:1.1em;line-height:1}.ui-input-wrap{display:flex;flex-direction:column;gap:var(--space-1)}.ui-input-wrap--full{flex:1;min-width:0}.ui-input-label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--fg-secondary);text-transform:uppercase;letter-spacing:.06em}.ui-input{height:36px;padding:0 var(--space-3);font-family:var(--font-body);font-size:var(--text-base);color:var(--fg-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);outline:none}.ui-input::placeholder{color:var(--input-placeholder)}.ui-input:focus{border-color:var(--input-border-focus);box-shadow:0 0 0 3px var(--accent-positive-dim)}.ui-input-wrap--error .ui-input{border-color:var(--accent-negative)}.ui-input-wrap--error .ui-input:focus{box-shadow:0 0 0 3px var(--accent-negative-dim)}.ui-input-hint{font-size:var(--text-xs);color:var(--fg-muted)}.ui-input-hint--error{color:var(--accent-negative)}.ui-card{border-radius:var(--radius-lg);transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.ui-card--pad-none{padding:0}.ui-card--pad-sm{padding:var(--space-3) var(--space-4)}.ui-card--pad-md{padding:var(--space-4) var(--space-5)}.ui-card--pad-lg{padding:var(--space-6) var(--space-8)}.ui-card--default{background:var(--surface-2);border:1px solid var(--border-subtle)}.ui-card--glass{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);box-shadow:var(--shadow-sm)}.ui-card--outlined{background:transparent;border:1px solid var(--border-default)}.ui-card--glow-green{border-color:var(--accent-positive-mid);box-shadow:var(--shadow-glow-green)}.ui-card--glow-red{border-color:var(--accent-negative-mid);box-shadow:var(--shadow-glow-red)}.ui-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1.4;border-radius:var(--radius-full);white-space:nowrap}.ui-badge--neutral{background:var(--surface-3);color:var(--fg-secondary)}.ui-badge--positive{background:var(--accent-positive-dim);color:var(--accent-positive-text)}.ui-badge--negative{background:var(--accent-negative-dim);color:var(--accent-negative-text)}.ui-badge--blue{background:var(--accent-blue-dim);color:var(--accent-blue)}.ui-badge--amber{background:var(--accent-amber-dim);color:var(--accent-amber)}.ui-seg{display:inline-flex;gap:2px;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:3px}.ui-seg--sm{padding:2px}.ui-seg__item{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);flex:1;font-family:var(--font-body);font-weight:var(--weight-medium);border:none;border-radius:calc(var(--radius-md) - 2px);background:transparent;color:var(--fg-muted);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);white-space:nowrap}.ui-seg--md .ui-seg__item{padding:var(--space-2) var(--space-4);font-size:var(--text-base)}.ui-seg--sm .ui-seg__item{padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}.ui-seg__item:hover:not(.ui-seg__item--active){color:var(--fg-secondary);background:var(--btn-ghost-hover)}.ui-seg__item--active{background:var(--surface-3);color:var(--fg-primary)}.ui-seg__item--positive{background:var(--accent-positive-dim);color:var(--accent-positive-text)}.ui-seg__item--negative{background:var(--accent-negative-dim);color:var(--accent-negative-text)}.ui-seg__icon{font-size:1.1em;line-height:1}.ui-modal-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4);animation:fadeIn var(--duration-fast) var(--ease-out)}.ui-modal-card{background:var(--popup-bg);border:1px solid var(--popup-border);border-radius:var(--radius-xl);box-shadow:var(--popup-shadow);padding:var(--space-6);min-width:340px;max-width:90vw;max-height:85vh;display:flex;flex-direction:column;animation:fadeInScale var(--duration-base) var(--ease-spring)}.ui-modal-card--wide{width:560px}.ui-modal-card--xl{width:800px}.ui-modal-title{margin:0 0 var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--fg-primary);flex-shrink:0}.ui-modal-body{font-size:var(--text-base);color:var(--fg-secondary);line-height:1.5;overflow-y:auto;min-height:0}.ui-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-5)}.ui-theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:var(--surface-3);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.ui-theme-toggle:hover{background:var(--surface-4);border-color:var(--border-default)}.ui-theme-toggle__icon{font-size:1rem;line-height:1}.tx-form{display:flex;flex-direction:column;gap:var(--space-4);flex:1;animation:fadeInUp var(--duration-slow) var(--ease-out) .1s both}.tx-form__section{display:flex;flex-direction:column;gap:var(--space-2);position:relative}.tx-form__row{display:flex;gap:var(--space-3)}.tx-form__field{display:flex;flex-direction:column;gap:var(--space-2);flex:1;min-width:0}.tx-form__label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em}.tx-form__input{height:36px;padding:0 var(--space-3);font-family:var(--font-body);font-size:var(--text-base);color:var(--fg-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);outline:none;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);width:100%}.tx-form__input::placeholder{color:var(--input-placeholder)}.tx-form__input:focus{border-color:var(--input-border-focus);box-shadow:0 0 0 3px var(--accent-positive-dim)}.tx-form__cat-trigger{display:flex;align-items:center;justify-content:space-between;height:36px;padding:0 var(--space-3);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-base);color:var(--fg-primary);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.tx-form__cat-trigger--open{border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--accent-blue-dim)}.tx-form__cat-caret{font-size:.75rem;color:var(--fg-muted)}.tx-form__cat-dropdown{position:absolute;top:100%;left:0;margin-top:var(--space-2);z-index:30;animation:slideDown var(--duration-base) var(--ease-out)}.tx-form__cat-panels{display:flex;gap:2px;background:var(--popup-bg);border:1px solid var(--popup-border);border-radius:var(--radius-lg);box-shadow:var(--popup-shadow)}.tx-form__cat-main{display:flex;flex-direction:column;padding:var(--space-2);min-width:130px}.tx-form__cat-option{padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--text-base);color:var(--fg-primary);background:transparent;border:none;border-radius:var(--radius-sm);text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.tx-form__cat-option:hover,.tx-form__cat-option--active{background:var(--surface-3)}.tx-form__cat-sub{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);border-left:1px solid var(--border-subtle);min-width:140px}.tx-form__cat-chip{padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--text-sm);color:var(--fg-secondary);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-full);text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.tx-form__cat-chip:hover{background:var(--surface-3);border-color:var(--border-default);color:var(--fg-primary)}.tx-form__cat-chip--active{background:var(--accent-positive-dim);border-color:var(--accent-positive);color:var(--accent-positive-text)}.tx-form__submit{margin-top:auto;width:100%}.tx-form__field .react-datepicker-wrapper{display:block;width:100%}.tx-list{display:flex;flex-direction:column}.tx-list__head{display:grid;grid-template-columns:28px 72px 1fr auto 72px;gap:var(--space-3);align-items:center;padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted);border-bottom:1px solid var(--border-subtle)}.tx-list__th--right{text-align:right}.tx-list__th--check,.tx-list__cell--check{display:flex;align-items:center;justify-content:center}.tx-list__th--check input,.tx-list__cell--check input{width:14px;height:14px;margin:0;accent-color:var(--accent-positive);cursor:pointer}.tx-list__row{display:grid;grid-template-columns:28px 72px 1fr auto 72px;gap:var(--space-3);align-items:center;padding:var(--space-3);border-radius:var(--radius-md);border:1px solid transparent;font-size:var(--text-base);transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out);animation:fadeInUp var(--duration-base) var(--ease-out) both}.tx-list--readonly .tx-list__head,.tx-list--readonly .tx-list__row{grid-template-columns:90px 1fr 120px}.tx-list__cat-meta{display:flex;gap:var(--space-3);font-size:var(--text-xs);color:var(--fg-muted)}.tx-list__cell--payout{font-weight:var(--weight-semibold);color:var(--accent-positive);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.tx-list__row:hover{background:var(--surface-2);border-color:var(--border-subtle)}.tx-list__cell--date{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--fg-muted)}.tx-list__cell--cat{display:flex;align-items:center;gap:var(--space-2);min-width:0}.tx-list__cat-name{font-weight:var(--weight-medium)}.tx-list__cat-sub{font-size:var(--text-xs);color:var(--fg-muted);background:var(--surface-3);padding:1px var(--space-2);border-radius:var(--radius-full);white-space:nowrap}.tx-list__cell--amount{font-family:var(--font-mono);font-weight:var(--weight-semibold);font-size:var(--text-base);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tx-list__cell--income{color:var(--accent-positive)}.tx-list__cell--expense{color:var(--accent-negative)}.tx-list__cell--actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2)}.tx-list__note-dot{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:var(--weight-bold);font-style:italic;color:var(--accent-positive);background:var(--accent-positive-dim);border-radius:var(--radius-full);cursor:help;transition:background var(--duration-fast) var(--ease-out);position:relative}.tx-list__note-dot--empty{color:var(--fg-muted);background:transparent;cursor:default;font-style:normal}.tx-list__delete-btn{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--fg-muted);font-size:1.15rem;line-height:1;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.tx-list__delete-btn:hover{background:var(--accent-negative-dim);color:var(--accent-negative)}.tx-list__pager{display:flex;align-items:center;justify-content:center;gap:var(--space-1);padding:var(--space-3) 0;flex-shrink:0}.tx-list__pager-btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--space-2);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--fg-secondary);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.tx-list__pager-btn:hover:not(:disabled):not(.tx-list__pager-btn--active){background:var(--surface-3);color:var(--fg-primary)}.tx-list__pager-btn--active{background:var(--accent-positive-dim);color:var(--accent-positive);border-color:var(--accent-positive-mid)}.tx-list__pager-btn:disabled{opacity:.3;cursor:not-allowed}.tx-list__note-popup{padding:var(--space-2) var(--space-3);background:var(--popup-bg);border:1px solid var(--popup-border);border-radius:var(--radius-md);box-shadow:var(--popup-shadow);font-size:var(--text-sm);color:var(--fg-primary);white-space:normal;word-wrap:break-word;width:max-content;min-width:6rem;max-width:min(260px,calc(100vw - 1rem));z-index:10000;pointer-events:none;animation:fadeIn var(--duration-fast) var(--ease-out)}.tx-list__bulk{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);border-radius:var(--radius-md);background:var(--accent-negative-dim);border:1px solid var(--accent-negative-mid);animation:fadeInUp var(--duration-base) var(--ease-out)}.tx-list__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-10) 0;color:var(--fg-muted)}.tx-list__empty-icon{font-size:var(--text-3xl);opacity:.3}.tx-list__empty-text{margin:0;font-size:var(--text-base)}.tx-list__shimmer{height:36px;width:100%;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;margin-bottom:var(--space-2)}.tx-filters{padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-3);flex-shrink:0}.tx-filters__row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-4)}.tx-filters__group{display:flex;flex-direction:column;gap:var(--space-1)}.tx-filters__label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em}.tx-filters__dates{display:flex;align-items:center;gap:var(--space-2)}.tx-filters__date-input{height:30px;padding:0 var(--space-2);font-family:var(--font-body);font-size:var(--text-sm);color:var(--fg-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);outline:none;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.tx-filters__date-input:focus{border-color:var(--input-border-focus);box-shadow:0 0 0 2px var(--accent-positive-dim)}.tx-filters__date-sep{color:var(--fg-muted);font-size:var(--text-sm)}.tx-filters__select-wrap{position:relative;display:inline-flex;align-items:center}.tx-filters__select{height:30px;padding:0 var(--space-6) 0 var(--space-3);font-family:var(--font-body);font-size:var(--text-sm);color:var(--fg-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;outline:none;min-width:120px}.tx-filters__select:focus{border-color:var(--input-border-focus);box-shadow:0 0 0 2px var(--accent-positive-dim)}.tx-filters__select-caret{position:absolute;right:var(--space-2);pointer-events:none;font-size:.7rem;color:var(--fg-muted)}.tx-filters__reset{margin-left:auto}.summary{display:flex;align-items:center;gap:var(--space-4)}.summary__item{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.summary__label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em}.summary__value{font-family:var(--font-mono);font-size:var(--text-md);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;white-space:nowrap}.summary__value--positive{color:var(--accent-positive)}.summary__value--negative{color:var(--accent-negative)}.summary__divider{width:1px;height:32px;background:var(--border-subtle);flex-shrink:0}.balance{display:flex;flex-direction:column;gap:2px;min-width:200px}.balance__label{font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.1em;color:var(--fg-muted)}.balance__value{font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;line-height:1.2}.balance__value--pos{color:var(--accent-positive)}.balance__value--neg{color:var(--accent-negative)}.balance__sub{font-size:var(--text-xs);color:var(--fg-muted);font-variant-numeric:tabular-nums}.rc{display:flex;flex-direction:column;gap:var(--space-4);animation:fadeInUp var(--duration-slow) var(--ease-out) both}.rc__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.rc__nav{display:flex;align-items:center;gap:var(--space-1)}.rc__month-label{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);min-width:160px;text-align:center}.rc__summary{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--fg-secondary)}.rc__summary-num{font-family:var(--font-mono);font-weight:var(--weight-semibold);color:var(--fg-primary)}.rc__summary-sep{color:var(--fg-muted)}.rc__summary-item--amount{font-family:var(--font-mono);font-weight:var(--weight-semibold);color:var(--accent-negative)}.rc__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.rc__weekday{padding:var(--space-2);text-align:center;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em}.rc__day{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-2) var(--space-1);min-height:56px;background:var(--surface-2);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-body);transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.rc__day:hover{background:var(--surface-3);border-color:var(--border-subtle)}.rc__day--outside{opacity:.35}.rc__day--today .rc__day-num{color:var(--accent-positive);font-weight:var(--weight-bold)}.rc__day--selected{background:var(--accent-positive-dim);border-color:var(--accent-positive)}.rc__day--has-events{background:var(--accent-negative-dim)}.rc__day--has-events:hover{background:var(--accent-negative-mid)}.rc__day--selected.rc__day--has-events{background:var(--accent-negative-mid);border-color:var(--accent-negative)}.rc__day-num{font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:1}.rc__day-dots{display:flex;gap:3px;align-items:center}.rc__dot{width:5px;height:5px;border-radius:50%;background:var(--accent-negative)}.rc__dot-more{font-size:.6rem;color:var(--accent-negative);font-weight:var(--weight-bold)}.rc__detail{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-4);animation:fadeInUp var(--duration-base) var(--ease-out)}.rc__detail--empty{text-align:center;color:var(--fg-muted);font-size:var(--text-sm);padding:var(--space-6)}.rc__detail-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-3)}.rc__detail-date{font-weight:var(--weight-semibold);font-size:var(--text-md);text-transform:capitalize}.rc__detail-count{font-size:var(--text-xs);color:var(--fg-muted)}.rc__detail-list{display:flex;flex-direction:column;gap:var(--space-2)}.rc__detail-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--surface-3);border-radius:var(--radius-md)}.rc__detail-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.rc__detail-name{font-weight:var(--weight-medium);font-size:var(--text-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rc__detail-cat{font-size:var(--text-xs);color:var(--fg-muted)}.rc__detail-amount{font-family:var(--font-mono);font-weight:var(--weight-semibold);color:var(--accent-negative);white-space:nowrap}.rc__detail-delete{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--fg-muted);font-size:1.15rem;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.rc__detail-delete:hover{background:var(--accent-negative-dim);color:var(--accent-negative)}.rf{display:flex;flex-direction:column;gap:var(--space-4);flex:1;animation:fadeInUp var(--duration-slow) var(--ease-out) .1s both}.rf__section{display:flex;flex-direction:column;gap:var(--space-2)}.rf__row{display:flex;gap:var(--space-3)}.rf__field{display:flex;flex-direction:column;gap:var(--space-2);flex:1;min-width:0}.rf__label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em}.rf__input{height:36px;padding:0 var(--space-3);font-family:var(--font-body);font-size:var(--text-base);color:var(--fg-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);outline:none;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);width:100%}.rf__input::placeholder{color:var(--input-placeholder)}.rf__input:focus{border-color:var(--input-border-focus);box-shadow:0 0 0 3px var(--accent-positive-dim)}.rf__select{height:36px;padding:0 var(--space-3);font-family:var(--font-body);font-size:var(--text-base);color:var(--fg-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);outline:none;cursor:pointer;width:100%}.rf__select:focus{border-color:var(--input-border-focus);box-shadow:0 0 0 3px var(--accent-positive-dim)}.rf__submit{margin-top:auto;width:100%}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-5);background:var(--surface-0)}.login__card{width:100%;max-width:380px;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--space-10) var(--space-8);box-shadow:var(--shadow-lg);animation:fadeInScale var(--duration-slow) var(--ease-spring)}.login__brand{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin-bottom:var(--space-8)}.login__logo{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-extrabold);letter-spacing:-.04em;color:var(--accent-positive);line-height:1;text-shadow:0 0 32px var(--accent-positive-mid)}.login__title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-semibold);color:var(--fg-primary)}.login__form{display:flex;flex-direction:column;gap:var(--space-5)}.login__field{display:flex;flex-direction:column;gap:var(--space-2)}.login__label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em}.login__input{height:44px;padding:0 var(--space-4);font-family:var(--font-body);font-size:var(--text-md);color:var(--fg-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);outline:none;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.login__input::placeholder{color:var(--input-placeholder)}.login__input:focus{border-color:var(--accent-positive);box-shadow:0 0 0 3px var(--accent-positive-dim)}.login__error{margin:0;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--accent-negative-text);background:var(--accent-negative-dim);border:1px solid var(--accent-negative-mid);border-radius:var(--radius-md);animation:fadeInUp var(--duration-base) var(--ease-out)}.login__submit{width:100%}.salary-tpl-form{display:flex;flex-direction:column;gap:var(--space-4)}.salary-tpl-form__type-btns{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.salary-tpl-form__type-btn{flex:1;padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card);color:var(--fg-muted);cursor:pointer;transition:all .15s ease}.salary-tpl-form__type-btn--active{background:var(--accent-primary-dim);border-color:var(--accent-primary);color:var(--accent-primary)}.salary-tpl-form__stages{display:flex;flex-direction:column;gap:var(--space-3)}.salary-tpl-form__stage{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card)}.salary-tpl-form__stage-header{display:flex;justify-content:space-between;align-items:center}.salary-tpl-form__stage-num{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--fg-muted)}.salary-tpl-form__stage-remove{font-size:var(--text-xs);color:var(--accent-negative);background:none;border:none;cursor:pointer;font-family:var(--font-body)}.salary-tpl-form__stage-payout{display:flex;align-items:flex-end;gap:var(--space-2)}.salary-tpl-form__stage-or{font-size:var(--text-xs);color:var(--fg-muted);padding-bottom:var(--space-2)}.salary-tpl-form__error{color:var(--accent-negative);font-size:var(--text-sm)}.salary-tpl-form__actions{display:flex;gap:var(--space-2)}.salary-tpl{display:flex;flex-direction:column;gap:var(--space-4)}.salary-tpl__header{display:flex;justify-content:space-between;align-items:center}.salary-tpl__title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--fg-default)}.salary-tpl__loading,.salary-tpl__empty{font-size:var(--text-sm);color:var(--fg-muted);text-align:center;padding:var(--space-6) 0}.salary-tpl__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-3)}.salary-tpl__card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-card)}.salary-tpl__card--inactive{opacity:.5}.salary-tpl__card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-2)}.salary-tpl__card-name{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--fg-default)}.salary-tpl__card-badges{display:flex;gap:var(--space-1);flex-shrink:0}.salary-tpl__card-amount{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--fg-default);font-variant-numeric:tabular-nums}.salary-tpl__card-stages{display:flex;flex-direction:column;gap:var(--space-1)}.salary-tpl__card-stage{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--bg-subtle);border-radius:var(--radius-sm);font-size:var(--text-sm)}.salary-tpl__card-stage-num{color:var(--fg-muted);font-weight:var(--weight-medium);min-width:24px}.salary-tpl__card-stage-label{flex:1;color:var(--fg-default)}.salary-tpl__card-stage-value{font-weight:var(--weight-semibold);color:var(--accent-primary);font-variant-numeric:tabular-nums}.salary-tpl__card-actions{display:flex;gap:var(--space-2);margin-top:auto;padding-top:var(--space-2);border-top:1px solid var(--border-subtle)}.emp-form{display:flex;flex-direction:column;gap:var(--space-4)}.emp-form__field{display:flex;flex-direction:column;gap:var(--space-1)}.emp-form__next-number{font-size:var(--text-sm);color:var(--fg-muted);margin-top:var(--space-1)}.emp-form__next-number strong{color:var(--accent-primary);font-family:var(--font-mono, monospace)}.emp-form__salary-toggle{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.emp-form__salary-btn{flex:1;padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card);color:var(--fg-muted);cursor:pointer;transition:all .15s ease}.emp-form__salary-btn--active{background:var(--accent-primary-dim);border-color:var(--accent-primary);color:var(--accent-primary)}.emp-form__error{color:var(--accent-negative);font-size:var(--text-sm)}.emp-form__actions{display:flex;gap:var(--space-2)}.emp-card{display:flex;flex-direction:column;gap:var(--space-4)}.emp-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3)}.emp-card__name{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--fg-default)}.emp-card__number{font-size:var(--text-xs);color:var(--fg-muted);font-variant-numeric:tabular-nums}.emp-card__badges{display:flex;gap:var(--space-1);flex-shrink:0}.emp-card__info{display:flex;flex-direction:column;gap:var(--space-2)}.emp-card__info-row{display:flex;justify-content:space-between;font-size:var(--text-sm)}.emp-card__info-label{color:var(--fg-muted)}.emp-card__actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.emp-card__section{display:flex;flex-direction:column;gap:var(--space-2)}.emp-card__section-title{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em}.emp-card__timeline{display:flex;flex-direction:column;gap:var(--space-2)}.emp-card__timeline-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--bg-subtle);font-size:var(--text-sm)}.emp-card__timeline-item--active{border-left:3px solid var(--accent-primary)}.emp-card__timeline-name{font-weight:var(--weight-medium);color:var(--fg-default)}.emp-card__timeline-dates{color:var(--fg-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.emp-card__timeline-note{font-size:var(--text-xs);color:var(--fg-muted);font-style:italic}.emp-card__footer{display:flex;justify-content:flex-end;padding-top:var(--space-2);border-top:1px solid var(--border-subtle)}.emp-list{display:flex;flex-direction:column;gap:var(--space-4)}.emp-list__header{display:flex;align-items:center;gap:var(--space-3)}.emp-list__title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--fg-default)}.emp-list__count{font-size:var(--text-sm);color:var(--fg-muted);margin-right:auto}.emp-list__loading,.emp-list__empty{font-size:var(--text-sm);color:var(--fg-muted);text-align:center;padding:var(--space-6) 0}.emp-list__filters{display:flex;gap:var(--space-2);flex-wrap:wrap}.emp-list__filter-select{max-width:180px}.emp-list__table-wrap{overflow-x:auto}.emp-list__table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.emp-list__table th{text-align:left;padding:var(--space-2) var(--space-3);font-weight:var(--weight-semibold);color:var(--fg-muted);border-bottom:1px solid var(--border-subtle);white-space:nowrap}.emp-list__table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-subtle)}.emp-list__row{cursor:pointer;transition:background .1s}.emp-list__row:hover{background:var(--bg-subtle)}.emp-list__cell-num{font-variant-numeric:tabular-nums;color:var(--fg-muted);white-space:nowrap}.emp-list__cell-name{font-weight:var(--weight-medium);color:var(--fg-default)}.emp-list__cell-date{font-variant-numeric:tabular-nums;white-space:nowrap}.emp-list__cell-template{color:var(--fg-muted)}.emp-list__pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.emp-list__page-info{font-size:var(--text-sm);color:var(--fg-muted);font-variant-numeric:tabular-nums}.emp-credentials{display:flex;flex-direction:column;gap:var(--space-3)}.emp-credentials__hint{font-size:var(--text-sm);color:var(--fg-muted);line-height:1.5}.emp-credentials__field{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);background:var(--bg-subtle);border-radius:var(--radius-md)}.emp-credentials__label{font-size:var(--text-sm);color:var(--fg-muted)}.emp-credentials__value{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--fg-default);font-family:var(--font-mono, monospace);-webkit-user-select:all;user-select:all}.emp-credentials__copy{align-self:flex-end}.analytics{display:flex;flex-direction:column;gap:var(--space-5)}.analytics__title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--fg-default)}.analytics__loading,.analytics__empty{font-size:var(--text-sm);color:var(--fg-muted);text-align:center;padding:var(--space-6) 0}.analytics__filters{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:flex-end}.analytics__filter-field{display:flex;flex-direction:column;gap:var(--space-1)}.analytics__kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-3)}.analytics__kpi{display:flex;flex-direction:column;gap:4px;padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-card)}.analytics__kpi-label{font-size:var(--text-xs);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em}.analytics__kpi-value{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--fg-default);font-variant-numeric:tabular-nums}.analytics__charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--space-4)}.analytics__chart-card{padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-card)}.analytics__chart-title{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--fg-muted);margin-bottom:var(--space-3)}.analytics__table-section{display:flex;flex-direction:column;gap:var(--space-3)}.analytics__table-title{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em}.analytics__table-wrap{overflow-x:auto}.analytics__table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.analytics__table th{text-align:left;padding:var(--space-2) var(--space-3);font-weight:var(--weight-semibold);color:var(--fg-muted);border-bottom:1px solid var(--border-subtle);white-space:nowrap}.analytics__table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-subtle)}.analytics__cell-num{font-variant-numeric:tabular-nums;color:var(--fg-muted);white-space:nowrap}.analytics__cell-name{font-weight:var(--weight-medium);color:var(--fg-default)}.analytics__cell-money,.analytics__cell-pct,.analytics__th-right{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.analytics__cell-count,.analytics__th-center{text-align:center;color:var(--fg-muted)}.analytics__cell-pct{color:var(--fg-muted)}.payroll{display:flex;flex-direction:column;gap:var(--space-4)}.payroll__header{display:flex;justify-content:space-between;align-items:center}.payroll__title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--fg-default)}.payroll__loading,.payroll__empty{font-size:var(--text-sm);color:var(--fg-muted);text-align:center;padding:var(--space-6) 0}.payroll__list{display:flex;flex-direction:column;gap:var(--space-3)}.payroll__card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-card);cursor:pointer;transition:border-color .15s}.payroll__card:hover{border-color:var(--accent-primary)}.payroll__card-header{display:flex;justify-content:space-between;align-items:center}.payroll__card-period{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--fg-default);font-variant-numeric:tabular-nums}.payroll__card-info{display:flex;gap:var(--space-3);align-items:baseline}.payroll__card-total{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--fg-default);font-variant-numeric:tabular-nums}.payroll__card-count{font-size:var(--text-sm);color:var(--fg-muted)}.payroll__card-date{font-size:var(--text-xs);color:var(--fg-muted)}.payroll__generate-form{display:flex;flex-direction:column;gap:var(--space-4)}.payroll__generate-actions{display:flex;gap:var(--space-2)}.payroll__detail{display:flex;flex-direction:column;gap:var(--space-4)}.payroll__detail-header{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.payroll__table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.payroll__table th{text-align:left;padding:var(--space-2) var(--space-3);font-weight:var(--weight-semibold);color:var(--fg-muted);border-bottom:1px solid var(--border-subtle);white-space:nowrap}.payroll__table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-subtle)}.payroll__table tfoot td{border-top:2px solid var(--border-subtle);border-bottom:none;padding-top:var(--space-3)}.payroll__cell-num{font-variant-numeric:tabular-nums;color:var(--fg-muted)}.payroll__cell-name{font-weight:var(--weight-medium)}.payroll__cell-money{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.payroll__cell-total{font-weight:var(--weight-bold);color:var(--fg-default)}.payroll__cell-total-label{text-align:right;font-weight:var(--weight-semibold);color:var(--fg-muted)}.payroll__detail-actions{display:flex;gap:var(--space-2);justify-content:flex-end;padding-top:var(--space-2);border-top:1px solid var(--border-subtle)}.app-root{min-height:100vh;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);max-width:1200px;margin:0 auto;width:100%}.app-topbar{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-3) var(--space-5);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);flex-shrink:0;animation:fadeInUp var(--duration-slow) var(--ease-out) both}.app-topbar__left{display:flex;align-items:center;gap:var(--space-2)}.app-topbar__logo{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-extrabold);letter-spacing:-.04em;color:var(--accent-positive);line-height:1;text-shadow:0 0 20px var(--accent-positive-mid)}.app-topbar__title{font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--fg-primary)}.app-topbar__tabs{display:flex;gap:var(--space-1)}.app-topbar__tab{position:relative;padding:var(--space-2) var(--space-4);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--fg-muted);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:color var(--duration-fast) var(--ease-out);white-space:nowrap}.app-topbar__tab:after{content:"";position:absolute;bottom:-3px;left:var(--space-3);right:var(--space-3);height:2px;background:transparent;border-radius:1px;transition:background var(--duration-fast) var(--ease-out)}.app-topbar__tab:hover:not(.app-topbar__tab--active){color:var(--fg-secondary)}.app-topbar__tab--active{color:var(--fg-primary)}.app-topbar__tab--active:after{background:var(--accent-positive)}.app-topbar__right{margin-left:auto;display:flex;align-items:center;gap:var(--space-3)}.app-topbar__date{margin:0;font-size:var(--text-sm);color:var(--fg-muted);text-transform:capitalize;font-weight:var(--weight-light);white-space:nowrap}.app-topbar__user{display:flex;flex-direction:column;align-items:flex-end;gap:1px;padding-left:var(--space-3);border-left:1px solid var(--border-subtle)}.app-topbar__user-name{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--fg-default)}.app-topbar__user-role{font-size:var(--text-xs);color:var(--fg-muted)}.app-topbar__logout{font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--fg-muted);background:none;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);cursor:pointer;transition:all .15s ease}.app-topbar__logout:hover{color:var(--accent-negative);border-color:var(--accent-negative-mid);background:var(--accent-negative-dim)}.app-shell{display:grid;grid-template-columns:300px minmax(0,1fr);gap:var(--space-4);align-items:start}.app-shell--full{grid-template-columns:1fr}.sidebar{position:sticky;top:var(--space-5);align-self:start;max-height:calc(100vh - var(--space-5) * 2);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--space-5);display:flex;flex-direction:column;overflow-y:auto;animation:slideInLeft var(--duration-slow) var(--ease-out) both}.sidebar-user{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card)}.sidebar-user__name{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--fg-default)}.sidebar-user__role{font-size:var(--text-xs);color:var(--fg-muted)}.sidebar-logout{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);width:100%;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--fg-muted);background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.sidebar-logout:hover{color:var(--accent-negative);background:var(--accent-negative-dim);border-color:var(--accent-negative-mid)}.main-panel{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-5);min-height:0;overflow:hidden}.main-subheader{display:flex;align-items:center}.main-cards{display:grid;grid-template-columns:auto 1fr;gap:var(--space-4);animation:fadeInUp var(--duration-slow) var(--ease-out) both}.employee-summary{display:flex;gap:var(--space-5);padding:var(--space-4) var(--space-5);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-card);grid-column:1 / -1}.employee-summary__item{display:flex;flex-direction:column;gap:4px}.employee-summary__label{font-size:var(--text-xs);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em}.employee-summary__value{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--fg-default);font-variant-numeric:tabular-nums}.employee-summary__value--positive{color:var(--accent-positive)}.main-cards--employee{grid-template-columns:1fr 1fr}.employee-month-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-5);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-card)}.employee-month-card--muted{opacity:.7}.employee-month-card__title{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--fg-default);text-transform:capitalize;margin-bottom:var(--space-1)}.employee-month-card__row{display:flex;justify-content:space-between;align-items:center}.employee-month-card__label{font-size:var(--text-xs);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em}.employee-month-card__value{font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--fg-default);font-variant-numeric:tabular-nums}.employee-month-card__value--positive{color:var(--accent-positive)}.error-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--accent-negative-dim);border:1px solid var(--accent-negative-mid);border-radius:var(--radius-md);color:var(--accent-negative-text);font-size:var(--text-sm);animation:fadeInUp var(--duration-base) var(--ease-out)}.error-banner__icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:var(--text-xs);font-weight:var(--weight-bold);background:var(--accent-negative);color:#fff;border-radius:var(--radius-full);flex-shrink:0}.error-banner__retry{margin-left:auto;padding:var(--space-1) var(--space-3);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);background:var(--accent-negative);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer}.error-banner__retry:hover{filter:brightness(1.15)}.list-section{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;animation:fadeInUp var(--duration-slow) var(--ease-out) both}.list-section-header{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);flex-shrink:0}.list-section-title{margin:0;font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--fg-primary)}.list-section-hint{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-muted);background:var(--surface-3);padding:2px var(--space-2);border-radius:var(--radius-full)}.list-section-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.month-period-selector{position:relative;display:inline-flex;align-items:center;gap:var(--space-2)}.period-selector-label{font-size:var(--text-xs);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em}.period-selector-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--accent-positive);background:var(--accent-positive-dim);border:1px solid var(--accent-positive-mid);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.period-selector-btn:hover{background:var(--accent-positive-mid)}.period-selector-caret{font-size:.7rem;opacity:.7}.period-selector-dropdown{position:absolute;top:100%;left:0;margin-top:var(--space-2);min-width:200px;padding:var(--space-2);background:var(--popup-bg);border:1px solid var(--popup-border);border-radius:var(--radius-lg);box-shadow:var(--popup-shadow);z-index:100;max-height:300px;overflow-y:auto;animation:slideDown var(--duration-base) var(--ease-out)}.period-option{display:block;width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--text-base);text-align:left;color:var(--fg-primary);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.period-option:hover{background:var(--surface-3)}.period-option-divider{height:1px;margin:var(--space-2) 0;background:var(--border-subtle)}.recurring-content{flex:1;min-height:0;overflow-y:auto}@media(max-width:900px){.app-topbar{flex-wrap:wrap}.app-topbar__right{margin-left:0}.app-shell{grid-template-columns:1fr;height:auto}.sidebar{order:2}.main-cards{grid-template-columns:1fr}}
