.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}:root{--brand:#d71920;--brand-rgb:215,25,32;--sidebar:#101318;--soft:#fff1f2;--bg:#f5f6f8;--surface:#ffffff;--surface-2:#f8f9fb;--line:#e7e9ee;--line-strong:#d9dde5;--text:#171a21;--text-2:#343944;--muted:#737b89;--muted-2:#9aa1ac;--success:#16803c;--success-bg:#edf9f1;--warning:#a86408;--warning-bg:#fff7e8;--danger:#c52a32;--danger-bg:#fff0f1;--info:#2764c5;--info-bg:#eef5ff;--radius:12px;--radius-lg:16px;--shadow-sm:0 1px 2px rgba(16,24,40,.04);--shadow:0 8px 28px rgba(16,24,40,.06)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:268px;background:var(--sidebar);color:#fff;padding:20px 14px 16px;display:flex;flex-direction:column;z-index:30;border-right:1px solid rgba(255,255,255,.04)}.brand{display:flex;gap:12px;align-items:center;padding:2px 8px 20px;margin-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}.brandmark,.brand-box{flex:0 0 auto;width:42px;height:42px;border-radius:11px;background:var(--brand);display:grid;place-items:center;color:#fff;font-weight:900;font-size:15px;box-shadow:0 8px 20px rgba(var(--brand-rgb),.18)}.brand b{display:block;font-size:13px;line-height:1.3;max-width:170px}.brand small,.userbox small{display:block;color:#8f98a7;margin-top:4px;font-size:11px}.sidebar nav{padding:8px 0;overflow-y:auto}.nav-section{margin:18px 10px 7px;color:#697281;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.sidebar nav button{width:100%;border:0;background:transparent;color:#aeb6c2;min-height:42px;padding:0 12px;text-align:left;border-radius:9px;margin:2px 0;cursor:pointer;display:flex;align-items:center;gap:11px;transition:.16s ease;font-size:13px;font-weight:550}.sidebar nav button:hover{background:#ffffff0e;color:#fff}.sidebar nav button.active{background:#ffffff16;color:#fff;font-weight:700}.sidebar nav button.active:before{content:"";width:3px;height:20px;border-radius:5px;background:var(--brand);margin-left:-12px;margin-right:9px}.userbox{margin-top:auto;border-top:1px solid rgba(255,255,255,.08);padding:16px 8px 0}.userbox b{font-size:12px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.userbox button{margin-top:11px;width:100%;background:transparent;border:1px solid rgba(255,255,255,.11);color:#b7bec9;border-radius:8px;padding:8px 10px;font-size:11px}.userbox button:hover{background:#ffffff0f;color:#fff}main{margin-left:268px;min-height:100vh}header{height:68px;background:#fffffff5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:20}header h1{font-size:17px;margin:0 0 3px;font-weight:750;letter-spacing:-.02em}header small{color:var(--muted);font-size:11px}.avatar{width:38px;height:38px;border-radius:10px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:850}.content{padding:26px 30px 40px;max-width:1600px;margin:0 auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.page-head h2{margin:0;font-size:22px;letter-spacing:-.035em}.page-head p{margin:6px 0 0;color:var(--muted);font-size:13px}.page-actions{display:flex;align-items:center;gap:8px}.hero{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px 22px;display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;box-shadow:var(--shadow-sm)}.hero h2{margin:0 0 5px;font-size:20px;letter-spacing:-.025em}.hero p{margin:0;color:var(--muted);font-size:13px}.hero span{font-size:11px;border:1px solid var(--line);background:var(--surface-2);padding:7px 10px;border-radius:999px}.btn,button.btn{border:1px solid transparent;min-height:38px;padding:0 14px;border-radius:9px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:.15s ease}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{filter:brightness(.94);transform:translateY(-1px)}.btn-secondary{background:#fff;border-color:var(--line-strong);color:var(--text-2)}.btn-secondary:hover{background:var(--surface-2)}.btn-danger{background:var(--danger-bg);color:var(--danger);border-color:#ffd9dc}.btn-ghost{background:transparent;color:var(--muted)}.btn-icon{width:36px;height:36px;padding:0}.stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow-sm)}.stat-label{color:var(--muted);font-size:11px;font-weight:650}.stat-number{margin-top:7px;font-size:24px;font-weight:820;letter-spacing:-.04em}.stat-foot{margin-top:4px;color:var(--muted-2);font-size:10px}.card,.panel,.client-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px;box-shadow:var(--shadow-sm)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.panel-head h3{margin:0;font-size:14px}.panel-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.panel-title{display:flex;justify-content:space-between;align-items:center}.panel-title h2{margin:0}.panel-title span{font-size:11px;color:var(--muted)}.grid2{display:grid;grid-template-columns:2fr 1fr;gap:14px}.toolbar{display:flex;align-items:center;gap:9px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:12px}.search-box{flex:1;min-width:220px;position:relative}.search-box input{width:100%;height:38px;border:1px solid var(--line);border-radius:9px;padding:0 12px 0 36px;outline:none;background:#fff}.search-box:before{content:"⌕";position:absolute;left:12px;top:8px;color:var(--muted)}.search-box input:focus,.form-control:focus,input:focus,select:focus,textarea:focus{border-color:rgba(var(--brand-rgb),.5);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.08);outline:none}.toolbar select{height:38px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:0 30px 0 11px;color:var(--text-2);font-size:12px}.table-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;margin:0}th{background:#fafbfc;color:#7a8290;font-size:10px;font-weight:800;letter-spacing:.045em;text-transform:uppercase;padding:11px 15px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}td{padding:13px 15px;border-bottom:1px solid #eef0f3;font-size:12px;text-align:left;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafbfc}.table-primary{font-weight:700;color:var(--text)}.table-secondary{display:block;margin-top:3px;font-size:10px;color:var(--muted)}.badge,.status{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:750}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge-success{color:var(--success);background:var(--success-bg)}.badge-danger{color:var(--danger);background:var(--danger-bg)}.badge-warning{color:var(--warning);background:var(--warning-bg)}.badge-neutral{color:#687180;background:#f1f3f5}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full{grid-column:1/-1}.form-group label{color:var(--text-2);font-size:11px;font-weight:700}.form-control,.form-group input,.form-group select,.form-group textarea{width:100%;min-height:40px;padding:9px 11px;border:1px solid var(--line-strong);border-radius:9px;background:#fff;color:var(--text);font-size:12px;transition:.15s}.form-group textarea{min-height:90px;resize:vertical}.form-help{font-size:10px;color:var(--muted)}.tabs{display:flex;gap:3px;border-bottom:1px solid var(--line);margin-bottom:20px}.tab{border:0;background:transparent;padding:10px 13px;color:var(--muted);font-size:12px;font-weight:650;position:relative}.tab.active{color:var(--text)}.tab.active:after{content:"";position:absolute;height:2px;left:10px;right:10px;bottom:-1px;background:var(--brand);border-radius:5px 5px 0 0}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0e1461;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:90}.drawer{position:fixed;z-index:100;right:0;top:0;bottom:0;width:min(540px,96vw);background:#fff;box-shadow:-20px 0 60px #0a142329;display:flex;flex-direction:column}.drawer-head{padding:20px 22px 17px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.drawer-head h3{margin:0;font-size:17px}.drawer-head p{margin:5px 0 0;color:var(--muted);font-size:11px}.drawer-body{padding:20px 22px;overflow:auto;flex:1}.drawer-foot{padding:14px 22px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.client-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.client-logo{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:900}.client-cell{display:flex;align-items:center;gap:10px}.color-row{display:flex;gap:7px}.color-dot,.dots i{width:20px;height:20px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #d8dde5}.dots{display:flex;gap:8px}.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:14px}.kpi-label{font-size:11px;color:var(--muted)}.kpi-value{font-size:27px;font-weight:850;margin-top:7px;letter-spacing:-.04em}.alert{padding:11px 13px;border-radius:9px;font-size:11px;margin-bottom:14px}.alert-success{background:var(--success-bg);color:var(--success);border:1px solid #d9f1e0}.alert-danger,.error{background:var(--danger-bg);color:var(--danger);border:1px solid #ffdadd;padding:10px 12px;border-radius:9px;margin-top:10px}.empty-state{text-align:center;padding:48px 20px;color:var(--muted)}.empty-state strong{display:block;color:var(--text-2);font-size:13px;margin-bottom:5px}.login-wrap{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,rgba(var(--brand-rgb),.12),transparent 30%),linear-gradient(135deg,#0c0f14,#171c24)}.login-card{width:min(420px,92vw);background:#fff;border-radius:18px;padding:30px;box-shadow:0 30px 80px #0000003d}.login-card h1{margin:14px 0 6px}.login-card p{color:var(--muted);margin:0 0 20px}.login-card label{display:block;font-size:11px;font-weight:700;margin:12px 0 6px}.login-card input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:9px}.login-card>button{width:100%;border:0;background:var(--brand);color:#fff;border-radius:9px;padding:12px;margin:18px 0 10px;font-weight:800}.login-card small{color:var(--muted)}.center{min-height:100vh;display:grid;place-items:center}@media (max-width:1100px){.cards{grid-template-columns:repeat(3,1fr)}.stat-row{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.client-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.sidebar{position:static;width:100%;min-height:auto}main{margin-left:0}header{padding:0 16px}.content{padding:18px 14px 30px}.cards,.stat-row,.client-grid,.form-grid{grid-template-columns:1fr}.page-head{flex-direction:column}.toolbar{align-items:stretch;flex-direction:column}.search-box{width:100%}.form-group.full{grid-column:auto}}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(400px,1.05fr) minmax(420px,.95fr);background:#fff}.login-brand-panel{min-height:100vh;position:relative;overflow:hidden;background:radial-gradient(circle at 78% 18%,rgba(215,25,32,.22),transparent 28%),radial-gradient(circle at 12% 85%,rgba(255,255,255,.05),transparent 28%),linear-gradient(145deg,#0b0e13,#171b22 62%,#111318);color:#fff;padding:70px clamp(45px,7vw,110px);display:flex;flex-direction:column;justify-content:center}.login-brand-panel:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.06);border-radius:50%;right:-170px;bottom:-120px}.login-brand-content{position:relative;z-index:2;max-width:590px}.login-ng{width:58px;height:58px;display:grid;place-items:center;border-radius:14px;background:var(--brand);font-weight:900;font-size:19px;margin-bottom:38px;box-shadow:0 16px 40px #d7192047}.login-eyebrow{font-size:11px;letter-spacing:.16em;font-weight:800;color:#a5adb9}.login-brand-panel h1{font-size:clamp(44px,5vw,70px);line-height:.98;letter-spacing:-.055em;margin:15px 0 24px}.login-brand-panel>div>p{max-width:520px;color:#abb2bd;font-size:15px;line-height:1.65}.login-features{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:48px}.login-features>div{padding:15px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff09}.login-features strong{display:block;font-size:11px;margin-bottom:6px}.login-features span{font-size:9px;line-height:1.45;color:#858e9c}.login-version{position:absolute;bottom:28px;left:clamp(45px,7vw,110px);color:#646d79;font-size:10px}.login-form-panel{display:grid;place-items:center;padding:40px;background:#fafbfc}.login-form-card{width:min(420px,100%)}.login-mobile-logo{display:none}.login-form-label{color:var(--brand);font-size:10px;font-weight:850;letter-spacing:.12em}.login-form-card h2{margin:8px 0;font-size:30px;letter-spacing:-.04em}.login-description{margin:0 0 30px;color:var(--muted);font-size:13px}.login-field{margin-top:17px}.login-field label{display:block;margin-bottom:7px;font-size:11px;color:var(--text-2);font-weight:750}.login-field input{width:100%;height:46px;padding:0 13px;border:1px solid var(--line-strong);border-radius:10px;outline:none;background:#fff}.password-field{position:relative}.password-field input{padding-right:70px}.show-password{position:absolute;right:8px;top:6px;bottom:6px;border:0;padding:0 8px;background:transparent;color:var(--muted);font-size:10px;font-weight:700}.login-submit{width:100%;height:47px;margin-top:24px;border:0;border-radius:10px;background:var(--brand);color:#fff;font-weight:800;font-size:12px;box-shadow:0 10px 25px #d7192029}.login-submit:disabled{opacity:.65;cursor:wait}.login-security{text-align:center;color:#9ba2ad;font-size:9px;margin-top:19px}.authorization-box{text-align:center;padding:35px 15px}.authorization-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:var(--success-bg);color:var(--success);font-weight:900;margin:0 auto 16px}.authorization-box h3{margin:0 0 8px}.authorization-box p{color:var(--muted);font-size:12px;line-height:1.6;max-width:360px;margin:0 auto 22px}.otp-input{display:block;width:220px!important;height:60px!important;margin:0 auto;text-align:center;font-size:27px!important;font-weight:850;letter-spacing:.28em}.report-metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.report-metrics>div{background:var(--surface-2);border:1px solid var(--line);padding:15px;border-radius:10px}.report-metrics span{display:block;color:var(--muted);font-size:10px}.report-metrics strong{display:block;font-size:22px;margin-top:6px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.settings-grid .panel{min-height:180px}.settings-grid h3{margin:14px 0 7px;font-size:14px}.settings-grid p{color:var(--muted);font-size:11px;line-height:1.6;margin-bottom:17px}.settings-icon{width:40px;height:40px;border-radius:10px;background:var(--soft);color:var(--brand);display:grid;place-items:center;font-size:10px;font-weight:900}@media (max-width:950px){.login-shell{grid-template-columns:1fr}.login-brand-panel{display:none}.login-form-panel{min-height:100vh;padding:28px}.login-mobile-logo{display:grid;width:50px;height:50px;place-items:center;border-radius:12px;background:var(--brand);color:#fff;font-weight:900;margin-bottom:30px}.report-metrics{grid-template-columns:repeat(3,1fr)}}@media (max-width:700px){.settings-grid,.report-metrics{grid-template-columns:1fr}}.brand-logo-client{width:52px;height:52px;flex:0 0 52px;display:flex;align-items:center;justify-content:center;border-radius:12px;padding:6px;background:#fff;overflow:hidden;box-shadow:0 8px 20px #00000029}.brand-logo-client img{width:100%;height:100%;object-fit:contain;display:block}.brand-text{min-width:0}.brand-text b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logo-upload-box{border:1px dashed #cbd5e1;background:#f8fafc;border-radius:12px;padding:16px}.logo-upload-box input[type=file]{width:100%}.logo-upload-box small{display:block;margin-top:8px;color:#64748b;line-height:1.45}.logo-preview{margin-top:14px;display:flex;align-items:center;gap:14px;padding:12px;background:#fff;border:1px solid #e2e8f0;border-radius:10px}.logo-preview img{width:120px;height:62px;object-fit:contain;border-radius:7px}.logo-preview div{min-width:0;display:flex;flex-direction:column;gap:4px}.logo-preview strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logo-preview span{font-size:12px;color:#64748b}.peru-range-wrapper{position:relative;width:100%}.peru-range-trigger{width:100%;min-height:64px;display:grid;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:14px;padding:10px 14px;border:1px solid #d7dde7;border-radius:11px;background:#fff;cursor:pointer;text-align:left;transition:.18s ease}.peru-range-trigger:hover,.peru-range-trigger.active{border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.08)}.peru-range-trigger>div:not(.range-arrow):not(.calendar-icon){display:flex;flex-direction:column;gap:3px}.peru-range-trigger span{font-size:11px;font-weight:600;color:#7a8494}.peru-range-trigger strong{font-size:14px;color:#20252d}.range-arrow{color:#9aa4b2;font-size:17px}.calendar-icon{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#f4f6f9;color:#374151}.calendar-screen-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0f192e;z-index:5000}.peru-calendar-popover{position:fixed;width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 50px);overflow:auto;left:50%;top:50%;transform:translate(-50%,-50%);z-index:5001;background:#fff;border:1px solid #e2e7ee;border-radius:16px;box-shadow:0 28px 80px #0f172a40}.peru-calendar-head{display:flex;justify-content:space-between;align-items:flex-start;padding:18px 20px;border-bottom:1px solid #edf0f4}.peru-calendar-head>div{display:flex;flex-direction:column;gap:4px}.peru-calendar-head strong{font-size:16px}.peru-calendar-head span{font-size:12px;color:#7a8494}.calendar-close{border:0;background:transparent;font-size:23px;cursor:pointer;color:#555f6d}.peru-calendar-popover .rdp-root{--rdp-accent-color:var(--brand);--rdp-accent-background-color:var(--soft);margin:0;padding:22px 20px 14px}.peru-calendar-popover .rdp-months{justify-content:center;gap:35px}.peru-calendar-popover .rdp-month_caption{font-size:14px;font-weight:700;text-transform:capitalize}.peru-calendar-popover .rdp-weekday{font-size:11px;font-weight:700;color:#7b8492;text-transform:uppercase}.peru-calendar-popover .rdp-day_button{border-radius:8px}.peru-calendar-popover .rdp-today:not(.rdp-selected) .rdp-day_button{border:1px solid var(--brand);font-weight:700}.peru-calendar-popover .peru-holiday:not(.rdp-selected) .rdp-day_button{background:#fff0f0;color:#c5161d;font-weight:700}.peru-calendar-popover .peru-holiday:not(.rdp-selected) .rdp-day_button:after{content:"";display:block;width:4px;height:4px;margin:1px auto 0;border-radius:50%;background:#d71920}.peru-calendar-popover .rdp-range_start .rdp-day_button,.peru-calendar-popover .rdp-range_end .rdp-day_button{background:var(--brand);color:#fff}.peru-calendar-popover .rdp-range_middle{background:var(--soft);color:#20252d}.calendar-legend{display:flex;gap:20px;flex-wrap:wrap;padding:4px 20px 18px;font-size:11px;color:#687386}.calendar-legend>div{display:flex;align-items:center;gap:6px}.legend-box{width:12px;height:12px;border-radius:4px;display:inline-block}.selected-day{background:var(--brand)}.holiday-day{background:#fff0f0;border:1px solid #ef9b9e}.today-day{background:#fff;border:1px solid var(--brand)}.calendar-selection-summary{border-top:1px solid #edf0f4;padding:16px 20px;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:14px}.calendar-selection-summary>div{display:flex;flex-direction:column;gap:3px}.calendar-selection-summary span{color:#7b8492;font-size:11px}.calendar-selection-summary strong{font-size:14px}@media (max-width:760px){.peru-calendar-popover .rdp-months{flex-direction:column}.peru-range-trigger{grid-template-columns:1fr auto 1fr}.calendar-icon{display:none}.calendar-selection-summary{grid-template-columns:1fr 1fr}.calendar-selection-summary .btn{grid-column:1/-1}}.map-dashboard-toolbar{margin-top:16px;display:flex;justify-content:space-between;align-items:flex-end;gap:18px;padding:15px 18px;background:#fff;border:1px solid var(--line);border-bottom:0;border-radius:14px 14px 0 0}.map-dashboard-toolbar>div:first-child{display:flex;flex-direction:column;gap:3px}.map-dashboard-toolbar strong{font-size:15px}.map-dashboard-toolbar span{font-size:11px;color:var(--muted)}.map-filters{display:flex;gap:8px;flex-wrap:wrap}.map-filters select{min-width:160px}.map-dashboard-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(300px,.8fr);gap:0;border:1px solid var(--line);border-radius:0 0 14px 14px;background:#fff;overflow:hidden}.map-main-card{min-width:0;border-right:1px solid var(--line)}.operational-map{width:100%;height:520px;background:#eef1f4}.site-insight-card{min-width:0;padding:20px;background:#fff}.site-insight-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line)}.site-insight-head>div{min-width:0}.site-insight-head span:first-child{display:block;color:var(--muted);font-size:11px;margin-bottom:4px}.site-insight-head h3{margin:0;font-size:20px}.site-insight-head p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.map-status-pill{flex:0 0 auto;border:1px solid var(--status-color);color:var(--status-color);padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800}.site-kpis{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.site-kpis>div{padding:12px;border:1px solid var(--line);border-radius:10px;background:#fafbfc}.site-kpis span,.site-flow span{display:block;color:var(--muted);font-size:10px;margin-bottom:4px}.site-kpis strong{font-size:18px}.site-flow{margin-top:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid var(--line);background:var(--line);border-radius:10px;overflow:hidden}.site-flow>div{background:#fff;padding:11px;text-align:center}.site-flow strong{font-size:15px}.map-location-link{display:flex;justify-content:center;margin-top:16px;text-decoration:none}.map-legend{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:9px;color:var(--muted);font-size:10px}.map-legend>div{display:flex;align-items:center;gap:5px}.map-legend i{width:9px;height:9px;border-radius:50%}.map-legend>span{margin-left:auto}.map-empty{min-height:420px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:30px;text-align:center;gap:6px;color:var(--muted)}.map-empty strong{color:var(--text)}.map-empty.small{min-height:200px}.operational-map .leaflet-tooltip{border:0;border-radius:9px;box-shadow:0 8px 25px #00000026;font-family:inherit;font-size:11px}@media (max-width:1100px){.map-dashboard-grid{grid-template-columns:1fr}.map-main-card{border-right:0;border-bottom:1px solid var(--line)}.operational-map{height:460px}}@media (max-width:700px){.map-dashboard-toolbar{align-items:stretch;flex-direction:column}.map-filters{width:100%}.map-filters select{flex:1 1 100%}.operational-map{height:390px}.site-kpis{grid-template-columns:1fr 1fr}.site-flow{grid-template-columns:1fr}.map-legend>span{width:100%;margin-left:0}}.sede-map-form{grid-column:1 / -1}.sede-location-picker{border:1px solid #e1e5eb;border-radius:12px;background:#fff;overflow:hidden}.sede-map-header{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #e8ebef}.sede-map-header>div{display:flex;flex-direction:column;gap:3px}.sede-map-header strong{font-size:13px;color:#171b24}.sede-map-header span{font-size:11px;color:#7b8493}.sede-map{width:100%;height:310px;cursor:crosshair;background:#eef1f4}.sede-coordinates{padding:10px 14px;display:flex;gap:20px;border-top:1px solid #e8ebef;background:#fafbfc;font-size:10px;color:#747d8b}.sede-coordinates b{color:#242a34}.field-help{display:block;margin-top:5px;color:#8a929f;font-size:10px}@media (max-width:700px){.sede-map-header{flex-direction:column;align-items:flex-start}.sede-map{height:260px}.sede-coordinates{flex-direction:column;gap:3px}}.btn-delete-inline{border:0;background:transparent;color:#c5161d;font-weight:700;font-size:12px;padding:7px 9px;border-radius:7px;cursor:pointer}.btn-delete-inline:hover{background:#fff0f1;color:#a90e15}.btn-delete-client{border:1px solid #e6b4b7;background:#fff;color:#be151c;font-weight:700;font-size:11px;padding:8px 11px;border-radius:8px;cursor:pointer;margin-left:auto;margin-right:8px}.btn-delete-client:hover{background:#fff0f1;border-color:#d71920}.attendance-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:14px}.attendance-toolbar .search-box{flex:1}.attendance-toolbar input,.attendance-toolbar select{width:100%;border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:#fff}.attendance-toolbar select{width:auto;min-width:180px}.attendance-errors{margin-bottom:16px;border:1px solid #f0c4c6;background:#fff;border-radius:12px;padding:16px}.table-sub{display:block;color:var(--muted);margin-top:3px;font-size:10px}.doc-type{font-size:9px;font-weight:800;color:var(--muted)}.badge-danger{background:#fff0f1;color:#c3151c}.badge-warning{background:#fff7e6;color:#9a6500}.attendance-detail-table{min-width:1100px}@media (max-width:700px){.attendance-toolbar{flex-direction:column;align-items:stretch}.attendance-toolbar select{width:100%}}.peru-operational-calendar{width:100%}.calendar-mode-switch{display:flex;width:max-content;max-width:100%;padding:3px;background:#f0f2f5;border-radius:10px;margin-bottom:10px}.calendar-mode-switch button{border:0;background:transparent;color:#687181;padding:8px 14px;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer}.calendar-mode-switch button.active{background:#fff;color:#171b24;box-shadow:0 1px 4px #00000014}.calendar-help{padding:10px 12px;margin-bottom:10px;background:#f8f9fb;border:1px solid #e6e9ee;border-radius:9px;color:#697383;font-size:11px;line-height:1.45}.peru-operational-calendar .rdp-root{--rdp-accent-color:#d71920;--rdp-accent-background-color:#fff0f1;margin:0}.peru-operational-calendar .rdp-day_button{border-radius:9px;font-weight:600}.calendar-sunday:not(.calendar-selected) .rdp-day_button{color:#c5161d;background:#fff8f8}.calendar-holiday:not(.calendar-selected) .rdp-day_button{color:#b20f16;background:#fff0f1;box-shadow:inset 0 0 0 1px #f4c6c8}.calendar-selected .rdp-day_button{background:#d71920!important;color:#fff!important;font-weight:800}.calendar-selected.calendar-holiday .rdp-day_button{box-shadow:inset 0 0 0 2px #7e0a0f}.calendar-awaiting{padding:9px 12px;margin-top:8px;background:#fff7e6;color:#785400;border-radius:8px;font-size:11px}.calendar-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px;color:#697383;font-size:10px}.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-legend i{width:10px;height:10px;border-radius:3px;display:block}.legend-selected{background:#d71920}.legend-holiday{background:#fff0f1;border:1px solid #d71920}.legend-sunday{background:#fff8f8;border:1px solid #eaa4a8}.calendar-summary{display:grid;grid-template-columns:repeat(4,1fr);margin-top:14px;border:1px solid #e5e8ed;border-radius:10px;overflow:hidden}.calendar-summary>div{padding:10px 12px;border-right:1px solid #e5e8ed;background:#fff}.calendar-summary>div:last-child{border-right:0}.calendar-summary span{display:block;color:#858d99;font-size:9px;margin-bottom:3px}.calendar-summary strong{font-size:12px;color:#242933}.calendar-date-list{margin-top:12px}.calendar-date-list>strong{display:block;margin-bottom:7px;font-size:11px}.calendar-date-list>div{display:flex;flex-wrap:wrap;gap:5px}.date-chip{padding:5px 7px;border-radius:999px;border:1px solid #e1e5eb;background:#fafbfc;font-size:9px;font-weight:700}.date-chip.sunday{color:#c5161d;border-color:#efb6b8;background:#fff7f7}.date-chip.holiday{color:#b20f16;border-color:#eaa4a8;background:#fff0f1}@media (max-width:700px){.calendar-summary{grid-template-columns:1fr 1fr}.calendar-summary>div:nth-child(2){border-right:0}.calendar-mode-switch{width:100%}.calendar-mode-switch button{flex:1}}*,*:before,*:after{box-sizing:border-box}html{width:100%;min-width:0;text-size-adjust:100%;-webkit-text-size-adjust:100%}body{width:100%;min-width:0;margin:0;overflow-x:hidden}#root,.app{width:100%;min-width:0}.app>main,main{min-width:0;width:auto;max-width:none}.content{width:100%;min-width:0;max-width:100%}main>header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:1rem}main>header>div:first-child{min-width:0;overflow:hidden}main>header h1,main>header small{max-width:100%;overflow-wrap:anywhere}body{font-size:clamp(.875rem,.82rem + .15vw,1rem)}h1{font-size:clamp(1.25rem,1rem + .8vw,1.75rem)}h2{font-size:clamp(1.1rem,.95rem + .5vw,1.5rem)}h3{font-size:clamp(1rem,.9rem + .3vw,1.25rem)}.form-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))!important;gap:clamp(.75rem,1vw,1rem)!important;width:100%;min-width:0}.form-group{min-width:0;width:100%}.form-group.full,.form-grid>.full{grid-column:1 / -1}.form-group input,.form-group select,.form-group textarea,input,select,textarea{max-width:100%;min-width:0}.form-group input,.form-group select,.form-group textarea{width:100%}.page-head,.panel-head,.page-actions,.drawer-foot{min-width:0}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.page-head>div:first-child{flex:1 1 18rem;min-width:0}.page-actions{display:flex;flex-wrap:wrap;gap:.5rem}.btn{white-space:normal;line-height:1.2}.cards,.stat-row,.client-grid,.settings-grid,.report-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))!important;gap:clamp(.65rem,1vw,1rem)}.panel,.table-card,.stat-card{min-width:0;max-width:100%}.table-scroll{width:100%;min-width:0;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}table{max-width:none}th,td{vertical-align:middle}.drawer{width:min(46rem,calc(100vw - 1rem))!important;max-width:100%!important}.drawer-head,.drawer-body,.drawer-foot{width:100%;max-width:100%;min-width:0}.drawer-body{overflow-x:hidden}.calendar-modal,.date-range-modal,.calendar-dialog{width:min(60rem,calc(100vw - 1rem))!important;max-width:100%!important}.peru-operational-calendar{width:100%;max-width:100%;min-width:0;overflow:hidden}.peru-operational-calendar .rdp-root{width:100%;max-width:100%}.peru-operational-calendar table{width:100%;table-layout:fixed}.peru-operational-calendar .rdp-months{max-width:100%}.calendar-summary{grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr))!important}.operational-map,.sede-map,.leaflet-container{width:100%!important;max-width:100%}.grid2,.map-dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))!important}@media (max-width:1400px){.content{padding-left:clamp(.75rem,2vw,1.5rem);padding-right:clamp(.75rem,2vw,1.5rem)}.drawer{width:min(42rem,calc(100vw - 1rem))!important}}@media (max-width:980px){main>header{padding-left:1rem;padding-right:1rem}.page-head{align-items:stretch}.page-actions{width:100%}.page-actions .btn{flex:1 1 auto}.drawer{width:min(38rem,calc(100vw - .5rem))!important}}@media (max-width:760px){.app{display:block!important}.sidebar{position:relative!important;width:100%!important;min-height:auto!important}main{margin-left:0!important;width:100%!important}main>header{width:100%}.content{padding:.75rem!important}.form-grid{grid-template-columns:1fr!important}.form-group.full{grid-column:auto}.drawer{top:0!important;right:0!important;bottom:0!important;width:100%!important;max-width:100%!important;border-radius:0!important}.drawer-head,.drawer-body{padding:1rem}.drawer-foot{display:flex;gap:.5rem;flex-wrap:wrap}.drawer-foot .btn{flex:1 1 9rem}.stat-row,.cards,.client-grid,.settings-grid{grid-template-columns:1fr!important}.calendar-mode-switch{width:100%!important;display:grid!important;grid-template-columns:1fr!important}}@media (max-width:480px){.content{padding:.5rem!important}main>header{padding:.75rem}.page-actions{flex-direction:column}.page-actions .btn{width:100%}.calendar-summary,.site-kpis,.site-flow{grid-template-columns:1fr!important}.sede-coordinates{flex-direction:column}}td,th,label,span,small,p,strong,b{overflow-wrap:anywhere}img{max-width:100%;height:auto}html,body,#root{width:100%;min-width:0;min-height:100%}body{overflow-x:hidden}.app{min-height:100vh;width:100%;min-width:0}main{min-width:0}.content{min-width:0}.mobile-menu-button,.mobile-sidebar-close,.mobile-sidebar-overlay,.requirements-mobile-list{display:none}.page-head{min-width:0}.page-head>div{min-width:0}.page-head h2,.page-head p{max-width:100%}.stat-row{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))!important}.form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))!important}.search-row,.filters,.filter-row,input,select,textarea,button{min-width:0}@media (max-width:1200px){.stat-row{grid-template-columns:repeat(2,1fr)!important}.content{padding:1.25rem!important}.page-head{gap:1rem}}@media (max-width:780px){.sidebar{position:fixed!important;z-index:3000!important;left:0!important;top:0!important;bottom:0!important;width:min(19rem,86vw)!important;min-height:100vh!important;transform:translate(-102%);transition:transform .22s ease;overflow-y:auto;box-shadow:12px 0 35px #00000040}.sidebar.mobile-open{transform:translate(0)}.mobile-sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2990;border:0;padding:0;margin:0;background:#0a0e148c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-sidebar-close{display:grid;position:absolute;right:.75rem;top:.75rem;z-index:20;width:2rem;height:2rem;border:0;border-radius:.5rem;place-items:center;background:#ffffff14;color:#fff;font-size:1.35rem;cursor:pointer}main{margin-left:0!important;width:100%!important;min-width:0!important}main>header{position:sticky;top:0;z-index:100;height:auto!important;min-height:4rem;padding:.7rem 1rem!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;background:#fff;box-shadow:0 1px #00000012}.mobile-menu-button{display:flex;width:2.35rem;height:2.35rem;padding:.55rem;flex-direction:column;justify-content:center;gap:.25rem;border:1px solid #e1e5eb;border-radius:.65rem;background:#fff;cursor:pointer}.mobile-menu-button span{display:block;width:100%;height:2px;border-radius:10px;background:#202631}main>header>div:first-of-type{min-width:0}main>header h1{margin:0;font-size:clamp(1rem,4.3vw,1.15rem)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}main>header small{display:block;margin-top:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.65rem}.avatar{width:2.3rem!important;height:2.3rem!important;min-width:2.3rem;font-size:.7rem!important}.content{padding:1rem!important}.page-head{display:flex!important;flex-direction:column;align-items:stretch!important;gap:.8rem;margin-bottom:1rem}.page-head h2{margin-bottom:.25rem;font-size:1.3rem}.page-head p{font-size:.75rem;line-height:1.45}.page-actions{width:100%;display:grid!important;grid-template-columns:1fr;gap:.5rem}.page-actions .btn{width:100%;min-height:2.7rem}.stat-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:.65rem!important}.stat-card{min-height:7rem;padding:.85rem!important}.stat-label{font-size:.66rem!important}.stat-number{margin-top:.35rem;font-size:1.4rem!important}.stat-foot{font-size:.62rem!important}.requirements-filters,.filter-row,.filters,.attendance-toolbar{display:grid!important;grid-template-columns:1fr!important;width:100%;gap:.5rem!important}.requirements-filters input,.requirements-filters select,.filter-row input,.filter-row select,.filters input,.filters select,.attendance-toolbar input,.attendance-toolbar select{width:100%!important;min-height:2.75rem;margin:0!important}.requirements-mobile-list{display:grid;gap:.75rem;margin-top:1rem}.requirements-mobile-list~*{min-width:0}.requirements-mobile-list+.table-card{display:none}.requirement-mobile-card{width:100%;padding:1rem;border:1px solid #e1e5eb;border-radius:.9rem;background:#fff;box-shadow:0 1px 3px #141c280a}.requirement-mobile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding-bottom:.75rem;border-bottom:1px solid #eef0f3}.requirement-mobile-head>div{min-width:0}.requirement-mobile-code{display:block;font-size:.9rem;color:#151922}.requirement-mobile-service{display:block;margin-top:.15rem;color:#747e8e;font-size:.7rem}.requirement-mobile-location{margin-top:.75rem;display:flex;flex-direction:column;gap:.15rem}.requirement-mobile-location strong{font-size:.78rem}.requirement-mobile-location span{color:#747e8e;font-size:.7rem}.requirement-mobile-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-top:.8rem}.requirement-mobile-grid>div,.requirement-mobile-people>div{min-width:0;padding:.65rem;border-radius:.65rem;background:#f7f8fa}.requirement-mobile-grid span,.requirement-mobile-people span{display:block;margin-bottom:.2rem;color:#828b99;font-size:.58rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.requirement-mobile-grid strong,.requirement-mobile-people strong{font-size:.72rem;line-height:1.3}.requirement-mobile-people{display:grid;grid-template-columns:1fr;gap:.5rem;margin-top:.6rem}.requirement-mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.8rem}.requirement-mobile-actions .btn{min-height:2.55rem}.mobile-delete-button{border:1px solid #f2c6c9;background:#fff0f1;color:#bf141b;font-weight:700}.mobile-empty-card{padding:2rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.3rem;text-align:center;border:1px dashed #dce1e7;border-radius:.8rem;color:#7c8594}.mobile-empty-card strong{color:#242933}.drawer{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100vw!important;max-width:100vw!important;height:100dvh!important;border-radius:0!important;display:flex!important;flex-direction:column}.drawer-head{flex:0 0 auto;padding:1rem!important}.drawer-body{flex:1 1 auto;min-height:0;padding:1rem!important;overflow-y:auto!important;overflow-x:hidden!important}.drawer-foot{flex:0 0 auto;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom))!important;display:grid!important;grid-template-columns:1fr 1fr;gap:.5rem;background:#fff;border-top:1px solid #e5e8ed}.form-grid{grid-template-columns:1fr!important;gap:.8rem!important}.form-group,.form-group.full{grid-column:1!important;width:100%}.form-group label{font-size:.7rem!important}.form-group input,.form-group select,.form-group textarea{min-height:2.8rem;font-size:16px!important}.peru-operational-calendar{overflow:visible!important}.peru-operational-calendar .rdp-root,.peru-operational-calendar .rdp-month{width:100%!important}.peru-operational-calendar .rdp-month_grid{width:100%!important;table-layout:fixed}.peru-operational-calendar .rdp-day_button{width:clamp(2rem,11vw,2.65rem)!important;height:clamp(2rem,11vw,2.65rem)!important;font-size:.7rem}.calendar-summary{grid-template-columns:1fr 1fr!important}.calendar-date-list>div{max-height:9rem;overflow-y:auto}.operational-map{height:22rem!important}.sede-map{height:18rem!important}.map-dashboard-grid{grid-template-columns:1fr!important}.table-scroll{max-width:100%;overflow-x:auto}}@media (max-width:480px){.content{padding:.7rem!important}main>header{padding:.6rem .7rem!important}.stat-row{grid-template-columns:1fr 1fr!important;gap:.5rem!important}.stat-card{min-height:6.6rem;padding:.7rem!important}.requirement-mobile-grid,.requirement-mobile-actions{grid-template-columns:1fr 1fr}.drawer-foot{grid-template-columns:1fr}.calendar-summary{grid-template-columns:1fr!important}}@media (max-width:360px){.stat-row,.requirement-mobile-grid,.requirement-mobile-actions{grid-template-columns:1fr!important}}@media (max-width:900px){.sidebar:not(.mobile-open){transform:translate(-102%)}}@supports (padding:max(0px)){main>header{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}}@media (max-width:780px){.requirements-desktop-table{display:none!important}}@media (min-width:781px){.requirements-mobile-list{display:none!important}.requirements-desktop-table{display:block}}.daily-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:10px;padding:12px;border-bottom:1px solid var(--line)}.daily-toolbar input,.daily-toolbar select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px 11px}.daily-status{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.daily-status.cumplido{background:#eaf8ef;color:#087833}.daily-status.parcial{background:#fff6df;color:#8e6200}.daily-status.no_cubierto{background:#fff0f1;color:#bd151c}.daily-status.sin_registro{background:#eef1f5;color:#687181}@media (max-width:780px){.daily-toolbar{grid-template-columns:1fr}}.op-filters{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:12px;margin-bottom:12px;background:#fff;border:1px solid var(--line);border-radius:12px}.op-filters label{display:block;margin-bottom:5px;font-size:10px;font-weight:800;color:var(--muted)}.op-filters select{width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}.op-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.op-kpi{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff}.op-kpi.risk{border-left:3px solid #d71920}.op-kpi span{display:block;color:var(--muted);font-size:10px;font-weight:700}.op-kpi strong{display:block;margin-top:6px;font-size:23px}.op-kpi small{display:block;margin-top:5px;color:var(--muted);font-size:9px}.op-summary{display:grid;grid-template-columns:repeat(4,1fr);margin-top:10px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.op-summary>div{padding:12px;background:#fff}.op-summary strong{display:block;font-size:18px}.op-summary span{color:var(--muted);font-size:9px}.op-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.op-panel{min-width:0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px}.op-title{padding:12px 14px;border-bottom:1px solid var(--line);font-size:13px;font-weight:800}.op-map{width:100%;height:430px}.op-chart{width:100%;height:320px}.op-daily{margin-top:12px}@media (max-width:1100px){.op-kpis{grid-template-columns:repeat(3,1fr)}.op-grid{grid-template-columns:1fr}}@media (max-width:780px){.op-filters{grid-template-columns:1fr}.op-kpis,.op-summary{grid-template-columns:1fr 1fr}.op-map{height:340px}}@media (max-width:420px){.op-kpis,.op-summary{grid-template-columns:1fr}}.bi3-cut{padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.bi3-cut span{display:block;font-size:9px;color:var(--muted)}.bi3-cut b{font-size:10px}.bi3-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) auto;gap:8px;padding:10px;margin-bottom:10px;border:1px solid var(--line);border-radius:12px;background:#fff;position:sticky;top:68px;z-index:20}.bi3-filters label{font-size:9px;font-weight:800;color:var(--muted)}.bi3-filters select{display:block;width:100%;min-height:38px;margin-top:4px;padding:7px;border:1px solid var(--line);border-radius:8px;background:#fff}.bi3-filters .btn{align-self:end;min-height:38px}.bi3-sla{display:grid;grid-template-columns:170px minmax(0,1fr) 150px;align-items:center;gap:16px;padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff}.bi3-sla span{display:block;font-size:9px;color:var(--muted)}.bi3-sla strong{display:block;font-size:28px;margin:3px 0}.bi3-sla em{font-size:9px;font-style:normal}.bi3-track{height:12px;background:#edf0f3;border-radius:999px;position:relative}.bi3-track i{display:block;height:100%;border-radius:999px;background:var(--brand)}.bi3-track b{position:absolute;top:-5px;width:2px;height:22px;background:#222}.good{color:#138244!important}.warn{color:#a76f00!important}.bad{color:#c5161d!important}.bi3-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:10px}.bi3-kpi{text-align:left;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer}.bi3-kpi>span{display:block;font-size:9px;font-weight:800;color:var(--muted)}.bi3-kpi>strong{display:block;font-size:21px;margin:5px 0}.bi3-kpi>em{font-size:9px;font-style:normal;font-weight:750}.bi3-kpi>em small{color:var(--muted);font-weight:500}.bi3-kpi>div{display:flex;justify-content:space-between;margin-top:6px;font-size:9px;color:var(--muted)}.bi3-kpi>div b{color:var(--text)}.bi3-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.bi3-panel{min-width:0;margin-top:10px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.bi3-grid>.bi3-panel{margin-top:0}.bi3-panel>header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line)}.bi3-panel>header strong{font-size:11px}.bi3-panel>header span{font-size:9px;color:var(--muted);margin-right:auto}.bi3-panel>header button{border:0;background:transparent;color:var(--brand);font-size:9px;font-weight:800;cursor:pointer}.bi3-chart,.bi3-map{height:300px}.bi3-rank{padding:6px}.bi3-rank button{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:8px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;cursor:pointer}.bi3-rank button:hover{background:#f7f8fa}.bi3-rank i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#f0f2f5;font-size:8px;font-style:normal}.bi3-rank span b,.bi3-rank span small{display:block}.bi3-rank span b{font-size:10px}.bi3-rank span small{font-size:8px;color:var(--muted)}.bi3-site{margin:7px;padding:9px;border-radius:8px;background:#f7f8fa}.bi3-site b,.bi3-site span,.bi3-site small{display:block}.bi3-site span,.bi3-site small{font-size:8px;color:var(--muted)}@media (max-width:1200px){.bi3-filters,.bi3-kpis{grid-template-columns:repeat(3,1fr)}}@media (max-width:900px){.bi3-filters{position:static;grid-template-columns:repeat(2,1fr)}.bi3-kpis{grid-template-columns:repeat(2,1fr)}.bi3-grid,.bi3-sla{grid-template-columns:1fr}}@media (max-width:600px){.bi3-filters,.bi3-kpis{grid-template-columns:1fr}.bi3-chart,.bi3-map{height:260px}}.xbi{--xbi-ok:#18864b;--xbi-warn:#aa7210;--xbi-bad:#d01d2c;display:grid;gap:14px}.xbi-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff}.xbi-toolbar h2{margin:2px 0;font-size:24px}.xbi-toolbar p{margin:0;color:var(--muted);font-size:11px}.xbi-eyebrow{font-size:9px;font-weight:900;letter-spacing:.11em;color:var(--muted)}.xbi-filters{display:flex;align-items:flex-end;justify-content:flex-end;gap:7px;flex-wrap:wrap}.xbi-filters label{font-size:9px;font-weight:800;color:var(--muted)}.xbi-filters select{display:block;min-width:132px;height:36px;margin-top:4px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 28px 0 9px;font-size:11px}.xbi-filters button,.xbi-panel header button,.xbi-drawer header button{height:36px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 11px;font-size:10px;font-weight:800;cursor:pointer}.xbi-loading{padding:50px;text-align:center;color:var(--muted)}.xbi-hero{display:grid;grid-template-columns:minmax(410px,.9fr) 1.6fr;gap:14px}.xbi-sla{display:grid;grid-template-columns:150px minmax(0,1fr);gap:15px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.xbi-ring{--p:0deg;width:138px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--brand) var(--p),#edf0f4 0);position:relative}.xbi-ring:before{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border-radius:50%;background:#fff}.xbi-ring>div{position:relative;text-align:center}.xbi-ring small,.xbi-ring span{display:block;font-size:8px;color:var(--muted)}.xbi-ring strong{display:block;font-size:27px;line-height:1.15;margin:3px 0}.xbi-sla-copy h3{font-size:17px;margin:3px 0}.xbi-sla-copy p{font-size:10px;color:var(--muted);margin:0 0 14px}.xbi-progress{height:9px;border-radius:99px;background:#edf0f4;position:relative}.xbi-progress i{display:block;height:100%;border-radius:inherit;background:var(--brand)}.xbi-progress b{position:absolute;top:-5px;width:2px;height:19px;background:#111}.xbi-hero-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:12px}.xbi-hero-facts div{padding-right:10px}.xbi-hero-facts span{display:block;font-size:8px;color:var(--muted)}.xbi-hero-facts b{font-size:13px}.xbi-core{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.xbi-metric{padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff;border-top:3px solid #cfd5dd}.xbi-metric.ok{border-top-color:var(--xbi-ok)}.xbi-metric.warn{border-top-color:var(--xbi-warn)}.xbi-metric.bad{border-top-color:var(--xbi-bad)}.xbi-metric-top,.xbi-metric-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.xbi-metric-top span{font-size:10px;font-weight:900}.xbi-metric-top small{font-size:8px;color:var(--muted)}.xbi-metric>strong{display:block;font-size:27px;margin:10px 0}.xbi-metric-foot{font-size:8px;color:var(--muted)}.xbi-metric-foot b{font-size:9px}.up{color:var(--xbi-ok)!important}.down{color:var(--xbi-bad)!important}.xbi-strip{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.xbi-strip>div{padding:13px 14px;border-right:1px solid var(--line)}.xbi-strip>div:last-child{border-right:0}.xbi-strip span,.xbi-strip small{display:block;font-size:8px;color:var(--muted)}.xbi-strip b{display:block;font-size:19px;margin:3px 0}.xbi-strip .danger{box-shadow:inset 3px 0 0 var(--xbi-bad)}.xbi-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:14px}.xbi-bottom{grid-template-columns:.8fr 1.7fr}.xbi-panel{min-width:0;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.xbi-panel>header,.xbi-drawer>header{min-height:55px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line)}.xbi-panel>header h3,.xbi-drawer h3{font-size:13px;margin:2px 0 0}.xbi-panel>header>b{font-size:19px}.xbi-panel>header>span{font-size:8px;color:var(--muted)}.xbi-chart{height:310px}.xbi-hint{display:block;padding:0 14px 10px;color:var(--muted);font-size:8px}.xbi-ranking{padding:7px}.xbi-ranking button{display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;padding:10px;text-align:left;cursor:pointer;border-radius:8px}.xbi-ranking button:hover,.xbi-ranking button.active{background:var(--soft)}.xbi-ranking i{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#f0f2f5;font-size:9px;font-style:normal}.xbi-ranking span b,.xbi-ranking span small{display:block}.xbi-ranking span b{font-size:10px}.xbi-ranking span small{font-size:8px;color:var(--muted);margin-top:2px}.xbi-ranking strong{font-size:12px}.xbi-table{width:100%;border-collapse:collapse;margin:0}.xbi-table th,.xbi-table td{padding:10px 12px;border-bottom:1px solid var(--line);font-size:9px}.xbi-table th{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.xbi-table tbody tr{cursor:pointer}.xbi-table tbody tr:hover,.xbi-table tbody tr.active{background:var(--soft)}.xbi-drawer{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.ok{color:var(--xbi-ok)!important}.warn{color:var(--xbi-warn)!important}.bad{color:var(--xbi-bad)!important}@media (max-width:1250px){.xbi-toolbar{align-items:flex-start;flex-direction:column}.xbi-filters{justify-content:flex-start}.xbi-hero{grid-template-columns:1fr}.xbi-strip{grid-template-columns:repeat(3,1fr)}.xbi-strip>div:nth-child(3){border-right:0}.xbi-strip>div:nth-child(-n+3){border-bottom:1px solid var(--line)}}@media (max-width:900px){.xbi-grid,.xbi-bottom{grid-template-columns:1fr}.xbi-core{grid-template-columns:repeat(2,1fr)}.xbi-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.xbi-filters select{width:100%;min-width:0}.xbi-chart{height:280px}}@media (max-width:620px){.xbi-toolbar{padding:13px}.xbi-toolbar h2{font-size:20px}.xbi-filters,.xbi-core,.xbi-sla{grid-template-columns:1fr}.xbi-ring{margin:auto}.xbi-hero-facts{grid-template-columns:1fr;gap:8px}.xbi-strip{grid-template-columns:repeat(2,1fr)}.xbi-strip>div{border-bottom:1px solid var(--line)}.xbi-strip>div:nth-child(2n){border-right:0}.xbi-chart{height:250px}}.xbi-turn-map{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10px;min-width:0}.xbi-turn-map .xbi-panel{margin-top:0;min-width:0}.xbi-shift-chart{height:300px!important}.xbi-map-panel{overflow:hidden}.xbi-leaflet{height:300px;width:100%;z-index:1;background:#eef1f5}.xbi-map-panel .leaflet-container{font:inherit}.xbi-map-popup{min-width:190px}.xbi-map-popup strong,.xbi-map-popup span,.xbi-map-popup small{display:block}.xbi-map-popup strong{font-size:13px;margin-bottom:2px}.xbi-map-popup span,.xbi-map-popup small{font-size:10px;color:#687386;margin-bottom:5px}.xbi-map-popup div{font-size:11px;margin-top:5px}.xbi-map-popup button{margin-top:8px;border:0;border-radius:7px;padding:7px 9px;background:var(--brand);color:#fff;font-size:10px;font-weight:800;cursor:pointer}.xbi-map-empty{height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:20px;text-align:center;background:#f7f8fa;color:var(--muted)}.xbi-map-empty b{color:var(--text)}@media (max-width:1050px){.xbi-turn-map{grid-template-columns:1fr}.xbi-shift-chart,.xbi-leaflet,.xbi-map-empty{height:270px!important}}@media (max-width:600px){.xbi-shift-chart,.xbi-leaflet,.xbi-map-empty{height:245px!important}}.login-create-access{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:16px;font-size:11px;color:var(--muted)}.login-create-access button,.login-back-link{border:0;background:transparent;color:var(--brand);font-weight:800;cursor:pointer;padding:3px}.login-create-access button:hover,.login-back-link:hover{text-decoration:underline}.login-back-link{display:block;width:100%;margin-top:14px;text-align:center}.login-form-card select{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff}.login-form-card select:disabled{background:#f4f5f7;color:#9298a3}:root{--ng-red: #e31b23;--ng-red-dark: #c9141c;--ng-red-soft: #fff3f4;--ng-ink: #111827;--ng-text: #374151;--ng-muted: #7b8494;--ng-line: #e7eaf0;--ng-page: #f6f7f9;--ng-white: #ffffff;--ng-green: #15803d;--ng-green-bg: #eaf8ef;--ng-amber: #b76e00;--ng-amber-bg: #fff7df;--ng-blue: #2563eb;--ng-blue-bg: #eef4ff;--ng-shadow: 0 1px 2px rgba(15, 23, 42, .03), 0 8px 24px rgba(15, 23, 42, .045);--ng-shadow-lg: 0 18px 50px rgba(15, 23, 42, .12)}.content{background:radial-gradient(circle at 100% 0%,rgba(227,27,35,.025),transparent 28rem),var(--ng-page)}.page-head{margin-bottom:22px}.page-head h2{margin:0 0 5px;font-size:25px;line-height:1.18;letter-spacing:-.035em;font-weight:800;color:var(--ng-ink)}.page-head p{margin:0;color:var(--ng-muted);font-size:13px;line-height:1.55}.btn{min-height:40px;padding:0 17px;border-radius:10px;font-size:12px;font-weight:700;letter-spacing:-.01em;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{border:1px solid var(--ng-red);background:linear-gradient(180deg,#ed222b 0%,var(--ng-red) 100%);color:#fff;box-shadow:0 6px 16px #e31b232e}.btn-primary:hover{background:var(--ng-red-dark);box-shadow:0 8px 20px #e31b2338}.btn-secondary{background:#fff;border:1px solid #dfe3e9;color:#374151}.btn-secondary:hover{border-color:#cbd1d9;background:#f9fafb}.stat-row{gap:16px;margin-bottom:22px}.stat-card{position:relative;overflow:hidden;min-height:108px;padding:19px 20px 17px;background:#fffffff5;border:1px solid var(--ng-line);border-radius:14px;box-shadow:var(--ng-shadow);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.stat-card:before{content:"";position:absolute;left:0;top:17px;bottom:17px;width:3px;border-radius:0 5px 5px 0;background:transparent}.stat-card:first-child:before{background:var(--ng-red)}.stat-card:hover{transform:translateY(-2px);border-color:#dce0e6;box-shadow:0 2px 4px #0f172a0a,0 12px 28px #0f172a12}.stat-label{margin-bottom:9px;color:#667085;font-size:11px;font-weight:700;letter-spacing:-.005em}.stat-number{color:#101828;font-size:26px;line-height:1;font-weight:800;letter-spacing:-.035em}.stat-foot{margin-top:10px;color:#98a2b3;font-size:10px}.table-card,.panel{overflow:hidden;background:#fff;border:1px solid var(--ng-line);border-radius:15px;box-shadow:var(--ng-shadow)}.table-scroll table{width:100%;border-collapse:separate;border-spacing:0}.table-scroll thead th{height:44px;padding:0 14px;background:#fafbfc;border-bottom:1px solid #e7eaf0;color:#697386;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.035em;white-space:nowrap}.table-scroll tbody td{min-height:50px;padding:13px 14px;border-bottom:1px solid #edf0f3;color:#202938;font-size:12px;vertical-align:middle}.table-scroll tbody tr:last-child td{border-bottom:0}.table-scroll tbody tr{transition:background .12s ease,box-shadow .12s ease}.table-scroll tbody tr:hover td{background:#fbfcfd}.table-primary,.table-scroll tbody td strong{color:#111827;font-weight:750}.toolbar{padding:11px;gap:10px;background:#fff;border-bottom:1px solid var(--ng-line)}.search-box{position:relative}.search-box input,.toolbar select{height:42px;background:#fff;border:1px solid #dfe3e8;border-radius:10px;color:#1f2937;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.search-box input{padding-left:15px}.search-box input::placeholder{color:#8d96a5}.search-box input:focus,.toolbar select:focus{border-color:#e31b237a;box-shadow:0 0 0 3px #e31b2312}.badge{display:inline-flex;align-items:center;min-height:25px;padding:4px 10px;border-radius:999px;font-size:10px;line-height:1;font-weight:800}.badge-success{color:var(--ng-green);background:var(--ng-green-bg);border:1px solid rgba(21,128,61,.08)}.badge-danger{color:#c62828;background:#fff0f0;border:1px solid rgba(198,40,40,.08)}.badge-warning{color:var(--ng-amber);background:var(--ng-amber-bg)}.badge-neutral{color:#596273;background:#f1f3f5}.drawer-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a6e}.drawer,.drawer-panel{background:#fff;border-left:1px solid #e5e7eb;box-shadow:-20px 0 55px #0f172a21}.drawer-head{position:sticky;top:0;z-index:10;padding:20px 24px 17px;background:#fffffff7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #eceef2}.drawer-head h2,.drawer-head h3{margin:0;color:#111827;font-size:18px;font-weight:800;letter-spacing:-.025em}.drawer-head p{margin:4px 0 0;color:#8a93a2;font-size:11px}.drawer-body{padding:20px 24px 32px}.form-grid{gap:17px 16px}.form-group label{display:block;margin-bottom:7px;color:#344054;font-size:11px;font-weight:700}.form-group input,.form-group select,.form-group textarea{width:100%;min-height:42px;padding:0 13px;background:#fff;border:1px solid #dce1e8;border-radius:10px;color:#1d2939;font-size:12px;outline:none;box-shadow:0 1px 2px #10182804;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.form-group textarea{min-height:90px;padding-top:11px}.form-group input:hover,.form-group select:hover{border-color:#cbd2dc}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#e31b238c;box-shadow:0 0 0 3px #e31b2312}.field-help{display:block;margin-top:6px;color:#98a2b3;font-size:9px;line-height:1.4}.peru-date-picker,.date-range-picker,.calendar-picker{margin-top:3px;padding:0;background:#fff;border-radius:14px}.calendar-mode,.date-mode-selector{display:inline-flex;padding:3px;gap:3px;background:#f2f4f7;border:1px solid #eaecf0;border-radius:10px}.calendar-mode button,.date-mode-selector button{min-height:34px;padding:0 13px;border:0;border-radius:8px;background:transparent;color:#697386;font-size:11px;font-weight:700;cursor:pointer}.calendar-mode button.active,.date-mode-selector button.active{background:#fff;color:#111827;box-shadow:0 1px 3px #1018281a,0 1px 2px #1018280d}.calendar-help,.calendar-instructions{margin:10px 0 16px;padding:11px 13px;background:#fafbfc;border:1px solid #eaecf0;border-radius:10px;color:#7a8495;font-size:10px;line-height:1.45}.calendar-day,.day-button,.calendar-grid button{border-radius:9px!important;transition:transform .12s ease,box-shadow .12s ease,background .12s ease!important}.calendar-day:hover,.day-button:hover,.calendar-grid button:hover{transform:translateY(-1px)}.calendar-day.selected,.day-button.selected,.calendar-grid button.selected,.calendar-grid button[aria-pressed=true]{color:#fff!important;background:linear-gradient(180deg,#ed242c,#dc1820)!important;border-color:#dc1820!important;box-shadow:0 5px 12px #e31b2333}.calendar-summary{overflow:hidden;margin-top:14px;background:#fbfcfd;border:1px solid #e7eaf0;border-radius:11px}.calendar-summary>div{padding:11px 13px}.calendar-summary span{display:block;color:#8a93a2;font-size:9px;margin-bottom:4px}.calendar-summary strong{color:#111827;font-size:13px}.drawer-foot{position:sticky;bottom:0;z-index:10;display:flex;justify-content:flex-end;gap:10px;padding:14px 24px;background:#fffffff7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid #eceef2;box-shadow:0 -8px 24px #0f172a06}.badge-info,.status-en-curso{display:inline-flex;align-items:center;gap:6px;min-height:25px;padding:4px 10px;color:#1d4ed8;background:#eef4ff;border-radius:999px;font-size:10px;font-weight:800}.badge-info:before,.status-en-curso:before{content:"";width:6px;height:6px;border-radius:999px;background:#3b82f6;box-shadow:0 0 0 3px #3b82f61c}.drawer::-webkit-scrollbar,.drawer-panel::-webkit-scrollbar{width:7px}.drawer::-webkit-scrollbar-track,.drawer-panel::-webkit-scrollbar-track{background:transparent}.drawer::-webkit-scrollbar-thumb,.drawer-panel::-webkit-scrollbar-thumb{background:#d5d9df;border-radius:999px}@media (max-width: 900px){.stat-row{gap:10px}.stat-card{min-height:96px;padding:16px;border-radius:12px}.stat-number{font-size:23px}.drawer,.drawer-panel{width:100%!important;max-width:100%!important}.drawer-head,.drawer-body,.drawer-foot{padding-left:18px;padding-right:18px}}.ng-status{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:27px;padding:5px 10px;border-radius:999px;border:1px solid transparent;font-size:10px;font-weight:750;line-height:1;white-space:nowrap;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.ng-status-icon{width:13px;height:13px;flex:0 0 auto}.ng-status.status-success{color:#067647;background:#ecfdf3;border-color:#d1fadf}.ng-status.status-success .ng-status-icon{color:#079455}.ng-status.status-progress{color:#175cd3;background:#eff8ff;border-color:#d1e9ff}.ng-status.status-progress .ng-status-icon{color:#2e90fa}.ng-status.status-warning{color:#b54708;background:#fffaeb;border-color:#feefc7}.ng-status.status-warning .ng-status-icon{color:#f79009}.ng-status.status-danger{color:#b42318;background:#fef3f2;border-color:#fee4e2}.ng-status.status-danger .ng-status-icon{color:#f04438}.ng-status.status-neutral{color:#475467;background:#f2f4f7;border-color:#eaecf0}.ng-status.status-neutral .ng-status-icon{color:#667085}.table-scroll td .ng-status{vertical-align:middle}.ng-status:hover{box-shadow:0 1px 2px #1018280a,0 2px 5px #1018280a}.xbi-core .xbi-metric{position:relative;overflow:hidden}.xbi-metric-icon{position:absolute;top:16px;right:16px;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:#f4f6f8;border:1px solid #e7eaf0;color:#475569;transition:transform .18s ease,background .18s ease,border-color .18s ease}.xbi-core .xbi-metric:hover .xbi-metric-icon{transform:translateY(-2px);background:#fff;border-color:#d7dce4}.xbi-core .xbi-metric.ok .xbi-metric-icon,.xbi-core .xbi-metric.good .xbi-metric-icon{color:#16803c;background:#edf9f1;border-color:#d4f0de}.xbi-core .xbi-metric.warn .xbi-metric-icon{color:#a86600;background:#fff8e8;border-color:#f5e3b5}.xbi-core .xbi-metric.bad .xbi-metric-icon,.xbi-core .xbi-metric.danger .xbi-metric-icon{color:#c81e1e;background:#fff0f0;border-color:#f8d5d5}.stat-row .stat-card{position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.stat-row .stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0f172a11;border-color:#d8dde6}.stat-card-icon{position:absolute;top:16px;right:16px;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;color:#475569;background:#f5f7f9;border:1px solid #e5e9ef}.stat-row .stat-card:first-child .stat-card-icon{color:#16803c;background:#edf9f1;border-color:#d4f0de}.stat-row .stat-card:nth-child(2) .stat-card-icon{color:#475569;background:#f4f6f8}.stat-row .stat-card:nth-child(3) .stat-card-icon{color:#2563a8;background:#eff6ff;border-color:#d9e8fb}.stat-row .stat-card:nth-child(4) .stat-card-icon{color:#16803c;background:#edf9f1;border-color:#d4f0de}.stat-row .stat-card:nth-child(5) .stat-card-icon{color:#c81e1e;background:#fff0f0;border-color:#f8d5d5}.stat-row .stat-card:nth-child(6) .stat-card-icon{color:#a86600;background:#fff8e8;border-color:#f5e3b5}.stat-row .stat-card .stat-label,.stat-row .stat-card .stat-number,.stat-row .stat-card .stat-foot{padding-right:42px}@media (max-width: 700px){.stat-card-icon,.xbi-metric-icon{width:34px;height:34px;top:13px;right:13px}}.xbi-metric{position:relative;padding:18px 20px!important}.xbi-metric-head{display:flex;align-items:center;gap:11px;margin-bottom:14px}.xbi-kpi-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;flex:0 0 42px;border-radius:12px;color:#475467;background:#f2f4f7;border:1px solid #e4e7ec}.xbi-kpi-icon.ok{color:#079455;background:#ecfdf3;border-color:#d1fadf}.xbi-kpi-icon.warn{color:#dc6803;background:#fffaeb;border-color:#feefc7}.xbi-kpi-icon.bad{color:#d92d20;background:#fef3f2;border-color:#fee4e2}.xbi-metric-title{min-width:0;flex:1}.xbi-metric-title>span{display:block;color:#344054;font-size:11px;font-weight:750}.xbi-metric-title>small{display:block;margin-top:3px;color:#98a2b3;font-size:9px}.xbi-metric-value{display:block;margin-top:2px;font-size:27px!important;line-height:1;letter-spacing:-.04em}.xbi-metric-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:13px}.xbi-metric-footer>small{color:#98a2b3;font-size:9px;line-height:1.35}.xbi-metric-footer>b{flex:0 0 auto;font-size:9px}.xbi-metric:hover .xbi-kpi-icon{transform:translateY(-1px)}.xbi-kpi-icon{transition:transform .15s ease,box-shadow .15s ease}.xbi-metric:hover .xbi-kpi-icon{box-shadow:0 5px 14px #0f172a12}.xbi-week-ref{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex:0 0 auto}.xbi-week-ref b{font-size:9px;line-height:1;font-weight:800}.xbi-week-ref span{color:#98a2b3;font-size:8px;white-space:nowrap}.xbi-week-ref.no-ref b{color:#98a2b3}.stat-card{position:relative;overflow:hidden}.module-stat-icon{position:absolute;top:17px;right:17px;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.module-stat-icon svg{width:20px;height:20px}.module-stat-icon.blue{color:#2563a8;background:#eff6ff;border:1px solid #d9e8fb}.module-stat-icon.green{color:#079455;background:#ecfdf3;border:1px solid #d1fadf}.module-stat-icon.red{color:#d92d20;background:#fef3f2;border:1px solid #fee4e2}.module-stat-icon.amber{color:#dc6803;background:#fffaeb;border:1px solid #feefc7}.module-stat-icon.violet{color:#6941c6;background:#f4f3ff;border:1px solid #e4e1ff}.module-stat-icon.gray{color:#475467;background:#f2f4f7;border:1px solid #e4e7ec}.stat-card .stat-label,.stat-card .stat-number,.stat-card .stat-foot{padding-right:48px}.stat-card:hover .module-stat-icon{transform:translateY(-2px);box-shadow:0 5px 14px #0f172a12}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn svg{flex:0 0 auto}@media (max-width: 700px){.module-stat-icon{top:13px;right:13px;width:36px;height:36px;border-radius:10px}.module-stat-icon svg{width:18px;height:18px}}.attendance-actions-cell{width:112px;white-space:nowrap}.attendance-delete-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 10px;border:1px solid #fecaca;border-radius:9px;background:#fff5f5;color:#d71920;font-size:11px;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.attendance-delete-btn:hover{background:#fee2e2;border-color:#fca5a5;transform:translateY(-1px)}.attendance-delete-btn:active{transform:translateY(0)}.attendance-delete-btn svg{flex:0 0 auto}@media (max-width: 850px){.attendance-delete-btn span{display:none}.attendance-delete-btn{width:32px;padding:0}.attendance-actions-cell{width:52px}}
