@import"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css";.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;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{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{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;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;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-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: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:rgba(255,255,255,.5)}.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:rgba(255,255,255,.8);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;box-sizing:border-box;background:rgba(255,255,255,.8);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;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:white;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;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}}.form-section{width:100%;height:100%;box-sizing:border-box;margin-bottom:20px;color:#e0e0e0}.form-section.active{display:block}.form-section h2{color:#e0e0e0;margin-bottom:20px;font-size:24px}.expense-form-section{width:100%;box-sizing:border-box;margin-bottom:20px}.expense-form-section.active{display:block;animation:slideInUp .4s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.expense-form-section h2{color:#e0e0e0;margin-bottom:20px;font-size:24px}.form-group{margin-bottom:15px;position:relative;width:100%}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel],.form-group input[type=password],.form-group input[type=number],.form-group input[type=date],.form-group select,.form-group textarea{padding:12px 12px 12px 40px;width:100%;margin:5px 0;background-color:#444;border:1px solid #555;border-radius:5px;color:#ddd;font-size:16px;box-sizing:border-box;transition:all .3s ease}.form-group input:focus-visible,.form-group select:focus-visible,.form-group textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-color:var(--primary)}.expense-form-group input[type=file]{padding:8px;background-color:#444;border:1px solid #555;border-radius:5px;color:#ddd;width:100%;box-sizing:border-box}.form-group i{position:absolute;top:50%;left:12px;transform:translateY(-50%);color:#bbb;font-size:18px;transition:color .3s ease}.tooltip{position:absolute;top:-60px;left:0;width:100%;border:1px solid #4caf50;background-color:#444;color:#ddd;padding:8px;border-radius:5px;font-size:12px;z-index:1;display:none;box-sizing:border-box;opacity:0;transition:opacity .3s ease;pointer-events:none}input:focus+.tooltip,select:focus+.tooltip,textarea:focus+.tooltip{display:block;opacity:1}input:focus+.expense-tooltip{display:block;opacity:1}input:focus:valid,select:focus:valid,textarea:focus:valid{border-color:#4caf50;box-shadow:0 0 5px #4caf5080}input:focus:invalid,select:focus:invalid,textarea:focus:invalid,.form-group.error input,.form-group.error select,.form-group.error textarea{border-color:#ff5252;box-shadow:0 0 5px #ff525280}.form-group.success input,.form-group.success select,.form-group.success textarea{border-color:#4caf50;box-shadow:0 0 5px #4caf5080}.form-group.error i{color:#ff5252}.form-group.success i{color:#4caf50}.expense-tooltip{position:absolute;top:-60px;left:0;width:100%;border:1px solid #4caf50;background-color:#444;color:#ddd;padding:8px;border-radius:5px;font-size:12px;z-index:1;display:none;box-sizing:border-box;opacity:0;transition:opacity .3s ease;pointer-events:none}input:focus+.expense-tooltip,select:focus+.expense-tooltip,textarea:focus+.expense-tooltip{display:block;opacity:1}input:focus:invalid,.expense-form-group.error input{border-color:#ff5252;box-shadow:0 0 5px #ff525280}.expense-form-group.success input{border-color:#4caf50;box-shadow:0 0 5px #4caf5080}.expense-form-group.error i{color:#ff5252}.expense-form-group.success i{color:#4caf50}.expense-error-message{color:#ff5252;font-size:12px;margin-top:5px;display:none;animation:errorShake .5s ease-out}@keyframes errorShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-2px)}20%,40%,60%,80%{transform:translate(2px)}}.expense-form-group.error .expense-error-message{display:block}.button-group{display:flex;justify-content:space-between;flex-wrap:wrap;width:100%}.submit-btn,.back-btn{width:48%;font-size:16px;margin:0}.submit-btn:hover,.back-btn:hover{background-color:#333;border-color:#4caf50;box-shadow:0 0 8px #4caf5066;transform:translateY(-2px)}.expense-button-group{display:flex;justify-content:space-between;flex-wrap:wrap;width:100%}.modal{display:none;position:fixed;z-index:9999;left:0;top:0;width:100%;height:100%;overflow-y:auto;background-color:#000000e6;font-family:Roboto,sans-serif}.modal-content{background-color:#1c1c1c;margin:60px auto;padding:30px 20px;border-radius:15px;width:90%;max-width:500px;position:relative;color:#e0e0e0;box-sizing:border-box;box-shadow:0 5px 15px #000000b3;animation:modalFadeIn .5s}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.close-btn{color:#e0e0e0;position:absolute;right:15px;top:15px;font-size:28px;font-weight:700;cursor:pointer;padding:5px;border-radius:5px;transition:color .3s}.close-btn:hover,.close-btn:focus-visible{color:#ff5252;outline:2px solid var(--primary);outline-offset:2px}.modal-header{text-align:center;margin-bottom:20px}.modal-content h2{margin-top:0;color:#e0e0e0;font-size:28px}.expense-success-container{text-align:center;padding:30px 20px;margin:60px auto}.expense-success-container h2{color:#4caf50;font-size:32px;margin-top:0}.expense-success-container p{color:#ccc;font-size:18px;margin-bottom:15px}.expense-loading{text-align:center;padding:40px;color:#e0e0e0}.expense-loading i{font-size:24px;color:#4caf50;animation:spin 1s linear infinite}.expense-employee-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-bottom:20px}.expense-button,.expense-employee-button,.submit-btn,.back-btn,.expense-close-button,.btn-primary,.btn-secondary{display:flex;align-items:center;padding:10px 14px;background-color:#1c1c1c;border:2px solid #444;border-radius:6px;color:#e0e0e0;cursor:pointer;font-size:14px;transition:all .2s ease;text-align:left}.expense-button:hover,.expense-employee-button:hover,.submit-btn:hover,.back-btn:hover,.expense-close-button:hover,.btn-primary:hover,.btn-secondary:hover{background-color:#333;border-color:#4caf50;box-shadow:0 0 8px #4caf5066;transform:translateY(-1px)}.expense-button:focus-visible,.expense-employee-button:focus-visible,.submit-btn:focus-visible,.back-btn:focus-visible,.expense-close-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-color:#4caf50;box-shadow:0 0 8px #4caf5066}.expense-employee-list{display:flex;flex-direction:column;gap:8px;margin:0 0 16px;padding:0}.expense-employee-button.selected{background-color:#333;border-color:#4caf50;box-shadow:0 2px 8px #4caf504d;transform:translateY(-2px)}.expense-employee-button{display:flex;justify-content:space-between;align-items:center;padding:12px;background-color:#1c1c1c;border:2px solid #444;border-radius:6px;color:#e0e0e0;cursor:pointer;font-size:14px;transition:all .2s ease;width:100%;text-align:left;margin:2px 0}.expense-button-left{display:flex;align-items:center;flex:1;min-width:0;gap:6px}.expense-employee-icon,.expense-category-icon{flex-shrink:0;width:16px;height:16px;font-size:16px;color:var(--primary);opacity:.8;display:flex;align-items:center;justify-content:center;margin-right:6px}.expense-employee-name,.expense-category-name{font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-employee-role,.expense-category-description{color:#bbb;font-size:13px;flex-shrink:0;margin-left:auto}.expense-employee-summary{margin-top:16px;padding:12px;background:#333;border-radius:6px;color:#e0e0e0;text-align:center}.expense-summary{margin-top:20px;padding:16px;background:#1c1c1c;border-radius:8px}.expense-summary h3{color:#e0e0e0;margin-bottom:12px;font-size:18px}.expense-summary-row{display:flex;justify-content:space-between;margin-bottom:8px}.expense-summary-label{color:#bbb}.expense-summary-value{color:#e0e0e0}.expense-summary-total{font-weight:600;border-top:1px solid #444;padding-top:8px;margin-top:8px}.expense-summary-total .expense-summary-label,.expense-summary-total .expense-summary-value{color:#e0e0e0}.expense-form-group label{display:block;color:#e0e0e0;margin-bottom:8px;font-weight:600}.expense-form-group label span{color:#ff5252;margin-left:4px}.expense-form-group textarea{padding:12px 12px 12px 40px;width:100%;margin:5px 0;background-color:#444;border:1px solid #555;border-radius:5px;color:#ddd;font-size:16px;box-sizing:border-box;transition:all .3s ease;resize:vertical;min-height:80px}.expense-form-group textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-color:var(--primary)}.expense-form-group .relative{position:relative}.expense-form-group .prefix-input{padding-left:60px}.expense-form-group .prefix{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#ccc;font-weight:600;z-index:1}.expense-checkbox-label{display:flex;align-items:center;cursor:pointer;gap:12px}.expense-checkbox-label input[type=checkbox]{width:20px;height:20px;background-color:#444;border:1px solid #555;border-radius:3px;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;cursor:pointer;position:relative;transition:all .3s ease}.expense-checkbox-label input[type=checkbox]:checked{background-color:#4caf50;border-color:#4caf50}.expense-checkbox-label input[type=checkbox]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.expense-checkbox-label input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#1a1a1a;font-size:12px;font-weight:700}.expense-checkbox-label span{color:#e0e0e0}.expense-success-header{text-align:center;margin-bottom:24px}.expense-success-icon{font-size:48px;color:#4caf50;margin-bottom:16px;animation:successPulse 2s ease-in-out infinite}@keyframes successPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.expense-success-title{color:#e0e0e0;margin-bottom:8px;font-size:24px}.expense-reference-number{color:#e0e0e0;font-weight:600}.expense-history-title{color:#e0e0e0;margin-bottom:16px;font-size:18px}.expense-history-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.expense-history-item{padding:12px;background:#1c1c1c;border-radius:6px;border:1px solid #444;display:flex;justify-content:space-between;align-items:center}.expense-history-info .expense-date{color:#bbb;font-size:12px}.expense-empty-state{text-align:center;padding:20px;color:#ccc}.expense-review-section{padding:16px;background:#1c1c1c;border-radius:8px;margin-bottom:16px}.expense-review-row{display:flex;justify-content:space-between;margin-bottom:8px}.expense-review-label{color:#bbb}.expense-review-value{color:#e0e0e0}.expense-review-total{font-weight:600;border-top:1px solid #444;padding-top:8px;margin-top:8px}.expense-review-total .expense-review-label,.expense-review-total .expense-review-value{color:#e0e0e0}.expense-employee-review-item{padding:12px;background:#1c1c1c;border-radius:6px;border:1px solid #444;display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.expense-employee-review-name{color:#e0e0e0;font-weight:600}.expense-employee-review-id{color:#bbb;margin-left:8px}.expense-employee-review-salary{color:#e0e0e0}.expense-file-list{padding:16px;background:#1c1c1c;border-radius:8px}.expense-file-item{display:flex;align-items:center;gap:8px;margin-bottom:8px}.expense-file-icon{color:#4caf50}.expense-file-name{color:#e0e0e0}.expense-file-size{color:#bbb;font-size:12px}.expense-settings-summary{padding:12px;background:#1c1c1c;border-radius:6px;color:#bbb}.notification{position:fixed;top:20px;right:20px;z-index:1000;padding:12px 20px;border-radius:6px;color:#e0e0e0;font-weight:500;box-shadow:0 4px 12px #0000004d;animation:slideInRight .3s ease-out;max-width:300px;display:none}.notification.success{background-color:#4caf50;border-left:4px solid #2e7d32}.notification.error{background-color:#ff5252;border-left:4px solid #c62828}.notification.info{background-color:#2196f3;border-left:4px solid #1565c0}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.admin-tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.admin-tool-btn{background-color:#1c1c1c;border:1px solid #444;border-radius:8px;color:#e0e0e0;padding:20px;cursor:pointer;transition:all .3s ease;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.admin-tool-btn:hover{background-color:#333;border-color:#555;transform:translateY(-3px)}.tool-icon{font-size:24px;color:#4caf50;margin-bottom:8px}.admin-tool-btn span{font-size:14px;font-weight:600}.expense-file-upload-label{display:block;color:#e0e0e0;margin-bottom:8px;font-weight:600}.expense-file-drop-zone{border:2px dashed #555;border-radius:8px;padding:32px;text-align:center;cursor:pointer;transition:all .3s ease;background-color:#1c1c1c;transform:scale(1)}.expense-file-drop-zone:hover{border-color:#4caf50;background-color:#4caf500d;box-shadow:0 0 12px #4caf504d;transform:scale(1.01)}.expense-file-drop-zone.drag-over{border-color:#4caf50;background-color:#4caf501a;transform:scale(1.02);box-shadow:0 0 20px #4caf5033}.expense-file-upload-icon{font-size:32px;color:#bbb;margin-bottom:12px}.expense-file-upload-text{color:#bbb;margin-bottom:4px}.expense-file-upload-hint{color:#666;font-size:12px}.expense-file-errors{margin-top:12px}.expense-file-error{color:#ff5252;font-size:14px;margin-bottom:4px;display:flex;align-items:center;gap:8px}.expense-file-list{margin-top:16px}.expense-file-list-title{color:#e0e0e0;font-size:14px;font-weight:600;margin-bottom:8px}.expense-file-item{display:flex;align-items:center;justify-content:space-between;background-color:#333;border:1px solid #444;border-radius:6px;padding:12px;margin-bottom:8px}.expense-file-info{display:flex;align-items:center;gap:12px}.expense-file-preview{width:40px;height:40px;object-fit:cover;border-radius:4px}.expense-file-icon{font-size:18px;color:#bbb}.expense-file-details h4{color:#e0e0e0;font-size:14px;margin:0 0 2px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-file-details p{color:#666;font-size:12px;margin:0}.expense-file-remove{color:#ff5252;cursor:pointer;padding:4px;border-radius:4px;transition:all .3s ease}.expense-file-remove:hover{background-color:#ff5252;color:#1a1a1a}.expense-list-item{background-color:#333;border:1px solid #444;border-radius:8px;padding:15px;margin-bottom:10px}.expense-list-item h4{color:#e0e0e0;margin:0 0 8px}.expense-list-item p{color:#ccc;margin:5px 0}.expense-list-item .expense-amount{color:#4caf50;font-weight:700}.expense-list-item .expense-date{color:#bbb;font-size:12px}.expense-status-approved{color:#4caf50}.expense-status-pending{color:#e0e0e0}.expense-status-rejected{color:#ff5252}.expense-wizard-container{width:100%;height:100%;padding:16px;box-sizing:border-box}.expense-form-container{width:100%;height:100%;padding:16px}.expense-employee-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-bottom:16px}.expense-review-container{width:100%;height:100%;padding:16px}.expense-employee-list{display:flex;flex-direction:column;gap:6px;margin:0;padding:0}.expense-review-card{padding:16px;background:#1c1c1c;border-radius:6px;border:1px solid #444;display:flex;justify-content:space-between;align-items:center}.expense-text-primary{color:#e0e0e0}.expense-text-secondary{color:#bbb}.expense-text-accent{color:#4caf50}.expense-text-muted{color:#666}.expense-font-semibold{font-weight:600}.expense-font-bold{font-weight:700}.expense-margin-bottom-8{margin-bottom:8px}.expense-margin-bottom-16{margin-bottom:16px}.expense-margin-top-16{margin-top:16px}.expense-margin-top-20{margin-top:20px}.expense-flex-between{display:flex;justify-content:space-between}.expense-flex-between-center{display:flex;justify-content:space-between;align-items:center}.expense-flex-center{display:flex;justify-content:center}.expense-flex-column{display:flex;flex-direction:column}.expense-flex-column-gap-8{display:flex;flex-direction:column;gap:8px}.expense-grid-auto-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.expense-confirmation-container{width:100%;height:100%;padding:16px}.expense-loading-text{text-align:center;padding:16px;color:#e0e0e0}.expense-loading-spinner{font-size:24px;margin-bottom:12px}.expense-success-container{text-align:center;margin-bottom:24px}.expense-success-icon{font-size:48px;color:#4caf50;margin-bottom:16px}.expense-success-title{color:#e0e0e0;margin-bottom:8px}.expense-success-reference{color:#e0e0e0;font-weight:600}.expense-success-reference-number{color:#4caf50}.expense-history-title{color:#e0e0e0;margin-bottom:16px}.expense-history-container{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.expense-history-item{padding:16px;background:#1c1c1c;border-radius:6px;border:1px solid #444;display:flex;justify-content:space-between;align-items:center}.expense-history-info h4{color:#e0e0e0;margin:0 0 4px;font-size:14px}.expense-history-date{color:#bbb;font-size:12px}.expense-history-amount{color:#4caf50;font-weight:600;text-align:right}.expense-status-approved{color:#4caf50;font-size:12px}.expense-status-pending{color:#e0e0e0;font-size:12px}.expense-status-rejected{color:#ff5252;font-size:12px}.expense-empty-state{text-align:center;padding:16px;color:#ccc}.expense-empty-icon{font-size:24px;margin-bottom:8px;color:#666}.expense-close-button-container{margin-top:16px;display:flex;justify-content:center}.expense-close-button{padding:16px;font-size:16px}.expense-file-input-hidden{display:none}.expense-wizard-progress-pill{display:flex;justify-content:center;margin-bottom:16px;padding:8px 16px;background:rgba(76,175,80,.1);border-radius:20px;border:1px solid rgba(76,175,80,.2)}.expense-wizard-progress-steps{display:flex;align-items:center;gap:8px}.expense-wizard-progress-step{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#333;border:2px solid #555;color:#e0e0e0;font-weight:600;font-size:14px;transition:all .3s ease}.expense-wizard-progress-step.active{background:#4caf50;border-color:#4caf50;box-shadow:0 0 8px #4caf5066;transform:scale(1.1)}.expense-wizard-progress-step.completed{background:#4caf50;border-color:#4caf50;color:#1a1a1a}.step-separator{color:#666;font-weight:700;margin:0 4px}.expense-margin-right-8{margin-right:8px}.expense-font-size-12{font-size:12px}.expense-text-right{text-align:right}.expense-employee-table{width:100%;border-collapse:collapse;margin-bottom:16px}.expense-table-header{padding:12px;background-color:#1c1c1c;border:2px solid #444;color:#e0e0e0;text-align:left;font-weight:600}.expense-table-row{border-bottom:1px solid #444}.expense-table-row:hover{background-color:#4caf500d}.expense-table-cell{padding:12px;border:2px solid #444;color:#e0e0e0}@media screen and (max-width: 600px){.expense-form-container{padding:15px;width:100%;margin:0}.expense-category-grid{grid-template-columns:1fr}.expense-category-item{padding:15px}.submit-btn,.back-btn{width:100%;margin:5px 0}.expense-button-group{flex-direction:column;align-items:center}.expense-employee-grid{grid-template-columns:1fr}.expense-wizard-progress-pill{padding:6px 12px}.expense-wizard-progress-step{width:28px;height:28px;font-size:12px}}.schedule-tech-drawer-body,.schedule-tech-drawer-content{margin:0;padding:20px;width:100%;height:100%;box-sizing:border-box;border:none;display:flex;flex-direction:column;gap:20px}.separator{margin:15px 0;border:none;border-top:1px solid #ddd}.time-selection{display:flex;gap:15px;justify-content:center;flex-wrap:wrap;margin:20px 0}.time-selection .btn{max-width:180px;padding:12px 20px;font-size:14px;font-weight:500;border-radius:8px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.time-selection .btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.schedule-tech-drawer-content .calendar__card{border:none}.calendar__day--selected{border:2px solid white!important;box-shadow:0 0 10px #fffc}.form-group{position:relative;margin-bottom:20px}.form-group h3{margin:0 0 10px;font-size:14px;font-weight:600;color:#333;display:flex;align-items:center;gap:8px}.form-group .btn{width:100%;padding:12px 16px;font-size:14px;font-weight:500;border-radius:8px;transition:all .3s ease;text-align:left;display:flex;align-items:center;justify-content:space-between}.form-group .btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.form-input{padding-left:35px;border:2px solid #ff0000;box-shadow:0 0 5px #ff000080;transition:border-color .3s,box-shadow .3s}.form-input.valid{border-color:#0f0;box-shadow:0 0 5px #00ff0080}.form-group .icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#666}.next-button-container{text-align:center;margin-top:30px}.next-button-container .btn{padding:12px 24px;font-size:16px;font-weight:600;border-radius:8px;min-width:200px;transition:all .3s ease}.next-button-container .btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #0003}.redGlow{box-shadow:0 0 5px #ff525280;animation:glow 2s ease-in-out infinite alternate}.green{box-shadow:0 0 5px #4caf5080}@keyframes glow{0%{box-shadow:0 0 5px #ff525280}to{box-shadow:0 0 10px #ff5252cc}}.appointment-summary{background:#f8f9fa;border-radius:12px;padding:24px;margin-bottom:20px;border:1px solid #e9ecef}.appointment-summary .summary-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #e9ecef}.appointment-summary .summary-item:last-child{border-bottom:none}.appointment-summary .summary-item strong{color:#495057;font-weight:600;min-width:120px}.appointment-summary .summary-item span{color:#6c757d;text-align:right;flex:1}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background:#fff;padding:24px;border-radius:12px;width:90%;max-width:420px;color:#333;box-shadow:0 10px 40px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-content h3{margin:0 0 20px;font-size:18px;font-weight:600;display:flex;align-items:center;gap:8px}.modal-content input{margin-bottom:16px;width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:14px;transition:border-color .3s ease}.modal-content input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.modal-content .btn{width:100%;margin-top:16px;padding:12px 20px;font-size:14px;font-weight:600;border-radius:8px;transition:all .3s ease}.modal-content .btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}._button_77hkt_11{width:100%;padding:12px;margin-bottom:8px;background:#333;border:1px solid #555;color:#ddd;cursor:pointer;border-radius:4px;text-align:left;display:flex;align-items:center;gap:8px;transition:all .2s ease}._button_77hkt_11:hover{background:#444}._button_77hkt_11:focus{outline:2px solid #4dabf7;outline-offset:2px}._customButton_77hkt_36{background:#444}._nextButton_77hkt_41{width:100%;padding:12px;background:#4dabf7;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:16px}._nextButton_77hkt_41:hover{background:#3d9bf0}._nextButton_77hkt_41:focus{outline:2px solid #4dabf7;outline-offset:2px}._backButton_77hkt_61{width:100%;padding:12px;background:#444;border:none;border-radius:4px;color:#ddd;cursor:pointer;margin-top:8px}._backButton_77hkt_61:hover{background:#555}._backButton_77hkt_61:focus{outline:2px solid #4dabf7;outline-offset:2px}._input_77hkt_81{width:100%;padding:8px;margin-bottom:8px;background:#333;border:1px solid #555;border-radius:4px;color:#fff}._input_77hkt_81:focus{outline:2px solid #4dabf7;outline-offset:2px}._textarea_77hkt_96{resize:vertical;min-height:80px}._label_77hkt_102{display:block;margin-bottom:8px;font-weight:700;color:#fff}._amountGrid_77hkt_109{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}._presetAmount_77hkt_116{flex:1;min-width:80px;text-align:center;justify-content:center}._formGroup_77hkt_124{margin-bottom:16px}._reviewList_77hkt_128{list-style:none;padding:0}._reviewItem_77hkt_133{margin-bottom:8px}._reviewLabel_77hkt_137{font-weight:700;color:#fff}._reviewValue_77hkt_142{color:#ddd}._loading_77hkt_146{text-align:center;color:#fff}@media (max-width: 768px){._button_77hkt_11{padding:14px;font-size:16px}._amountGrid_77hkt_109{flex-direction:column}._presetAmount_77hkt_116{min-width:auto}}:root{--payment-bg-primary: #333;--payment-bg-secondary: #444;--payment-border: #555;--payment-text-primary: #fff;--payment-text-secondary: #ddd;--payment-accent: #4dabf7;--payment-error: #dc3545}._redGlow_77hkt_178{box-shadow:0 0 5px #ff525280;animation:_glow_77hkt_1 2s ease-in-out infinite alternate}._green_77hkt_183{box-shadow:0 0 5px #4caf5080}:root{--bg-dark: #1a1a1a;--bg-panel: #262626;--bg-overlay: rgba(0, 0, 0, .7);--bg-surface: rgba(255, 255, 255, .03);--bg-card: rgba(255, 255, 255, .05);--bg-hover: rgba(255, 255, 255, .08);--bg-active: rgba(255, 255, 255, .12);--primary: #28a745;--primary-hover: #218838;--secondary: #6c757d;--secondary-hover: #545b62;--success: #28a745;--success-hover: #218838;--warning: #ffb74d;--warning-hover: #ffc107;--danger: #dc3545;--danger-hover: #c82333;--error: #dc3545;--error-hover: #c82333;--info: #007bff;--text-primary: #fff;--text-secondary: #ccc;--text-muted: #aaa;--border-light: rgba(255, 255, 255, .1);--border-medium: rgba(255, 255, 255, .2);--border-standard: 1px solid var(--border-light);--space-2: 2px;--space-4: 4px;--space-xs: 4px;--space-6: 6px;--space-sm: 8px;--space-10: 10px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--font-10: 10px;--font-xs: 11px;--font-sm: 12px;--font-md: 13px;--font-lg: 14px;--font-15: 15px;--font-xl: 16px;--font-18: 18px;--font-2xl: 20px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 8px rgba(0, 0, 0, .2);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .3);--focus-outline: 2px solid var(--primary);--focus-outline-offset: 2px;--focus-ring: 0 0 0 3px rgba(40, 167, 69, .3)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;overflow:hidden;min-height:100vh;width:100%}body{background:var(--bg-dark);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:var(--font-md);line-height:1.5;display:block;position:relative}.app-container{width:100%;height:100%;display:flex;flex-direction:column}.text-green{color:#28a745}.text-red{color:#dc3545}.text-orange{color:#fd7e14}.text-grey{color:#6c757d}.text-blue{color:#007bff}.focusable:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.focusable--ring:focus-visible{outline:none;box-shadow:var(--focus-ring)}.skip-link{position:absolute;top:-40px;left:6px;background:var(--primary);color:var(--text-primary);padding:var(--space-sm);z-index:9999;text-decoration:none;border-radius:var(--radius-sm);transition:top .3s ease}.skip-link:focus{top:6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (prefers-contrast: high){.focusable:focus-visible{outline:3px solid var(--text-primary)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}[aria-expanded=true]{background:var(--bg-hover)}[aria-pressed=true]{background:var(--bg-active);border-color:var(--border-medium)}[aria-selected=true]{background:var(--bg-hover);border-color:var(--border-medium)}[aria-checked=true]{background:var(--primary);color:var(--text-primary)}[aria-disabled=true],[disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}[aria-invalid=true]{border-color:var(--danger);background:rgba(220,53,69,.05)}[aria-invalid=true]:focus-visible{outline-color:var(--danger)}[aria-live]{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}[aria-live=assertive]{position:static;width:auto;height:auto;overflow:visible}.btn{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);cursor:pointer;border:none;font-size:var(--font-md);font-weight:500;display:inline-flex;align-items:center;gap:var(--space-6);transition:all .2s ease}.btn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.btn--secondary{background:transparent;color:var(--text-primary);border:var(--border-standard)}.btn--secondary:hover{background:var(--bg-card);border-color:var(--border-medium)}.btn--primary{background:transparent;color:var(--text-primary);border:var(--border-standard)}.btn--primary:hover{background:var(--bg-card);border-color:var(--border-medium)}.btn--success{background:transparent;color:var(--text-primary);border:var(--border-standard)}.btn--success:hover{background:var(--bg-hover);border-color:var(--border-medium)}.btn--warning{background:var(--warning);color:#212529}.btn--warning:hover{background:var(--warning-hover)}.btn--small{padding:var(--space-6) var(--space-sm);font-size:var(--font-xs);border-radius:var(--radius-sm)}.drawer-footer__actions .btn{padding:var(--space-xs) var(--space-sm);background:var(--bg-hover);color:var(--text-primary);border:none;border-radius:var(--radius-sm);font-size:var(--font-xs);font-weight:500;cursor:pointer;transition:all .2s ease;will-change:transform}.drawer-footer__actions .btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:var(--shadow-md);background:var(--bg-hover)}.drawer-footer__actions .btn:disabled{opacity:.5;cursor:not-allowed}.quick-action__btn{background:var(--bg-card);border:var(--border-standard);border-radius:var(--radius-sm);padding:var(--space-10);color:var(--text-primary);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:var(--space-6);transition:all .2s ease;will-change:background,border-color}.quick-action__btn:hover{background:var(--bg-hover);border-color:var(--border-medium)}.quick-action__icon{font-size:var(--font-xl);color:var(--warning)}.quick-action__label{font-size:var(--font-xs);text-align:center}.btn--yes,.btn--no,.btn--close-alert{padding:var(--space-sm) var(--space-md);border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:500;transition:background .2s;will-change:background}.btn--yes{background:var(--success);color:var(--text-primary)}.btn--yes:hover{background:var(--success-hover)}.btn--no{background:var(--error);color:var(--text-primary)}.btn--no:hover{background:var(--error-hover)}.btn--close-alert{background:var(--primary);color:var(--text-primary)}.btn--close-alert:hover{background:var(--primary-hover)}.billing-actions .btn{flex:1;padding:var(--space-sm);font-size:var(--font-sm)}.drawer__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-overlay);display:flex;justify-content:center;align-items:flex-end;opacity:0;pointer-events:none;transition:opacity .3s cubic-bezier(.4,0,.2,1),-webkit-backdrop-filter .3s ease;transition:opacity .3s cubic-bezier(.4,0,.2,1),backdrop-filter .3s ease;transition:opacity .3s cubic-bezier(.4,0,.2,1),backdrop-filter .3s ease,-webkit-backdrop-filter .3s ease;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);z-index:900;will-change:opacity}.drawer__overlay--entering{opacity:0;pointer-events:none}.drawer__overlay--entered{opacity:1;pointer-events:auto;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.drawer__overlay--exiting{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}.drawer__overlay--exited{opacity:0;pointer-events:none}.drawer__shell{max-width:800px;width:100%;padding:0 var(--space-md) 0;box-sizing:border-box}.drawer__panel{background:var(--bg-panel);border-radius:var(--radius-lg) var(--radius-lg) 0 0;border:var(--border-standard);box-shadow:0 -8px 24px #000c;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;opacity:0;transform:translateY(40px);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease;will-change:transform,opacity}.drawer__overlay--entering .drawer__panel,.drawer__overlay--entered .drawer__panel{opacity:1;transform:translateY(0)}.drawer__overlay--exiting .drawer__panel,.drawer__overlay--exited .drawer__panel{transform:translateY(40px);opacity:0}.drawer__header{padding:var(--space-sm) var(--space-md) var(--space-sm);border-bottom:var(--border-standard)}.drawer__header-topline{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-4)}.drawer__header-left{display:flex;align-items:center;gap:var(--space-sm)}.drawer__header-right{display:flex;align-items:center}.drawer__step-indicator{font-size:var(--font-sm);color:var(--text-muted);font-weight:500}.drawer__top-title{font-size:var(--font-15);margin:0;color:var(--warning);font-weight:600}.drawer__top-subtitle{font-size:var(--font-sm);color:var(--text-secondary);margin:0}.drawer__body{padding:var(--space-md);overflow-y:auto;flex:1}.drawer__body .calendar__card{padding:0;margin:0;height:100%;width:100%;display:flex;flex-direction:column}.drawer__body-text{font-size:var(--font-sm);color:var(--text-secondary);line-height:1.4}.drawer__footer{padding:var(--space-2) var(--space-sm);display:flex;justify-content:space-between;align-items:center;box-sizing:border-box;box-shadow:none;border:none;background:var(--bg-dark)}.drawer__footer-label{font-size:var(--font-sm);color:var(--text-secondary);flex:1;margin:0}.drawer__footer-actions{display:flex;gap:0}.drawer__footer-actions .btn{background:none;border:none;color:var(--text-primary)}.drawer__section{margin-bottom:20px}.drawer__section:last-child{margin-bottom:0}.drawer__section-title{font-size:var(--font-15);font-weight:600;margin:0 0 var(--space-6) 0;color:var(--text-primary)}.drawer__section-subtitle{font-size:var(--font-xs);opacity:.75;margin-bottom:var(--space-sm);color:var(--text-secondary)}.drawer__field-group{margin-bottom:var(--space-md)}.drawer__field-group label{display:block;margin-bottom:var(--space-6);font-size:var(--font-sm);color:var(--text-secondary)}.drawer__field-group input[type=text],.drawer__field-group input[type=password],.drawer__field-group input[type=email],.drawer__field-group input[type=tel],.drawer__field-group input[type=date]{width:100%;padding:var(--space-sm) var(--space-4);background:var(--bg-card);border:var(--border-standard);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-lg);transition:border-color .2s,background .2s;will-change:border-color,background}.drawer__field-group input:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset);border-color:var(--warning);background:rgba(255,183,77,.05)}.drawer__field-group input:disabled{opacity:.5;cursor:not-allowed}.drawer__field-group select,.drawer__field-group textarea{width:100%;padding:var(--space-sm) var(--space-4);background:var(--bg-card);border:var(--border-standard);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-lg);transition:border-color .2s,background .2s;will-change:border-color,background}.drawer__field-group select:focus-visible,.drawer__field-group textarea:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset);border-color:var(--warning);background:rgba(255,183,77,.05)}.drawer__field-group input[type=checkbox],.drawer__field-group input[type=radio]{margin-right:var(--space-sm)}.disclaimer__list{list-style:none;padding:0;margin:0}.disclaimer__item{margin-bottom:var(--space-sm);padding:var(--space-sm);background:var(--bg-surface);border-radius:var(--radius-sm);border-left:3px solid var(--warning)}.disclaimer__checkbox{display:flex;gap:var(--space-10);align-items:flex-start;cursor:pointer;font-size:var(--font-sm);line-height:1.4}.disclaimer__checkbox input[type=checkbox]{margin-top:var(--space-2);flex-shrink:0}.disclaimer__text{flex:1}.drawer__details{margin-bottom:20px}.drawer__details--grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.drawer__details--single{display:flex;flex-direction:column;gap:12px}.detail__group{background:var(--bg-surface);padding:10px;border-radius:4px}.detail__group.overall-health{grid-column:1 / -1;background:var(--bg-hover);flex-direction:row;justify-content:space-between;align-items:center}.detail__group.non-completed-job{background:var(--bg-hover);cursor:pointer;transition:background-color .2s ease}.detail__group.non-completed-job:hover{background:var(--bg-card)}.detail__group.completed-job{opacity:.7}.detail__label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.detail__value{display:flex;align-items:center;gap:6px;color:var(--text-primary);font-size:12px}.drawer__selection-grid{display:flex;flex-direction:column;gap:8px;margin:0 0 16px;padding:0}.drawer__selection-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-surface);border:2px solid var(--border-standard);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-size:14px;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%;text-align:left;margin:2px 0;position:relative;overflow:hidden}.drawer__selection-item:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s}.drawer__selection-item:hover{background:var(--bg-hover);border-color:var(--primary);box-shadow:0 0 12px #28a7454d;transform:translateY(-1px)}.drawer__selection-item:hover:before{left:100%}.drawer__selection-item.selected{background:var(--bg-active);border-color:var(--primary);box-shadow:0 2px 12px #28a74566;transform:translateY(-2px)}.drawer__selection-item.selected:after{content:"✓";position:absolute;right:12px;color:var(--success);font-weight:700;font-size:16px}.drawer__button-left{display:flex;align-items:center;flex:1;min-width:0;gap:8px}.drawer__selection-icon{flex-shrink:0;width:20px;height:20px;font-size:18px;color:var(--primary);display:flex;align-items:center;justify-content:center;min-width:20px}.drawer__selection-name{font-weight:600;color:var(--text-primary);margin-bottom:2px;font-size:14px}.drawer__selection-description{color:var(--text-secondary);font-size:12px;line-height:1.3}.status-badge{padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600;text-transform:uppercase}.status-badge.status-open{background:rgba(220,53,69,.2);color:var(--error)}.status-badge.status-inprogress{background:rgba(255,193,7,.2);color:var(--warning)}.status-badge.status-closed{background:rgba(40,167,69,.2);color:var(--success)}.status-badge.status-unknown{background:rgba(108,117,125,.2);color:var(--text-muted)}.drawer__disclaimers{font-size:11px;opacity:.85;line-height:1.4;margin-top:6px;color:var(--text-secondary)}.drawer__disclaimers ul{list-style:none;padding-left:0;margin:12px 0}.drawer__disclaimers li{margin-bottom:12px}.drawer__disclaimers label{display:flex;gap:8px;align-items:flex-start;cursor:pointer;font-size:12px}.drawer__disclaimers input[type=checkbox]{margin-top:3px}.pill--drawer{background:rgba(23,162,184,.2)}@media (max-width: 768px){.drawer__shell{padding:0 4px 4px}.drawer__panel{border-radius:8px 8px 0 0;max-height:80vh}.drawer__header{padding:10px 12px 6px}.drawer__body{padding:12px}.drawer__footer{padding:2px var(--space-sm)}}@media (max-width: 480px){.drawer__shell{padding:0 4px 4px}.drawer__panel{border-radius:8px 8px 0 0;max-height:80vh}.drawer__header{padding:8px 10px 4px}.drawer__top-title{font-size:14px}.drawer__top-subtitle{font-size:11px}.drawer__body{padding:10px;font-size:13px}.drawer__footer{padding:0;flex-direction:column;gap:0}.drawer__footer-actions .btn{display:flex;align-items:center;gap:8px;padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-height:44px;background:rgba(255,255,255,.1);color:#fff}.drawer__footer-actions .btn:disabled{opacity:.5;cursor:not-allowed}.drawer__footer-actions .btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 2px 8px #0003;background:rgba(255,255,255,.15)}}@media (max-width: 360px){.drawer__shell{padding:0 2px 2px}.drawer__panel{border-radius:6px 6px 0 0}}@media (max-height: 600px) and (orientation: landscape){.drawer__panel{max-height:70vh}.drawer__body{max-height:calc(70vh - 120px);overflow-y:auto}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.drawer__panel{border-width:.5px}}@media print{.drawer__overlay{position:static;opacity:1;pointer-events:auto;background:transparent}.drawer__panel{transform:none;opacity:1;max-height:none;box-shadow:none;border:1px solid #ddd}.drawer__footer{display:none}}.workflow__step{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--space-md);flex:1;display:flex;flex-direction:column;min-height:0}.workflow__node-id{font-size:var(--font-xs);color:var(--text-muted);margin-bottom:var(--space-xs)}.workflow__step-title{font-size:var(--font-xl);font-weight:600;margin-bottom:var(--space-6);color:var(--warning)}.workflow__step-subtitle{font-size:var(--font-sm);color:var(--text-secondary);margin-bottom:var(--space-4);min-height:var(--space-md)}.workflow__step-meta{font-size:var(--font-xs);color:var(--text-muted);margin-bottom:var(--space-md);min-height:14px;text-align:center}.service-selection__grid{display:flex;flex-direction:column;gap:var(--space-6);flex:1;overflow-y:auto;padding-right:var(--space-4);margin-bottom:var(--space-md)}.service__item{margin-bottom:var(--space-md);border-radius:var(--radius-sm);overflow:hidden}.service__header{padding:var(--space-sm) var(--space-4);display:flex;align-items:center;gap:var(--space-10);cursor:pointer}.service__header--clickable{cursor:pointer;transition:background-color .2s ease;will-change:background-color}.service__header--clickable:hover{background-color:var(--bg-card)}.service__icon{font-size:var(--font-xl);color:var(--warning);width:24px;text-align:center}.service__icon--critical{color:var(--danger)}.service__icon--disabled{color:var(--secondary)}.service__info{flex:1}.service__name{font-size:var(--font-md);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-2)}.service__id{font-size:var(--font-xs);color:var(--text-muted)}.service__status-badge{padding:var(--space-2) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-xs);font-weight:700;display:flex;align-items:center;gap:var(--space-4)}.status--critical{background:rgba(220,53,69,.2);color:#f8d7da}.status--disabled{background:rgba(108,117,125,.2);color:#e9ecef}.status--warning,.status--pending{background:rgba(255,193,7,.2);color:#fff3cd}.status--approved{background:rgba(40,167,69,.2);color:#d4edda}.status--rejected{background:rgba(220,53,69,.2);color:#f8d7da}.status--paid{background:rgba(0,123,255,.2);color:#cce7ff}.status--unknown{background:rgba(108,117,125,.2);color:#e9ecef}.service__expand-icon{color:var(--text-muted);transition:all .3s ease;will-change:color}.service__collapsible--expanded .service__expand-icon{color:var(--warning)}.service__content{max-height:0;overflow:hidden;transition:max-height .3s ease;background:rgba(0,0,0,.2);border-top:var(--border-standard);will-change:max-height}.service__collapsible--expanded .service__content{max-height:500px}.service__details{padding:var(--space-4);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.service__detail-group{background:var(--bg-surface);padding:var(--space-10);border-radius:var(--radius-sm)}.service__detail-label{font-size:var(--font-10);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-4)}.service__detail-value{display:flex;align-items:center;gap:var(--space-6);color:var(--text-primary);font-size:var(--font-sm)}.service__location-link{color:#4dabf7;text-decoration:none;margin-left:var(--space-sm);font-size:var(--font-xs);transition:color .2s ease;will-change:color}.service__location-link:hover{color:#74c0fc}.service__details-below{background:rgba(0,0,0,.2);border:var(--border-standard);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);padding:var(--space-sm)}.service__detail-row{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);font-size:var(--font-sm)}.service__detail-row:last-child{margin-bottom:0}.service__quick-actions{display:flex;gap:var(--space-sm);margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid rgba(255,255,255,.1)}.service__actions{padding:0 var(--space-4) var(--space-4);display:flex;gap:var(--space-sm)}.service__select-btn{flex:1;padding:var(--space-sm);background:var(--bg-card);border:var(--border-standard);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-md);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;text-align:left;min-height:40px;gap:var(--space-sm);text-transform:uppercase;will-change:background,border-color}.service__select-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-medium)}.service__select-btn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.service__select-btn:disabled{opacity:.6;cursor:not-allowed}.service__expand-btn{width:48px;padding:var(--space-sm);background:var(--bg-card);border:var(--border-standard);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-height:48px;will-change:background,border-color}.service__expand-btn:hover{background:var(--bg-hover);border-color:var(--border-medium)}.service__expand-btn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.service__expand-btn i{transition:transform .2s ease;font-size:var(--font-lg);will-change:transform}.service__expand-btn i.expanded{transform:rotate(90deg)}.service__option-btn{width:100%;padding:var(--space-sm) var(--space-4);background:var(--bg-card);border:var(--border-standard);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-md);cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);text-align:left;will-change:background,border-color}.service__option-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-medium)}.service__option-btn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.service__option-btn:disabled{opacity:.6;cursor:not-allowed}.service__option-btn span{display:inline-flex;align-items:center;gap:var(--space-6)}.workflow__bottom-bar{margin-top:auto;display:flex;justify-content:space-between;gap:var(--space-10);padding-top:var(--space-md);border-top:var(--border-standard)}.client-search__step{display:flex;flex-direction:column;flex:1}.search__container{display:flex;flex-direction:column;gap:var(--space-md)}.search__input-wrapper{position:relative;display:flex;align-items:center}.search__icon{position:absolute;left:var(--space-sm);color:var(--text-secondary);font-size:var(--font-lg)}.search__input{width:100%;padding:var(--space-sm) 40px;background:var(--bg-card);border:var(--border-standard);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-lg);transition:border-color .2s;will-change:border-color}.search__input:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset);border-color:var(--border-medium)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.search__clear-btn{position:absolute;right:var(--space-sm);background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--space-4);transition:color .2s;will-change:color}.search__clear-btn:hover{color:var(--text-primary)}.search__results-container{flex:1;min-height:200px}.search__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);padding:32px;color:var(--text-secondary)}.search__empty{text-align:center;padding:32px var(--space-md);color:var(--text-secondary)}.search__empty--error{color:var(--danger)}.welcome__message{text-align:center;padding:32px var(--space-md);color:var(--text-secondary)}.recent-clients__title{font-size:var(--font-lg);font-weight:600;color:var(--warning);margin-bottom:var(--space-sm)}.client__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--space-sm)}.client__card{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm);background:var(--bg-card);border:var(--border-standard);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:all .2s ease;text-align:left;will-change:background,border-color}.client__card:hover{background:var(--bg-hover);border-color:var(--border-medium)}.client__card:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset);background:var(--bg-hover);border-color:var(--border-medium)}.client__card-icon{font-size:var(--font-2xl);color:var(--warning)}.client__card-content{flex:1}.client__card-name{font-family:Roboto,sans-serif;font-weight:400;font-size:var(--font-lg);margin-bottom:var(--space-2)}.client__search-icon{color:var(--primary);margin-right:var(--space-sm)}.client__card-id{font-family:Roboto,sans-serif;font-size:var(--font-sm);opacity:.8}.client__card-arrow{color:var(--text-secondary)}.client-info__header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;border-bottom:var(--border-standard)}.client__avatar{font-size:32px;color:var(--warning)}.client__details{flex:1}.client__name{margin:0 0 var(--space-4) 0;font-size:var(--font-xl);color:var(--warning);font-weight:600}.client__id{margin:0;font-size:var(--font-sm);opacity:.8}.service__count{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.service__count-badge{background:var(--primary);color:var(--text-primary);border-radius:12px;padding:var(--space-2) var(--space-sm);font-size:var(--font-sm);font-weight:600}.service__count-label{font-size:var(--font-10);opacity:.8}.services__list{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-md)}.service-item__wrapper{position:relative}.service-item__wrapper--critical .service-option__btn{border-color:var(--danger);background:rgba(220,53,69,.1)}.service-item__critical-badge{position:absolute;top:-8px;right:var(--space-sm);background:var(--danger);color:var(--text-primary);padding:var(--space-2) var(--space-6);border-radius:var(--radius-sm);font-size:var(--font-10);font-weight:600;z-index:1;display:flex;align-items:center;gap:var(--space-4)}.service-item__content{display:flex;align-items:center;gap:var(--space-sm);width:100%}.service__lock-icon{flex-shrink:0;font-size:var(--font-lg)}.service__row{display:flex;justify-content:space-between;align-items:center}.service__status{display:flex;align-items:center;gap:var(--space-4);font-size:var(--font-sm)}.service__status-duration{opacity:.8}.service__signal{display:flex;align-items:center;gap:var(--space-4);font-size:var(--font-sm)}.service__signal-values{opacity:.8}.service__suspended-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-15deg);background:rgba(108,117,125,.9);color:var(--text-primary);padding:var(--space-4) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-sm);font-weight:600;pointer-events:none}.calendar__card{background:var(--bg-surface);border-radius:var(--space-10);border:var(--border-standard);padding:0;margin:0}.calendar__header{display:flex;justify-content:space-between;align-items:center;margin:0;padding:0}.calendar__header-title{font-size:var(--font-md);font-weight:600}.calendar__nav-btn{border:none;background:var(--bg-surface);border-radius:999px;padding:0;cursor:pointer;font-size:var(--font-xs);display:inline-flex;align-items:center;gap:0;color:var(--text-primary);transition:background .2s ease;will-change:background}.calendar__nav-btn:hover{background:var(--bg-active)}.calendar__nav-btn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.calendar__weekdays{display:grid;grid-template-columns:repeat(7,1fr);font-size:var(--font-10);opacity:.7;margin:0;padding:0;text-align:center}.calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-4)}.calendar__day{border:none;border-radius:var(--radius-sm);padding:0;font-size:var(--font-xs);cursor:pointer;background:var(--bg-surface);text-align:center;color:var(--text-primary);transition:background .2s ease;will-change:background}.calendar__day--empty{visibility:hidden;pointer-events:none}.calendar__day--disabled{opacity:.35;cursor:not-allowed;background:transparent}.calendar__day--selected{background:var(--primary);color:var(--text-primary)}.calendar__day:hover:not(.calendar__day--disabled):not(.calendar__day--selected){background:var(--bg-active)}.calendar__day:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.calendar__selected-date-label{margin-top:var(--space-sm);font-size:var(--font-sm)}.calendar__day--today{background:rgba(0,123,255,.15);border:1px solid rgba(0,123,255,.3)}.time-slot--selected{background:var(--primary);color:var(--text-primary);border-color:var(--primary)}.calendar__day--disabled,.time-slot--disabled,.day-cell--disabled{opacity:.3;cursor:not-allowed;background:var(--bg-surface)}.calendar__day--disabled:hover,.time-slot--disabled:hover,.day-cell--disabled:hover{background:var(--bg-surface);transform:none}.calendar__weekday{text-align:center;font-size:var(--font-10);opacity:.7;padding:0;margin:0}.status-dashboard__row{display:flex;gap:var(--space-md);margin-bottom:var(--space-md)}.status-dashboard__text{cursor:pointer;font-size:var(--font-lg);color:var(--text-primary);transition:color .2s ease;will-change:color}.status-dashboard__text:hover{opacity:.8}.status-dashboard__text:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.status-dashboard__text--los{color:var(--danger)}.status-dashboard__text--pwr-fail{color:var(--warning)}.status-dashboard__text--all{color:var(--success)}.status-dashboard__popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-overlay);z-index:1000}.status-dashboard__popup-container{position:fixed;top:0;right:0;width:400px;height:100vh;background:var(--bg-panel);border-left:var(--border-standard);display:flex;flex-direction:column;z-index:1001}.status-dashboard__popup-header{padding:20px 24px var(--space-md);border-bottom:var(--border-standard);margin:0;font-size:var(--font-18);color:var(--text-primary)}.status-dashboard__popup-search{padding:var(--space-md) 24px;border-bottom:var(--border-standard)}.status-dashboard__search-input{width:100%;padding:var(--space-sm) var(--space-4);background:var(--bg-card);border:var(--border-standard);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-lg);transition:border-color .2s ease,background .2s ease;will-change:border-color,background}.status-dashboard__search-input:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset);border-color:var(--primary);background:var(--bg-hover)}.status-dashboard__search-input::placeholder{color:var(--text-secondary)}.status-dashboard__popup-content{flex:1;overflow-y:auto;padding:var(--space-md) 24px}.status-dashboard__no-data-message{text-align:center;padding:32px;color:var(--text-secondary);font-style:italic}.toast{position:fixed;top:var(--space-md);right:var(--space-md);background:var(--success);color:var(--text-primary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:10000;display:flex;align-items:center;gap:var(--space-sm);animation:slideIn .3s ease;will-change:transform,opacity}.toast--hide{animation:slideOut .3s ease forwards}@media (prefers-reduced-motion: reduce){.toast,.toast--hide{animation-duration:.01ms}}@media (max-width: 480px){.header h1{font-size:18px}.service-option-btn{padding:10px 12px;font-size:12px}.calendar-day{padding:6px 0}.time-slots{grid-template-columns:1fr}.drawer-panel{border-radius:12px 12px 0 0}}@media print{.app-container{max-width:100%}.app-container{max-width:100%;padding:0}.workflow-step{box-shadow:none;border:1px solid #ddd}.drawer-overlay{position:static;opacity:1;pointer-events:auto;background:transparent}.drawer-panel{transform:none;opacity:1;max-height:none;box-shadow:none;border:1px solid #ddd}.drawer-ui-footer{display:none}}.workflow-step{background:rgba(255,255,255,.05);border-radius:var(--radius-md);padding:var(--space-md);flex:1;display:flex;flex-direction:column;min-height:0}.workflow-step-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xs)}.flow-node-id{font-size:var(--font-xs);color:var(--text-muted);margin-bottom:var(--space-xs)}.step-title{font-size:var(--font-xl);font-weight:600;margin-bottom:6px;color:var(--warning)}.step-subtitle{font-size:var(--font-sm);color:var(--text-secondary);margin-bottom:4px;min-height:16px}.step-meta{font-size:var(--font-xs);color:var(--text-muted);margin-bottom:var(--space-md);min-height:14px;text-align:center}.service-selection-grid{display:flex;flex-direction:column;gap:6px;flex:1;overflow-y:auto;padding-right:4px;margin-bottom:16px}.service-item{margin-bottom:16px;border-radius:6px;overflow:hidden}.service-header{padding:12px 14px;display:flex;align-items:center;gap:10px;cursor:pointer}.service-header.clickable{cursor:pointer;transition:background-color .2s ease}.service-header.clickable:hover{background-color:#ffffff0d}.service-icon{font-size:16px;color:#ffb74d;width:24px;text-align:center}.service-icon.critical{color:#dc3545}.service-icon.disabled{color:#6c757d}.service-info{flex:1}.service-name{font-size:13px;font-weight:700;color:#fff;margin-bottom:2px}.service-id{font-size:11px;color:#aaa}.service-status-badge{padding:3px 8px;border-radius:4px;font-size:11px;font-weight:700;display:flex;align-items:center;gap:4px}.status-critical{background:rgba(220,53,69,.2);color:#f8d7da}.status-disabled{background:rgba(108,117,125,.2);color:#e9ecef}.status-warning,.status-pending{background:rgba(255,193,7,.2);color:#fff3cd}.status-approved{background:rgba(40,167,69,.2);color:#d4edda}.status-rejected{background:rgba(220,53,69,.2);color:#f8d7da}.status-paid{background:rgba(0,123,255,.2);color:#cce7ff}.status-unknown{background:rgba(108,117,125,.2);color:#e9ecef}.service-expand-icon{color:#aaa;transition:all .3s ease}.service-collapsible.expanded .service-expand-icon{color:#ffb74d}.service-content{max-height:0;overflow:hidden;transition:max-height .3s ease;background:rgba(0,0,0,.2);border-top:1px solid rgba(255,255,255,.05)}.service-collapsible.expanded .service-content{max-height:500px}.service-details{padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-value{display:flex;align-items:center;gap:6px;color:#fff;font-size:12px}.location-link{color:#4dabf7;text-decoration:none;margin-left:8px;font-size:11px;transition:color .2s ease}.location-link:hover{color:#74c0fc}.service-details-below{background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.05);border-top:none;border-radius:0 0 6px 6px;padding:12px}.detail-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:12px}.detail-row:last-child{margin-bottom:0}.detail-label{color:#aaa;font-weight:500;min-width:100px}.detail-value{color:#fff;display:flex;align-items:center;gap:6px}.service-quick-actions{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.btn-small{padding:6px 12px;font-size:11px;border-radius:4px}.signal-indicator{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:10px;font-size:10px;font-weight:700}.signal-good{background:rgba(40,167,69,.2);color:#d4edda}.service-actions{padding:0 14px 14px;display:flex;gap:8px}.quick-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.quick-action-btn{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:10px;color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;transition:all .2s ease}.quick-action-btn:hover{background:rgba(255,255,255,.08);border-color:#fff3}.quick-action-icon{font-size:16px;color:#ffb74d}.quick-action-label{font-size:11px;text-align:center}.service-button-row{display:flex;gap:8px;width:100%;align-items:stretch}.service-select-btn{flex:1;padding:8px 12px;background:rgba(255,255,255,.05);border:1px solid var(--border-light);border-radius:6px;color:var(--text-primary);font-size:var(--font-md);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;text-align:left;min-height:40px;gap:8px;text-transform:uppercase}.service-select-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-medium)}.service-select-btn:disabled{opacity:.6;cursor:not-allowed}.service-expand-btn{width:48px;padding:12px;background:rgba(255,255,255,.05);border:1px solid var(--border-light);border-radius:6px;color:var(--text-primary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-height:48px}.service-expand-btn:hover{background:var(--bg-hover);border-color:var(--border-medium)}.service-expand-btn i{transition:transform .2s ease;font-size:14px}.service-expand-btn i.expanded{transform:rotate(90deg)}.service-option-btn{width:100%;padding:12px 14px;background:rgba(255,255,255,.05);border:1px solid var(--border-light);border-radius:6px;color:var(--text-primary);font-size:var(--font-md);cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left}.service-option-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-medium)}.service-option-btn:disabled{opacity:.6;cursor:not-allowed}.service-option-btn span{display:inline-flex;align-items:center;gap:6px}.bottom-bar{margin-top:auto;display:flex;justify-content:space-between;gap:10px;padding-top:var(--space-md);border-top:1px solid var(--border-light)}.signal-quality{display:inline-flex;align-items:center;gap:6px;font-weight:600;padding:4px 8px;border-radius:4px;font-size:12px;text-transform:capitalize}.signal-icon{font-size:14px}.signal-quality:before{content:"";display:inline-block;width:16px;height:12px;background:currentColor;margin-right:4px;border-radius:1px;position:relative}.signal-quality.critical:before{--signal-strength: 25%}.signal-quality.warning:before{--signal-strength: 50%}.signal-quality.very-good:before{--signal-strength: 100%}.signal-quality.unknown:before{--signal-strength: 0%;background:rgba(108,117,125,.3)}.billing-actions{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-light)}.billing-actions .btn{flex:1;padding:8px 12px;font-size:12px}.btn{padding:8px 16px;border-radius:var(--radius-sm);cursor:pointer;border:none;font-size:var(--font-md);font-weight:500;display:inline-flex;align-items:center;gap:6px;transition:all .2s ease}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid rgba(255,255,255,.2)}.btn-secondary:hover{background:rgba(255,255,255,.05);border-color:#fff6}.btn-primary{background:transparent;color:var(--text-primary);border:1px solid rgba(255,255,255,.2)}.btn-primary:hover{background:rgba(255,255,255,.05);border-color:#fff6}.btn-success{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.2)}.btn-success:hover{background:rgba(255,255,255,.1);border-color:#fff6}.drawer-footer-actions .btn{padding:var(--space-xs) var(--space-sm);background:rgba(255,255,255,.1);color:#fff;border:none;border-radius:6px;font-size:var(--font-xs);font-weight:500;cursor:pointer;transition:all .2s ease}.drawer-ui-footer .btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 2px 8px #0003;background:rgba(255,255,255,.1)}.drawer-ui-footer .btn:disabled{opacity:.5;cursor:not-allowed}.btn-warning{background:var(--warning);color:#212529}.btn-warning:hover{background:var(--warning-hover, #ffc107)}.toast{position:fixed;top:16px;right:16px;background:var(--success);color:#fff;padding:12px 16px;border-radius:6px;box-shadow:var(--shadow-lg);z-index:10000;display:flex;align-items:center;gap:8px;animation:slideIn .3s ease}.toast.hide{animation:slideOut .3s ease forwards}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.pill{display:inline-flex;align-items:center;gap:4px;background:rgba(255,255,255,.08);border-radius:999px;padding:3px 8px;font-size:var(--font-xs);color:#f0f0f0;margin-bottom:4px}.pill.drawer{background:rgba(23,162,184,.2)}.pill.form{background:rgba(255,193,7,.18)}.pill.success{background:rgba(40,167,69,.2)}.alert-item{padding:12px;border-radius:8px;margin-bottom:8px;border-left:4px solid;font-size:14px}.alert-item.alert-critical{background:rgba(220,53,69,.1);border-left-color:var(--error);color:var(--error)}.alert-item.alert-warning{background:rgba(255,193,7,.1);border-left-color:var(--warning);color:var(--warning)}.alert-item.alert-error{background:rgba(220,53,69,.1);border-left-color:var(--error);color:var(--error)}.alert-item.alert-unknown{background:rgba(108,117,125,.1);border-left-color:var(--text-secondary);color:var(--text-secondary)}.alert-item.alert-success{background:rgba(40,167,69,.1);border-left-color:var(--success);color:var(--success)}.alert-header{display:flex;justify-content:space-between;align-items:center;font-weight:600;margin-bottom:4px}.alert-type{font-size:12px}.alert-severity{font-size:10px;opacity:.8}.alert-message{font-size:13px;line-height:1.4}.invoice-details{margin-top:8px;padding:8px;background:rgba(0,0,0,.05);border-radius:4px;font-size:12px}.health-questionnaire{background:var(--bg-secondary);padding:16px;border-radius:8px;margin-bottom:16px}.questionnaire-step h4{margin:0 0 8px;color:var(--text-primary)}.questionnaire-step p{margin:8px 0;color:var(--text-secondary)}.questionnaire-buttons{display:flex;gap:8px;margin-top:12px}.btn-yes,.btn-no,.btn-close-alert{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:background .2s}.btn-yes{background:var(--success);color:#fff}.btn-yes:hover{background:var(--success-hover, #218838)}.btn-no{background:var(--error);color:#fff}.btn-no:hover{background:var(--error-hover, #c82333)}.btn-close-alert{background:var(--primary);color:#fff}.btn-close-alert:hover{background:var(--primary-hover, #0056b3)}.service-issue-check{padding:20px}.service-buttons-grid{display:grid;gap:12px;margin-bottom:24px}.escalation-message{margin-top:20px;padding:16px;background:var(--error-bg);border:1px solid var(--error-border);border-radius:8px}.escalation-alert{text-align:center;color:var(--error-color)}.escalation-alert i{font-size:24px;margin-bottom:8px;display:block}.escalation-alert strong{display:block;font-size:16px;font-weight:600;margin-bottom:4px}.escalation-alert p{font-size:14px;margin:0;opacity:.9}.upgrade-current-card{background:rgba(255,255,255,.03);border:1px solid var(--border-light);border-radius:8px;padding:12px;margin-bottom:16px;font-size:12px}.upgrade-current-card div{margin-bottom:4px}.upgrade-plan-list{display:flex;flex-direction:column;gap:8px;margin:8px 0 12px}.upgrade-plan-option{background:rgba(255,255,255,.03);border-radius:6px;border:1px solid var(--border-light);padding:12px;display:flex;align-items:flex-start;gap:8px;font-size:12px;cursor:pointer;transition:all .2s ease}.upgrade-plan-option:hover{background:var(--bg-hover)}.upgrade-plan-option-header{display:flex;justify-content:space-between;width:100%}.upgrade-plan-name{font-weight:600;color:var(--text-primary)}.upgrade-plan-speed{font-size:11px;opacity:.8;color:var(--text-secondary)}.upgrade-plan-price{font-size:12px;color:var(--text-primary)}.upgrade-plan-meta{font-size:11px;opacity:.75;margin-top:4px;color:var(--text-secondary)}.client-search-step{display:flex;flex-direction:column;flex:1}.search-container{display:flex;flex-direction:column;gap:16px}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:12px;color:var(--text-secondary);font-size:14px}.search-input{width:100%;padding:12px 40px;background:rgba(255,255,255,.05);border:1px solid var(--border-light);border-radius:6px;color:var(--text-primary);font-size:14px;border:none}.search-input:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset);border-color:var(--border-medium)}.clear-search-btn{position:absolute;right:8px;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px}.clear-search-btn:hover{color:var(--text-primary)}.search-results-container{flex:1;min-height:200px}.search-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px;color:var(--text-secondary)}.search-empty{text-align:center;padding:32px 16px;color:var(--text-secondary)}.search-empty.error{color:var(--danger)}.welcome-message{text-align:center;padding:32px 16px;color:var(--text-secondary)}.recent-clients-title{font-size:14px;font-weight:600;color:var(--warning);margin-bottom:12px}.client-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.client-card{display:flex;align-items:center;justify-content:space-between;padding:12px;background:rgba(255,255,255,.05);border:1px solid var(--border-light);border-radius:6px;color:var(--text-primary);cursor:pointer;transition:all .2s ease;text-align:left}.client-card:hover{background:var(--bg-hover);border-color:var(--border-medium)}.client-card-icon{font-size:20px;color:var(--warning)}.client-card-content{flex:1}.client-card-name{font-family:Roboto,sans-serif;font-weight:400;font-size:14px;margin-bottom:2px}.client-search-icon{color:var(--primary);margin-right:8px}.client-card-id{font-family:Roboto,sans-serif;font-size:12px;opacity:.8}.client-card-arrow{color:var(--text-secondary)}.client-info-header{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border-light)}.client-avatar{font-size:32px;color:var(--warning)}.client-details{flex:1}.client-name{margin:0 0 4px;font-size:16px;color:var(--warning);font-weight:600}.client-id{margin:0;font-size:12px;opacity:.8}.service-count{display:flex;flex-direction:column;align-items:center;gap:2px}.count-badge{background:var(--primary);color:#fff;border-radius:12px;padding:2px 8px;font-size:12px;font-weight:600}.count-label{font-size:10px;opacity:.8}.services-list{display:flex;flex-direction:column;gap:8px;margin-top:16px}.service-item-wrapper{position:relative}.service-item-wrapper.critical .service-option-btn{border-color:var(--danger);background:rgba(220,53,69,.1)}.critical-badge{position:absolute;top:-8px;right:8px;background:var(--danger);color:#fff;padding:2px 6px;border-radius:4px;font-size:10px;font-weight:600;z-index:1;display:flex;align-items:center;gap:4px}.service-item-content{display:flex;align-items:center;gap:8px;width:100%}.service-lock-icon{flex-shrink:0;font-size:14px}.service-details{flex:1;display:flex;flex-direction:column;gap:4px}.service-row{display:flex;justify-content:space-between;align-items:center}.service-name{font-size:14px;font-weight:600;color:var(--text-primary)}.service-status{display:flex;align-items:center;gap:4px;font-size:12px}.status-duration{opacity:.8}.service-id{font-size:12px;opacity:.8}.service-signal{display:flex;align-items:center;gap:4px;font-size:12px}.signal-values{opacity:.8}.suspended-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-15deg);background:rgba(108,117,125,.9);color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;pointer-events:none}.checkout-table{width:100%;border-collapse:collapse;font-size:12px;margin-top:8px}.checkout-table th,.checkout-table td{border:1px solid rgba(255,255,255,.12);padding:8px 12px;text-align:left}.checkout-table th{background:rgba(255,255,255,.06);font-weight:600}.checkout-table tfoot td{font-weight:600;background:rgba(255,255,255,.04)}@media (max-width: 768px){.client-grid{grid-template-columns:1fr}.drawer-shell{padding:0 8px 8px}.time-slots{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.header h1{font-size:18px}.service-option-btn{padding:10px 12px;font-size:12px}.calendar__day{padding:6px 0}.time-slots{grid-template-columns:1fr}.drawer-panel{border-radius:12px 12px 0 0}}@media print{.app-container{max-width:100%}.app-container{max-width:100%;padding:0}.workflow-step{box-shadow:none;border:1px solid #ddd}}@media (prefers-contrast: high){.btn-primary{border:2px solid white}.btn-secondary{border:2px solid #ccc}.service-option-btn{border:1px solid white}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.disclaimer-list{list-style:none;padding:0;margin:0}.disclaimer-item{margin-bottom:12px;padding:8px;background:rgba(255,255,255,.03);border-radius:6px;border-left:3px solid var(--warning)}.disclaimer-checkbox{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-size:12px;line-height:1.4}.disclaimer-checkbox input[type=checkbox]{margin-top:2px;flex-shrink:0}.disclaimer-text{flex:1}.login-form{padding:8px 0}.weekday{text-align:center;font-size:10px;opacity:.7;padding:4px 0}.calendar__day.today{background:rgba(0,123,255,.15);border:1px solid rgba(0,123,255,.3)}.time-slot.selected{background:var(--primary);color:#fff;border-color:var(--primary)}.calendar__day.disabled,.time-slot.disabled,.day-cell.disabled{opacity:.3;cursor:not-allowed;background:rgba(255,255,255,.02)}.calendar__day.disabled:hover,.time-slot.disabled:hover,.day-cell.disabled:hover{background:rgba(255,255,255,.02);transform:none}.checkout-table{margin:12px 0;border:1px solid var(--border-light)}.checkout-table th{background:rgba(255,255,255,.08);font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-size:11px}.checkout-table td{vertical-align:top}.checkout-table tfoot{border-top:2px solid var(--border-light)}.scheduler-summary{background:rgba(255,255,255,.03);border:1px solid var(--border-light);border-radius:8px;padding:16px;margin-top:20px}.scheduler-summary div{margin-bottom:8px}.scheduler-summary div:last-child{margin-bottom:0}.calendar__day:focus-visible,.service-option-btn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.status-dash-row{display:flex;gap:16px;margin-bottom:16px;justify-content:flex-end}.status-dash-text{cursor:pointer;font-size:14px;color:var(--text-primary);transition:color .2s ease}.status-dash-text:hover{opacity:.8}.status-dash-los{color:#dc3545}.status-dash-pwr-fail{color:#ffb74d}.status-dash-all{color:var(--success)}.status-dash-side-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-overlay);z-index:1000}.status-dash-popup-container{position:fixed;top:0;right:0;width:400px;height:100vh;background:var(--bg-panel);border-left:1px solid var(--border-light);display:flex;flex-direction:column;z-index:1001}.status-dash-popup-header{padding:20px 24px 16px;border-bottom:1px solid var(--border-light);margin:0;font-size:18px;color:var(--text-primary)}.status-dash-popup-search{padding:16px 24px;border-bottom:1px solid var(--border-light)}.status-dash-search-input{width:100%;padding:12px 14px;background:rgba(255,255,255,.05);border:1px solid var(--border-light);border-radius:6px;color:var(--text-primary);font-size:14px;transition:border-color .2s ease}.status-dash-search-input:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset);border-color:var(--primary);background:rgba(255,255,255,.08)}.status-dash-search-input::placeholder{color:var(--text-secondary)}.status-dash-popup-content{flex:1;overflow-y:auto;padding:16px 24px}.status-dash-no-data-message{text-align:center;color:var(--text-secondary);font-style:italic;padding:32px 0}.status-dash-popup-footer{padding:16px 24px;border-top:1px solid var(--border-light);display:flex;justify-content:flex-end}.status-dash-job-status-popup-button{padding:8px 16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:14px;transition:all .2s ease}.status-dash-job-status-popup-button:hover{background:rgba(255,255,255,.2);border-color:#fff6}.form-field{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.form-field label{font-size:12px;color:var(--text-secondary);margin-bottom:4px}.form-field input{width:100%;padding:12px 14px;background:rgba(255,255,255,.05);border:1px solid var(--border-medium);border-radius:6px;color:var(--text-primary);font-size:14px;transition:border-color .2s ease}.service-alert-drawer-content{padding:0}.service-alert-details{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.service-signal-indicator,.service-status-indicator{display:inline;padding:0;font-size:12px;font-weight:400}.detail-group{background:rgba(255,255,255,.03);padding:10px;border-radius:4px}.detail-value{font-size:12px;color:#fff;display:flex;align-items:center;gap:6px}.billing-alert-content{padding:16px}.billing-alert-details{display:flex;flex-direction:column;gap:12px}.billing-detail-group{background:rgba(255,255,255,.03);padding:16px;border-radius:4px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.billing-detail-group.billing-overall-health{background:rgba(255,255,255,.05);flex-direction:row;justify-content:space-between;align-items:center}.billing-detail-label{font-size:10px;color:#aaa;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.billing-detail-value{display:flex;align-items:center;justify-content:center;gap:6px;color:#fff;text-align:center;padding:8px}.service-alert-content{padding:16px}.service-alert-details{display:flex;flex-direction:column;gap:12px}.service-detail-group{background:rgba(255,255,255,.03);padding:16px;border-radius:4px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.service-detail-group.service-overall-health{background:rgba(255,255,255,.05);flex-direction:row;justify-content:space-between;align-items:center}.service-detail-label{font-size:10px;color:#aaa;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.service-detail-value{display:flex;align-items:center;justify-content:center;gap:6px;color:#fff;text-align:center;padding:8px}.service-alert-container{margin-bottom:24px;background:rgba(0,0,0,.1);border-radius:8px}.service-alert-container:last-child{margin-bottom:0}.billing-details{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:20px}.detail-group{background:rgba(255,255,255,.03);padding:8px;border-radius:4px;display:flex;justify-content:space-between;align-items:center}.detail-group.overall-health,.detail-group.non-completed-appointment{background:rgba(255,255,255,.05);flex-direction:row;justify-content:space-between;align-items:center}.sub-detail-group{background:rgba(255,255,255,.03);padding:4px 8px;border-radius:4px;display:flex;justify-content:space-between;align-items:center;min-height:20px;font-size:10px}.billing-details .detail-group:first-child{grid-column:1 / -1}.detail-group{background:rgba(255,255,255,.03);padding:16px;border-radius:4px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.detail-label{font-size:10px;color:#aaa;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.detail-value{display:flex;align-items:center;justify-content:center;gap:6px;color:#fff;text-align:center}.billing-section{flex:1;display:flex;flex-direction:column;margin-bottom:16px}.billing-section:last-child{border-top:1px solid #333;padding-top:16px;margin-bottom:0}.section-header{display:flex;align-items:center;margin-bottom:16px;gap:8px}.status-icon{font-size:18px}.status-icon.pass{color:#28a745}.status-icon.fail{color:#dc3545}.status-label,.section-title,.section-subtitle{font-size:14px;font-weight:500}.section-title{font-size:16px;text-transform:uppercase}.health-checklist{flex:1;display:flex;flex-direction:column;gap:12px}.health-item{display:flex;align-items:center;justify-content:space-between;padding:8px;background:rgba(255,255,255,.03);border-radius:4px}.health-item .status-icon{font-size:14px}.label{font-size:12px;color:#aaa;text-transform:uppercase;letter-spacing:.5px}.appointment-details{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.appointment-card{background:var(--bg-panel);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:16px;opacity:1;pointer-events:auto}.appointment-card--loading{opacity:.7;pointer-events:none}.appointment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.appointment-title{flex:1;margin:0 0 4px;color:var(--text-primary);font-size:var(--font-lg)}.appointment-service-id{background:var(--bg-hover);padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-xs);color:var(--text-secondary)}.appointment-status{display:flex;align-items:center;gap:6px;font-size:var(--font-sm);font-weight:500}.appointment-description{color:var(--text-secondary);font-size:var(--font-sm);line-height:1.4;margin-bottom:12px}.appointment-meta{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:16px}.appointment-meta-item{display:flex;align-items:center;gap:6px;font-size:var(--font-sm);color:var(--text-muted)}.appointment-actions{display:flex;gap:8px;justify-content:flex-end}.appointment-action-btn{font-size:var(--font-sm);padding:6px 12px}.appointment-alert-content{padding:16px}.appointment-details{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.appointment-details .non-completed-appointment{grid-column:1 / -1}.job-alert-drawer{padding:16px}.job-details{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:20px}.job-details .detail-group:first-child,.job-details .non-completed-job{grid-column:1 / -1}.side-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:1000;display:flex;justify-content:flex-end}.side-popup-content{background:var(--bg-primary);width:400px;max-width:90vw;height:100%;overflow-y:auto;padding:20px;transform:translate(0);transition:transform .3s ease;position:relative}.popup-close-btn{position:absolute;top:10px;right:10px;background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-secondary)}.signal-indicator{display:inline;padding:0;font-size:12px;font-weight:400}.signal-none{background:rgba(108,117,125,.2);color:#e9ecef}.signal-poor{background:rgba(255,193,7,.2);color:#fff3cd}.signal-critical{background:rgba(220,53,69,.2);color:#f8d7da}.service-actions{display:flex;gap:8px;margin-bottom:10px}.service-actions .btn{flex:1;padding:6px 10px;font-size:11px;border-radius:4px;display:flex;align-items:center;justify-content:center;gap:4px;cursor:pointer;border:none;transition:all .2s ease}.btn{padding:8px 16px;border-radius:var(--radius-sm);cursor:pointer;border:1px solid rgba(255,255,255,.1);font-size:var(--font-md);font-weight:500;display:inline-flex;align-items:center;gap:6px;transition:all .2s ease,box-shadow .2s ease,transform .2s ease;box-shadow:0 2px 4px #0000001a}.btn-secondary{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.1)}.btn-secondary:hover{background:rgba(255,255,255,.12)}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover{background:#0056b3}.btn:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.form-field input:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset);border-color:var(--primary);box-shadow:var(--focus-ring)}.form-field input::placeholder{color:var(--text-muted);opacity:.7}.calendar__day:focus-visible,.time-slot:focus-visible,.service-option-btn:focus-visible,.client-card:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.skip-to-content{position:absolute;top:-40px;left:0;background:var(--primary);color:#fff;padding:8px;z-index:9999;transition:top .3s}.skip-to-content:focus{top:0}@media (max-width: 768px){.drawer-shell{padding:0 4px 4px}.drawer-panel{border-radius:8px 8px 0 0;max-height:80vh}.drawer-header{padding:10px 12px 6px}.drawer-body{padding:12px}.drawer-footer{padding:2px var(--space-sm)}.upgrade-plan-option{padding:10px;flex-direction:column;gap:8px}.upgrade-plan-option-header{flex-direction:column;align-items:flex-start;gap:4px}.calendar__card{padding:10px}.calendar__day{padding:8px 0;font-size:11px}.time-slots{grid-template-columns:repeat(2,1fr);gap:6px}.time-slot{padding:10px 4px;font-size:11px}}@media (max-width: 480px){.drawer-shell{padding:0 4px 4px}.drawer-panel{border-radius:8px 8px 0 0;max-height:80vh}.drawer-header{padding:8px 10px 4px}.drawer-top-title{font-size:14px}.drawer-top-subtitle{font-size:11px}.drawer-body{padding:10px;font-size:13px}.drawer-footer{padding:0;flex-direction:column;gap:0}.drawer-footer{width:100%;justify-content:space-between}.btn{padding:6px 12px;font-size:12px}.drawer-footer-actions .btn{display:flex;align-items:center;gap:8px;padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-height:44px;background:rgba(255,255,255,.1);color:#fff}.drawer-footer-actions .btn:not(:disabled):hover{border:2px solid #4caf50!important;background:#333!important;transform:translateY(-1px);box-shadow:0 2px 8px #4caf504d}.drawer-footer-actions .btn:disabled{opacity:.5;cursor:not-allowed}.week-nav-btn{padding:6px 8px;font-size:11px}.upgrade-current-card{padding:8px}.calendar__header{flex-direction:column;gap:8px;align-items:stretch}.calendar__header-title{order:-1;text-align:center}.calendar__nav-btn{width:100%;justify-content:center}.calendar__weekdays{font-size:9px}.calendar__grid{gap:2px}.calendar__day{padding:6px 0;font-size:10px}.weekly-scheduler{padding:0}.week-title{font-size:13px}.week-grid{gap:4px}.day-cell{padding:8px 0;font-size:11px}.time-slots{grid-template-columns:1fr}.scheduler-summary{padding:8px;font-size:11px}.checkout-table{font-size:11px}.checkout-table th,.checkout-table td{padding:4px 6px}.disclaimer-text{font-size:11px}}@media (max-width: 360px){.drawer-shell{padding:0 2px 2px}.drawer-panel{border-radius:6px 6px 0 0}.calendar__day{padding:4px 0;font-size:9px}.week-title{font-size:12px}.day-cell{padding:6px 0;font-size:10px}.btn{padding:5px 10px;font-size:11px}}@media (max-height: 600px) and (orientation: landscape){.drawer-panel{max-height:70vh}.drawer-body{max-height:calc(70vh - 120px);overflow-y:auto}.calendar__card{max-height:200px;overflow-y:auto}.weekly-scheduler{max-height:300px;overflow-y:auto}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.drawer-panel,.calendar__day,.day-cell,.time-slot{border-width:.5px}}.error-boundary-fallback{display:flex;align-items:center;justify-content:center;min-height:300px;padding:var(--space-lg);background:var(--bg-surface-1, #ffffff);border:1px solid var(--border-color, #e1e5e9);border-radius:var(--border-radius-md, 8px)}.error-boundary-content{text-align:center;max-width:400px}.error-icon{font-size:48px;color:var(--error-color, #e74c3c);margin-bottom:var(--space-md, 16px)}.error-title{font-size:var(--text-xl, 20px);font-weight:var(--font-semibold, 600);color:var(--text-primary, #2c3e50);margin:0 0 var(--space-sm, 8px) 0}.error-message{font-size:var(--text-md, 16px);color:var(--text-secondary, #7f8c8d);margin:0 0 var(--space-lg, 24px) 0;line-height:1.5}.error-actions{display:flex;gap:var(--space-sm, 8px);justify-content:center;margin-bottom:var(--space-lg, 24px)}.error-actions .btn{min-width:120px}.workflow-bottom-bar{position:relative;padding:2px var(--space-sm);display:flex;justify-content:space-between;align-items:center}.bottom-nav-btn{display:flex;align-items:center;gap:8px;padding:var(--space-xs) var(--space-sm);border:none;border-radius:var(--radius-md);font-size:var(--font-sm);font-weight:500;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px;min-height:44px}.bottom-nav-btn:disabled{opacity:.5;cursor:not-allowed}.bottom-nav-btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 2px 8px #0003}.bottom-nav-btn-compact{padding:var(--space-xs) var(--space-sm);font-size:var(--font-xs);min-height:36px}.bottom-nav-btn-secondary{background:transparent;color:var(--text-primary);border:none}.bottom-nav-btn-secondary:hover:not(:disabled){background:rgba(255,255,255,.1)}.bottom-nav-btn-info{background:var(--primary);color:#fff}.bottom-nav-btn-info:hover:not(:disabled){background:var(--primary-hover)}.bottom-nav-btn-primary{background:var(--success);color:#fff}.bottom-nav-btn-primary:hover:not(:disabled){background:#218838}.bottom-nav-btn-accent{background:var(--warning);color:var(--bg-dark)}.bottom-nav-btn-accent:hover:not(:disabled){background:#e0a800}.bottom-nav-actions{display:flex;gap:var(--space-sm)}.service-selection-btn-content{width:100%}.service-selection-onu-info{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;line-height:1.4}.service-selection-status-left{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.service-selection-service-name{font-size:14px;font-weight:500;color:inherit;word-wrap:break-word;overflow-wrap:break-word}.service-selection-status-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:12px;color:#666;flex-shrink:0}.service-selection-last-update,.service-selection-onu-signals{display:flex;align-items:center;gap:4px}.service-selection-status-right i{font-size:10px}.service-select-btn.border-active{border:1px solid rgba(40,167,69,.3);border-left:3px solid #28a745}.service-select-btn.border-suspended{border:1px solid rgba(255,193,7,.3);border-left:3px solid #ffc107}.service-select-btn.border-inactive{border:1px solid rgba(108,117,125,.3);border-left:3px solid #6c757d}.service-select-btn.border-pending{border:1px solid rgba(23,162,184,.3);border-left:3px solid #17a2b8}.service-select-btn.critical{border-left:3px solid #dc3545}.admin-tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.admin-tool-btn{display:flex;align-items:center;gap:12px;padding:12px 16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#fff;cursor:pointer;transition:all .2s ease;text-align:left;font-size:14px;font-weight:500;min-height:48px}.admin-tool-btn:hover:not(:disabled){background:rgba(255,183,77,.15);border-color:#ffb74d66;transform:translateY(-1px);box-shadow:0 2px 8px #ffb74d33}.admin-tool-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.tool-icon{font-size:20px;color:#ffb74d;flex-shrink:0}.error-details{text-align:left;margin-top:var(--space-lg, 24px);border:1px solid var(--border-color, #e1e5e9);border-radius:var(--border-radius-sm, 4px);background:var(--bg-surface-2, #f8f9fa)}.error-details summary{padding:var(--space-sm, 8px) var(--space-md, 16px);cursor:pointer;font-weight:var(--font-medium, 500);color:var(--text-primary, #2c3e50);-webkit-user-select:none;user-select:none}.error-details summary:hover{background:var(--bg-surface-3, #e9ecef)}.error-stack{padding:var(--space-md, 16px);margin:0;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:var(--text-xs, 12px);color:var(--error-color, #e74c3c);background:var(--bg-surface-1, #ffffff);border-top:1px solid var(--border-color, #e1e5e9);white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto}.progress-container{width:100%}.progress-label{font-size:var(--text-sm, 14px);color:var(--text-secondary, #7f8c8d);margin-bottom:var(--space-xs, 4px);text-align:center}.progress-bar{width:100%;height:8px;background:var(--bg-surface-3, #e9ecef);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-color, #3498db),var(--accent-color-dark, #2980b9));border-radius:4px;transition:width .3s ease}.step-progress{width:100%;margin-bottom:var(--space-lg, 24px)}.step-progress-header{display:flex;align-items:center;justify-content:center;gap:var(--space-xs, 4px);margin-bottom:var(--space-md, 16px);font-size:var(--text-sm, 14px);color:var(--text-secondary, #7f8c8d)}.step-current{font-weight:var(--font-semibold, 600);color:var(--accent-color, #3498db)}.step-total{color:var(--text-muted, #95a5a6)}.step-progress-bar{display:flex;align-items:center;position:relative}.step-indicator{display:flex;flex-direction:column;align-items:center;position:relative;flex:1}.step-circle{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm, 14px);font-weight:var(--font-medium, 500);transition:all .3s ease;z-index:2;background:var(--bg-surface-1, #ffffff);border:2px solid var(--border-color, #e1e5e9);color:var(--text-muted, #95a5a6)}.step-completed .step-circle{background:var(--success-color, #27ae60);border-color:var(--success-color, #27ae60);color:#fff}.step-current .step-circle{background:var(--accent-color, #3498db);border-color:var(--accent-color, #3498db);color:#fff;box-shadow:0 0 0 4px #3498db33}.step-label{font-size:var(--text-xs, 12px);color:var(--text-secondary, #7f8c8d);margin-top:var(--space-xs, 4px);text-align:center;max-width:80px}.step-connector{position:absolute;top:15px;left:50%;right:-50%;height:2px;background:var(--border-color, #e1e5e9);z-index:1}.step-connector-completed{background:var(--success-color, #27ae60)}.spinner{display:inline-block;border:2px solid var(--border-color, #e1e5e9);border-radius:50%;border-top-color:var(--accent-color, #3498db);animation:spin 1s ease-in-out infinite}.spinner-inner{width:100%;height:100%;border-radius:50%}@keyframes spin{to{transform:rotate(360deg)}}.loading-overlay{position:relative}.loading-content{filter:blur(1px);pointer-events:none}.loading-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10}.loading-indicator{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm, 8px);padding:var(--space-lg, 24px);background:var(--bg-surface-1, #ffffff);border:1px solid var(--border-color, #e1e5e9);border-radius:var(--border-radius-md, 8px);box-shadow:var(--shadow-lg, 0 10px 25px rgba(0, 0, 0, .1))}.loading-message{font-size:var(--text-sm, 14px);color:var(--text-secondary, #7f8c8d);margin:0;text-align:center}.skeleton{background:rgba(255,255,255,.1);border-radius:4px;animation:skeletonPulse 2s ease-in-out infinite}@keyframes skeletonPulse{0%,to{opacity:1}50%{opacity:.6}}.drawer-skeleton .skeleton-header{margin-bottom:var(--space-lg, 24px)}.drawer-skeleton .skeleton-content{display:flex;flex-direction:column;gap:var(--space-lg, 24px)}.drawer-skeleton .skeleton-section{padding:var(--space-md, 16px);border:1px solid var(--border-color, #e1e5e9);border-radius:var(--border-radius-sm, 4px)}.form-skeleton{display:flex;flex-direction:column;gap:var(--space-md, 16px)}.form-skeleton .skeleton-field{display:flex;flex-direction:column;gap:var(--space-xs, 4px)}.form-skeleton .skeleton-actions{display:flex;gap:var(--space-sm, 8px);justify-content:flex-end;margin-top:var(--space-lg, 24px)}.calendar-skeleton .skeleton-calendar__header{display:flex;justify-content:center;margin-bottom:var(--space-md, 16px)}.calendar-skeleton .skeleton-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-xs, 4px);justify-items:center}.global-loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(26,26,26,.95);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:loadingFadeIn .3s ease-in-out}.global-loading-content{width:100%;max-width:500px;padding:var(--space-xl);margin:var(--space-lg);background:var(--bg-panel);border-radius:var(--radius-lg);border:1px solid var(--border-medium);box-shadow:0 20px 40px #0000004d}@keyframes loadingFadeIn{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-lg)}.loading-spinner{position:relative;width:80px;height:80px}.spinner-ring{position:absolute;width:100%;height:100%;border:4px solid transparent;border-top:4px solid var(--primary);border-radius:50%;animation:spin 1.5s linear infinite}.spinner-ring:nth-child(2){border-top-color:var(--warning);animation-delay:.2s;animation-duration:1.8s}.spinner-ring:nth-child(3){border-top-color:var(--success);animation-delay:.4s;animation-duration:2.1s}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text h3{color:var(--text-primary);font-size:var(--font-xl);font-weight:600;margin:0 0 var(--space-sm) 0}.loading-text p{color:var(--text-secondary);font-size:var(--font-md);margin:0;opacity:.8}.loading-progress{width:100%;margin-top:var(--space-lg)}.progress-bar{width:100%;height:4px;background:var(--bg-hover);border-radius:2px;overflow:hidden;margin-bottom:var(--space-sm)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--success));border-radius:2px;animation:progress 2s ease-in-out infinite}@keyframes progress{0%{width:0%}50%{width:70%}to{width:100%}}.progress-text{color:var(--text-secondary);font-size:var(--font-sm);text-align:center;margin:0;opacity:.7}.xfiniti-text{font-size:48px;font-weight:700;color:#ffb74d;font-family:Arial Black,Arial,sans-serif;letter-spacing:4px;text-shadow:0 0 20px rgba(255,183,77,.5);animation:glow 2s ease-in-out infinite alternate;display:flex;align-items:center;gap:2px}.cursor{animation:blink 1s infinite;color:#ffb74d}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes glow{0%{text-shadow:0 0 20px rgba(255,183,77,.5)}to{text-shadow:0 0 30px rgba(255,183,77,.8),0 0 40px rgba(255,183,77,.4)}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.success-confirmation,.retry-dialog{text-align:center;padding:var(--space-xl);max-width:500px;margin:0 auto}.success-confirmation .success-icon,.retry-dialog .error-icon{font-size:48px;margin-bottom:var(--space-lg);display:block}.success-confirmation h2,.retry-dialog h2{color:var(--text-primary);margin-bottom:var(--space-lg);font-size:var(--font-2xl);font-weight:600}.success-confirmation .job-summary{background:var(--bg-panel);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-lg);text-align:left}.success-confirmation .summary-item{margin-bottom:var(--space-sm);font-size:var(--font-md)}.success-confirmation .summary-item strong{color:var(--text-secondary);display:inline-block;min-width:100px}.success-confirmation .confirmation-notice{background:rgba(40,167,69,.1);border:1px solid rgba(40,167,69,.3);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-lg);font-size:var(--font-sm);color:var(--text-secondary)}.success-confirmation .confirmation-notice i{color:var(--success);margin-right:var(--space-sm)}.success-confirmation .confirmation-actions{display:flex;gap:var(--space-md);justify-content:center;flex-wrap:wrap}.retry-dialog .error-details{margin-bottom:var(--space-lg)}.retry-dialog .error-details p{color:var(--text-primary);margin-bottom:var(--space-sm);font-size:var(--font-md)}.retry-dialog .retry-question{color:var(--text-secondary);font-style:italic}.retry-dialog .retry-actions{display:flex;gap:var(--space-md);justify-content:center;margin-bottom:var(--space-lg)}.retry-dialog .retry-help{background:rgba(255,183,77,.1);border:1px solid rgba(255,183,77,.3);border-radius:var(--radius-md);padding:var(--space-md);font-size:var(--font-sm);color:var(--text-secondary)}.retry-dialog .retry-help i{color:var(--warning);margin-right:var(--space-sm)}.btn-outline{background:transparent;border:1px solid var(--border-medium);color:var(--text-primary)}.btn-outline:hover{background:var(--bg-hover);border-color:var(--text-secondary)}.debug-section{margin-top:20px;padding:16px;border:1px solid var(--border-light);border-radius:6px;background:rgba(0,0,0,.02)}.debug-toggle{width:100%;margin-bottom:12px}.debug-content{max-height:400px;overflow-y:auto}.debug-content h4{margin:0 0 12px;color:var(--text-primary);font-size:14px;font-weight:600}.debug-json{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:4px;padding:12px;font-size:11px;line-height:1.4;color:var(--text-primary);overflow-x:auto;white-space:pre-wrap;word-break:break-word}@media (max-width: 480px){.success-confirmation,.retry-dialog{padding:var(--space-lg)}.success-confirmation .confirmation-actions,.retry-dialog .retry-actions{flex-direction:column}.success-confirmation .confirmation-actions button,.retry-dialog .retry-actions button{width:100%}}.alert-controller-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999}.alert-controller-content{background:var(--bg-panel);border-radius:var(--radius-lg);padding:var(--space-xl);max-width:600px;width:90%;box-shadow:0 20px 40px #0000004d;border:1px solid var(--border-medium)}.alert-controller-header{text-align:center;margin-bottom:var(--space-xl)}.alert-controller-header h2{color:var(--text-primary);font-size:var(--font-2xl);font-weight:600;margin-bottom:var(--space-sm)}.alert-controller-header p{color:var(--text-secondary);font-size:var(--font-md);margin:0}.alert-controller-progress{display:flex;flex-direction:column;gap:var(--space-lg);margin-bottom:var(--space-xl)}.alert-check-section{background:rgba(255,255,255,.02);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-lg)}.section-header{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-light)}.section-header i{font-size:var(--font-xl);color:var(--primary)}.section-header span{font-size:var(--font-lg);font-weight:600;color:var(--text-primary)}.check-items{display:flex;flex-direction:column;gap:var(--space-sm)}.check-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-xs) 0}.check-item i{font-size:var(--font-md);width:20px;text-align:center}.check-item span:first-of-type{flex:1;font-size:var(--font-sm);color:var(--text-secondary)}.status-text{font-size:var(--font-xs);color:var(--text-muted);font-weight:500}.alert-controller-errors{background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-lg)}.alert-controller-errors h4{color:var(--error);font-size:var(--font-md);margin-bottom:var(--space-sm);margin-top:0}.alert-controller-errors ul{margin:0;padding-left:var(--space-lg)}.alert-controller-errors li{color:var(--text-primary);font-size:var(--font-sm);margin-bottom:var(--space-xs)}.alert-controller-countdown{text-align:center;margin-bottom:var(--space-lg)}.alert-controller-countdown p{color:var(--text-secondary);font-size:var(--font-md);margin-bottom:var(--space-md)}.btn-skip-countdown{background:var(--primary);color:#fff;border:none;padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-size:var(--font-sm);font-weight:600;cursor:pointer;transition:all .2s ease}.btn-skip-countdown:hover{background:var(--primary-dark);transform:translateY(-1px)}.alert-controller-progress-bar{width:100%;height:6px;background:var(--bg-hover);border-radius:3px;overflow:hidden;margin-top:var(--space-lg)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--success));border-radius:3px;transition:width .5s ease}@media (max-width: 768px){.alert-controller-content{padding:var(--space-lg);width:95%}.alert-controller-progress{gap:var(--space-md)}.alert-check-section{padding:var(--space-md)}.check-item{flex-wrap:wrap;gap:var(--space-sm)}}
