.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{content:"";border:3px solid #ccc;border-width:3px 3px 0 0;width:9px;height:9px;display:block;position:absolute;top:6px}.react-datepicker__sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.react-datepicker-wrapper{border:0;padding:0;display:inline-block}.react-datepicker{color:#000;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:initial;background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative}.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-right-radius:.375em;border-bottom-left-radius:.375em}.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,.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.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,.react-datepicker__header--middle,.react-datepicker__header--bottom){border-top-right-radius:.3rem}.react-datepicker__header--middle{border-top:1px solid #aeaeae;border-radius:0;margin-top:4px}.react-datepicker__header--bottom{border-top:1px solid #aeaeae;border-bottom:none;border-radius:0 0 .3rem .3rem}.react-datepicker__header-wrapper{position:relative}.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:2px}.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{margin:0 15px;display:inline-block}.react-datepicker__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;background-color:#0000;border:1px solid #aeaeae;border-radius:.3rem;margin-top:5px;padding:2px 5px}.react-datepicker__month-select:focus-visible,.react-datepicker__year-select:focus-visible,.react-datepicker__month-year-select:focus-visible{outline:1px auto}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{color:#000;margin-top:0;font-size:.944rem;font-weight:700}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{text-align:center;cursor:pointer;z-index:1;text-indent:-999em;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex;position:absolute;top:2px;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{margin-left:auto;margin-right:auto;display:block;position:relative;top:0}.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{width:0;font-size:20px;position:relative;top:-1px}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.react-datepicker__month-container{float:left}.react-datepicker__year{text-align:center;margin:.5em}.react-datepicker__year-wrapper{flex-wrap:wrap;max-width:180px;display:flex}.react-datepicker__year .react-datepicker__year-text{width:5em;margin:2px;display:inline-block}.react-datepicker__month{text-align:center;margin:.5em}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{width:5em;margin:2px;display:inline-block}.react-datepicker__input-time-container{clear:both;float:left;text-align:left;width:100%;margin:5px 0 10px 15px}.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{margin-left:10px;display:inline-block}.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{-webkit-appearance:none;margin:0}.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{border:1px solid #aeaeae;border-radius:.375em;display:inline;position:absolute;top:0;right:-87px}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.375em;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{text-align:center;border-bottom-right-radius:.375em;width:85px;margin:0 auto;overflow-x:hidden}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:content-box;width:100%;height:calc(195px + 1.0625em);margin:0;padding-left:0;padding-right:0;list-style:none;overflow-y:scroll}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{white-space:nowrap;height:30px;padding:5px 10px}.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{color:#fff;background-color:#216ba5;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:#0000}.react-datepicker__week-number{color:#ccc;text-align:center;width:2.125em;margin:.208em;line-height:2.125em;display:inline-block}.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{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{color:#fff;background-color:#216ba5;border-radius:.3rem}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;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;text-align:center;width:2.125em;margin:.208em;line-height:2.125em;display:inline-block}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.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{background-color:#f0f0f0;border-radius:.3rem}.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{color:#fff;background-color:#3dcc4a;border-radius:.3rem}.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{color:#fff;background-color:#ff6803;border-radius:.3rem;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.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{color:#fff;background-color:#216ba5;border-radius:.3rem}.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{color:#000;background-color:#bad9f1;border-radius:.3rem}.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{color:#fff;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){color:#000;background-color:#f0f0f0}.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{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:70%;left:50%;transform:translate(-50%)}.react-datepicker__input-container{width:100%;display:inline-block;position:relative}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:content-box;padding:.625em;position:absolute}.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 #0000;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{top:0;right:-16px;transform:rotate(135deg)}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{z-index:1;text-align:center;background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;width:50%;position:absolute;top:30px;left:25%}.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{width:100%;margin-left:auto;margin-right:auto;line-height:20px;display:block}.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;user-select:none;border-bottom-right-radius:.3rem;border-bottom-left-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;vertical-align:middle;background-color:#0000;border:0;outline:0;height:100%;padding:0 6px 0 0;display:table-cell;position:absolute;top:0;right:0}.react-datepicker__close-icon:after{cursor:pointer;color:#fff;text-align:center;vertical-align:middle;content:"×";background-color:#216ba5;border-radius:50%;width:16px;height:16px;padding:2px;font-size:12px;line-height:1;display:table-cell}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{cursor:pointer;text-align:center;clear:left;background:#f0f0f0;border-top:1px solid #aeaeae;padding:5px 0;font-weight:700}.react-datepicker__portal{z-index:2147483647;background-color:#000c;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.react-datepicker__children-container{width:17.25em;height:auto;margin:.5em;padding-left:.25em;padding-right:.25em}.react-datepicker__aria-live{clip-path:circle(0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.react-datepicker__calendar-icon{vertical-align:-.125em;width:1em;height:1em}.react-datepicker-popper-offset{margin-top:-.7em}:root{--topbar-height:64px;--sidebar-width:220px;--sidebar-collapsed-width:78px;--bg:#0a0d14;--surface:#111722;--surface2:#18202d;--surface3:#212c3d;--border:#94acd21a;--border2:#94acd233;--text:#edf2fb;--muted:#94a2ba;--accent:#4f8fe8;--accent-strong:#2f70d3;--accent-soft:#4f8fe824;--canvas-glow-1:#203f6c33;--canvas-glow-2:#121d322e;--panel-backdrop:#090d14cc;--hero-surface:linear-gradient(145deg, #0e141ef5, #151e2be6);--hero-shadow:0 30px 80px #0000006b;--overlay-bg:#03060cad;--success:#42c987;--danger:#f47c7c;--warning:#f3c05f;--date-picker-bg:#141b28;--date-picker-hover:#4f8fe829;--date-picker-today:#42c98726;--cap:#a78bfa;--cap-bg:#a78bfa1f;--eqp:#34d399;--eqp-bg:#34d3991f;--inv:#fbbf24;--inv-bg:#fbbf241f;--mnt:#f87171;--mnt-bg:#f871711f;--ent:#60a5fa;--ent-bg:#60a5fa1f;--pend:#9ca3af;--proc:#60a5fa;--comp:#34d399;--bloq:#f87171}html[data-theme=light]{--bg:#e9edf2;--surface:#f3f6f9;--surface2:#fcfdfe;--surface3:#dde4ec;--border:#2234541f;--border2:#2234542e;--text:#162338;--muted:#627188;--accent:#1f7cf0;--accent-strong:#105fcd;--accent-soft:#1f7cf01a;--canvas-glow-1:#1f7cf01a;--canvas-glow-2:#6782aa1a;--panel-backdrop:#f3f6f9eb;--hero-surface:linear-gradient(160deg, #fcfdfef5, #e4e9eff0);--hero-shadow:0 24px 60px #37588a24;--overlay-bg:#0f172a47;--success:#1f9d64;--danger:#d85d5d;--warning:#b88a19;--date-picker-bg:#fff;--date-picker-hover:#1f7cf01f;--date-picker-today:#1f9d641f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:14px}#root{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}body{background:var(--bg);color:var(--text);flex-direction:column;min-height:100dvh;margin:0;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background-color .2s,color .2s;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);min-height:var(--topbar-height);z-index:50;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 2rem;display:flex;position:sticky;top:0;box-shadow:0 8px 26px #0611260a}.topbar-brand{align-items:center;gap:10px;min-width:0;display:flex}.topbar-copy{flex-direction:column;min-width:0;display:flex}.sidebar-toggle{border:1px solid var(--border);background:var(--surface2);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sidebar-toggle:hover{background:var(--surface3)}.sidebar-toggle.is-disabled{opacity:.5;cursor:default}.sidebar-toggle.is-disabled:hover{background:var(--surface2)}.sidebar-toggle-icon{font-size:15px;line-height:1}.topbar-title{letter-spacing:-.01em;font-size:13px;font-weight:600}.topbar-title,.topbar-sub{display:block}.topbar-sub{color:var(--muted);font-size:11px}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.contract-date{color:var(--muted);border:1px solid var(--border);border-radius:6px;padding:4px 10px;font-family:DM Mono,monospace;font-size:11px}.btn{cursor:pointer;border:none;border-radius:6px;padding:6px 14px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px;font-weight:500;transition:all .15s}.btn-ghost{color:var(--muted);border:1px solid var(--border2);background:0 0}.btn-ghost:hover{color:var(--text);border-color:#ffffff40}html[data-theme=light] .btn-ghost:hover{border-color:#0003}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-strong)}.btn-danger{color:#fff;background:#ef4444;border:1px solid #dc2626}.btn-danger:hover{background:#dc2626}.project-board-shell{flex-direction:column;height:100vh;display:flex}.project-board-shell .app{overflow:hidden}.app{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);flex:auto;align-items:stretch;min-height:0;transition:grid-template-columns .24s;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;align-self:stretch;gap:2px;min-height:100%;padding:1.5rem 1rem;transition:padding .24s,border-color .24s,background-color .24s;display:flex;overflow-y:auto}.sidebar-header{justify-content:flex-end;margin-bottom:.75rem;transition:justify-content .24s,margin-bottom .24s;display:flex}.sidebar-section{letter-spacing:.08em;color:var(--muted);text-transform:uppercase;margin:12px 0 4px;padding:0 8px;font-size:10px;font-weight:600}.sidebar-item{cursor:pointer;color:var(--muted);text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;width:100%;padding:7px 8px;font-size:13px;transition:padding .24s,gap .24s,color .12s,background-color .12s;display:flex}.sidebar-item-menu{border:1px solid var(--border);background:var(--surface2);margin-bottom:.5rem}.sidebar-item-menu:hover{background:var(--surface3);border-color:var(--border2)}.sidebar-label{white-space:nowrap;opacity:1;min-width:0;max-width:160px;transition:opacity .16s,max-width .24s,transform .24s;overflow:hidden;transform:translate(0)}.sidebar-item:hover{background:var(--surface2);color:var(--text)}.sidebar-item.active{background:var(--accent-soft);color:var(--accent)}.sidebar-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.sidebar-count{background:var(--surface2);color:var(--muted);border-radius:10px;margin-left:auto;padding:1px 6px;font-family:DM Mono,monospace;font-size:11px;transition:top .24s,right .24s,margin-left .24s,padding .24s,opacity .16s}.sidebar-section,.sidebar-status-summary,.sidebar-toggle{transition:opacity .16s,transform .24s,margin .24s}body.sidebar-collapsed{--sidebar-width:var(--sidebar-collapsed-width)}body.sidebar-collapsed .sidebar{padding-left:.65rem;padding-right:.65rem}body.sidebar-collapsed .sidebar-header{justify-content:center}body.sidebar-collapsed .sidebar-item{justify-content:center;padding-left:.5rem;padding-right:.5rem;position:relative}body.sidebar-collapsed .sidebar-label{opacity:0;pointer-events:none;max-width:0;transform:translate(-6px)}body.sidebar-collapsed .sidebar-section,body.sidebar-collapsed .sidebar-status-summary,body.sidebar-collapsed .sidebar-section--states{opacity:0;pointer-events:none;transform:translate(-8px)}body.sidebar-collapsed .sidebar-count{margin-left:0;padding:1px 4px;font-size:10px;position:absolute;top:4px;right:4px}body.sidebar-collapsed .sidebar-status-summary,body.sidebar-collapsed .sidebar-section,body.sidebar-collapsed .sidebar-section--states{max-height:0;margin:0;overflow:hidden}body.sidebar-collapsed .main{transition:padding .24s}.main{flex-direction:column;min-height:0;display:flex;overflow:hidden}.kpi-bar{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:10px;padding:1.25rem 1.5rem;display:flex}.kpi{background:var(--surface2);border:1px solid var(--border);border-radius:10px;flex:1;min-width:110px;padding:12px 16px}.kpi-num{font-family:DM Mono,monospace;font-size:24px;font-weight:600;line-height:1}.kpi-lbl{color:var(--muted);margin-top:4px;font-size:11px}.kpi-bar-inner{background:var(--border2);border-radius:2px;height:3px;margin-top:8px;overflow:hidden}.kpi-bar-fill{border-radius:2px;height:100%;transition:width .6s}.toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding:1rem 1.5rem;display:flex}.search-wrap{flex:1;min-width:160px;position:relative}.search-wrap svg{opacity:.4;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search{background:var(--surface2);border:1px solid var(--border2);width:100%;color:var(--text);border-radius:7px;outline:none;padding:7px 12px 7px 32px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px}.search:focus{border-color:var(--accent)}.filter-tabs{flex-wrap:wrap;gap:4px;display:flex}.ftab{cursor:pointer;border:1px solid var(--border);color:var(--muted);background:0 0;border-radius:20px;padding:5px 12px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px;transition:all .12s}.ftab:hover{color:var(--text);border-color:var(--border2)}.ftab.active{color:var(--text);border-color:var(--border2);background:var(--surface2)}.mine-tab{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.mine-tab svg{flex-shrink:0}.mine-tab.active{color:#fff;border-color:var(--accent);background:var(--accent)}.mine-tab.active:hover{color:#fff;background:var(--accent-strong);border-color:var(--accent-strong)}.mine-count{background:var(--border);color:var(--muted);border-radius:10px;padding:1px 6px;font-family:DM Mono,monospace;font-size:10px}.mine-tab.active .mine-count{color:#fff;background:#ffffff40}.board-wrap{flex:1;padding:1.5rem;overflow-x:auto}.board{grid-template-columns:repeat(4,280px);gap:16px;min-width:max-content;display:grid}.col{background:var(--surface2);outline-offset:-2px;border-radius:12px;outline:2px solid #0000;padding:14px;transition:background-color .15s,outline-color .15s}.col.col-over{background:var(--surface3,var(--border));outline-color:var(--accent)}.col-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.col-title-wrap{align-items:center;gap:8px;display:flex}.col-indicator{border-radius:50%;width:10px;height:10px}.col-title{letter-spacing:.03em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:600}.col-badge{background:var(--border);color:var(--muted);border-radius:10px;padding:2px 7px;font-family:DM Mono,monospace;font-size:11px}.card{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:10px;margin-bottom:10px;padding:12px 14px;transition:border-color .15s,transform .1s}.card:last-child{margin-bottom:0}.card:hover{border-color:var(--border2);transform:translateY(-1px)}.card.dragging{opacity:.4}.card.card-drag-overlay{cursor:grabbing;box-shadow:0 8px 24px #00000040}.load-more-btn{justify-content:center;width:100%;padding:8px;font-size:11px;display:flex}.card-top{justify-content:flex-start;align-items:center;gap:6px;margin-bottom:8px;display:flex}.card-top .cat-pill{margin-left:auto}.card-title{color:var(--text);margin-bottom:4px;font-size:13px;font-weight:600;line-height:1.35}.cat-pill{white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;border-radius:4px;flex-shrink:0;padding:3px 9px;font-size:11px;font-weight:700}.cat-pill[data-cat=cap]{color:#a78bfa;background:#a78bfa1f}.cat-pill[data-cat=eqp]{color:#34d399;background:#34d3991f}.cat-pill[data-cat=inv]{color:#fbbf24;background:#fbbf241f}.cat-pill[data-cat=mnt]{color:#f87171;background:#f871711f}.cat-pill[data-cat=ent]{color:#60a5fa;background:#60a5fa1f}html[data-theme=light] .cat-pill[data-cat=cap]{color:#7c3aed;background:#7c3aed24}html[data-theme=light] .cat-pill[data-cat=eqp]{color:#047857;background:#04785724}html[data-theme=light] .cat-pill[data-cat=inv]{color:#b45309;background:#b4530924}html[data-theme=light] .cat-pill[data-cat=mnt]{color:#dc2626;background:#dc262624}html[data-theme=light] .cat-pill[data-cat=ent]{color:#2563eb;background:#2563eb24}.cat-pill[data-cat=mlic]{color:#a78bfa;background:#a78bfa1f}.cat-pill[data-cat=mcot]{color:#60a5fa;background:#60a5fa1f}.cat-pill[data-cat=mped]{color:#fbbf24;background:#fbbf241f}.cat-pill[data-cat=ment]{color:#34d399;background:#34d3991f}.cat-pill[data-cat=mins]{color:#f472b6;background:#f472b61f}.cat-pill[data-cat=mcap]{color:#f87171;background:#f871711f}.cat-pill[data-cat=madm]{color:#22d3ee;background:#22d3ee1f}html[data-theme=light] .cat-pill[data-cat=mlic]{color:#7c3aed;background:#7c3aed24}html[data-theme=light] .cat-pill[data-cat=mcot]{color:#2563eb;background:#2563eb24}html[data-theme=light] .cat-pill[data-cat=mped]{color:#b45309;background:#b4530924}html[data-theme=light] .cat-pill[data-cat=ment]{color:#047857;background:#04785724}html[data-theme=light] .cat-pill[data-cat=mins]{color:#be185d;background:#be185d24}html[data-theme=light] .cat-pill[data-cat=mcap]{color:#dc2626;background:#dc262624}html[data-theme=light] .cat-pill[data-cat=madm]{color:#0e7490;background:#0e749024}:root{--cat-cap:#a78bfa;--cat-eqp:#34d399;--cat-inv:#fbbf24;--cat-mnt:#f87171;--cat-ent:#60a5fa;--cat-mlic:#a78bfa;--cat-mcot:#60a5fa;--cat-mped:#fbbf24;--cat-ment:#34d399;--cat-mins:#f472b6;--cat-mcap:#f87171;--cat-madm:#22d3ee;--st-pend:#9ca3af;--st-proc:#60a5fa;--st-comp:#34d399;--st-bloq:#f87171}html[data-theme=light]{--cat-cap:#7c3aed;--cat-eqp:#047857;--cat-inv:#b45309;--cat-mnt:#dc2626;--cat-ent:#2563eb;--cat-mlic:#7c3aed;--cat-mcot:#2563eb;--cat-mped:#b45309;--cat-ment:#047857;--cat-mins:#be185d;--cat-mcap:#dc2626;--cat-madm:#0e7490;--st-pend:#4b5563;--st-proc:#2563eb;--st-comp:#047857;--st-bloq:#dc2626}.status-pill{white-space:nowrap;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:600}.status-pill[data-status=Pendiente]{color:#9ca3af;background:#7a849926}.status-pill[data-status=En\ proceso]{color:#60a5fa;background:#3b82f62e}.status-pill[data-status=Completado]{color:#34d399;background:#34d3992e}.status-pill[data-status=Bloqueado]{color:#f87171;background:#f871712e}html[data-theme=light] .status-pill[data-status=Pendiente]{color:#4b5563;background:#4b55631f}html[data-theme=light] .status-pill[data-status=En\ proceso]{color:#2563eb;background:#2563eb24}html[data-theme=light] .status-pill[data-status=Completado]{color:#047857;background:#04785724}html[data-theme=light] .status-pill[data-status=Bloqueado]{color:#dc2626;background:#dc262624}.cat-pill[data-type=contrato]{color:#60a5fa;background:#60a5fa1f}.cat-pill[data-type=licitacion]{color:#a78bfa;background:#a78bfa1f}.cat-pill[data-type=marca]{color:#34d399;background:#34d3991f}html[data-theme=light] .cat-pill[data-type=contrato]{color:#2563eb;background:#2563eb24}html[data-theme=light] .cat-pill[data-type=licitacion]{color:#7c3aed;background:#7c3aed24}html[data-theme=light] .cat-pill[data-type=marca]{color:#047857;background:#04785724}.pstatus-pill{white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:600}.pstatus-pill[data-status=Activo]{color:#34d399;background:#34d3992e}.pstatus-pill[data-status=Pausado]{color:#fbbf24;background:#fbbf242e}.pstatus-pill[data-status=Completado]{color:#9ca3af;background:#7a84992e}.pstatus-pill[data-status=Cancelado]{color:#f87171;background:#f871712e}html[data-theme=light] .pstatus-pill[data-status=Activo]{color:#047857;background:#04785724}html[data-theme=light] .pstatus-pill[data-status=Pausado]{color:#b45309;background:#b4530924}html[data-theme=light] .pstatus-pill[data-status=Completado]{color:#4b5563;background:#4b55631f}html[data-theme=light] .pstatus-pill[data-status=Cancelado]{color:#dc2626;background:#dc262624}.card-client{color:var(--text);opacity:.85;margin-bottom:2px;font-size:11px;font-weight:600}.card-owner-row{color:var(--muted);margin-bottom:8px;font-size:11px;font-weight:400}.card-due{color:var(--muted);align-items:center;gap:6px;font-size:11px;font-weight:500;display:flex}.card-due-dot{background:var(--muted);border-radius:50%;flex-shrink:0;width:7px;height:7px}.card-detail{border-top:1px solid var(--border);color:var(--muted);white-space:pre-wrap;word-break:break-word;margin-top:8px;padding-top:8px;font-size:11px;line-height:1.45;display:none}.card-notes-icon{color:var(--muted);cursor:pointer;flex-shrink:0;align-items:center;margin-left:auto;display:inline-flex}.card-notes-icon:hover{color:var(--accent)}.notes-tooltip{z-index:1000;background:var(--surface);border:1px solid var(--border2);max-width:280px;color:var(--text);white-space:pre-wrap;word-break:break-word;pointer-events:none;border-radius:8px;padding:8px 10px;font-size:11px;line-height:1.45;position:fixed;box-shadow:0 8px 24px #0611264d}.card:hover .card-detail{display:block}.card-due--overdue{color:#f87171}.card-due--overdue .card-due-dot{background:#f87171}.card-due--today{color:#fb923c}.card-due--today .card-due-dot{background:#fb923c}.card-due--soon .card-due-dot{background:#fbbf24}.card-due--far .card-due-dot,.card-due--done .card-due-dot{background:#34d399}.card-due--none .card-due-dot{background:var(--muted)}html[data-theme=light] .card-due--overdue{color:#dc2626}html[data-theme=light] .card-due--overdue .card-due-dot{background:#dc2626}html[data-theme=light] .card-due--today{color:#ea580c}html[data-theme=light] .card-due--today .card-due-dot{background:#ea580c}html[data-theme=light] .card-due--soon .card-due-dot{background:#b45309}html[data-theme=light] .card-due--far .card-due-dot,html[data-theme=light] .card-due--done .card-due-dot{background:#047857}.prio-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:3px 9px;font-size:11px;font-weight:700}.prio-alta{color:#f87171;background:#f8717126}.prio-media{color:#fbbf24;background:#fbbf2426}.prio-baja{color:#34d399;background:#34d39926}html[data-theme=light] .prio-alta{color:#dc2626;background:#dc262624}html[data-theme=light] .prio-media{color:#b45309;background:#b4530924}html[data-theme=light] .prio-baja{color:#047857;background:#04785724}.list-wrap{flex:1;padding:1.5rem;overflow:auto}.list-table{border-collapse:collapse;width:100%;min-width:760px}.list-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;text-align:left;border-bottom:1px solid var(--border);padding:8px 12px;font-size:11px;font-weight:600}.list-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}.list-table tr:hover td{background:var(--surface2)}.list-table tr:last-child td{border-bottom:none}.dash-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.dash-card{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:18px 20px}.dash-card-title{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:12px;font-size:11px;font-weight:600}.cat-row{align-items:center;gap:10px;margin-bottom:10px;display:flex}.cat-row:last-child{margin-bottom:0}.cat-name{min-width:110px;font-size:13px;font-weight:500}.cat-track{background:var(--border);border-radius:3px;flex:1;height:6px;overflow:hidden}.cat-fill{border-radius:3px;height:100%;transition:width .6s}.cat-pct{color:var(--muted);text-align:right;min-width:32px;font-family:DM Mono,monospace;font-size:12px}.overlay{background:var(--overlay-bg);z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;display:none;position:fixed;inset:0}.overlay.open{display:flex}.modal{background:var(--surface);border:1px solid var(--border2);z-index:1001;border-radius:14px;width:520px;max-width:95vw;max-height:88vh;padding:1.75rem;scroll-margin-top:100vh;animation:.2s slideUp;position:fixed;overflow-y:auto}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.modal-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.modal-title{font-size:16px;font-weight:600;line-height:1.4}.modal-close{border:1px solid var(--border2);width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.modal-close:hover{background:var(--surface2);color:var(--text)}.modal-detail{color:var(--muted);background:var(--surface2);border-left:3px solid var(--accent);border-radius:8px;margin-bottom:16px;padding:12px 14px;font-size:12px;line-height:1.7}.form-row{margin-bottom:14px}.form-row-split{gap:12px;display:flex}.form-row-split>.form-col{flex:1 1 0;min-width:0}.form-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.form-row input,.form-row select,.form-row textarea{background:var(--surface2);border:1px solid var(--border2);width:100%;color:var(--text);border-radius:8px;outline:none;padding:8px 12px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--accent)}.form-row textarea{resize:vertical;min-height:80px;line-height:1.6}.form-row select option{background:var(--surface)}.modal-footer{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.toast{background:var(--surface2);border:1px solid var(--border2);color:var(--text);z-index:300;opacity:0;pointer-events:none;border-radius:8px;padding:10px 16px;font-size:13px;transition:opacity .2s;position:fixed;bottom:24px;right:24px;box-shadow:0 20px 44px #0a12242e}.toast.show{opacity:1}.hidden{display:none!important}.datepicker-picker{background-color:var(--date-picker-bg);border:1px solid var(--border);border-radius:8px}.datepicker-picker .datepicker-header .datepicker-controls .button{color:var(--text);background:0 0;border:none}.datepicker-picker .datepicker-grid .datepicker-cell{color:var(--muted)}.datepicker-picker .datepicker-grid .datepicker-cell:hover{background-color:var(--date-picker-hover);color:var(--text)}.datepicker-picker .datepicker-grid .datepicker-cell.selected{background-color:var(--accent);color:#fff}.datepicker-picker .datepicker-grid .datepicker-cell.today{background-color:var(--date-picker-today);color:var(--success)}.datepicker-picker .datepicker-grid .datepicker-cell.disabled{color:#374151}.datepicker-picker .datepicker-view .days-of-week .dow{color:#60a5fa;font-size:11px;font-weight:600}.datepicker-picker .datepicker-footer .datepicker-controls .button{color:var(--muted);border:1px solid var(--border);background:0 0;border-radius:4px;font-size:12px}.user-dropdown{position:relative}.user-btn{background:linear-gradient(135deg, var(--accent-strong), var(--accent));color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-family:DM Mono,monospace;font-size:13px;font-weight:600;transition:opacity .15s;display:flex}.user-btn:hover{opacity:.85}.dropdown-content{background:var(--surface);z-index:200;border:1px solid var(--border2);border-radius:10px;min-width:160px;padding:6px;animation:.15s slideUp;display:none;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #0006}.dropdown-content.open{display:block}.user-name{color:var(--text);border-bottom:1px solid var(--border);padding:8px 10px 6px;font-size:12px;font-weight:600;margin-bottom:4px!important}.dropdown-content .btn{text-align:left;width:100%;color:var(--muted);background:0 0;border:none;border-radius:6px;padding:7px 10px;font-size:12px}.dropdown-content .btn:hover{background:var(--surface2);color:#f87171;border:none}body.login-page{background:radial-gradient(circle at top left, var(--canvas-glow-1), transparent 32%), radial-gradient(circle at bottom right, var(--canvas-glow-2), transparent 28%), linear-gradient(180deg, var(--bg) 0%, var(--surface) 100%)}.login-shell{grid-template-columns:minmax(320px,460px) 1fr;min-height:100vh;display:grid}.login-panel{background:var(--panel-backdrop);border-right:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);flex-direction:column;justify-content:center;gap:1.5rem;padding:3rem;display:flex;position:relative}.login-tools{justify-content:flex-end;margin-bottom:.5rem;display:flex}.login-brand{justify-content:center;display:flex}.brand-logo{max-width:100%;height:auto;display:block}.brand-picture{align-items:center;display:inline-flex}.brand-logo--topbar{flex-shrink:0;width:124px;min-width:124px}.brand-logo--panel{width:180px;min-width:180px}.brand-logo--hero{width:240px;margin-bottom:1.2rem}.login-brand-copy{text-align:center;justify-items:center;gap:.2rem;display:grid}.login-kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:4px;font-family:DM Mono,monospace;font-size:11px}.login-brand h1{letter-spacing:-.04em;font-size:2rem;line-height:1}.login-copy{color:var(--muted);width:100%;max-width:26rem;margin-inline:auto;line-height:1.6}.login-form{gap:.75rem;width:100%;max-width:26rem;margin-inline:auto;display:grid}.login-label{color:var(--muted);margin-top:.3rem;font-size:12px;font-weight:600}.login-input{border:1px solid var(--border2);width:100%;color:var(--text);font:inherit;background:#ffffff05;border-radius:10px;outline:none;padding:.9rem 1rem;transition:border-color .15s,box-shadow .15s,background .15s}.login-input:focus{background:#ffffff0a;border-color:#3b82f6a6;box-shadow:0 0 0 3px #3b82f629}.login-submit{border-radius:10px;width:100%;margin-top:.6rem;padding:.95rem 1rem;font-size:13px}#login-demo{margin-top:0}.login-message{min-height:1.2rem;color:var(--danger);font-size:12px}.login-message[data-variant=success]{color:var(--success)}.login-footer{color:var(--muted);font-family:DM Mono,monospace;font-size:12px}.auth-switch{color:var(--muted);text-align:left;width:100%;max-width:26rem;margin-inline:auto;font-size:13px}.auth-switch a{color:var(--text);border-bottom:1px solid #fff3;padding-bottom:1px;text-decoration:none}.auth-switch a:hover{color:var(--accent);border-bottom-color:#3b82f6b3}.login-aside{isolation:isolate;background:linear-gradient(#0c121cd1,#101824eb);justify-content:center;align-items:center;padding:3rem;display:flex;position:relative;overflow:hidden}html[data-theme=light] .login-aside{background:linear-gradient(#f4f7fbf5,#e7ecf2fa)}.login-ambient{pointer-events:none;z-index:-1;filter:blur(72px)saturate(115%);opacity:.88;position:absolute;inset:-20%}html[data-theme=light] .login-ambient{filter:blur(82px)saturate(108%);opacity:.78}.ambient-layer{will-change:transform, opacity;transform-origin:50%;position:absolute;inset:0}.ambient-layer-a{background:radial-gradient(44% 40% at 18% 24%,#4f8fe83d,#0000 72%),radial-gradient(34% 30% at 72% 20%,#42c98724,#0000 74%),radial-gradient(30% 28% at 58% 78%,#94a2ba1f,#0000 78%);animation:54s linear infinite alternate ambientFlowA}html[data-theme=light] .ambient-layer-a{background:radial-gradient(44% 40% at 18% 24%,#1f7cf02e,#0000 72%),radial-gradient(34% 30% at 72% 20%,#1f9d641a,#0000 74%),radial-gradient(30% 28% at 58% 78%,#6782aa1a,#0000 78%)}.ambient-layer-b{opacity:.7;background:radial-gradient(38% 34% at 78% 34%,#4f8fe82e,#0000 74%),radial-gradient(42% 38% at 26% 74%,#42c9871f,#0000 76%),radial-gradient(28% 24% at 48% 20%,#a78bfa14,#0000 80%);animation:68s linear infinite alternate ambientFlowB}html[data-theme=light] .ambient-layer-b{opacity:.58;background:radial-gradient(38% 34% at 78% 34%,#1f7cf024,#0000 74%),radial-gradient(42% 38% at 26% 74%,#1f9d6414,#0000 76%),radial-gradient(28% 24% at 48% 20%,#6782aa14,#0000 80%)}.ambient-layer-c{opacity:.54;background:radial-gradient(46% 42% at 52% 52%,#4f8fe81f,#0000 74%),radial-gradient(32% 30% at 84% 70%,#42c98714,#0000 78%),radial-gradient(30% 26% at 18%,#94a2ba14,#0000 80%);animation:82s linear infinite alternate ambientFlowC}html[data-theme=light] .ambient-layer-c{opacity:.46;background:radial-gradient(46% 42% at 52% 52%,#1f7cf01a,#0000 74%),radial-gradient(32% 30% at 84% 70%,#1f9d640f,#0000 78%),radial-gradient(30% 26% at 18%,#6782aa14,#0000 80%)}.login-hero-card{background:var(--hero-surface);border:1px solid var(--border);width:min(100%,42rem);box-shadow:var(--hero-shadow);transform-origin:50%;border-radius:28px;padding:2.25rem;position:relative}.hero-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:.9rem;font-family:DM Mono,monospace;font-size:11px;display:inline-flex}.login-hero-card h2{letter-spacing:-.05em;max-width:11ch;margin-bottom:1rem;font-size:clamp(2rem,4vw,3.7rem);line-height:.96}.login-hero-card p{color:var(--muted);max-width:42ch;margin-bottom:1.25rem;line-height:1.7}.login-hero-card>*{animation:.7s both loginHeroContentFade}.login-hero-card>:first-child{animation-delay:.16s}.login-hero-card>:nth-child(2){animation-delay:.24s}.login-hero-card>:nth-child(3){animation-delay:.32s}.login-hero-card>:nth-child(4){animation-delay:.4s}.login-hero-card>:nth-child(5){animation-delay:.48s}@keyframes loginHeroContentFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes ambientFlowA{0%{transform:translate(-3%,-2%)scale(1.04)rotate(0)}20%{transform:translateY(1%)scale(1.08)rotate(4deg)}40%{transform:translate(2%,3%)scale(1.12)rotate(8deg)}60%{transform:translate(-1%,5%)scale(1.09)rotate(11deg)}80%{transform:translate(-4%,2%)scale(1.06)rotate(6deg)}to{transform:translate(-2%,-1%)scale(1.05)rotate(1deg)}}@keyframes ambientFlowB{0%{transform:translate(3%,-2%)scale(1.02)rotate(0)}25%{transform:translate(5%,1%)scale(1.06)rotate(-5deg)}50%{transform:translate(1%,4%)scale(1.1)rotate(-9deg)}75%{transform:translate(-2%,2%)scale(1.07)rotate(-4deg)}to{transform:translate(2%,-1%)scale(1.03)rotate(0)}}@keyframes ambientFlowC{0%{transform:translate(-1%,2%)scale(1.08)rotate(0)}25%{transform:translate(2%)scale(1.11)rotate(3deg)}50%{transform:translate(4%,-2%)scale(1.14)rotate(7deg)}75%{transform:translate(1%,1%)scale(1.1)rotate(4deg)}to{transform:translate(-2%,3%)scale(1.07)rotate(0)}}@media (prefers-reduced-motion:reduce){.login-ambient,.ambient-layer,.login-hero-card,.login-hero-card>*{animation:none!important}}@media (width>=1391px){.topbar{min-height:var(--topbar-height);flex-wrap:nowrap;align-items:center;gap:12px 18px;height:auto;padding:.75rem 1.35rem}.topbar-brand{flex:none;align-items:center;min-width:0}.topbar-copy{flex-direction:column;justify-content:center;gap:2px;min-width:0;display:flex}.topbar-title,.topbar-sub{white-space:normal;line-height:1.2}.topbar-actions{flex-wrap:nowrap;flex:auto;justify-content:end;align-items:center;gap:8px;min-width:0}.contract-date{white-space:normal;text-align:center;max-width:540px;margin-right:auto;line-height:1.3}}.hero-points{color:var(--text);gap:.7rem;font-size:13px;display:grid}.theme-toggle{align-items:center;gap:7px;display:inline-flex}.theme-toggle-icon{font-size:13px;line-height:1}@media (width<=1024px) and (width>=768px){.topbar{height:auto;min-height:var(--topbar-height);align-items:center;gap:10px 12px;padding:.8rem 1rem}.topbar-brand{flex:auto;min-width:0}.topbar-actions{flex-wrap:nowrap;flex:none;justify-content:flex-end;align-items:center;gap:6px;width:auto}.topbar-actions .btn{padding:6px 12px}.topbar-actions .btn-primary{white-space:nowrap;flex-shrink:0}.topbar-user{flex-direction:row;flex-shrink:0;align-items:center}.contract-date{white-space:normal;flex:320px;max-width:420px;margin-right:auto;line-height:1.35}.app{grid-template-columns:var(--sidebar-width) minmax(0, 1fr)}.sidebar{padding:1rem .85rem}.kpi-bar,.toolbar,.board-wrap,.list-wrap{padding-left:1rem;padding-right:1rem}.kpi{min-width:100px}.filter-tabs{flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.ftab{white-space:nowrap}.dash-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}@media (width<=1280px) and (width>=1025px){.topbar{height:auto;min-height:var(--topbar-height);align-items:center;gap:10px 12px;padding:.75rem 1rem}.topbar-brand{flex:none;align-items:center;min-width:0}.brand-logo--topbar{width:124px;min-width:124px}.topbar-title{font-size:13px;line-height:1.15}.topbar-sub{font-size:11px;line-height:1.3}.topbar-copy{min-width:0}.topbar-actions{flex-wrap:nowrap;flex:auto;justify-content:end;align-items:center;gap:6px;min-width:0}.topbar-actions .btn{padding:6px 12px}.topbar-actions .btn-primary{white-space:nowrap;flex-shrink:0}.contract-date{white-space:normal;text-align:center;max-width:460px;margin-right:auto;line-height:1.35}}@media (width<=1390px) and (width>=1281px){.topbar{flex-wrap:nowrap;align-items:center;gap:10px 14px;padding:.75rem 1.05rem}.topbar-brand{flex:none;align-items:center;min-width:0}.brand-logo--topbar{width:124px;min-width:124px}.topbar-title{font-size:13px;line-height:1.15}.topbar-sub{font-size:11px;line-height:1.25}.topbar-copy{flex-direction:column;justify-content:center;gap:2px;min-width:0;display:flex}.topbar-title,.topbar-sub{white-space:normal;line-height:1.2}.topbar-actions{flex-wrap:nowrap;flex:auto;justify-content:end;align-items:center;gap:6px;min-width:0}.contract-date{white-space:normal;text-align:center;max-width:460px;margin-right:auto;line-height:1.3}}@media (width<=900px){.login-shell{justify-content:center;align-items:center;padding:1.5rem;display:flex}.login-panel{border:1px solid var(--border);width:min(100%,460px);box-shadow:var(--hero-shadow);background:var(--hero-surface);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:24px}.login-aside{display:none}.brand-logo--hero{width:180px}}@media (width<=767px){.app{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;align-items:start}.sidebar{border-right:none;border-bottom:1px solid var(--border);align-self:start;gap:6px;min-height:0;padding:1rem;transition:padding .24s,max-height .24s,border-color .24s,background-color .24s;overflow:visible}.sidebar-header{justify-content:flex-start;align-items:center;gap:.45rem;margin-bottom:.4rem}.sidebar-section{margin:8px 0 4px}.main{min-width:0}.toolbar{align-items:stretch}.search-wrap,.filter-tabs{width:100%}.dash-grid{grid-template-columns:1fr}#dash-content .dash-card{grid-column:auto!important}body.sidebar-collapsed .sidebar{flex-flow:row;align-items:center;gap:clamp(.16rem,.8vw,.22rem);max-height:fit-content;padding:clamp(.2rem,1vw,.35rem) clamp(.35rem,2vw,.7rem);display:flex}body.sidebar-collapsed .sidebar-header{flex:none;margin-bottom:0}body.sidebar-collapsed .sidebar>.sidebar-item[data-view]{opacity:1;pointer-events:auto;border:1px solid var(--border);background:var(--surface2);border-radius:clamp(6px,1.5vw,8px);flex:1 1 0;justify-content:flex-start;gap:clamp(.14rem,.8vw,.25rem);width:auto;min-width:0;max-height:none;padding:clamp(.2rem,.9vw,.28rem) clamp(.24rem,1.3vw,.45rem);font-size:clamp(9px,2.6vw,11px);transition:opacity .16s,transform .24s,max-height .24s,margin .24s,padding .24s,background-color .12s,border-color .12s;position:static;overflow:visible;transform:none;margin:0!important}body.sidebar-collapsed .sidebar>.sidebar-item[data-view].active{background:var(--accent-soft);border-color:#4f8fe859}body.sidebar-collapsed .sidebar>.sidebar-item[data-view] .sidebar-label{opacity:1;pointer-events:auto;white-space:nowrap;max-width:none;font-size:clamp(8px,2.4vw,10px);transform:none}body.sidebar-collapsed .sidebar>:not(.sidebar-header):not(.sidebar-item[data-view]){opacity:0;pointer-events:none;max-height:0;transition:opacity .16s,transform .24s,max-height .24s,margin .24s,padding .24s;overflow:hidden;transform:translateY(-10px);border:0!important;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important}body.sidebar-collapsed .sidebar-label,body.sidebar-collapsed .sidebar-section,body.sidebar-collapsed .sidebar-status-summary,body.sidebar-collapsed .sidebar-section--states,body.sidebar-collapsed .sidebar-count{display:initial!important}body.sidebar-collapsed .sidebar-count{margin-left:auto;padding:1px 6px;font-size:11px;position:static}}@media (width<=767px) and (width>=431px) and (orientation:portrait){body.sidebar-collapsed .sidebar{grid-template-columns:40px repeat(3,minmax(0,1fr));align-items:center;gap:.35rem;max-height:fit-content;padding:.45rem .6rem;display:grid}body.sidebar-collapsed .sidebar-header{min-width:40px;margin-bottom:0}body.sidebar-collapsed .sidebar-toggle{border-radius:10px;width:36px;height:36px}body.sidebar-collapsed .sidebar>.sidebar-item[data-view]{opacity:1;pointer-events:auto;flex:initial;border:1px solid var(--border);background:var(--surface2);border-radius:10px;justify-content:center;gap:.35rem;width:100%;min-width:0;height:36px;max-height:none;padding:0 .5rem;font-size:12px;position:static;overflow:visible;transform:none;margin:0!important}body.sidebar-collapsed .sidebar>.sidebar-item[data-view].active{background:var(--accent-soft);border-color:#4f8fe859}body.sidebar-collapsed .sidebar>.sidebar-item[data-view] .sidebar-label{opacity:1;pointer-events:auto;white-space:nowrap;max-width:none;font-size:11px;transform:none;display:inline!important}body.sidebar-collapsed .sidebar>.sidebar-item[data-view]:after{content:none}body.sidebar-collapsed .sidebar>:not(.sidebar-header):not(.sidebar-item[data-view]){display:none!important}}@media (width<=420px) and (orientation:portrait){.topbar{gap:10px;padding-left:.75rem;padding-right:.75rem}.topbar-brand{align-items:center;gap:8px}.brand-logo--topbar{width:108px;min-width:108px}.topbar-title{font-size:12px;line-height:1.15}.topbar-sub{font-size:10px;line-height:1.25}.contract-date{display:none}.topbar-actions{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:6px;display:grid}.topbar-actions .btn{white-space:nowrap;padding:6px 8px;font-size:11px}.topbar-actions .btn-primary{min-width:0}.theme-toggle{justify-content:center}body.sidebar-collapsed .sidebar-toggle{border-radius:8px;width:32px;height:32px}body.sidebar-collapsed .sidebar{grid-template-columns:auto repeat(3,minmax(0,1fr));align-items:center;display:grid}body.sidebar-collapsed .sidebar-header{justify-content:flex-start;display:flex}body.sidebar-collapsed .sidebar>.sidebar-item[data-view]{justify-content:center;min-width:0;padding-left:.24rem;padding-right:.24rem}body.sidebar-collapsed .sidebar>.sidebar-item[data-view] .sidebar-label{font-size:9px;display:inline!important}body.sidebar-collapsed .sidebar>.sidebar-item[data-view]:after{content:none}}@media (width<=430px) and (orientation:portrait){body.sidebar-collapsed .sidebar{grid-template-columns:32px repeat(3,minmax(0,1fr));align-items:center;gap:.16rem;padding:.3rem .35rem;display:grid}body.sidebar-collapsed .sidebar-header{min-width:32px;margin-bottom:0}body.sidebar-collapsed .sidebar-toggle{border-radius:8px;width:32px;height:32px}body.sidebar-collapsed .sidebar>.sidebar-item[data-view]{flex:initial;justify-content:center;gap:.16rem;width:100%;min-width:0;height:32px;padding:0 .2rem}body.sidebar-collapsed .sidebar>.sidebar-item[data-view] .sidebar-label{font-size:9px;display:inline!important}body.sidebar-collapsed .sidebar>.sidebar-item[data-view]:after{content:none}body.sidebar-collapsed .sidebar>.sidebar-item[data-view] svg{flex-shrink:0}body.sidebar-collapsed .sidebar>:not(.sidebar-header):not(.sidebar-item[data-view]){display:none!important}}@media (width<=360px) and (orientation:portrait){body.sidebar-collapsed .sidebar{gap:.14rem;padding-left:.3rem;padding-right:.3rem}body.sidebar-collapsed .sidebar>.sidebar-item[data-view]{gap:.16rem}body.sidebar-collapsed .sidebar>.sidebar-item[data-view] svg{flex-shrink:0}body.sidebar-collapsed .sidebar>.sidebar-item[data-view]{justify-content:center;padding-left:.3rem;padding-right:.3rem}body.sidebar-collapsed .sidebar>.sidebar-item[data-view] .sidebar-label{font-size:8px;display:inline!important}}@media (width<=767px) and (width>=641px){.topbar{--topbar-height:72px;flex-wrap:wrap;align-items:flex-start;gap:10px 12px;height:auto;min-height:72px;padding:.8rem .95rem}.topbar-brand{flex:100%}.brand-logo--topbar{width:120px;min-width:120px}.topbar-title{font-size:13px;line-height:1.15}.topbar-sub{font-size:11px;line-height:1.3}.topbar-actions{justify-content:flex-start;align-items:center;gap:6px;width:100%}.contract-date{white-space:normal;order:-1;width:100%;max-width:none;line-height:1.4}.topbar-actions .btn{padding:6px 11px;font-size:12px}}@media (width<=640px){.topbar{--topbar-height:64px;flex-wrap:wrap;gap:12px;height:auto;min-height:64px;padding:.85rem 1rem}.topbar-brand{width:100%}.topbar-title,.topbar-sub{word-break:break-word}.topbar-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.contract-date{white-space:normal;width:100%;line-height:1.45}.toolbar,.board-wrap,.list-wrap{padding:1rem}.board{grid-template-columns:repeat(4,248px)}.card-footer{align-items:flex-start;gap:8px}.card-notes{max-width:120px}.list-table{min-width:680px}.modal{width:calc(100vw - 24px);max-width:calc(100vw - 24px);padding:1.1rem}.modal-footer .btn{text-align:center;justify-content:center;align-items:center;width:100%;display:inline-flex}.modal-footer #btn-delete{order:2}.modal-footer #btn-save{order:3}.toast{bottom:12px;left:12px;right:12px}.brand-logo--topbar{width:116px;min-width:116px}.login-panel,.login-aside{padding:1.5rem}.brand-logo--panel{width:150px;min-width:150px}}@media (width<=900px){.login-ambient,.login-hero-card,.login-hero-card>*{animation:none!important}}@media (width<=740px) and (orientation:landscape),(height<=430px) and (orientation:landscape){.topbar{--topbar-height:76px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 12px;min-height:0;padding:.65rem .85rem;display:grid}.topbar-brand{align-items:center;width:auto;min-width:0}.topbar-brand>div{min-width:0}.topbar-title{font-size:12px;line-height:1.2}.topbar-sub{font-size:10px;line-height:1.3}.contract-date,.topbar-meta{display:none}.topbar-actions{justify-content:flex-end;gap:6px;width:auto}.topbar-actions .btn{white-space:nowrap;padding:6px 10px;font-size:11px}.theme-toggle{gap:5px}.app{grid-template-columns:var(--sidebar-width) minmax(0, 1fr)}.sidebar{border-right:1px solid var(--border);border-bottom:none;align-self:stretch;gap:4px;min-height:100%;padding:.85rem .7rem;overflow-y:auto}.sidebar-header{justify-content:flex-end;margin-bottom:.45rem}.sidebar-section{margin:6px 0 2px;padding:0 6px;font-size:9px}.sidebar-item{padding:6px;font-size:12px}.sidebar-count{padding:1px 5px;font-size:10px}.sidebar-section--states,.sidebar-status-summary{display:none!important}.main{min-width:0;overflow:hidden}.kpi-bar{flex-wrap:nowrap;gap:8px;padding:.8rem .9rem;overflow-x:auto}.kpi{min-width:120px}.toolbar,.board-wrap,.list-wrap{padding:.85rem}.toolbar{flex-wrap:nowrap;gap:8px}.search-wrap{flex:auto;min-width:0}.filter-tabs{flex-wrap:nowrap;flex:none;width:auto;padding-bottom:2px;overflow-x:auto}.ftab{white-space:nowrap}.board{grid-template-columns:repeat(4,236px);gap:12px}.list-table{min-width:720px}.dash-grid{grid-template-columns:1fr}#dash-content .dash-card{grid-column:auto!important}body.sidebar-collapsed .sidebar{flex-flow:column;align-self:stretch;align-items:stretch;gap:4px;min-height:100%;max-height:none;padding:.85rem .55rem;display:flex}body.sidebar-collapsed .sidebar-header{flex:none;justify-content:center;min-width:0;margin-bottom:.45rem}body.sidebar-collapsed .sidebar-toggle{border-radius:9px;width:34px;height:34px}body.sidebar-collapsed .sidebar>.sidebar-item[data-view]{background:0 0;border:none;border-radius:6px;flex:none;justify-content:center;gap:0;width:100%;padding:6px}body.sidebar-collapsed .sidebar>.sidebar-item[data-view] .sidebar-label,body.sidebar-collapsed .sidebar>.sidebar-item[data-view]:after{content:none;display:none!important}body.sidebar-collapsed .sidebar>:not(.sidebar-header):not(.sidebar-item[data-view]){display:none!important}}.admin-table-wrap{border:1px solid var(--border);border-radius:12px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:13px}.admin-table th{background:var(--surface2);color:var(--text-muted);text-align:left;white-space:nowrap;padding:12px 16px;font-weight:600}.admin-table td{border-top:1px solid var(--border);color:var(--text);vertical-align:middle;padding:12px 16px}.admin-table tr:hover td{background:var(--surface2)}.badge{border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge-admin{color:#a78bfa;background:#a78bfa26}.badge-user{color:#9ca3af;background:#9ca3af26}.badge-active{color:#34d399;background:#34d39926}.badge-inactive{color:#f87171;background:#f8717126}.badge-verified{color:#60a5fa;background:#60a5fa26}.badge-unverified{color:#fbbf24;background:#fbbf2426}.admin-actions{flex-wrap:wrap;gap:8px;display:flex}.btn-xs{border:1px solid var(--border);background:var(--surface2);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:5px;padding:4px 10px;font-size:11px;transition:background .15s}.btn-xs:hover{background:var(--surface3,#2a2f3e)}.btn-xs:disabled{opacity:.4;cursor:not-allowed}.btn-xs-danger{color:#f87171;border-color:#f8717166}.btn-xs-danger:hover{background:#f871711a}.admin-search-wrap{margin-bottom:16px}.admin-search{border:1px solid var(--border);background:var(--surface2);width:100%;max-width:360px;color:var(--text);border-radius:8px;outline:none;padding:8px 14px;font-family:inherit;font-size:13px}.admin-search:focus{border-color:var(--accent)}.btn-label-mobile{display:none}.btn-label-desktop{display:inline}.show-mobile{display:none}.topbar-user{align-items:center;gap:6px;display:flex}.topbar-meta{color:var(--text-muted,var(--muted));white-space:normal;margin-top:2px;font-family:DM Mono,monospace;font-size:10px;line-height:1.3;display:none}@media (width<=1024px) and (width>=768px) and (height>=431px){.topbar-meta{display:block}.contract-date{display:none}}@media (width<=767px){.hide-mobile{display:none!important}.show-mobile,.btn-label-mobile{display:inline}.btn-label-desktop,.topbar-sub,.topbar-meta{display:none}.topbar{grid-template-columns:auto 1fr auto;grid-template-areas:"logo copy user""logo create user";align-items:center;gap:8px 10px;height:auto;min-height:0;padding:10px 14px;display:grid}.topbar-brand,.topbar-actions{display:contents}.topbar .brand-picture--topbar{grid-area:logo;align-self:center}.topbar-copy{text-align:center;grid-area:copy;align-self:end;min-width:0}.topbar-title{white-space:normal;line-height:1.2}.topbar .btn-primary{grid-area:create;place-self:start center}.topbar-user{flex-direction:column-reverse;grid-area:user;align-items:flex-end;gap:6px}.topbar-user .theme-toggle-label{display:none}.topbar-user .theme-toggle{width:32px!important;padding:0!important}.project-board-shell{height:auto;min-height:100vh}.project-board-shell .app,.main{overflow:visible}.board-wrap{flex:none;overflow-x:auto}.toolbar{flex-wrap:wrap;align-items:center}.search-wrap{flex:auto;width:auto;min-width:0}.ftab-all{flex:none}.filter-tabs{width:100%}}.password-field{align-items:center;display:flex;position:relative}.password-field .login-input{width:100%;padding-right:42px}.password-toggle{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.password-toggle:hover{color:var(--text)}.datepicker-wrap,.datepicker-wrap .react-datepicker__input-container{width:100%;display:block}.react-datepicker-popper{z-index:200}.react-datepicker{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:10px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;box-shadow:0 12px 32px #06112640}.react-datepicker__header{background:var(--surface2);border-bottom:1px solid var(--border)}.react-datepicker__current-month,.react-datepicker__day-name,.react-datepicker__day{color:var(--text)}.react-datepicker .react-datepicker__day--today{color:var(--accent);font-weight:700}.react-datepicker .react-datepicker__day:not([aria-disabled=true]):hover{background:var(--surface2);color:var(--text);border-radius:6px}.react-datepicker .react-datepicker__day--selected,.react-datepicker .react-datepicker__day--keyboard-selected,.react-datepicker .react-datepicker__day--selected:not([aria-disabled=true]):hover{background:var(--accent);color:#fff;border-radius:6px}.react-datepicker__day--outside-month{color:var(--muted)}.react-datepicker__triangle{display:none}.react-datepicker__navigation-icon:before{border-color:var(--muted)}.calendar-wrap{flex:1;padding:1.5rem;overflow-y:auto}.calendar-board{border:1px solid var(--border);background:var(--surface);border-radius:10px;overflow:hidden}.calendar-topbar{background:var(--surface2);border-bottom:1px solid var(--border);justify-content:flex-start;align-items:center;gap:12px;padding:10px 12px;display:flex}.calendar-nav{align-items:center;gap:8px;display:flex}.calendar-title{color:var(--text);text-align:center;min-width:140px;font-size:14px;font-weight:600}.calendar-weekdays{background:var(--surface2);border-bottom:1px solid var(--border);grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekday{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;text-align:center;border-right:1px solid var(--border);padding:7px 0;font-size:11px;font-weight:600}.calendar-weekday:last-child{border-right:none}.calendar-week{border-bottom:1px solid var(--border);position:relative}.calendar-week:last-child{border-bottom:none}.calendar-week-days{grid-template-columns:repeat(7,1fr);display:grid}.calendar-day{border-right:1px solid var(--border);flex-direction:column;min-height:112px;padding:4px 6px;display:flex}.calendar-day:last-child{border-right:none}.calendar-day--muted{background:var(--surface2)}.calendar-day--muted .calendar-daynum{opacity:.4}.calendar-day--today{background:color-mix(in srgb, var(--accent) 8%, transparent)}.calendar-daynum{color:var(--muted);font-family:DM Mono,monospace;font-size:11px;font-weight:600}.calendar-day--today .calendar-daynum{color:var(--accent)}.calendar-more{color:var(--muted);margin-top:auto;font-size:10px}.calendar-bars{pointer-events:none;position:absolute;inset:0}.calendar-bar{text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;pointer-events:auto;border:none;border-radius:0;height:16px;padding:0 6px;font-family:inherit;font-size:10px;font-weight:500;line-height:16px;position:absolute;overflow:hidden}.calendar-bar--start{border-top-left-radius:4px;border-bottom-left-radius:4px}.calendar-bar--end{border-top-right-radius:4px;border-bottom-right-radius:4px}.calendar-note{color:var(--muted);margin-top:12px;font-size:12px}.gantt-wrap{flex:1;padding:1.5rem;overflow:auto}.gantt-grid{border:1px solid var(--border);background:var(--surface);border-radius:10px;width:max-content;min-width:100%;overflow:hidden}.gantt-row{border-bottom:1px solid var(--border);cursor:pointer;align-items:stretch;display:flex}.gantt-grid>.gantt-row:last-child{border-bottom:none}.gantt-row:not(.gantt-header-row):hover{background:var(--surface2)}.gantt-label{z-index:3;background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:2px;width:190px;padding:8px 10px;display:flex;position:sticky;left:0;overflow:hidden}.gantt-row:not(.gantt-header-row):hover .gantt-label{background:var(--surface2)}.gantt-label-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;overflow:hidden}.gantt-label-owner{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.gantt-header-row{cursor:default;background:var(--surface2)}.gantt-corner{background:var(--surface2);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;justify-content:center;font-size:11px;font-weight:600}.gantt-timeline{background-image:repeating-linear-gradient(to right, var(--border) 0, var(--border) 1px, transparent 1px, transparent var(--gd));flex-shrink:0;min-height:38px;position:relative}.gantt-timeline--plain{background-image:none}.gantt-month{height:100%;color:var(--text);border-left:1px solid var(--border);white-space:nowrap;align-items:center;padding-left:6px;font-size:11px;font-weight:600;display:flex;position:absolute;top:0;overflow:hidden}.gantt-daycell{height:100%;color:var(--muted);border-left:1px solid var(--border);justify-content:center;align-items:center;font-family:DM Mono,monospace;font-size:10px;display:flex;position:absolute;top:0}.gantt-daycell--weekend{background:var(--surface);color:var(--muted);opacity:.85}.gantt-daycell--today{color:var(--accent);font-weight:700}.gantt-bar{white-space:nowrap;text-overflow:ellipsis;border-radius:4px;min-width:4px;height:18px;padding:0 6px;font-size:10px;font-weight:500;line-height:18px;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.gantt-milestone{border-radius:2px;width:12px;height:12px;position:absolute;top:50%;transform:translate(-50%,-50%)rotate(45deg)}.gantt-today{background:var(--accent);opacity:.7;z-index:2;pointer-events:none;width:2px;position:absolute;top:0;bottom:0;transform:translate(-1px)}.gantt-note,.gantt-empty{color:var(--muted);margin-top:12px;font-size:12px}.gantt-empty{padding:32px 0}
