@charset "UTF-8";body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}.container{margin:0 auto;max-width:1200px;padding:0 20px}.row{display:flex;flex-wrap:wrap;margin:0 -15px}.col-12,.col-lg-3,.col-lg-4,.col-lg-6,.col-lg-8,.col-md-6{padding:0 15px}.col-12{flex:0 0 100%;max-width:100%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-6{flex:0 0 50%;max-width:50%}@media (max-width:768px){.col-lg-3,.col-lg-4,.col-lg-6,.col-lg-8,.col-md-6{flex:0 0 100%;max-width:100%}}.align-items-center{align-items:center}.justify-content-center{justify-content:center}.justify-content-between{justify-content:space-between}.mb-4{margin-bottom:1.5rem}.btn{border-radius:6px;display:inline-block;font-weight:500;text-align:center;text-decoration:none}.btn,.btn-primary{transition:all .3s ease}.btn-primary{background:linear-gradient(90deg,#f97316,#ec4899);box-shadow:0 4px 15px #f973164d}.btn-primary:hover{background:linear-gradient(90deg,#ea580c,#db2777);box-shadow:0 6px 20px #f9731666}.btn-primary:active{transform:translateY(0)}.btn-outline{background-color:initial;border:2px solid #007bff;color:#007bff}.btn-outline:hover{background-color:#007bff;color:#fff}.btn-lg{font-size:18px;padding:16px 32px}.btn-link{background:none;color:#007bff;padding:0;text-decoration:underline}.btn-link:hover{color:#0056b3}.top-bar{background-color:#fff;box-shadow:0 2px 10px #0000001a;padding:15px 0;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.logo h2{color:#007bff;font-weight:700;margin:0}.nav-list{align-items:center;display:flex;gap:35px;list-style:none;margin:0}.nav-list a{color:#333;font-weight:500;text-decoration:none;transition:color .3s ease}.nav-list a:hover{color:#007bff}@media (max-width:768px){.nav-list{flex-direction:column;gap:15px}}.hero-section{background:linear-gradient(135deg,#cb66ea,#764ba2);color:#fff;padding:100px 0;text-align:center}.hero-title{font-size:clamp(32px,5vw,56px);font-weight:700;line-height:1.2;margin-bottom:20px}.hero-description{font-size:clamp(16px,2.5vw,20px);margin-bottom:40px;margin-left:auto;margin-right:auto;max-width:800px;opacity:.9}.hero-buttons{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.section-title{font-size:clamp(28px,4vw,42px);font-weight:700;margin-bottom:20px;text-align:center}.section-description{color:#666;font-size:clamp(16px,2vw,18px);margin:0 auto 50px;max-width:800px;text-align:center}.testimonials-section{background-color:#f8f9fa;padding:80px 0}.testimonial-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;height:100%;padding:30px;transition:transform .3s ease}.testimonial-card:hover{transform:translateY(-5px)}.testimonial-content p{color:#555;font-style:italic;margin-bottom:20px}.testimonial-author{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.author-info h4{color:#333;margin:0}.author-info p{color:#666;font-size:14px;margin:0}.company-logo{align-items:center;background-color:#f0f0f0;border-radius:6px;color:#666;display:flex;font-size:12px;height:40px;justify-content:center;width:60px}.rating{color:#ffc107;font-weight:700}.features-section{padding:80px 0}.feature-item{margin-bottom:100px}.feature-item:last-child{margin-bottom:0}.feature-content{padding:20px}.feature-icon{font-size:48px;margin-bottom:20px}.feature-title{color:#333;font-size:clamp(24px,3vw,32px);font-weight:700;margin-bottom:20px}.feature-description{color:#666;font-size:16px;line-height:1.6;margin-bottom:20px}.feature-image{padding:20px}.placeholder-image{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px;color:#666;display:flex;font-size:18px;height:300px;justify-content:center}.integrations-section{background-color:#f8f9fa;padding:80px 0}.integrations-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:40px 0}.integration-item{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:20px;text-align:center;transition:transform .3s ease}.integration-item:hover{transform:translateY(-3px)}.integration-logo{align-items:center;background-color:#f0f0f0;border-radius:6px;color:#666;display:flex;font-size:12px;height:40px;justify-content:center}.feature-cards-section{padding:80px 0}.feature-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;height:100%;padding:30px;text-align:center;transition:transform .3s ease}.feature-card:hover{transform:translateY(-5px)}.feature-card-icon{font-size:48px;margin-bottom:20px}.feature-card-title{color:#333;font-size:20px;font-weight:700;margin-bottom:15px}.feature-card-description{color:#666;font-size:14px;line-height:1.6;margin-bottom:20px}.cta-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:80px 0;text-align:center}.cta-title{font-size:clamp(28px,4vw,42px);font-weight:700;margin-bottom:20px}.cta-description{font-size:clamp(16px,2.5vw,20px);margin-bottom:40px;opacity:.9}.footer{background-color:#2c3e50;color:#fff;padding:60px 0 20px}.footer-section h4{font-size:18px;font-weight:700;margin-bottom:20px}.footer-section ul{list-style:none}.footer-section ul li{margin-bottom:10px}.footer-section ul li a{color:#bdc3c7;text-decoration:none;transition:color .3s ease}.footer-section ul li a:hover{color:#fff}.footer-bottom{align-items:center;border-top:1px solid #34495e;display:flex;justify-content:space-between;margin-top:40px;padding-top:20px}.footer-logo h3{color:#007bff;margin:0}.footer-copyright p{color:#bdc3c7;margin:0}@media (max-width:768px){.footer-bottom{flex-direction:column;gap:20px;text-align:center}.hero-buttons{align-items:center;flex-direction:column}.feature-item .row{flex-direction:column-reverse}.feature-item.reverse .row{flex-direction:column}}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset),env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset),env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset),env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset),env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:-webkit-fit-content;width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.signin-container{align-items:center;background:linear-gradient(40deg,#704493,#512e6e);display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.signin-content{display:flex;height:100vh;max-width:1200px;position:relative;width:100%;z-index:2}.welcome-section{color:#fff;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:0 60px}.logo{margin-bottom:40px}.corrohealth-logo{filter:brightness(0) invert(1);height:auto;max-width:280px;transition:transform .3s ease}.corrohealth-logo:hover{transform:scale(1.02)}.welcome-title{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#fff,#e0e0e0);-webkit-background-clip:text;background-clip:text;font-size:3.5rem;font-weight:700;line-height:normal;margin-bottom:20px}.separator{background:linear-gradient(509deg,#00b39e,#37e2ce);border-radius:2px;height:3px;margin-bottom:30px;width:60px}.welcome-description{color:#fffc;font-size:1.1rem;line-height:1.6;margin-bottom:40px;max-width:400px}.learn-more-btn{align-self:flex-start;background:linear-gradient(40deg,#854ab7,#512e6e);border-radius:25px;box-shadow:0 4px 15px #854ab74d;color:#fff;display:inline-block;font-size:1rem;font-weight:600;padding:15px 30px;text-decoration:none;transition:all .3s ease}.learn-more-btn:hover{box-shadow:0 6px 20px #854ab766;transform:translateY(-2px)}.signin-form-container{align-items:center;display:flex;flex:1 1;justify-content:center;padding:40px}.form-card{animation:slideIn .8s ease-out;background:#fff;border:1px solid #ffffff4d;border-radius:20px;box-shadow:0 8px 32px #0000001a;max-width:450px;overflow:hidden;padding:40px;position:relative;width:100%}.form-card:before{animation:shimmer 3s linear infinite;background:linear-gradient(90deg,#0000,#00b39e,#37e2ce,#0000);content:"";height:2px;left:0;position:absolute;right:0;top:0}.form-title{color:#2c3e50;font-size:2rem;font-weight:700;margin-bottom:20px;text-align:center}.underline{position:relative}.underline:after{background:linear-gradient(509deg,#00b39e,#37e2ce);border-radius:1px;bottom:-5px;content:"";height:2px;left:0;position:absolute;width:100%}.signin-method-toggle{background:#0000000d;border:1px solid #0000001a;border-radius:10px;display:flex;margin-bottom:20px;padding:3px}.toggle-btn{background:#0000;border:none;border-radius:8px;color:#0009;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;overflow:hidden;padding:10px 18px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.toggle-btn:before{background:linear-gradient(135deg,#00b39e,#37e2ce);content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .4s ease;width:100%;z-index:-1}.toggle-btn.active{background:linear-gradient(509deg,#00b39e,#37e2ce);color:#fff;transform:translateY(-2px)}.toggle-btn.active:before{opacity:1}.toggle-btn:hover:not(.active){background:#00000014;color:#2c3e50;transform:translateY(-1px)}.signin-form{display:flex;flex-direction:column;gap:15px}.signin-form .form-group{display:flex;flex-direction:column;gap:6px}.signin-form .form-group label{color:#2c3e50!important;font-size:.9rem;font-weight:600}.form-input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #ffffff4d;border-radius:10px;box-shadow:0 2px 8px #0000000d;color:#2c3e50!important;font-size:.95rem;padding:12px 16px;transition:all .4s cubic-bezier(.4,0,.2,1)}.form-input::placeholder{color:#00000080!important}.form-input:-webkit-autofill,.form-input:-webkit-autofill:focus,.form-input:-webkit-autofill:hover{-webkit-text-fill-color:#000!important;-webkit-box-shadow:inset 0 0 0 1000px #fff!important;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.form-input:focus{background:#fff;border-color:#00b39e;box-shadow:0 0 0 4px #00b39e40,0 4px 12px #0000001a;color:#2c3e50!important;outline:none;transform:translateY(-2px)}.form-input:focus::placeholder{color:#00000080!important}.phone-input-container{align-items:stretch;display:flex;gap:10px}.phone-input{flex:1 1}.send-otp-btn{background:linear-gradient(40deg,#854ab7,#512e6e);border:none;border-radius:12px;box-shadow:0 4px 15px #854ab74d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;min-width:100px;padding:15px 20px;transition:all .3s ease;white-space:nowrap}.send-otp-btn:hover:not(:disabled){box-shadow:0 6px 20px #854ab766;transform:translateY(-2px)}.send-otp-btn:disabled{background:#fff3;box-shadow:none;color:#ffffff80;cursor:not-allowed;transform:none}.signin-form .submit-btn{background:linear-gradient(135deg,#00b39e,#37e2ce)!important;border:none;border-radius:14px;box-shadow:0 4px 20px #00b39e66;color:#fff;cursor:pointer;font-size:1.05rem;font-weight:700;margin-top:10px;overflow:hidden;padding:16px 32px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.signin-form .submit-btn:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.signin-form .submit-btn:hover:before{height:300px;width:300px}.signin-form .submit-btn:hover{background:#00b39e;box-shadow:0;transform:translateY(-3px)}.signin-form .submit-btn:active{transform:translateY(-1px)}.conference-room-section{display:flex;flex-direction:column;gap:20px}.guest-welcome{background:linear-gradient(135deg,#00b39e26,#37e2ce1a);border-left:4px solid #00b39e;border-radius:12px;box-shadow:0 2px 10px #00b39e1a;margin-bottom:10px;padding:18px}.guest-welcome h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 5px}.guest-welcome p{color:#000000b3;font-size:.9rem;margin:0}.required{color:#ff4d4d}.input-error{border-color:#ff4d4d!important;box-shadow:0 0 0 3px #ff4d4d33!important}.error-message{color:#ff6b6b}.error-message,.input-hint{font-size:.85rem;margin-top:4px}.input-hint{color:#00000080;display:block}.otp-status-card{animation:slideDown .3s ease-out;background:#00b39e26;border:1px solid #00b39e4d;border-radius:12px;gap:12px;padding:15px}.otp-status-card,.status-icon{align-items:center;display:flex}.status-icon{background:linear-gradient(509deg,#00b39e,#37e2ce);border-radius:50%;color:#fff;flex-shrink:0;font-size:1.5rem;font-weight:700;height:40px;justify-content:center;width:40px}.status-text{flex:1 1}.status-text strong{color:#2c3e50;display:block;font-size:.95rem;margin-bottom:4px}.status-text p{color:#000000b3;font-size:.85rem;margin:0;word-break:break-all}.otp-timer-row{align-items:center;display:flex;justify-content:space-between;margin-top:8px}.timer-text{color:#00b39e}.timer-expired,.timer-text{font-size:.9rem;font-weight:600}.timer-expired{color:#ff6b6b}.resend-otp-btn{background:#00b39e33;border:1px solid #00b39e;border-radius:8px;color:#00b39e;cursor:pointer;font-size:.85rem;font-weight:600;padding:6px 16px;transition:all .3s ease}.resend-otp-btn:hover:not(:disabled){background:#00b39e4d;transform:translateY(-1px)}.resend-otp-btn:disabled{cursor:not-allowed;opacity:.5}.submit-btn:disabled{opacity:.6;transform:none!important}.loading-spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;margin-right:8px;vertical-align:middle;width:16px}.social-icons{gap:20px;margin-top:30px}.social-icon,.social-icons{display:flex;justify-content:center}.social-icon{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;color:#fff;cursor:pointer;font-weight:600;height:40px;transition:all .3s ease;width:40px}.social-icon:hover{background:#fff3;transform:scale(1.1)}@media (max-width:768px){.signin-content{flex-direction:column;height:auto;min-height:100vh}.welcome-section{padding:40px 20px;text-align:center}.welcome-title{font-size:2.5rem}.signin-form-container{padding:20px}.form-card{padding:30px 20px}.form-title{font-size:2rem}.phone-input-container{flex-direction:column}.send-otp-btn{min-width:auto}}@media (max-width:480px){.welcome-title{font-size:2rem}.welcome-description{font-size:1rem}.form-card{padding:25px 15px}.form-title{font-size:1.8rem}.toggle-btn{font-size:.85rem;padding:10px 8px}.signin-method-toggle{gap:4px}}.captcha-group{margin-top:10px}.captcha-container{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:12px;margin-bottom:12px;padding:12px}.captcha-canvas{background:linear-gradient(135deg,#1f1040,#2c1f5f);border:2px solid #fff3;border-radius:8px;box-shadow:0 2px 8px #00000026}.captcha-refresh{align-items:center;background:linear-gradient(135deg,#00b39e,#37e2ce);border:none;border-radius:10px;box-shadow:0 2px 8px #00b39e4d;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.4rem;height:44px;justify-content:center;transition:all .3s ease;width:44px}.captcha-refresh:hover{box-shadow:0 4px 12px #00b39e80;transform:rotate(180deg) scale(1.1)}.captcha-refresh:active{transform:rotate(180deg) scale(.95)}.captcha-input{font-size:1.1rem;font-weight:600;letter-spacing:2px;text-transform:uppercase}.password-input-wrapper .form-input{padding-right:50px;width:100%}.password-toggle-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:#00000080;cursor:pointer;display:flex;justify-content:center;padding:6px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:all .3s ease}.password-toggle-btn:hover{background:#00b39e1a;color:#00b39e}.password-toggle-btn:focus{color:#00b39e;outline:none}.password-toggle-btn svg{height:20px;width:20px}.driver-container{background:linear-gradient(135deg,#1a0b2e,#2d1b4e 50%,#1a0b2e);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;overflow:hidden;position:relative}.background-shapes{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.shape{animation:float 6s ease-in-out infinite;background:linear-gradient(45deg,#9333ea1a,#ec48991a);border-radius:50%;position:absolute}.shape-1{animation-delay:0s;height:200px;left:10%;top:10%;width:200px}.shape-2{animation-delay:2s;height:150px;right:15%;top:60%;width:150px}.shape-3{animation-delay:4s;height:100px;right:30%;top:30%;width:100px}.shape-4{animation-delay:1s;bottom:20%;height:120px;left:20%;width:120px}.shape-5{animation-delay:3s;height:80px;left:60%;top:70%;width:80px}.driver-content{display:flex;flex-direction:column;min-height:100vh;padding:20px;position:relative;z-index:2}.driver-header{justify-content:space-between;margin-bottom:30px;padding:20px 0}.driver-header,.header-left{align-items:center;display:flex}.header-left{gap:20px}.logo{align-items:center;display:flex}.logo-rectangles{display:flex;gap:8px}.rect{animation:glow 2s ease-in-out infinite alternate;background:#fff;border-radius:2px;height:30px;width:4px}.rect-1{animation-delay:0s}.rect-2{animation-delay:.5s}@keyframes glow{0%{box-shadow:0 0 5px #ffffff80}to{box-shadow:0 0 20px #fffc}}.driver-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#fff,#e0e0e0);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:2.5rem;font-weight:700;margin:0}.logout-btn{background:#dc2626;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:14px;padding:10px 16px;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease;white-space:nowrap;width:auto}.logout-btn:hover{box-shadow:0 6px 20px #f9731666;transform:translateY(-2px)}.driver-main{grid-gap:30px;display:grid;flex:1 1;gap:30px;grid-template-columns:1fr 1fr}.scanner-section{display:flex;flex-direction:column}.scanner-card{animation:slideIn .8s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#2d1b4e4d;border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 8px 32px #0000004d;padding:30px}.scanner-card h2{color:#fff;font-size:1.8rem;font-weight:600;margin-bottom:25px;text-align:center}.scanner-placeholder{padding:40px 20px;text-align:center}.scanner-icon{font-size:4rem;margin-bottom:20px}.scanner-placeholder p{color:#fffc;font-size:1.1rem;margin-bottom:30px}.start-scan-btn{background:linear-gradient(90deg,#f97316,#ec4899);border:none;border-radius:12px;box-shadow:0 4px 15px #f973164d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:15px 30px;transition:all .3s ease}.start-scan-btn:hover{box-shadow:0 6px 20px #f9731666;transform:translateY(-2px)}.scanner-active{display:flex;flex-direction:column;gap:20px}.scanner-container{background:#0000004d;border:2px solid #fff3;border-radius:15px;min-height:300px;overflow:hidden}.scanner-container video{display:block;height:auto;width:100%!important}.stop-scan-btn{background:#ef4444cc;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.stop-scan-btn:hover{background:#ef4444;transform:translateY(-1px)}.error-message{background:#ef444433;border:1px solid #ef444480;color:#fca5a5;margin-top:15px}.scan-result{background:#ffffff1a;border:1px solid #fff3;border-radius:12px;margin-top:20px;padding:20px}.scan-result h3{color:#fff;font-size:1.2rem;margin-bottom:10px}.scanned-data{background:#0000004d;border:1px solid #10b9814d;border-radius:8px;color:#10b981;font-family:monospace;padding:15px;word-break:break-all}.history-section{display:flex;flex-direction:column}.history-card{animation:slideIn .8s ease-out;animation-delay:.2s;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#2d1b4e4d;border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 8px 32px #0000004d;padding:30px}.history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:25px}.history-header h2{color:#fff;font-size:1.8rem;font-weight:600;margin:0}.clear-history-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .3s ease}.clear-history-btn:hover{background:#fff3}.history-list{max-height:400px;overflow-y:auto}.no-history{color:#fff9;font-style:italic;padding:20px;text-align:center}.history-item{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;margin-bottom:10px;padding:15px;transition:all .3s ease}.history-item:hover{background:#ffffff1a;border-color:#fff3}.history-data{color:#fff;margin-bottom:5px;word-break:break-all}.history-time{color:#fff9;font-size:.9rem}.loading-message{align-items:center;color:#fff;display:flex;flex-direction:column;height:100vh;justify-content:center}.spinner{border:3px solid #ffffff4d;border-top-color:#ec4899;height:40px;margin-bottom:20px;width:40px}@media (max-width:1024px){.driver-main{gap:20px;grid-template-columns:1fr}}@media (max-width:768px){.driver-header{flex-direction:column;gap:20px;text-align:center}.driver-header h1{font-size:2rem}.history-card,.scanner-card{padding:20px}.history-header h2,.scanner-card h2{font-size:1.5rem}.scanner-icon{font-size:3rem}.driver-main{display:flex;flex-direction:column;gap:20px}.history-section{order:1}.scanner-section{order:2}.submit-section{order:3}}.parsed-data-section{background:#ffffff1a;border:1px solid #fff3;border-radius:12px;margin-top:20px;padding:15px}.parsed-data-section h3{color:#fff;font-size:1.1rem;font-weight:600;margin-bottom:15px}.parsed-data{display:flex;flex-direction:column;gap:8px}.data-row{align-items:center;background:#0003;border-radius:8px;color:#fff;display:flex;font-size:.9rem;justify-content:space-between;padding:8px 12px}.data-row strong{color:#4caf50;font-weight:600;min-width:120px}.assigned-vehicle-row{border:2px solid #0000;transition:border-color .3s ease}.assigned-vehicle{border-radius:6px;font-weight:600;padding:4px 8px;transition:all .3s ease}.assigned-vehicle.match{background:#4caf504d;border:1px solid #4caf50;color:#4caf50}.assigned-vehicle.no-match{background:#ff98004d;border:1px solid #ff9800;color:#ff9800}.assigned-vehicle-row:has(.assigned-vehicle.match){border-color:#4caf50}.assigned-vehicle-row:has(.assigned-vehicle.no-match){border-color:#ff9800}@media (max-width:480px){.driver-content{padding:15px}.driver-header h1{font-size:1.8rem}.history-card,.scanner-card{padding:15px}.start-scan-btn,.stop-scan-btn{font-size:.9rem;padding:12px 20px}.data-row{align-items:flex-start;flex-direction:column;gap:4px}.data-row strong{min-width:auto}}.submit-section{margin-top:20px}.submit-card{background:#ffffff1a;border:1px solid #fff3;border-radius:12px;padding:20px;text-align:center}.submit-btn{background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:8px;box-shadow:0 4px 15px #4caf504d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;min-width:200px;padding:15px 40px;transition:all .3s ease}.submit-btn:hover{background:linear-gradient(135deg,#45a049,#4caf50);box-shadow:0 6px 20px #4caf5066;transform:translateY(-2px)}.submit-btn:active{box-shadow:0 2px 10px #4caf504d;transform:translateY(0)}.submit-btn:disabled{background:#80808080;box-shadow:none;cursor:not-allowed;transform:none}.admin-layout{display:flex;min-height:100vh}.admin-content{display:flex;flex:1 1;flex-direction:column}.admin-header{background:#0000!important;height:auto;pointer-events:none;position:fixed;right:16px;top:8px;z-index:100}.admin-header *{pointer-events:auto}.header-content{align-items:center;background:#0000!important;display:flex!important;justify-content:flex-end!important;padding:0}.header-left{display:none}.header-right{align-items:center;background:#0000!important;display:flex!important}.user-profile-dropdown{position:relative}.user-avatar-btn{align-items:center;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:50px;box-shadow:0 2px 4px #0000000d!important;cursor:pointer;display:flex!important;gap:6px;padding:3px 10px 3px 3px!important;transition:all .2s ease}.user-avatar-btn:hover{border-color:#cbd5e1!important;box-shadow:0 4px 6px #0000001a!important}.user-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:12px;font-weight:600;height:28px;justify-content:center;width:28px}.profile-dropdown-menu{animation:dropdownFadeIn .2s ease;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:180px;padding:6px;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{align-items:center;background:#0000;border:none;border-radius:6px;color:#1e293b;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;padding:8px 10px;text-align:left;transition:all .2s ease;width:100%}.dropdown-item:hover{background:#f1f5f9}.dropdown-item.logout{color:#dc2626}.dropdown-item.logout:hover{background:#fee2e2}.dropdown-icon{flex-shrink:0;font-size:16px}.dropdown-divider{background:#e2e8f0}.modal-content .tags{max-height:140px;overflow:auto}.modal-content .tag{max-width:100%}.modal-content .tag .tag-text{display:inline-block;max-width:640px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}@media (max-width:768px){.modal-content .tag .tag-text{max-width:260px}}.modal-content input[type=text]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table.card{background:#fff!important;border-radius:12px!important;box-shadow:0 2px 8px #0000001a!important;overflow:hidden}table-responsive .table-head,thead{background:linear-gradient(40deg,#704493,#512e6e)!important}th,thead{color:#fff!important}.admin-sidebar{background:linear-gradient(40deg,#704493,#512e6e);border-right:1px solid #ffffff1a;box-shadow:0 0 40px #7044934d,0 0 10px #0000001a;color:#fff;display:flex;flex-direction:column;min-width:280px;overflow:visible;overflow-y:auto;padding:0;position:relative;transition:width .4s cubic-bezier(.4,0,.2,1),min-width .4s cubic-bezier(.4,0,.2,1);width:280px}.admin-sidebar.collapsed{min-width:80px;width:80px}.admin-sidebar.collapsed .logo-wrapper{align-items:center;justify-content:center;padding-right:0}.admin-sidebar.collapsed .sidebar-header{align-items:center;display:flex;flex-direction:column;min-height:auto;overflow:visible;padding:18px 8px 8px;position:relative;z-index:1}.admin-sidebar.collapsed .logout-icon,.admin-sidebar.collapsed .menu-icon{margin:0 auto}.admin-sidebar:before{display:none}.sidebar-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000;border-bottom:1px solid #ffffff26;padding:18px 16px;position:relative}.logo-wrapper{align-items:center;display:flex;gap:10px;padding-right:40px}.logo-icon{animation:pulse 3s ease-in-out infinite;filter:drop-shadow(0 6px 12px rgba(147,51,234,.5));font-size:1.75rem;transition:transform .3s ease}.logo-icon:hover{transform:rotate(10deg) scale(1.1)}.logo-full-img{filter:brightness(0) invert(1);height:auto;max-width:160px;transition:transform .3s ease,opacity .3s ease}.logo-full-img:hover{transform:scale(1.02)}.logo-icon-container{align-items:center;border-radius:6px;display:flex;height:34px;justify-content:flex-start;overflow:hidden;transition:transform .3s ease;width:34px}.logo-icon-container:hover{transform:scale(1.1)}.logo-icon-cropped{filter:brightness(0) invert(1);height:auto;margin-left:0;width:140px}.logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#e0e7ff 50%,#ddd6fe);-webkit-background-clip:text;background-clip:text;font-size:1.15rem;font-weight:800;letter-spacing:-.5px;text-shadow:0 2px 10px #fff3}nav{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:12px 10px;scrollbar-color:#ffffff4d #0000;scrollbar-width:thin}nav::-webkit-scrollbar{width:8px}nav::-webkit-scrollbar-track{background:#0000001a;border-radius:4px;margin:4px 0}nav::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#ffffff4d,#fff3);border-radius:4px;-webkit-transition:background .3s ease;transition:background .3s ease}nav::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#fff6,#ffffff4d)}.menu{display:flex;flex-direction:column;gap:4px;list-style:none;margin:0;padding:0}.menu a,.menu>li{position:relative}.menu a{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:10px;color:#ffffffe6;display:flex;font-size:1.025rem;font-weight:500;gap:10px;overflow:hidden;padding:9px 12px;text-decoration:none;transition:all .35s cubic-bezier(.4,0,.2,1)}.admin-sidebar.collapsed .menu a,.admin-sidebar.collapsed .menu-toggle{justify-content:center;padding:12px 8px}.menu a:before{background:linear-gradient(180deg,#00b39e,#37e2ce);border-radius:0 4px 4px 0;height:100%;transform:scaleY(0);transition:transform .3s ease;width:4px}.menu a:after,.menu a:before{content:"";left:0;position:absolute;top:0}.menu a:after{background:linear-gradient(135deg,#ffffff0d,#ffffff03);border-radius:12px;bottom:0;opacity:0;right:0;transition:opacity .3s ease}.menu a.active{background:linear-gradient(135deg,#00b39e4d,#37e2ce4d);box-shadow:0 4px 20px #00b39e66,inset 0 0 0 1.5px #fff3;color:#fff;font-weight:600}.menu a.active:before{transform:scaleY(0)}.menu a.active:after{opacity:1}.menu-icon{align-items:center;display:flex;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));flex-shrink:0;font-size:1.15rem;justify-content:center;transition:transform .3s ease;width:24px;z-index:1}.menu-icon svg{height:1.15rem;width:1.15rem}.menu-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;z-index:1}.menu-group{margin-top:2px}.menu-toggle{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0000;border:none;border-radius:10px;color:#ffffffe6;cursor:pointer;display:flex;font-size:1.025rem;font-weight:500;gap:10px;justify-content:flex-start;overflow:hidden;padding:9px 12px;position:relative;text-align:left;transition:all .35s cubic-bezier(.4,0,.2,1);width:100%}.menu-toggle:before{background:linear-gradient(180deg,#60a5fa,#a78bfa);border-radius:0 4px 4px 0;height:100%;transform:scaleY(0);transition:transform .3s ease;width:4px}.menu-toggle:after,.menu-toggle:before{content:"";left:0;position:absolute;top:0}.menu-toggle:after{background:linear-gradient(135deg,#ffffff0d,#ffffff03);border-radius:12px;bottom:0;opacity:0;right:0;transition:opacity .3s ease}.menu-toggle[aria-expanded=true]{background:#ffffff1f;box-shadow:0 4px 16px #0003;color:#fff}.menu-toggle[aria-expanded=true]:before{transform:scaleY(1)}.chevron{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));font-size:1rem;margin-left:auto;transition:transform .4s cubic-bezier(.4,0,.2,1);z-index:1}.chevron.open{transform:rotate(180deg) scale(1.05)}.submenu{animation:slideDown .4s cubic-bezier(.4,0,.2,1);border-left:2px solid #ffffff1a;list-style:none;margin:4px 0 0 10px;padding:6px 0 6px 12px}.admin-sidebar.collapsed .submenu{display:none!important}.submenu a{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:8px;color:#fffc;display:flex;font-size:.975rem;font-weight:500;gap:10px;margin-bottom:3px;padding:8px 10px;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.submenu a.active{background:linear-gradient(135deg,#60a5fa40,#a78bfa40);box-shadow:0 3px 12px #60a5fa4d;color:#fff;font-weight:600;padding-left:10px}.submenu-icon{align-items:center;display:flex;flex-shrink:0;font-size:.95rem;justify-content:center;width:20px}.submenu-label{flex:1 1}.sidebar-toggle-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:50%;box-shadow:0 2px 10px #00000026;color:#704493;cursor:pointer;display:flex;font-size:1rem;height:28px;justify-content:center;left:268px;position:fixed;top:22px;transition:left .4s cubic-bezier(.4,0,.2,1),transform .2s ease,box-shadow .2s ease;width:28px;z-index:1100}.sidebar-toggle-btn.collapsed-toggle{left:68px}.sidebar-toggle-btn:hover{background:#f8fafc;box-shadow:0 3px 10px #0003;transform:scale(1.1)}.sidebar-toggle-btn:active{transform:scale(.95)}.toggle-icon{display:block;line-height:1}.mobile-menu-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(40deg,#704493,#512e6e);border:2px solid #fff3;border-radius:14px;box-shadow:0 6px 24px #70449380,0 0 0 4px #7044931a;color:#fff;cursor:pointer;display:none;font-size:1.6rem;height:52px;justify-content:center;left:20px;position:fixed;top:20px;transition:all .4s cubic-bezier(.4,0,.2,1);width:52px;z-index:1001}.mobile-menu-btn:hover{border-color:#ffffff4d;box-shadow:0 8px 28px #70449399,0 0 0 6px #70449326;transform:scale(1.08) rotate(5deg)}.mobile-menu-btn:active{transform:scale(.92)}.hamburger-icon{display:block;line-height:1}.mobile-overlay{animation:fadeIn .4s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:999}.desktop-only{display:flex}@media (max-width:1024px){.admin-sidebar{width:260px}.admin-sidebar.collapsed{width:75px}.logo-text{font-size:1.125rem}.menu a,.menu-toggle{font-size:1rem;padding:10px 12px}}@media (max-width:768px){.admin-sidebar{box-shadow:0 0 60px #70449366;height:100vh;left:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .4s cubic-bezier(.4,0,.2,1);width:300px;z-index:1000}.admin-sidebar.mobile-open{animation:slideInFromLeft .4s cubic-bezier(.4,0,.2,1);transform:translateX(0)}@keyframes slideInFromLeft{0%{opacity:.8;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}.admin-sidebar.collapsed{width:300px}.mobile-menu-btn{display:flex}.mobile-overlay{display:block}.desktop-only{display:none!important}.admin-main{padding:90px 16px 20px}.menu a,.menu-toggle{font-size:1rem;padding:14px 18px}.menu-icon{font-size:1.4rem}.submenu a{font-size:1.075rem;padding:12px 16px}}.admin-main{background:#f8fafc;flex:1 1;padding:52px 24px 24px}.loading-spinner{color:#6e076c}.admin-view h1{margin:0 0 8px}.admin-page-header{margin-bottom:16px}.breadcrumbs{align-items:center;color:#64748b;display:flex;font-size:12px;gap:6px}.breadcrumb-item{align-items:center;display:inline-flex;gap:6px}.breadcrumb-sep{opacity:.6}.page-title{font-size:18px;margin:8px 0 0}.filters-bar{align-items:center;display:flex;gap:12px;margin-bottom:16px}.filters-bar .input{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px 10px}.filters-bar .search{align-items:center;display:flex;gap:8px;width:280px}.filters-bar .search input{border:none;outline:none;width:100%}.filters-bar .select{min-width:140px}.filters-bar-compact{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px;padding:8px 0}.filters-left{flex:1 1}.filters-left,.filters-right{align-items:center;display:flex;gap:12px}.filters-right{padding-right:48px}.page-size-selector{align-items:center;display:flex;gap:8px}.page-size-selector label{color:#555;font-size:14px;white-space:nowrap}.page-size-selector select{border-radius:6px;min-width:70px;padding:6px 8px}.action-buttons-group{align-items:center;display:flex;gap:8px}.btn{background:#e2e8f0;padding:8px 12px}.btn.primary{background:#0b7a5f;color:#fff}.btn.btn-secondary{background:#e2e8f0;color:#475569}.btn.btn-secondary:hover{background:#cbd5e1}.btn.btn-icon-only{align-items:center;background:#0b7a5f;border-radius:8px;color:#fff;display:flex;font-size:18px;height:36px;justify-content:center;padding:0;transition:all .2s ease;width:36px}.btn.btn-icon-only:hover{background:#095d49;box-shadow:0 4px 8px #0b7a5f4d;transform:translateY(-2px)}.btn.btn-icon-only:active{transform:translateY(0)}.card{background:#fff;border:1px solid #e2e8f0;border-radius:12px}.table{overflow:hidden}.table-head,.table-row{grid-gap:16px;align-items:center;display:grid;gap:16px;grid-template-columns:2.2fr 2fr 1fr 1fr 1fr 1fr 1.5fr;min-height:60px;padding:14px 16px}.users-view .table-head,.users-view .table-row{grid-template-columns:2.2fr 2fr 1fr 1fr 1fr 1fr 1.5fr 60px}.vehicles-view .table-head,.vehicles-view .table-row{gap:16px;grid-template-columns:1.2fr 1fr 1.2fr 1fr 1fr 1fr 1.2fr .8fr}.routes-view .table-head,.routes-view .table-row{gap:16px;grid-template-columns:1.2fr 2.3fr .8fr .7fr}.gatemen-view .table-head,.gatemen-view .table-row{gap:16px;grid-template-columns:1.2fr 1.1fr 1.6fr .8fr .7fr}.table-head{background:#f1f5f9;color:#475569;font-size:12px;font-weight:600}.table-row{border-top:1px solid #f1f5f9}.cell.user{gap:12px}.cell,.cell.user{align-items:center;display:flex}.cell{overflow:hidden;text-overflow:ellipsis}.avatar{align-items:center;background:#0b7a5f;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:36px;justify-content:center;width:36px}.info{display:flex;flex-direction:column;gap:4px;min-width:0}.info .name{color:#1e293b;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info .meta{color:#64748b;font-size:12px}.avatar-skel{background:#e2e8f0;border-radius:50%;height:36px;width:36px}.lines{display:flex;flex-direction:column;gap:6px}.line{background:#e2e8f0;border-radius:6px;height:10px}.line.w-90{width:90%}.line.w-80{width:80%}.line.w-50{width:50%}.line.w-40{width:40%}.line.w-30{width:30%}.line.w-20{width:20%}.tag-skel{background:#f1f5f9;border-radius:6px;display:inline-block;height:18px;margin-right:6px;width:28px}.pages{align-items:center;display:inline-flex;gap:6px}.page{background:#e2e8f0;border:none;border-radius:8px;cursor:pointer;height:34px;width:34px}.page.active{background:#31a66b;color:#fff}.dots{color:#94a3b8;padding:0 6px}.modal-content{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:1400px!important;overflow:hidden;padding:0;width:98%!important}.modal-header{background:linear-gradient(135deg,#0b7a5f,#0d9488);border-bottom:none;flex-shrink:0;padding:12px 16px!important}.modal-header h3{font-size:18px;font-weight:600;gap:8px}.modal-header h3,.modal-header h3 svg{color:#fff!important}.modal-close{border-radius:4px;padding:4px;transition:all .2s}.modal-close:hover{color:#fff}.user-form{display:flex;flex-direction:column;gap:12px!important;max-height:calc(90vh - 60px);overflow-y:auto;padding:12px 16px 16px!important}.form-row{grid-template-columns:1fr 1fr 1fr}.form-group{gap:6px}.form-group label{font-weight:500}.user-form,.user-form input,.user-form label,.user-form select{color:#0f172a!important}.user-form input,.user-form select{background-color:#fff!important}.user-form input::placeholder,.user-form select option{color:#475569!important}.form-group input,.form-group select{border:1px solid #d1d5db;padding:8px 10px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:#0b7a5f;box-shadow:0 0 0 3px #0b7a5f1a}.form-actions{gap:10px;margin-top:8px;padding-top:12px}.admin-btn{border-radius:8px;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s}.admin-btn-primary{background:#0b7a5f}.admin-btn-primary:hover{background:#065f47}.admin-btn-secondary{background:#6b7280;color:#fff}.admin-btn-secondary:hover{background:#4b5563}.add-user-btn{align-items:center;background:#0b7a5f;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-weight:500;gap:8px;padding:10px 16px;transition:background-color .2s}.add-user-btn:hover{background:#065f47}.btn-icon{font-weight:700}.header-action{margin-top:16px}.admin-page-header .header-action .add-user-btn{justify-content:center;min-width:140px}@media (max-width:768px){.form-row{grid-template-columns:1fr}.modal-content{padding:16px;width:95%}.form-actions{flex-direction:column}}.status-switch{align-items:center;background:#e9e6f1;border:2px solid #0f172a;border-radius:999px;cursor:pointer;display:inline-flex;height:32px;padding:0 2px;position:relative;transition:background-color .2s ease,border-color .2s ease;width:56px}.status-switch .knob{background:#2b2a3a;border-radius:50%;box-shadow:inset -4px -4px 0 #0003;height:26px;left:2px;position:absolute;transition:transform .2s ease;width:26px}.status-switch.on{background:#10b98133;border-color:#059669}.status-switch.on .knob{background:#059669;box-shadow:none;transform:translateX(24px)}.status-switch.off{background:#fecaca;border-color:#b91c1c}.status-switch.off .knob{background:#7f1d1d;transform:translateX(0)}.status-switch.disabled{cursor:not-allowed;opacity:.6}.deactivate-form{padding:20px}.warning-message{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404;margin-bottom:20px;padding:12px}.warning-message strong{font-weight:600}.deactivate-reason-textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:inherit;font-size:14px;min-height:80px;padding:10px;resize:vertical;width:100%}.deactivate-reason-textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.admin-btn-danger{background-color:#dc3545;border-color:#dc3545}.admin-btn-danger:hover{background-color:#c82333;border-color:#bd2130}.admin-btn-danger:focus{box-shadow:0 0 0 .2rem #dc354580}.action-btn{align-items:center;background:none;border:none;border-radius:4px;cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .2s ease}.action-btn:hover{background-color:#f1f5f9;transform:translateY(-1px)}.action-btn:active{transform:translateY(0)}.view-btn{color:#3b82f6}.view-btn:hover{background-color:#dbeafe;color:#1d4ed8}.edit-btn{color:#10b981}.edit-btn:hover{background-color:#d1fae5;color:#047857}.action-btn svg{height:16px;width:16px}.user-details-view{margin:0 auto;max-width:1200px}.user-details-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-top:24px}.user-info-card{padding:24px}.user-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:20px;margin-bottom:24px;padding-bottom:20px}.user-avatar .avatar.large{font-size:32px;font-weight:600;height:80px;width:80px}.user-basic-info{flex:1 1}.user-name{font-size:12px;margin:0 0 8px}.user-role{color:#64748b;font-size:16px;margin:0 0 12px}.user-status{align-items:center;display:flex}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#fecaca;color:#991b1b}.user-details-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.detail-item{flex-direction:column;gap:4px}.detail-item label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-item span{color:#1e293b;font-size:14px;font-weight:500}.qr-code-card{height:-webkit-fit-content;height:fit-content;padding:24px}.qr-header{border-bottom:1px solid #e2e8f0;margin-bottom:24px;padding-bottom:16px}.qr-header h3{color:#1e293b;font-size:20px;font-weight:600;margin:0 0 8px}.qr-header p{color:#64748b;font-size:14px;margin:0}.qr-content{align-items:center;display:flex;flex-direction:column;text-align:center}.qr-placeholder{flex-direction:column;gap:16px;padding:40px 20px}.qr-icon{color:#94a3b8}.qr-placeholder p{color:#64748b;font-size:14px;margin:0;max-width:280px}.qr-loading{align-items:center;display:flex;flex-direction:column;gap:16px;padding:40px 20px}.qr-skeleton{background:#f1f5f9;border-radius:12px;height:200px;overflow:hidden;position:relative;width:200px}.skeleton-qr{animation:skeleton-loading 1.5s infinite;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%);bottom:0;left:0;position:absolute;right:0;top:0}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.qr-loading p{color:#64748b;font-size:14px;margin:0}.qr-display{align-items:center;display:flex;flex-direction:column;gap:20px}.qr-image-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;padding:20px}.qr-image{display:block;height:200px;width:200px}.qr-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.qr-meta{margin-top:8px}.qr-meta small{color:#94a3b8;font-size:12px}.user-details-loading{margin-top:24px}.loading-skeleton{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px}.skeleton-header{animation:skeleton-loading 1.5s infinite;background:#f1f5f9;border-radius:8px;height:80px;margin-bottom:24px}.skeleton-content{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.skeleton-row{animation:skeleton-loading 1.5s infinite;background:#f1f5f9;border-radius:6px;height:40px}.skeleton-row:nth-child(2){animation-delay:.1s}.skeleton-row:nth-child(3){animation-delay:.2s}.skeleton-row:nth-child(4){animation-delay:.3s}.error-state{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:16px;margin-top:24px;padding:40px;text-align:center}.error-state .error-message{color:#dc2626;font-size:16px;font-weight:500}@media (max-width:768px){.user-details-container{gap:16px;grid-template-columns:1fr}.user-header{flex-direction:column;gap:16px;text-align:center}.user-details-grid{grid-template-columns:1fr}.qr-actions{flex-direction:column;width:100%}.qr-actions .admin-btn{width:100%}}.bulk-service-section{margin-bottom:2rem}.bulk-service-filters{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem;padding:1.5rem}.filters-header h3{color:#2c3e50;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.filters-header p{color:#6c757d;font-size:.9rem;margin:0 0 1.5rem}.bulk-service-hero{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.hero-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:1.5rem}.hero-header h3{color:#2c3e50;font-size:1.25rem;font-weight:600;margin:0}.user-count{background:#007bff;border-radius:20px;font-size:.85rem;padding:.25rem .75rem}.users-grid{grid-gap:1.5rem;gap:1.5rem;max-height:70vh;overflow-y:auto;padding:1.5rem}.user-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;gap:1rem;padding:1.25rem;transition:all .2s ease}.user-card:hover{border-color:#007bff;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.user-info{flex:1 1}.user-details{display:flex;flex-direction:column;gap:.75rem}.detail-item{border-bottom:1px solid #f8f9fa;justify-content:space-between;padding:.5rem 0}.detail-item:last-child{border-bottom:none}.detail-item .label{color:#495057;font-size:.9rem;font-weight:600}.detail-item .value{background:#f8f9fa;border-radius:4px;color:#2c3e50;font-size:.85rem;font-weight:500;padding:.25rem .5rem}.qr-section{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;justify-content:center;padding:1rem}.qr-code{text-align:center}.qr-placeholder{align-items:center;background:#fff;border:2px solid #dee2e6;border-radius:8px;display:flex;height:80px;justify-content:center;margin:0 auto .5rem;width:80px}.qr-grid{grid-gap:1px;display:grid;gap:1px;grid-template-columns:repeat(8,1fr);height:60px;width:60px}.qr-dot{background:#0000;border-radius:1px;height:6px;width:6px}.qr-dot.filled{background:#2c3e50}.qr-label{color:#6c757d;font-size:.75rem;font-weight:500}.user-card.skeleton{animation:pulse 1.5s ease-in-out infinite}.skeleton-content{display:flex;flex-direction:column;gap:1rem}.skeleton-line{border-radius:4px;height:12px}.skeleton-line,.skeleton-qr{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%}.skeleton-qr{border-radius:8px;height:80px;margin:0 auto;width:80px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{color:#6c757d;padding:3rem 1.5rem}.empty-state p{font-size:1.1rem}.error-message{background:#f8d7da;border:1px solid #f5c6cb;color:#dc3545;margin:1.5rem;padding:2rem;text-align:center}@media (max-width:768px){.users-grid{gap:1rem;grid-template-columns:1fr;padding:1rem}.hero-header{align-items:flex-start;flex-direction:column;gap:1rem}.user-card{padding:1rem}.detail-item{align-items:flex-start;flex-direction:column;gap:.25rem}}.modal-overlay{background-color:#00000080}.modal-content{box-shadow:0 4px 20px #00000026;max-height:80vh;max-width:720px}.success-modal .modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem 1.5rem 0}.success-modal .modal-header h3{color:#059669;font-size:1.25rem;font-weight:600;margin:0}.modal-close-btn{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;font-size:1.5rem;height:24px;justify-content:center;padding:0;transition:background-color .2s;width:24px}.modal-close-btn:hover{background-color:#f3f4f6}.success-modal .modal-body{padding:1.5rem;text-align:center}.success-icon{align-items:center;background-color:#d1fae5;border-radius:50%;color:#059669;display:flex;font-size:2rem;font-weight:700;height:60px;justify-content:center;margin:0 auto 1rem;width:60px}.success-modal .modal-body p{color:#374151;font-size:1rem;line-height:1.5;margin:0}.success-modal .modal-footer{display:flex;justify-content:center;padding:0 1.5rem 1.5rem}.success-modal .modal-footer .btn{min-width:100px}.pdf-download-controls{align-items:center;display:flex;height:100%;margin-left:12px}.pdf-download-controls .btn{align-items:center;display:flex;font-size:12px;gap:4px;padding:6px 10px;white-space:nowrap}.pdf-download-controls .btn:disabled{cursor:not-allowed;opacity:.5}.selection-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px;height:100%}.user-list-hero{width:100%}.hero-header{flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px;min-height:50px}.hero-header,.user-count{align-items:center;display:flex}.user-count{color:#666;font-size:14px;font-weight:500;height:100%}.users-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}.dashboard-header{border-bottom:2px solid #e2e8f0;margin-bottom:32px;padding-bottom:20px}.dashboard-header h1{color:#1e293b;font-weight:700;margin:0 0 8px}.dashboard-subtitle{color:#64748b;font-size:16px;font-weight:400;margin:0}.charts-container{grid-gap:32px;display:grid;gap:32px;grid-template-columns:1fr;margin-top:24px}.chart-section{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:24px;transition:all .3s ease}.chart-section:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.chart-section h2{align-items:center;color:#1e293b;display:flex;font-size:20px;font-weight:600;gap:12px;margin:0 0 8px}.chart-section h2:before{background:linear-gradient(135deg,#0b7a5f,#10b981);border-radius:2px;content:"";height:24px;width:4px}.chart-description{color:#64748b;font-size:14px;line-height:1.5;margin:0 0 20px}.chart-container{height:400px;overflow:hidden;position:relative;touch-action:pan-x pan-y;width:100%}.chart-wrapper{cursor:pointer;height:100%;position:relative;width:100%}@media (hover:none) and (pointer:coarse){.chart-wrapper{cursor:default}.summary-card:hover{box-shadow:0 2px 4px #0000000d;transform:none}.chart-section:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:none}}.route-utilization-container{display:flex;flex-direction:column;gap:24px}.utilization-summary-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.summary-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;display:flex;gap:16px;padding:20px;transition:all .3s ease}.summary-card.under-utilized{border-left:4px solid #ffc107}.summary-card.over-utilized{border-left:4px solid #dc3545}.summary-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.card-icon{align-items:center;background:#f8fafc;border-radius:50%;display:flex;font-size:32px;height:48px;justify-content:center;width:48px}.summary-card.total .card-icon{background:#dbeafe}.summary-card.under-utilized .card-icon{background:#fff3cd;color:#856404}.summary-card.over-utilized .card-icon{background:#f8d7da;color:#721c24}.card-content{flex:1 1}.card-number{color:#1e293b;font-size:24px;font-weight:700;margin-bottom:4px}.card-label{color:#64748b;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}@media (max-width:1200px){.charts-container{gap:24px;grid-template-columns:1fr}.chart-section{padding:20px}.chart-container{height:350px}.utilization-summary-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:992px){.charts-container{gap:20px}.chart-section{padding:18px}.chart-container{height:320px}.utilization-summary-cards{gap:14px;grid-template-columns:repeat(2,1fr)}.summary-card{padding:16px}}@media (max-width:768px){.dashboard-header{margin-bottom:24px;padding-bottom:16px}.dashboard-header h1{font-size:22px;line-height:1.2}.dashboard-subtitle{font-size:14px;margin-top:4px}.charts-container{gap:16px}.chart-section{border-radius:12px;padding:16px}.chart-section h2{font-size:18px;margin-bottom:6px}.chart-section h2:before{height:20px;width:3px}.chart-container{height:280px}.chart-description{font-size:13px;margin-bottom:16px}.utilization-summary-cards{gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:16px}.summary-card{flex-direction:column;gap:10px;padding:14px;text-align:center}.card-icon{font-size:20px;height:36px;width:36px}.card-number{font-size:18px}.card-label{font-size:10px}}@media (max-width:480px){.dashboard-header h1{font-size:20px}.dashboard-subtitle{font-size:13px}.charts-container{gap:12px}.chart-section{border-radius:8px;padding:12px}.chart-section h2{font-size:16px}.chart-container{height:240px}.chart-description{font-size:12px;margin-bottom:12px}.utilization-summary-cards{gap:8px;grid-template-columns:1fr;margin-bottom:12px}.summary-card{flex-direction:row;gap:12px;padding:12px;text-align:left}.card-icon{font-size:18px;height:32px;width:32px}.card-number{font-size:16px}.card-label{font-size:9px}}@media (max-width:360px){.dashboard-header h1{font-size:18px}.chart-container{height:220px}.summary-card{padding:10px}.card-icon{font-size:16px;height:28px;width:28px}.card-number{font-size:14px}.card-label{font-size:8px}}.gatemen-view .text-right{text-align:right}.gatemen-view .actions-cell{display:flex;gap:8px;justify-content:flex-end}.gatemen-view .no-results-cell{grid-column:1/-1;padding:16px;text-align:center}.gatemen-view .inline-error{background-color:#ffebee;border-radius:4px;color:red;margin-bottom:15px;padding:10px}.gatemen-view .inline-success{background-color:#e8f5e8;border-radius:4px;color:green;margin-bottom:15px;padding:10px}.routes-view .text-right{text-align:right}.routes-view .loading-placeholder{opacity:.4}.routes-view .table-error{color:red;text-align:center}.routes-view .no-results-cell,.routes-view .table-error{grid-column:1/-1;padding:16px}.routes-view .actions-cell{display:flex;gap:8px;justify-content:flex-end}.routes-modal{max-width:98%;width:960px}.routes-view .inline-input-group{align-items:center;display:flex;gap:8px}.routes-view .tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.routes-view .tag{align-items:center;background:#e6fffa;border:1px solid #99f6e4;border-radius:9999px;color:#0f766e;display:inline-flex;gap:6px;padding:6px 10px}.routes-view .tag-index{background:#14b8a6;border-radius:9999px;color:#fff;font-size:12px;padding:0 6px}.routes-view .tag-remove{background:#0000;border:none;color:#0f766e;cursor:pointer}.routes-view .full-span-center{grid-column:1/-1;padding:16px;text-align:center}.routes-view .form-error{margin-top:8px}.vehicle-checkbox-container{background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;max-height:200px;overflow-y:auto;padding:12px}.vehicle-checkbox-item{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;gap:8px;padding:6px 0}.vehicle-checkbox-item:last-child{border-bottom:none}.vehicle-checkbox-item input[type=checkbox]{accent-color:#6e076c;cursor:pointer;height:16px;width:16px}.vehicle-checkbox-label{color:#374151;cursor:pointer;flex:1 1;font-size:14px;margin:0}.vehicle-checkbox-label:hover{color:#6e076c}.no-vehicles-message{color:#6b7280;font-style:italic;padding:16px;text-align:center}.selected-vehicles-summary{background:#e6fffa;border:1px solid #99f6e4;border-radius:4px;color:#0f766e;font-size:14px;margin-top:8px;padding:8px 12px}.cell[style*="text-align: right"],.cell[style*="textAlign: 'right'"]{align-items:center;display:flex;gap:8px;justify-content:flex-end;min-width:120px}.cell button[title]{align-items:center;border-radius:4px;display:inline-flex;flex-shrink:0;height:32px;justify-content:center;min-width:32px;padding:4px 6px;transition:all .2s ease}.cell button[title]:hover{position:relative;transform:scale(1.05);z-index:10}.table-responsive{width:100%}.admin-table{background:#fff;border:1px solid #e2e8f0;border-collapse:initial;border-radius:12px;border-spacing:0;width:100%}.admin-table thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#475569;font-size:12px;font-weight:700;letter-spacing:.4px;padding:12px 14px;text-transform:uppercase;white-space:nowrap}.admin-table tbody td{border-bottom:1px solid #f1f5f9;color:#1e293b;font-size:14px;padding:12px 14px;vertical-align:middle}.admin-table tbody tr:nth-child(odd) td{background:#fcfdff}.admin-table tbody tr:hover td{background:#f8fafc}.admin-table td:first-child,.admin-table th:first-child{border-top-left-radius:12px}.admin-table td:last-child,.admin-table th:last-child{border-top-right-radius:12px}.text-center{text-align:center}.text-right{text-align:right}.nowrap{white-space:nowrap}.muted{color:#64748b}.truncate{display:inline-block;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-logs-card .qr-header{margin-bottom:12px}.select-vehicle-btn{background:#6e076c!important;border:none!important;color:#e2e8f0!important;margin-left:10px;transition:background-color .2s ease}.select-vehicle-btn:hover:not(:disabled){background:#5a065a!important}.select-vehicle-btn:disabled{background:#9ca3af!important;color:#6b7280!important;cursor:not-allowed}.save-route-btn{background:linear-gradient(135deg,#0d9488,#0b7a5f)!important;border:none!important;box-shadow:0 4px 12px #0d94884d;color:#fff!important;transition:all .3s ease}.save-route-btn:hover:not(:disabled){background:linear-gradient(135deg,#0b7a5f,#0a6854)!important;box-shadow:0 6px 16px #0d948866;transform:translateY(-1px)}.save-route-btn:disabled{background:#9ca3af!important;box-shadow:none;color:#6b7280!important;cursor:not-allowed;transform:none}.call-logs-card .admin-table{margin-top:8px}.booking-id-badge{background:#e2e8f0;border-radius:4px;color:#475569;flex-shrink:0;font-family:monospace;font-size:.6rem;font-weight:600;padding:.125rem .375rem}.status-toggle-inline{align-items:center;display:flex;gap:.5rem}.status-label{color:#64748b;font-size:.75rem;font-weight:600}.room-type-label{color:#64748b;font-size:.75rem;font-weight:500}.btn-action-compact{font-size:1rem;justify-content:center;padding:.5rem}.btn-action-compact:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.btn-action-compact.btn-view:hover{background:#dbeafe;border-color:#93c5fd;color:#1e40af}.btn-action-compact.btn-edit:hover{background:#fef3c7;border-color:#fcd34d;color:#92400e}.btn-action-compact.btn-delete:hover{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.modal-overlay{animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172ab3;inset:0;padding:1rem}.modal-content{animation:slideIn .3s ease-out;border:1px solid #e2e8f0;max-height:92vh;max-width:1100px;width:90vw}@media (min-width:1920px){.modal-content{max-width:1400px;width:70vw}}@media (min-width:2560px){.modal-content{max-width:1800px;width:65vw}}.modal-header{background:linear-gradient(135deg,#00b39e,#00a08e)!important;border-bottom:none!important;margin-bottom:0!important;padding:.875rem 1.5rem;position:relative}.modal-header h3{align-items:center;color:#fff;display:flex;font-size:.9375rem;font-weight:700;gap:.5rem;letter-spacing:.02em;text-shadow:0 1px 2px #0000001a}.modal-header h3 svg{flex-shrink:0;font-size:1.125rem}.modal-close{background:#ffffff1a;border:1px solid #fff3;border-radius:6px;font-size:1.125rem;height:26px;position:relative;width:26px;z-index:1}.modal-close:hover{border-color:#ffffff4d;transform:rotate(90deg) scale(1.1)}.modal-close:active{transform:rotate(90deg) scale(.95)}.deactivate-form,.user-form{padding:1.5rem 2rem 1.75rem}.user-form-modern{padding:0}.form-section{background:linear-gradient(180deg,#fff 0,#fafbfc);border-bottom:1px solid #f1f5f9;padding:.5rem 1rem}.form-section:first-of-type{padding-top:.75rem}.form-section:last-of-type{border-bottom:none;padding-bottom:.75rem}.form-section:hover{background:linear-gradient(180deg,#fafbfc 0,#f8f9fb)}.form-section-title{align-items:center;border-bottom:2px solid #e0f2f1;color:#00b39e;display:flex;font-size:.6875rem;font-weight:700;gap:.375rem;letter-spacing:.08em;margin-bottom:.4rem;padding-bottom:.25rem;text-transform:uppercase}.form-section-title:before{background:linear-gradient(180deg,#00b39e,#00a08e);border-radius:2px;content:"";height:14px;width:3px}.form-group{margin-bottom:0}.form-group label{color:#475569;font-size:.6875rem;font-weight:700;letter-spacing:.05em;margin-bottom:.3rem}.form-group label span{color:#ef4444;margin-left:.125rem}.filter-select-compact,.form-group input,.form-group select,.form-group textarea{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:6px;color:#1e293b;font-family:inherit;font-size:.8125rem;font-weight:500;padding:.5rem .625rem;transition:all .2s ease;width:100%}.filter-select-compact:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#fff;border-color:#00b39e;box-shadow:0 0 0 3px #00b39e1a;outline:none;transform:translateY(-1px)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed;opacity:.6}.form-group input::placeholder,.form-group textarea::placeholder{color:#94a3b8}.deactivate-reason-textarea,.form-group textarea{font-family:inherit;min-height:100px;resize:vertical}.form-row{grid-gap:.625rem .875rem;gap:.625rem .875rem;margin-bottom:0}.form-row-3{grid-gap:.625rem .875rem;display:grid!important;gap:.625rem .875rem;grid-template-columns:1fr 1fr 1fr!important}.form-row:last-of-type,.user-form .form-group:last-of-type{margin-bottom:0}.form-section .form-row:not(:last-child){margin-bottom:.625rem}@media (max-width:1024px){.form-row-3{grid-template-columns:1fr 1fr}}@media (max-width:640px){.form-row,.form-row-3{gap:.875rem;grid-template-columns:1fr}.form-section{padding:1rem 1.5rem}}.warning-message{align-items:flex-start;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1.5px solid #fbbf24;border-radius:8px;color:#92400e;display:flex;font-size:.875rem;gap:.625rem;margin-bottom:1.25rem;padding:1rem}.warning-message strong{color:#78350f}.helper-text{color:#64748b;font-size:.813rem;line-height:1.5;margin-top:.375rem}.error-message,.inline-error{background:linear-gradient(135deg,#fee2e2,#fecaca);border:1.5px solid #f87171;border-radius:6px;color:#991b1b}.error-message,.inline-error,.inline-success,.success-message{align-items:center;display:flex;font-size:.8125rem;font-weight:500;gap:.5rem;margin-bottom:.5rem;margin-top:.5rem;padding:.625rem .875rem}.inline-success,.success-message{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:1.5px solid #34d399;border-radius:6px;color:#065f46}.form-actions{background:#fafbfc;border-top:1px solid #e2e8f0;gap:.625rem;justify-content:flex-end;margin-top:0;padding:.875rem 1.5rem}.admin-btn{align-items:center;border-radius:6px;display:inline-flex;font-size:.8125rem;font-weight:600;gap:.5rem;justify-content:center;min-width:85px;overflow:hidden;padding:.5rem 1.25rem;position:relative;transition:all .2s ease;white-space:nowrap}.admin-btn:disabled{opacity:.5;transform:none!important}.admin-btn-primary{background:linear-gradient(135deg,#00b39e,#00a08e);box-shadow:0 4px 12px #00b39e4d}.admin-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#00a08e,#008f7e);box-shadow:0 6px 20px #00b39e66}.admin-btn-primary:active:not(:disabled){transform:translateY(0)}.admin-btn-secondary{background:#f1f5f9;border:1.5px solid #e2e8f0;color:#475569}.admin-btn-secondary:hover:not(:disabled){background:#e2e8f0;border-color:#cbd5e1;transform:translateY(-1px)}.admin-btn-secondary:active:not(:disabled){transform:translateY(0)}.admin-btn-danger:hover:not(:disabled){box-shadow:0 6px 20px #ef444466}.admin-btn-danger:active:not(:disabled){transform:translateY(0)}.admin-btn:disabled:after{animation:shimmer 1.5s linear infinite;background:linear-gradient(90deg,#0000,#fff3 50%,#0000);content:"";inset:0;position:absolute}@media (max-width:768px){.modal-content{border-radius:12px;max-height:95vh;max-width:95%}.modal-header{border-radius:12px 12px 0 0;padding:1rem 1.25rem}.modal-header h3{font-size:1.125rem}.deactivate-form,.user-form{padding:1.25rem}.form-actions{flex-direction:column-reverse}.admin-btn{justify-content:center;width:100%}}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:0 16px 16px 0}.modal-content::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#00b39e,#00a08e);border-radius:4px}.modal-content::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#00a08e,#008f7e)}.users-view{box-sizing:border-box;min-height:100vh;width:100%}.users-view .table{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.users-view .table-head{grid-gap:12px;align-items:center;background:linear-gradient(40deg,#704493,#512e6e)!important;border-bottom:2px solid #e5e7eb;display:grid;gap:12px;grid-template-columns:2.5fr 2fr 1.5fr 1.3fr 1.3fr 1fr 1fr 60px;padding:0}.users-view .table-head .cell{align-items:center;color:#fff!important;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;letter-spacing:.5px;padding:14px 12px;text-transform:uppercase;transition:all .2s ease;-webkit-user-select:none;user-select:none}.users-view .table-head .cell:hover{opacity:.9;transform:translateY(-1px)}.users-view .table-head .cell.sortable{position:relative}.sort-icon{font-size:14px;opacity:.6;transition:all .2s ease}.users-view .table-head .cell.sorting .sort-icon{opacity:1;transform:scale(1.1)}.users-view .table-head .cell.sort-asc .sort-icon{transform:rotate(180deg)}.users-view .table-row{grid-gap:12px;align-items:center;background:#fff;border-bottom:1px solid #f3f4f6;display:grid;gap:12px;grid-template-columns:2.5fr 2fr 1.5fr 1.3fr 1.3fr 1fr 1fr 60px;padding:14px 12px;transition:background-color .15s ease}.users-view .table-row:nth-child(2n){background:#f9fafb}.users-view .table-row:hover{background:#f0f4f8!important}.users-view .table-row:last-child{border-bottom:none}.users-view .cell{color:#374151;font-size:14px;overflow:hidden;text-overflow:ellipsis}.users-view .cell.user{align-items:center;display:flex;gap:12px}.users-view .cell.user .avatar{align-items:center;background:linear-gradient(135deg,#00b39e,#00a08e);border-radius:50%;box-shadow:0 2px 8px #7044934d;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:40px;justify-content:center;text-transform:uppercase;width:40px}.users-view .cell.user .info{display:flex;flex-direction:column;gap:2px;min-width:0}.users-view .cell.user .info .name{color:#1f2937;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-view .cell.user .info .meta{color:#6b7280;font-size:12px}.role-badge{border-radius:16px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.3px;padding:4px 10px;text-transform:uppercase}.role-badge.admin{background:#fef3c7;border:1px solid #fbbf24;color:#92400e}.role-badge.super-admin{background:#fee2e2;border:1px solid #f87171;color:#991b1b}.role-badge.registered-user{background:#e0e7ff;border:1px solid #818cf8;color:#3730a3}.role-badge.driver{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.users-view .action-buttons{display:flex;gap:6px;justify-content:flex-end}.users-view .action-buttons .btn{align-items:center;background:#f3f4f6;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:16px;justify-content:center;padding:6px 10px;transition:all .2s ease}.users-view .action-buttons .btn:hover{background:#704493;box-shadow:0 4px 8px #00000026;color:#fff;transform:translateY(-2px)}.users-view .action-buttons .btn.btn-secondary:hover{background:#0b7a5f;color:#fff}.users-view input[type=checkbox]{accent-color:#704493;cursor:pointer;height:18px;width:18px}.users-view .table-row .cell[style*=gridColumn]{color:#9ca3af;font-size:15px;font-weight:500;padding:40px 20px;text-align:center}.users-view .skeleton-row{animation:pulse 1.5s ease-in-out infinite}.users-view .pagination-info{color:#6b7280;font-size:14px;font-weight:500;margin:16px 0;text-align:center}.users-view .pagination-info strong{color:#374151;font-weight:700}.locked-badge{align-items:center;background:#ffebee;border-radius:4px;color:#d32f2f;display:inline-flex;font-size:11px;font-weight:600;gap:4px;padding:2px 6px}@media (max-width:1400px){.users-view .table-head,.users-view .table-row{font-size:13px;grid-template-columns:2fr 1.8fr 1.2fr 1fr 1fr .8fr .8fr 50px}}@media (max-width:1200px){.users-view .table-head,.users-view .table-row{grid-template-columns:2fr 1.5fr 1fr 1fr 1fr .7fr .7fr 50px}.users-view .cell.user .avatar{font-size:14px;height:36px;width:36px}}@media (max-width:992px){.users-view{padding:16px}.users-view .table-head{display:none}.users-view .table-row{border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:12px;margin-bottom:12px;padding:16px}.users-view .table-row:hover{transform:none}.users-view .cell{align-items:center;display:flex;justify-content:space-between}.users-view .cell:before{color:#6b7280;content:attr(data-label);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}}.vehicles-view{box-sizing:border-box;min-height:100vh;width:100%}.vehicles-view .page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.vehicles-view .header-left-compact{flex-shrink:0}.vehicles-view .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.vehicles-view .page-title-compact .title-icon{color:#704493;font-size:1.25rem}.vehicles-view .header-filters-compact{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:.625rem;justify-content:flex-end}.vehicles-view .input.search-compact{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.5rem;min-width:280px;padding:.5rem .75rem;transition:all .2s ease}.vehicles-view .input.search-compact:focus-within{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a}.vehicles-view .input.search-compact .icon{align-items:center;color:#94a3b8;display:flex;font-size:1rem}.vehicles-view .input.search-compact input{background:#0000;border:none;color:#1e293b;font-size:.875rem;outline:none;width:100%}.vehicles-view .input.search-compact input::placeholder{color:#94a3b8}.vehicles-view .table.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.vehicles-view .table-head{align-items:center;background:linear-gradient(40deg,#704493,#512e6e)!important;border-bottom:2px solid #e5e7eb;color:#fff!important;display:flex;font-size:13px;font-weight:600;padding:0}.vehicles-view .table-head .cell{color:#fff!important;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 12px;text-transform:uppercase}.vehicles-view .table-row{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;padding:0;transition:background-color .15s ease}.vehicles-view .table-row:hover{background:#f9fafb}.vehicles-view .table-row:last-child{border-bottom:none}.vehicles-view .table-row .cell{color:#374151;font-size:14px;padding:14px 12px}.vehicles-view .table-head .cell:first-child,.vehicles-view .table-row .cell:first-child{flex-grow:0;flex-shrink:0;width:140px}.vehicles-view .table-head .cell:nth-child(2),.vehicles-view .table-row .cell:nth-child(2){flex:1 1;min-width:140px}.vehicles-view .table-head .cell:nth-child(3),.vehicles-view .table-row .cell:nth-child(3){flex-grow:0;flex-shrink:0;width:130px}.vehicles-view .table-head .cell:nth-child(4),.vehicles-view .table-row .cell:nth-child(4){flex-grow:0;flex-shrink:0;width:100px}.vehicles-view .table-head .cell:nth-child(5),.vehicles-view .table-row .cell:nth-child(5){flex-grow:0;flex-shrink:0;text-align:center;width:80px}.vehicles-view .table-head .cell:nth-child(6),.vehicles-view .table-row .cell:nth-child(6){flex-grow:0;flex-shrink:0;width:120px}.vehicles-view .table-head .cell:nth-child(7),.vehicles-view .table-row .cell:nth-child(7){flex-grow:0;flex-shrink:0;width:140px}.vehicles-view .cell.actions-cell{align-items:center;display:flex;gap:8px;justify-content:flex-end}.vehicles-view .btn-action-compact.btn-view:hover{background:#dbeafe;border-color:#93c5fd;color:#1e40af}.vehicles-view .btn-action-compact.btn-edit:hover{background:#fef3c7;border-color:#fcd34d;color:#92400e}.vehicles-view .btn-action-compact.btn-delete:hover{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.vehicles-view .no-results-cell{color:#64748b;padding:40px 20px!important;text-align:center;width:100%}.vehicles-view .empty-state{background:#fff;padding:60px 20px;text-align:center}.vehicles-view .empty-state h3{color:#374151;font-size:18px;font-weight:600;margin:0 0 8px}.vehicles-view .empty-state p{color:#6b7280;font-size:14px;margin:0}.vehicles-view .error-message{background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:14px;padding:12px 16px}@media (max-width:1200px){.vehicles-view .page-header-compact{align-items:stretch;flex-direction:column;gap:1rem}.vehicles-view .header-filters-compact{flex-wrap:wrap;justify-content:flex-start}.vehicles-view .input.search-compact{flex:1 1;min-width:200px}}@media (max-width:768px){.vehicles-view .page-header-compact{padding:.75rem}.vehicles-view .header-filters-compact{gap:.5rem}.vehicles-view .input.search-compact{min-width:auto;width:100%}.vehicles-view .table.card{overflow-x:auto}.vehicles-view .table-head,.vehicles-view .table-row{min-width:850px}}.bulk-service-page{min-height:100vh;width:100%}.bulk-service-page .page-header-compact{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px 24px}.bulk-service-page .header-left-compact{align-items:center;display:flex;gap:12px}.bulk-service-page .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:20px;font-weight:600;gap:10px;margin:0}.bulk-service-page .title-icon{color:#6b4190;font-size:26px}.bulk-service-page .header-subtitle{border-left:1px solid #e2e8f0;color:#64748b;font-size:13px;margin-left:12px;padding-left:12px}.generate-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #00000014;margin-bottom:20px;padding:16px 24px}.generate-section .section-header{display:none}.generate-controls{align-items:center;display:flex;flex-wrap:nowrap;gap:12px}.generate-controls .select-input{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;max-width:200px;min-width:160px;padding:10px 14px;transition:all .2s ease}.generate-controls .select-input:focus{background:#fff;border-color:#6b4190;box-shadow:0 0 0 3px #6b41901a;outline:none}.generate-controls .select-input:disabled{background:#f1f5f9;cursor:not-allowed;opacity:.6}.btn-generate{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.btn-generate:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.btn-generate:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.btn-refresh{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;height:40px;justify-content:center;transition:all .2s ease;width:40px}.btn-refresh:hover:not(:disabled){background:#e2e8f0;color:#1e293b}.btn-refresh:disabled{cursor:not-allowed;opacity:.5}.btn-refresh .spinning{animation:spin 1s linear infinite}.error-alert{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-top:12px;padding:10px 14px}.users-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #00000014;overflow:hidden}.section-toolbar{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;gap:16px;justify-content:space-between;padding:14px 20px}.toolbar-left{flex:1 1;gap:10px}.toolbar-right{flex-shrink:0}.search-box{border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;transition:all .2s ease;width:200px}.search-box:focus-within{border-color:#6b4190;box-shadow:0 0 0 3px #6b41901a}.search-box .search-icon{color:#94a3b8;flex-shrink:0}.search-box input{color:#1e293b}.search-box input::placeholder{color:#94a3b8}.filter-select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;max-width:160px;min-width:130px;padding:8px 12px;transition:all .2s ease}.filter-select:focus{border-color:#6b4190;box-shadow:0 0 0 3px #6b41901a;outline:none}.btn-text{background:#0000;border:none;color:#64748b;cursor:pointer;font-size:14px;font-weight:500;padding:8px 12px;transition:all .2s ease;white-space:nowrap}.btn-text:hover{color:#6b4190}.user-count{background:linear-gradient(135deg,#6b4190,#8b5caa);border-radius:16px;color:#fff;font-size:13px;font-weight:600;padding:6px 12px;white-space:nowrap}.btn-icon{align-items:center;background:#fff;border:1px solid #e2e8f0;color:#64748b;display:flex;font-size:18px;height:34px;justify-content:center;transition:all .2s ease;width:34px}.btn-icon:hover{background:#f1f5f9;border-color:#6b4190;color:#6b4190}.btn-download{background:linear-gradient(135deg,#6b4190,#512e6e);font-size:13px;padding:8px 16px;white-space:nowrap}.btn-download:hover:not(:disabled){background:linear-gradient(135deg,#5c3879,#42255a);box-shadow:0 4px 12px #6b41904d;transform:translateY(-1px)}.btn-download:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.loading-container .spinner{animation:spin .8s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#6b4190;height:40px;margin-bottom:16px;width:40px}.loading-container p{color:#64748b;font-size:14px}.empty-state{align-items:center;color:#64748b;display:flex;flex-direction:column;justify-content:center}.empty-state .empty-icon{color:#d1d5db;font-size:64px}.empty-state p{color:#374151;font-size:16px;font-weight:500;margin:0 0 8px}.empty-state span{color:#9ca3af;font-size:14px}.table-header{grid-gap:8px;background:linear-gradient(135deg,#6b4190,#8b5caa);color:#fff;display:grid;font-size:11px;font-weight:600;gap:8px;grid-template-columns:50px 110px 1fr 100px 100px 80px;letter-spacing:.5px;padding:12px 20px;text-transform:uppercase}.table-header input[type=checkbox]{cursor:pointer;height:16px;width:16px}.table-body{max-height:calc(100vh - 340px);overflow-y:auto}.table-row{grid-gap:8px;align-items:center;border-bottom:1px solid #f1f5f9;cursor:pointer;display:grid;gap:8px;grid-template-columns:50px 110px 1fr 100px 100px 80px;padding:10px 20px;transition:all .15s ease}.table-row:hover{background:#faf5ff}.table-row.selected{background:#ede9fe;border-left:3px solid #6b4190}.table-row input[type=checkbox]{cursor:pointer;height:16px;width:16px}.col-checkbox{justify-content:center}.col-checkbox,.col-emp-id{align-items:center;display:flex}.emp-id-badge{color:#6b4190;font-size:13px;font-weight:600}.col-name{display:flex;flex-direction:column;gap:2px;min-width:0}.user-name{color:#1e293b;font-size:14px;font-weight:500}.user-email,.user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email{color:#64748b;font-size:12px}.col-department{align-items:center;display:flex}.dept-badge{background:#dbeafe;border-radius:12px;color:#1d4ed8;font-size:11px;font-weight:600;padding:4px 10px}.col-location{align-items:center;display:flex}.location-badge{background:#dcfce7;border-radius:12px;color:#16a34a;font-size:11px;padding:4px 10px}.col-qr{align-items:center;display:flex;justify-content:center}.qr-thumbnail{border:1px solid #e2e8f0;border-radius:4px;height:50px;width:50px}.qr-placeholder-small{align-items:center;background:#f1f5f9;border-radius:4px;color:#9ca3af;display:flex;font-size:9px;height:50px;justify-content:center;width:50px}.bulk-service-page .modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.bulk-service-page .modal-content.success-modal{animation:modalSlideIn .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:420px;width:100%}.bulk-service-page .modal-header{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:16px 16px 0 0;color:#fff;display:flex;justify-content:space-between;padding:16px 20px}.bulk-service-page .modal-header h3{font-size:18px;font-weight:600;margin:0}.bulk-service-page .modal-close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:28px;justify-content:center;line-height:1;transition:all .2s ease;width:28px}.bulk-service-page .modal-close-btn:hover{background:#ffffff4d}.bulk-service-page .modal-body{padding:28px 24px;text-align:center}.bulk-service-page .success-icon{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;color:#fff;display:flex;font-size:36px;height:64px;justify-content:center;margin:0 auto 16px;width:64px}.bulk-service-page .modal-body p{color:#374151;font-size:15px;line-height:1.5;margin:0}.bulk-service-page .modal-footer{border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;padding:14px 20px}.bulk-service-page .modal-footer .btn{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.bulk-service-page .modal-footer .btn:hover{background:linear-gradient(135deg,#059669,#047857)}@media (max-width:1200px){.table-header,.table-row{grid-template-columns:45px 100px 1fr 90px 90px 70px}}@media (max-width:1024px){.section-toolbar,.toolbar-left{flex-wrap:wrap}.search-box{width:180px}.filter-select{min-width:120px}.table-header,.table-row{gap:6px;grid-template-columns:40px 90px 1fr 80px 80px 60px;padding:10px 16px}.qr-placeholder-small,.qr-thumbnail{height:45px;width:45px}}@media (max-width:768px){.bulk-service-page .page-header-compact{align-items:flex-start;flex-direction:column;gap:8px}.bulk-service-page .header-subtitle{border-left:none;margin-left:0;padding-left:0}.generate-controls{flex-wrap:wrap}.generate-controls .select-input{flex:1 1;min-width:140px}.section-toolbar{align-items:stretch;flex-direction:column;gap:12px;padding:12px 16px}.toolbar-left{flex-direction:row;flex-wrap:wrap;gap:8px}.toolbar-right{justify-content:space-between}.search-box{flex:1 1 100%;width:100%}.filter-select{flex:1 1;min-width:100px}.table-header,.table-row{font-size:11px;grid-template-columns:35px 80px 1fr 60px}.col-department,.col-location{display:none}.table-body{max-height:calc(100vh - 420px)}}@media (max-width:480px){.generate-controls{align-items:stretch;flex-direction:column}.generate-controls .select-input{max-width:100%;min-width:100%}.btn-generate{justify-content:center;width:100%}.toolbar-right{flex-wrap:wrap;gap:8px}.btn-download{flex:1 1;justify-content:center}.table-header,.table-row{gap:6px;grid-template-columns:30px 1fr 50px;padding:8px 12px}.col-emp-id{display:none}.user-name{font-size:13px}.user-email{font-size:11px}.qr-placeholder-small,.qr-thumbnail{height:40px;width:40px}}.routes-view{box-sizing:border-box;min-height:100vh;width:100%}.routes-view .page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.routes-view .header-left-compact{flex-shrink:0}.routes-view .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.routes-view .page-title-compact .title-icon{color:#704493;font-size:1.25rem}.routes-view .header-filters-compact{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:.625rem;justify-content:flex-end}.routes-view .btn-book-compact{align-items:center;background:linear-gradient(135deg,#00b39e,#009688);border:none;border-radius:8px;box-shadow:0 2px 4px #00b39e33;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.375rem;padding:.5rem 1rem;transition:all .2s ease}.routes-view .btn-book-compact:hover{background:linear-gradient(135deg,#009688,#00897b);box-shadow:0 4px 8px #00b39e4d;transform:translateY(-1px)}.routes-view .btn-book-compact svg{font-size:1rem}.routes-view .table.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.routes-view .table-head{align-items:center;background:linear-gradient(40deg,#704493,#512e6e)!important;border-bottom:2px solid #e5e7eb;color:#fff!important;display:flex;font-size:13px;font-weight:600;padding:0}.routes-view .table-head .cell{color:#fff!important;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 12px;text-transform:uppercase}.routes-view .table-row{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;padding:0;transition:background-color .15s ease}.routes-view .table-row:hover{background:#f9fafb}.routes-view .table-row:last-child{border-bottom:none}.routes-view .table-row .cell{color:#374151;font-size:14px;padding:14px 12px}.routes-view .table-head .cell:first-child,.routes-view .table-head .cell:nth-child(2),.routes-view .table-row .cell:first-child,.routes-view .table-row .cell:nth-child(2){flex:1 1;min-width:200px}.routes-view .table-head .cell:nth-child(3),.routes-view .table-row .cell:nth-child(3){flex-grow:0;flex-shrink:0;width:150px}.routes-view .table-head .cell:nth-child(4),.routes-view .table-row .cell:nth-child(4){flex-grow:0;flex-shrink:0;width:140px}.routes-view .cell.actions-cell{align-items:center;display:flex;gap:8px;justify-content:flex-end}.routes-view .table-head .cell.text-right{text-align:center}.routes-view .btn-action-compact.btn-view:hover{background:#dbeafe;border-color:#93c5fd;color:#1e40af}.routes-view .btn-action-compact.btn-edit:hover{background:#fef3c7;border-color:#fcd34d;color:#92400e}.routes-view .btn-action-compact.btn-delete:hover{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.routes-view .loading-placeholder{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:4px;color:#0000!important}.routes-view .table-error{background:#fee2e2;border-radius:4px;color:#991b1b;padding:12px 16px!important;width:100%}.routes-view .no-results-cell{color:#64748b;padding:40px 20px!important;text-align:center;width:100%}.routes-view .empty-state{background:#fff;padding:60px 20px;text-align:center}.routes-view .empty-state h3{color:#374151;font-size:18px;font-weight:600;margin:0 0 8px}.routes-view .empty-state p{color:#6b7280;font-size:14px;margin:0}.routes-view .routes-modal{max-width:700px;width:90%}@media (max-width:1200px){.routes-view .page-header-compact{align-items:stretch;flex-direction:column;gap:1rem}.routes-view .header-filters-compact{flex-wrap:wrap;justify-content:flex-start}}@media (max-width:768px){.routes-view .page-header-compact{padding:.75rem}.routes-view .header-filters-compact{gap:.5rem}.routes-view .table.card{overflow-x:auto}.routes-view .table-head,.routes-view .table-row{min-width:700px}}.add-room-modal-overlay{align-items:center;animation:luxuryFadeIn .4s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);background:linear-gradient(135deg,#141e30f2,#243b55f2);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.add-room-modal-content{animation:luxurySlideUp .5s cubic-bezier(.16,1,.3,1);background:linear-gradient(135deg,#f8f9fc,#e9ecf5 50%,#f0f2f8);border-radius:28px;box-shadow:0 40px 100px #0006,0 0 0 1px #ffffff1a,inset 0 0 0 1px #ffffff0d;max-height:90vh;max-width:900px;overflow:hidden;width:100%}.add-room-modal-header{background:linear-gradient(135deg,#0b7a5f,#0d9488);overflow:hidden;padding:16px 20px;position:relative}.add-room-modal-header:before{animation:headerShine 8s ease-in-out infinite;background:radial-gradient(circle at top right,#667eea26,#0000 50%);content:"";height:200%;pointer-events:none;position:absolute;right:-50%;top:-50%;width:200%}.add-room-modal-header h2{color:#fff;font-size:32px;font-weight:800;letter-spacing:-.8px;line-height:1.2;margin:0;position:relative;text-shadow:0 4px 12px #0000004d}.add-room-modal-header h2:after{animation:buildingFloat 3s ease-in-out infinite;content:"🏢";display:inline-block;font-size:28px;margin-left:12px}@keyframes buildingFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.add-room-modal-close{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:32px;font-weight:300;height:48px;justify-content:center;line-height:1;padding:0;position:absolute;right:28px;top:28px;transition:all .4s cubic-bezier(.4,0,.2,1);width:48px}.add-room-modal-close:hover{background:#ffffff40;border-color:#ffffff80;box-shadow:0 8px 24px #0000004d;transform:rotate(90deg) scale(1.1)}.add-room-form{background:linear-gradient(135deg,#f5f7fc,#edf0f9);max-height:calc(90vh - 80px);overflow-y:auto;padding:16px 20px 20px}.add-room-form::-webkit-scrollbar{width:10px}.add-room-form::-webkit-scrollbar-track{background:#00000005;border-radius:10px;margin:8px 0}.add-room-form::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#667eea,#764ba2);border:2px solid #fff;border-radius:10px}.add-room-form::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#5568d3,#6a4298)}.add-room-form .form-group{animation:luxuryFadeInUp .6s cubic-bezier(.16,1,.3,1) backwards;margin-bottom:16px}.add-room-form .form-group:first-child{animation-delay:.05s}.add-room-form .form-group:nth-child(2){animation-delay:.1s}.add-room-form .form-group:nth-child(3){animation-delay:.15s}.add-room-form .form-group:nth-child(4){animation-delay:.2s}.add-room-form .form-group:nth-child(5){animation-delay:.25s}.add-room-form .form-group label{color:#1a202c!important;display:block;font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.add-room-form .form-group .required{color:#e53e3e;font-size:14px;font-weight:800;margin-left:4px}.add-room-form .form-group input[type=number],.add-room-form .form-group input[type=text],.add-room-form .form-group select,.add-room-form .form-group textarea{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:2px solid #d1d9ed;border-radius:8px;box-shadow:0 2px 8px #667eea14;color:#1a202c;font-family:inherit;font-size:14px;font-weight:500;padding:8px 12px;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%}.add-room-form .form-group input[type=number]:focus,.add-room-form .form-group input[type=text]:focus,.add-room-form .form-group select:focus,.add-room-form .form-group textarea:focus{background:#fffffff2;border-color:#667eea;box-shadow:0 0 0 4px #667eea26,0 8px 24px #667eea40;outline:none;transform:translateY(-2px)}.add-room-form .form-group input.error,.add-room-form .form-group select.error{background:#fff5f5;border-color:#fc8181}.add-room-form .error-message{animation:errorShake .5s ease-out;color:#e53e3e;display:block;font-size:14px;font-weight:600;margin-top:10px}.add-room-form .info-message{align-items:center;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:2px solid #60a5fa;border-radius:16px;box-shadow:0 4px 12px #60a5fa33;color:#1e3a8a;display:flex;font-size:15px;font-weight:600;gap:14px;line-height:1.6;margin:28px 0;padding:18px 22px}.add-room-form .info-icon{animation:infoFloat 3s ease-in-out infinite;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));flex-shrink:0;font-size:24px}.add-room-form-actions{border-top:2px solid #667eea33;display:flex;gap:12px;margin-top:16px;padding-top:16px}.add-room-form .btn-primary,.add-room-form .btn-secondary{border:none;border-radius:8px;box-shadow:0 6px 20px #00000026;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;letter-spacing:.5px;overflow:hidden;padding:12px 20px;position:relative;text-transform:uppercase;transition:all .4s cubic-bezier(.4,0,.2,1)}.add-room-form .btn-primary:before,.add-room-form .btn-secondary:before{background:#fff6;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.add-room-form .btn-primary:active:before,.add-room-form .btn-secondary:active:before{height:400px;width:400px}.add-room-form .btn-secondary{background:linear-gradient(135deg,#e2e8f0,#cbd5e0);color:#2d3748}.add-room-form .btn-secondary:hover{background:linear-gradient(135deg,#cbd5e0,#a0aec0);box-shadow:0 10px 30px #0003;transform:translateY(-3px)}.add-room-form .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:relative}.add-room-form .btn-primary:after{background:linear-gradient(135deg,#fff3,#0000);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .4s}.add-room-form .btn-primary:hover:not(:disabled):after{opacity:1}.add-room-form .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#5568d3,#6a4298);box-shadow:0 12px 40px #667eea80;transform:translateY(-3px)}.add-room-form .btn-primary:disabled{background:linear-gradient(135deg,#e2e8f0,#cbd5e0);box-shadow:0 4px 12px #0000001a;color:#a0aec0;cursor:not-allowed;transform:none}@media (max-width:768px){.add-room-modal-content{margin:12px;max-width:96%}.add-room-modal-header{padding:28px 24px}.add-room-modal-header h2{font-size:28px;padding-right:50px}.add-room-modal-close{font-size:28px;height:44px;right:24px;top:24px;width:44px}.add-room-form{padding:28px 24px}.add-room-form .form-group{margin-bottom:24px}.add-room-form-actions{flex-direction:column;gap:14px}.add-room-form .btn-primary,.add-room-form .btn-secondary{width:100%}}@media (max-width:480px){.add-room-modal-content{border-radius:24px}.add-room-modal-header{border-radius:24px 24px 0 0;padding:24px 20px}.add-room-modal-header h2{font-size:24px}.add-room-modal-close{font-size:24px;height:40px;right:20px;top:20px;width:40px}.add-room-form{padding:24px 20px}.add-room-form .form-group label{font-size:12px}.add-room-form .form-group input[type=text],.add-room-form .form-group select{font-size:15px;padding:14px 18px}.add-room-form .btn-primary,.add-room-form .btn-secondary{font-size:13px;padding:16px 24px}}.add-room-form .form-group label[style] span{color:#1a202c!important;font-weight:500}.add-room-form .helper-text{color:#4a5568;font-size:13px;font-weight:500;margin-top:8px}.amenities-view{box-sizing:border-box;min-height:100vh;width:100%}.amenities-view .page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.amenities-view .header-left-compact{flex-shrink:0}.amenities-view .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.amenities-view .page-title-compact .title-icon{color:#704493;font-size:1.25rem}.amenities-view .header-filters-compact{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:.625rem;justify-content:flex-end}.amenities-view .input.search-compact{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.5rem;min-width:220px;padding:.5rem .75rem;transition:all .2s ease}.amenities-view .input.search-compact:focus-within{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a}.amenities-view .input.search-compact .icon{align-items:center;color:#94a3b8;display:flex;font-size:1rem}.amenities-view .input.search-compact input{background:#0000;border:none;color:#1e293b;font-size:.875rem;outline:none;width:100%}.amenities-view .input.search-compact input::placeholder{color:#94a3b8}.amenities-view .table.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.amenities-view .table-head{align-items:center;background:linear-gradient(40deg,#704493,#512e6e)!important;border-bottom:2px solid #e5e7eb;color:#fff!important;display:flex;font-size:13px;font-weight:600;padding:0}.amenities-view .table-head .cell{color:#fff!important;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 12px;text-transform:uppercase}.amenities-view .table-row{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;padding:0;transition:background-color .15s ease}.amenities-view .table-row:hover{background:#f9fafb}.amenities-view .table-row:last-child{border-bottom:none}.amenities-view .table-row .cell{color:#374151;font-size:14px;padding:14px 12px}.amenities-view .table-head .cell:first-child,.amenities-view .table-row .cell:first-child{flex-grow:0;flex-shrink:0;width:60px}.amenities-view .table-head .cell:nth-child(2),.amenities-view .table-row .cell:nth-child(2){flex-grow:0;flex-shrink:0;width:180px}.amenities-view .table-head .cell:nth-child(3),.amenities-view .table-row .cell:nth-child(3){flex:1 1;min-width:150px}.amenities-view .table-head .cell:nth-child(4),.amenities-view .table-row .cell:nth-child(4){flex-grow:0;flex-shrink:0;width:180px}.amenities-view .table-head .cell:nth-child(5),.amenities-view .table-row .cell:nth-child(5){flex-grow:0;flex-shrink:0;width:120px}.amenities-view .table-head .cell:nth-child(6),.amenities-view .table-head .cell:nth-child(7),.amenities-view .table-row .cell:nth-child(6),.amenities-view .table-row .cell:nth-child(7){flex-grow:0;flex-shrink:0;width:100px}.amenities-view .cell.actions-cell{align-items:center;display:flex;gap:8px;justify-content:flex-end}.amenities-view .table-head .cell.text-right{text-align:center}.amenities-view .amenity-icon-cell{align-items:center;color:#704493;display:flex;font-size:1.5rem;justify-content:center}.amenities-view .btn-action-compact{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:1.125rem;height:32px;justify-content:center;min-width:32px;padding:0;transition:all .2s ease;width:32px}.amenities-view .btn-action-compact:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.amenities-view .btn-edit{background:#fef3c7;border-color:#fcd34d;color:#92400e}.amenities-view .btn-edit:hover{background:#f59e0b;border-color:#f59e0b;box-shadow:0 2px 8px #f59e0b4d;color:#fff}.amenities-view .btn-delete{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.amenities-view .btn-delete:hover{background:#ef4444;border-color:#ef4444;box-shadow:0 2px 8px #ef44444d;color:#fff}.amenities-view .no-results-cell{color:#64748b;padding:40px 20px!important;text-align:center;width:100%}.amenities-view .empty-state{background:#fff;padding:60px 20px;text-align:center}.amenities-view .empty-state h3{color:#374151;font-size:18px;font-weight:600;margin:0 0 8px}.amenities-view .empty-state p{color:#6b7280;font-size:14px;margin:0}@media (max-width:1200px){.amenities-view .page-header-compact{align-items:stretch;flex-direction:column;gap:1rem}.amenities-view .header-filters-compact{flex-wrap:wrap;justify-content:flex-start}.amenities-view .input.search-compact{flex:1 1;min-width:180px}}@media (max-width:768px){.amenities-view .page-header-compact{padding:.75rem}.amenities-view .header-filters-compact{gap:.5rem}.amenities-view .input.search-compact{min-width:auto;width:100%}.amenities-view .table.card{overflow-x:auto}.amenities-view .table-head,.amenities-view .table-row{min-width:800px}}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker-wrapper{border:0;display:inline-block;padding:0}.react-datepicker{background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;color:#000;display:inline-block;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:normal;position:relative}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{line-height:0;z-index:1}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative;text-align:center}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__year-dropdown-container--select{display:inline-block;margin:0 15px}.react-datepicker-time__header,.react-datepicker-year-header,.react-datepicker__current-month{color:#000;font-size:.944rem;font-weight:700;margin-top:0}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-datepicker__navigation{align-items:center;background:none;border:none;cursor:pointer;display:flex;height:32px;justify-content:center;overflow:hidden;padding:0;position:absolute;text-align:center;text-indent:-999em;top:2px;width:32px;z-index:1}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{display:block;margin-left:auto;margin-right:auto;position:relative;top:0}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover :before{border-color:#a6a6a6}.react-datepicker__navigation-icon{font-size:20px;position:relative;top:-1px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__input-time-container{clear:both;float:left;margin:5px 0 10px 15px;text-align:left;width:100%}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{display:inline-block;margin-left:5px}.react-datepicker__time-container{border-left:1px solid #aeaeae;float:right;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.3rem;display:inline;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.3rem;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{border-bottom-right-radius:.3rem;margin:0 auto;overflow-x:hidden;text-align:center;width:85px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:initial;height:calc(195px + .85rem);list-style:none;margin:0;overflow-y:scroll;padding-left:0;padding-right:0;width:100%}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{background-color:#f0f0f0;cursor:pointer}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{background-color:initial;cursor:default}.react-datepicker__week-number{color:#ccc;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{margin-bottom:-8px;text-align:center;white-space:nowrap}.react-datepicker__week{white-space:nowrap}.react-datepicker__day,.react-datepicker__day-name,.react-datepicker__time-name{color:#000;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__day--disabled,.react-datepicker__day-name--disabled,.react-datepicker__time-name--disabled{color:#ccc;cursor:default}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{background-color:#3dcc4a;border-radius:.3rem;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{background-color:#ff6803;border-radius:.3rem;color:#fff;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{background-color:#333;border-radius:4px;bottom:100%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{opacity:1;visibility:visible}.react-datepicker__day--in-range,.react-datepicker__day--in-selecting-range,.react-datepicker__day--selected,.react-datepicker__month-text--in-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--selected,.react-datepicker__quarter-text--in-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--selected,.react-datepicker__year-text--in-range,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{background-color:#bad9f1;border-radius:.3rem;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90;color:#fff}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{color:#ccc;cursor:default}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{background-color:#333;border-radius:4px;bottom:70%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__input-container{display:inline-block;position:relative;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:initial;padding:.5rem;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__month-read-view,.react-datepicker__month-year-read-view,.react-datepicker__year-read-view{border:1px solid #0000;border-radius:.3rem;position:relative}.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover,.react-datepicker__year-read-view:hover{cursor:pointer}.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__year-read-view--down-arrow{right:-16px;top:0;transform:rotate(135deg)}.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown,.react-datepicker__year-dropdown{background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;left:25%;position:absolute;text-align:center;top:30px;width:50%;z-index:1}.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover,.react-datepicker__year-dropdown:hover{cursor:pointer}.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable,.react-datepicker__year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__month-option,.react-datepicker__month-year-option,.react-datepicker__year-option{display:block;line-height:20px;margin-left:auto;margin-right:auto;width:100%}.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type,.react-datepicker__year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type,.react-datepicker__year-option:last-of-type{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem;-webkit-user-select:none;user-select:none}.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover,.react-datepicker__year-option:hover{background-color:#ccc}.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected,.react-datepicker__year-option--selected{left:15px;position:absolute}.react-datepicker__close-icon{background-color:initial;border:0;cursor:pointer;display:table-cell;height:100%;outline:0;padding:0 6px 0 0;position:absolute;right:0;top:0;vertical-align:middle}.react-datepicker__close-icon:after{background-color:#216ba5;border-radius:50%;color:#fff;content:"×";cursor:pointer;display:table-cell;font-size:12px;height:16px;line-height:1;padding:2px;text-align:center;vertical-align:middle;width:16px}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{background-color:#ccc;cursor:default}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;clear:left;cursor:pointer;font-weight:700;padding:5px 0;text-align:center}.react-datepicker__portal{align-items:center;background-color:#000c;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2147483647}.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:3rem;width:3rem}@media (max-height:550px),(max-width:400px){.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:2rem;width:2rem}}.react-datepicker__portal .react-datepicker-time__header,.react-datepicker__portal .react-datepicker__current-month{font-size:1.44rem}.react-datepicker__children-container{height:auto;margin:.4rem;padding-left:.2rem;padding-right:.2rem;width:13.8rem}.react-datepicker__aria-live{border:0;-webkit-clip-path:circle(0);clip-path:circle(0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker__calendar-icon{height:1em;vertical-align:-.125em;width:1em}.booking-modal-overlay{align-items:center;animation:luxuryFadeIn .4s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);background:#464646d4;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.booking-modal-content{animation:luxurySlideUp .5s cubic-bezier(.16,1,.3,1);background:linear-gradient(135deg,#f8f9fc,#e9ecf5 50%,#f0f2f8);border-radius:28px;box-shadow:0 40px 100px #0006,0 0 0 1px #ffffff1a,inset 0 0 0 1px #ffffff0d;display:flex;flex-direction:column;max-height:92vh;max-width:680px;overflow:hidden;position:relative;width:100%}.booking-modal-content>*{flex-shrink:0}.booking-form{flex:1 1;min-height:0;overflow-y:auto}.booking-form::-webkit-scrollbar{width:10px}.booking-form::-webkit-scrollbar-track{background:#00000005;border-radius:10px;margin:8px 0}.booking-form::-webkit-scrollbar-thumb{background:linear-gradient(509deg,#7f8c8d,#999)!important;border:2px solid #fff;border-radius:10px}.booking-form::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#5568d3,#6a4298)}.booking-modal-header{background:linear-gradient(40deg,#7151bf,#673681,#512e6e);overflow:hidden;padding:20px 30px;position:relative}.booking-modal-header:before{animation:headerShine 8s ease-in-out infinite;background:radial-gradient(circle at top right,#667eea26,#0000 50%);content:"";height:200%;pointer-events:none;position:absolute;right:-50%;top:-50%;width:200%}.booking-modal-header h2{color:#fff;font-size:30px;font-weight:700;letter-spacing:normal;line-height:1.2;margin:0;position:relative}.booking-modal-header h2:after{animation:sparkle 2s ease-in-out infinite;content:"✨";display:inline-block;font-size:28px;margin-left:12px}@keyframes sparkle{0%,to{opacity:1;transform:scale(1) rotate(0deg)}50%{opacity:.7;transform:scale(1.1) rotate(15deg)}}.booking-modal-close{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:32px;font-weight:300;height:48px;justify-content:center;line-height:1;padding:0;position:absolute;right:28px;top:15px;transition:all .4s cubic-bezier(.4,0,.2,1);width:48px}.booking-modal-close:hover{background:#ffffff40;border-color:#ffffff80;box-shadow:0 8px 24px #0000004d;transform:rotate(90deg) scale(1.1)}.booking-room-info{background:#fff;border-bottom:1px solid #667eea26;margin:0;padding:15px 30px;position:relative}.booking-room-info:before{content:"🏢";font-size:48px;left:36px;opacity:.08;pointer-events:none;position:absolute;top:24px}.booking-room-info h3{color:#404040;font-size:26px;font-weight:800;letter-spacing:-.5px;margin:0 0 10px;position:relative}.booking-room-info p{align-items:center;color:#4a5568;display:flex;flex-wrap:wrap;font-size:15px;font-weight:500;gap:8px;margin:0;position:relative}.booking-room-info .info-label{color:#2d3748;font-weight:700}.booking-form{background:#f1f5f9;padding:30px}.form-group{animation:luxuryFadeInUp .6s cubic-bezier(.16,1,.3,1) backwards;margin-bottom:28px}.form-group:first-child{animation-delay:.05s}.form-group:nth-child(2){animation-delay:.1s}.form-group:nth-child(3){animation-delay:.15s}.form-group:nth-child(4){animation-delay:.2s}.form-group:nth-child(5){animation-delay:.25s}.form-group:nth-child(6){animation-delay:.3s}@keyframes luxuryFadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.form-group label{color:#404040;margin-bottom:2px}.form-group .required{color:#e53e3e;font-size:14px;font-weight:800;margin-left:4px}.date-picker-input,.filter-select-compact,.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{background:#fff;border:1px solid #d2d7dd;border-radius:14px;box-shadow:0 2px 8px #667eea14;color:#1a202c;font-family:inherit;font-size:16px;font-weight:500;padding:16px 20px;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%}.form-group input:disabled{background-color:#fff}.date-picker-input:focus,.form-group input[type=number]:focus,.form-group select:focus,.form-group textarea:focus{background:#fffffff2;border-color:#667eea;box-shadow:0 0 0 4px #667eea26,0 8px 24px #667eea40;outline:none;transform:translateY(-2px)}.form-group textarea{line-height:1.6}.date-picker-input{background:#ffffffd9 url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23667eea' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E") no-repeat right 20px center;cursor:pointer;padding-right:52px;position:relative}.date-picker-input:focus{background-color:#fffffff2}.date-picker-input.error,.form-group input.error,.form-group select.error,.form-group textarea.error{background:#fff5f5;border-color:#fc8181}.error-message{animation:errorShake .5s ease-out;color:#e53e3e;display:block;font-size:14px;font-weight:600;margin-top:10px}@keyframes errorShake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-6px)}20%,40%,60%,80%{transform:translateX(6px)}}.helper-text{align-items:center;color:#718096;display:flex;font-size:13px;font-weight:500;gap:6px;line-height:1.6;margin-top:10px}.helper-text:before{content:"ℹ️";font-size:14px}.duration-display{align-items:center;background:linear-gradient(135deg,#f6e05e,#ed8936);border-radius:16px;box-shadow:0 8px 24px #ed893640,inset 0 1px 0 #ffffff4d;display:flex;gap:14px;overflow:hidden;padding:20px 24px;position:relative}.duration-display:before{animation:durationShine 3s ease-in-out infinite;background:radial-gradient(circle,#fff3,#0000 60%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes durationShine{0%,to{transform:translate(0)}50%{transform:translate(10%,10%)}}.duration-icon{animation:durationPulse 2s ease-in-out infinite;filter:drop-shadow(0 2px 6px rgba(0,0,0,.2));font-size:28px;position:relative;z-index:1}@keyframes durationPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.duration-text{color:#744210;font-size:18px;font-weight:800;letter-spacing:-.3px;position:relative;text-shadow:0 1px 2px #ffffff80;z-index:1}.attendees-control{align-items:stretch;border-radius:16px;box-shadow:0 4px 12px #00000014;gap:0;max-width:280px;width:100%}.attendees-btn,.attendees-control{display:flex;height:58px;overflow:hidden}.attendees-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;cursor:pointer;flex:0 0 58px;font-size:28px;font-weight:700;justify-content:center;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:58px}.attendees-btn:before{background:#fff6;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .5s,height .5s;width:0}.attendees-btn:active:before{height:120px;width:120px}.attendees-btn:hover:not(:disabled){background:linear-gradient(135deg,#5568d3,#6a4298);box-shadow:0 8px 20px #667eea80;transform:scale(1.08);z-index:2}.attendees-btn:disabled{background:linear-gradient(135deg,#e2e8f0,#cbd5e0);color:#a0aec0;cursor:not-allowed;opacity:.5}.attendees-input{background:linear-gradient(135deg,#e8ebf7,#d9dff2);border:none;color:#1a202c;flex:1 1;font-size:22px;font-weight:800;letter-spacing:-.5px;min-width:0;padding:14px 18px;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.attendees-input:focus{background:#fffffff2;box-shadow:inset 0 0 0 2px #667eea;outline:none}.attendees-input.error{background:#fff5f5;box-shadow:inset 0 0 0 2px #fc8181}.availability-indicator{align-items:center;animation:availabilitySlideIn .6s cubic-bezier(.16,1,.3,1);border-radius:18px;box-shadow:0 8px 24px #0000001f;display:flex;font-size:16px;font-weight:700;gap:16px;margin:28px 0;overflow:hidden;padding:22px 26px;position:relative;transition:all .5s cubic-bezier(.4,0,.2,1)}@keyframes availabilitySlideIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.availability-indicator.available{background:linear-gradient(135deg,#6ee7b7,#10b981);border:2px solid #059669;color:#064e3b}.availability-indicator.available:before{animation:availableShimmer 4s infinite;background:radial-gradient(circle,#ffffff4d,#0000 40%);content:"";height:300%;left:-100%;position:absolute;top:-100%;width:300%}@keyframes availableShimmer{0%{transform:translate(-30%,-30%)}50%{transform:translate(0)}to{transform:translate(-30%,-30%)}}.availability-indicator.unavailable{background:linear-gradient(135deg,#fca5a5,#ef4444);border:2px solid #dc2626;color:#7f1d1d}.availability-indicator.unavailable:before{animation:unavailableSlide 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:200%}@keyframes unavailableSlide{0%{left:-100%}to{left:100%}}.indicator-icon{align-items:center;animation:indicatorBounce 2s ease-in-out infinite;border-radius:50%;box-shadow:0 6px 16px #00000040;display:flex;flex-shrink:0;font-size:24px;font-weight:800;height:44px;justify-content:center;position:relative;width:44px;z-index:1}@keyframes indicatorBounce{0%,to{transform:scale(1) translateY(0)}50%{transform:scale(1.15) translateY(-3px)}}.availability-indicator.available .indicator-icon{background:linear-gradient(135deg,#34d399,#059669);color:#fff;text-shadow:0 2px 4px #0000004d}.availability-indicator.unavailable .indicator-icon{background:linear-gradient(135deg,#f87171,#dc2626);color:#fff;text-shadow:0 2px 4px #0000004d}.indicator-text{letter-spacing:-.2px;position:relative;text-shadow:0 1px 2px #ffffff80;z-index:1}.info-message{align-items:center;background:#c18eeb33;border:2px solid #512e6e;border-radius:16px;box-shadow:0 4px 12px #7b529d33;color:#512e6e;display:flex;font-size:15px;font-weight:600;gap:14px;line-height:1.6;margin:28px 0;padding:18px 22px}.info-icon{animation:infoFloat 3s ease-in-out infinite;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));flex-shrink:0;font-size:24px}@keyframes infoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.booking-form-actions{border-top:2px solid #667eea33;display:flex;gap:16px;margin-top:36px;padding-top:28px}.booking-modal-content .btn-primary,.booking-modal-content .btn-secondary{border:none;border-radius:12px;box-shadow:0 6px 20px #00000026;cursor:pointer;flex:1 1;font-size:17px;font-size:14px;font-weight:700;letter-spacing:-.3px;letter-spacing:.8px;overflow:hidden;padding:15px 25px;position:relative;text-transform:uppercase;transition:all .4s cubic-bezier(.4,0,.2,1)}.booking-modal-content .btn-primary{background:linear-gradient(509deg,#00b39e,#37e2ce)!important;color:#fff}.booking-modal-content .btn-secondary{background:linear-gradient(135deg,#e2e8f0,#cbd5e0);border-radius:12px;color:#2d3748;padding:15px 25px}.booking-modal-content .btn-secondary:hover:not(:disabled){background:#fff;border:2px solid;border-radius:12px;padding:15px 25px}.booking-modal-content .btn-primary:disabled{background:linear-gradient(135deg,#e2e8f0,#cbd5e0);box-shadow:0 4px 12px #0000001a;color:#a0aec0;cursor:not-allowed;transform:none}.react-datepicker{background:linear-gradient(135deg,#f8f9fc,#edf0f9);border:none;border-radius:20px;box-shadow:0 20px 60px #667eea40,0 8px 24px #00000026;font-family:inherit;overflow:hidden}.react-datepicker__header{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:none;border-radius:20px 20px 0 0;padding:20px 10px 12px}.react-datepicker-time__header,.react-datepicker-year-header,.react-datepicker__current-month{color:#fff;font-size:16px;font-weight:800;letter-spacing:-.3px;margin-bottom:10px;text-shadow:0 2px 6px #0003}.react-datepicker__day-name{color:#404040;font-size:13px;font-weight:700;line-height:2.2rem;margin:.2rem;width:2.2rem}.react-datepicker__navigation{top:18px}.react-datepicker__navigation-icon:before{border-color:#fff;border-width:2px 2px 0 0}.react-datepicker__navigation:hover :before{border-color:#fffc}.react-datepicker__month{margin:1rem .8rem .8rem}.react-datepicker__day{border-radius:10px;color:#2d3748;font-weight:600;line-height:2.2rem;margin:.2rem;transition:all .3s cubic-bezier(.4,0,.2,1);width:2.2rem}.react-datepicker__day:hover{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea4d;color:#fff;transform:scale(1.1)}.react-datepicker__day--keyboard-selected,.react-datepicker__day--selected{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 16px #667eea66;color:#fff;font-weight:800}.react-datepicker__day--disabled{background:#0000;color:#cbd5e0;cursor:not-allowed;opacity:.4}.react-datepicker__day--disabled:hover{background:#0000;box-shadow:none;transform:none}.react-datepicker__day--today{background:#667eea26;border:2px solid #667eea4d;color:#667eea;font-weight:800}.react-datepicker__day--outside-month{color:#a0aec0;opacity:.5}.react-datepicker__time-container{background:linear-gradient(135deg,#f5f7fc,#edf0f9);border-left:1px solid #667eea26}.react-datepicker__time-container .react-datepicker__time{background:#0000}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:100%}.react-datepicker__time-list-item{color:#2d3748;font-weight:600;padding:8px 10px;transition:all .3s ease}.react-datepicker__time-list-item--selected,.react-datepicker__time-list-item:hover{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.react-datepicker__time-list-item--selected{font-weight:800}.react-datepicker__time-list-item--disabled{color:#cbd5e0;opacity:.4}.react-datepicker__time-list-item--disabled:hover{background:#0000;color:#cbd5e0;cursor:not-allowed}.react-datepicker__triangle{display:none}.react-datepicker__time-list-item--disabled{background:repeating-linear-gradient(45deg,#f8f9fc,#f8f9fc 10px,#e9ecf5 0,#e9ecf5 20px)!important;color:#cbd5e0!important;cursor:not-allowed!important;opacity:.5!important;position:relative}.react-datepicker__time-list-item--disabled:hover{background:repeating-linear-gradient(45deg,#fef2f2,#fef2f2 10px,#fee2e2 0,#fee2e2 20px)!important;color:#dc2626!important}.react-datepicker__time-list-item--disabled:after{content:"🚫";font-size:14px;opacity:.7;position:absolute;right:8px}.booked-slots-list{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:2px solid #ef44444d;border-radius:16px;box-shadow:0 4px 16px #ef444426;max-height:200px;overflow-y:auto;padding:16px}.booked-slots-list::-webkit-scrollbar{width:8px}.booked-slots-list::-webkit-scrollbar-track{background:#ef44441a;border-radius:10px}.booked-slots-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#fca5a5,#ef4444);border-radius:10px}.booked-slot-item{align-items:center;animation:slideInBooked .4s cubic-bezier(.16,1,.3,1);background:#ffffffb3;border:1px solid #ef444433;border-radius:12px;display:flex;gap:12px;margin-bottom:8px;padding:12px 16px;transition:all .3s ease}@keyframes slideInBooked{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.booked-slot-item:last-child{margin-bottom:0}.booked-slot-item:hover{background:#fffffff2;border-color:#ef444466;box-shadow:0 4px 12px #ef444433;transform:translateX(4px)}.booked-time-icon{animation:pulse 2s ease-in-out infinite;flex-shrink:0;font-size:20px}.booked-time-range{color:#dc2626;flex-shrink:0;font-size:15px;font-weight:700;letter-spacing:-.2px}.booked-purpose{color:#7f1d1d;font-size:13px;font-style:italic;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.booking-modal-content{margin:12px;max-height:94vh;max-width:96%}.booking-modal-header{padding:28px 24px}.booking-modal-header h2{font-size:28px;padding-right:50px}.booking-modal-close{font-size:28px;height:44px;right:24px;top:24px;width:44px}.booking-room-info{padding:24px}.booking-room-info h3{font-size:24px}.booking-form{padding:28px 24px}.form-group{margin-bottom:24px}.booking-form-actions{flex-direction:column;gap:14px}.booking-modal-content .btn-primary,.booking-modal-content .btn-secondary{width:100%}.attendees-control{max-width:100%}}@media (max-width:480px){.booking-modal-overlay{padding:12px}.booking-modal-content{border-radius:24px;max-height:95vh}.booking-modal-header{border-radius:24px 24px 0 0;padding:24px 20px}.booking-modal-header h2{font-size:24px}.booking-modal-close{font-size:24px;height:40px;right:20px;top:20px;width:40px}.booking-room-info{padding:20px}.booking-room-info h3{font-size:22px}.booking-room-info p{font-size:14px}.booking-form{padding:24px 20px}.form-group label{font-size:12px}.date-picker-input,.form-group input[type=number],.form-group select,.form-group textarea{font-size:15px;padding:14px 18px}.duration-display{font-size:15px;padding:18px 20px}.duration-icon{font-size:24px}.duration-text{font-size:16px}.availability-indicator{font-size:15px;gap:12px;padding:18px 20px}.indicator-icon{font-size:22px;height:40px;width:40px}.info-message{font-size:14px;padding:16px 18px}.booking-modal-content .btn-primary,.booking-modal-content .btn-secondary{font-size:13px;padding:16px 24px}.attendees-control{height:52px}.attendees-btn{flex:0 0 52px;font-size:24px;height:52px;width:52px}.attendees-input{font-size:20px}}@media (max-width:360px){.booking-modal-header h2{font-size:22px}.booking-room-info h3{font-size:20px}.date-picker-input,.form-group input[type=number],.form-group select,.form-group textarea{font-size:14px;padding:12px 16px}.attendees-control{height:48px}.attendees-btn{flex:0 0 48px;font-size:22px;height:48px;width:48px}.attendees-input{font-size:18px}}@media (prefers-color-scheme:dark){.booking-form,.booking-modal-content{background:#1a202c}.form-group label{color:#e2e8f0}.date-picker-input,.form-group input[type=number],.form-group select,.form-group textarea{background:#2d3748;border-color:#4a5568;color:#e2e8f0}.helper-text{color:#a0aec0}.attendees-input{background:linear-gradient(135deg,#2d3748,#4a5568);color:#e2e8f0}}@media print{.booking-modal-overlay{background:none}.booking-form-actions,.booking-modal-close{display:none}}.amenities-filter-row{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000000d;margin-bottom:20px;padding:16px 20px}.amenities-label{color:#475569;display:block;font-size:.875rem;font-weight:600;margin-bottom:10px}.view-toggle-compact{background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;overflow:hidden}.view-toggle-compact .view-btn{align-items:center;background:#fff;border:none;color:#64748b;cursor:pointer;display:flex;font-size:1.1rem;justify-content:center;padding:.5rem .75rem;transition:all .2s ease}.view-toggle-compact .view-btn:not(:last-child){border-right:1px solid #e2e8f0}.view-toggle-compact .view-btn.active{background:#37e2ce;color:#fff}.view-toggle-compact .view-btn:hover:not(.active){background:#f1f5f9}.availability-filters{align-items:flex-end;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px;padding:20px}.filter-group{gap:5px}.filter-group label{color:#374151;font-weight:500}.filter-input,.filter-select{border:1px solid #d1d5db;font-size:14px;min-width:150px}.filter-input:focus,.filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.amenities-filter{flex:1 1;min-width:300px}.amenities-tags{display:flex;flex-wrap:wrap;gap:8px}.amenity-tag{background:#f3f4f6;border:1px solid #d1d5db;border-radius:20px;cursor:pointer;font-size:13px;padding:6px 12px;transition:all .2s}.amenity-tag:hover{background:#e5e7eb}.amenity-tag.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.view-toggle{flex-direction:row}.view-btn{background:#fff;border:1px solid #d1d5db;font-size:14px;padding:8px 16px}.view-btn:first-child{border-radius:6px 0 0 6px}.view-btn:last-child{border-radius:0 6px 6px 0}.view-btn.active{background:#3b82f6;border-color:#3b82f6}.view-btn:hover:not(.active){background:#f3f4f6}.refresh-btn{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.refresh-btn:hover:not(:disabled){background:#059669}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.rooms-container{padding:10px}.rooms-container.grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.rooms-container.list{display:flex;flex-direction:column;gap:15px}.no-rooms{color:#6b7280;font-size:16px;padding:60px 20px;text-align:center}.room-card{border:2px solid #0000;border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:all .3s}.room-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.room-card.available{border-color:#10b981}.room-card.occupied{border-color:#ef4444}.room-card.upcoming{border-color:#f59e0b}.status-indicator{align-items:center;color:#fff;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 16px}.status-icon{font-size:18px}.room-info{padding:16px}.room-name{align-items:center;display:flex;font-size:18px;margin:0 0 12px}.room-details{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.detail-item{align-items:center;color:#6b7280;display:flex;font-size:13px;gap:6px}.room-amenities{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.amenity-badge{background:#eff6ff;border-radius:12px;color:#1e40af;font-size:12px;font-weight:500;padding:4px 10px}.availability-info{align-items:center;border-radius:6px;display:flex;font-size:13px;font-weight:500;margin-top:10px;padding:10px}.availability-info.available{background:#d1fae5;color:#065f46}.availability-info.occupied{background:#fee2e2;color:#991b1b}.availability-info.upcoming{background:#fef3c7;color:#92400e}.room-actions{border-top:1px solid #f3f4f6;display:flex;gap:10px;padding:16px}.btn-book-action{background:linear-gradient(135deg,#37e2ce,#2bc9b7);border:none;border-radius:6px;box-shadow:0 2px 8px #37e2ce4d;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:10px 16px;transition:all .2s ease}.btn-book-action:hover:not(:disabled){box-shadow:0 4px 12px #37e2ce66;transform:translateY(-1px)}.btn-book-action:disabled{background:#9ca3af;box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.btn-details{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:10px 16px;transition:all .2s ease}.btn-details:hover{background:#e2e8f0;border-color:#cbd5e1;transform:translateY(-1px)}.rooms-container.list .room-card{display:flex;flex-direction:row}.rooms-container.list .status-indicator{justify-content:center;min-width:50px;text-orientation:mixed;writing-mode:vertical-rl}.rooms-container.list .room-info{grid-gap:16px;align-items:center;display:grid;flex:1 1;gap:16px;grid-template-columns:2fr 1fr 1fr}.rooms-container.list .room-actions{border-left:1px solid #f3f4f6;border-top:none;flex-direction:column;min-width:150px}.rooms-container.list .btn-book-action,.rooms-container.list .btn-details{width:100%}@media (max-width:768px){.availability-filters{flex-direction:column;gap:15px}.filter-group,.filter-input,.filter-select{width:100%}.rooms-container.grid,.rooms-container.list .room-info{grid-template-columns:1fr}.rooms-container.list .room-card{flex-direction:column}.rooms-container.list .status-indicator{min-width:auto;writing-mode:horizontal-tb}.rooms-container.list .room-actions{border-left:none;border-top:1px solid #f3f4f6;flex-direction:row}}.calendar-controls{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.calendar-nav{gap:15px}.calendar-nav,.nav-btn{align-items:center;display:flex}.nav-btn{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:20px;height:36px;justify-content:center;transition:all .2s;width:36px}.nav-btn:hover{background:#704493;border-color:#704493;color:#fff}.calendar-title{color:#1e293b;font-size:1.125rem;font-weight:700;margin:0;min-width:220px;text-align:center}.today-btn{background:linear-gradient(135deg,#00b39e,#009688);border:none;border-radius:8px;box-shadow:0 2px 4px #00b39e33;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.today-btn:hover{background:linear-gradient(135deg,#009688,#00897b);box-shadow:0 4px 8px #00b39e4d;transform:translateY(-1px)}.calendar-filters{align-items:center;display:flex;gap:15px}.room-filter{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#1e293b;cursor:pointer;font-size:.875rem;min-width:180px;padding:.5rem .75rem}.room-filter:focus{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.view-toggle{gap:0}.view-btn{background:#f8fafc;border:1px solid #e2e8f0;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.view-btn:first-child{border-radius:8px 0 0 8px}.view-btn:last-child{border-left:none;border-radius:0 8px 8px 0}.view-btn.active{background:linear-gradient(135deg,#704493,#512e6e);border-color:#704493;color:#fff}.view-btn:hover:not(.active){background:#f1f5f9;color:#1e293b}.calendar-legend{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;flex-wrap:wrap;gap:1.25rem;margin-bottom:1rem;padding:.75rem 1rem}.legend-item{align-items:center;color:#374151;display:flex;font-size:14px;gap:8px}.legend-dot{border-radius:50%;height:12px;width:12px}.calendar-grid{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:1rem;overflow:hidden;padding:1rem}.calendar-header{grid-gap:1px;background:linear-gradient(40deg,#704493,#512e6e);border-radius:8px 8px 0 0;display:grid;gap:1px;grid-template-columns:repeat(7,1fr);margin-bottom:1px;overflow:hidden}.day-header{background:#0000;color:#fff;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 12px;text-align:center;text-transform:uppercase}.calendar-body{grid-gap:1px;background:#e5e7eb;display:grid;gap:1px;grid-template-columns:repeat(7,1fr)}.calendar-day{background:#fff;cursor:pointer;min-height:120px;padding:8px;position:relative;transition:background .2s}.calendar-day:hover{background:#f9fafb}.calendar-day.today{background:#eff6ff}.calendar-day.today .day-number{align-items:center;background:linear-gradient(135deg,#00b39e,#009688);border-radius:50%;box-shadow:0 2px 4px #00b39e4d;color:#fff;display:flex;height:28px;justify-content:center;width:28px}.calendar-day.other-month{opacity:.4}.day-number{color:#374151;font-size:14px;font-weight:600;margin-bottom:8px}.day-bookings{display:flex;flex-direction:column;gap:4px}.booking-item{background:#f9fafb;border-left:3px solid #3b82f6;border-radius:4px;cursor:pointer;font-size:12px;padding:6px 8px;transition:all .2s}.booking-item:hover{background:#f3f4f6;transform:translateX(2px)}.booking-time{color:#111827;font-weight:600;margin-bottom:2px}.booking-room{color:#6b7280}.booking-purpose,.booking-room{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-purpose{color:#9ca3af;font-size:11px;margin-top:2px}.more-bookings{background:#f3f4f6;border-radius:4px;color:#6b7280;font-size:11px;margin-top:4px;padding:4px;text-align:center}.calendar-grid.month .calendar-day{min-height:100px}.calendar-grid.month .booking-item{font-size:11px;padding:4px 6px}.calendar-grid.week .calendar-day{min-height:150px}.calendar-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));padding:0}.stat-card{border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000f;padding:1.25rem;text-align:center;transition:all .2s ease}.stat-card:hover{border-color:#704493;box-shadow:0 4px 12px #70449326}.stat-number{color:#704493;font-size:2rem;font-weight:700;margin-bottom:.5rem}.stat-label{font-size:.875rem;font-weight:500}@media (max-width:1024px){.calendar-controls{align-items:stretch;flex-direction:column}.calendar-filters,.calendar-nav{justify-content:center}.calendar-title{min-width:auto}.calendar-grid.month .calendar-day{min-height:80px}.calendar-grid.week .calendar-day{min-height:120px}}@media (max-width:768px){.calendar-grid{padding:10px}.calendar-body{font-size:12px}.calendar-day{min-height:60px;padding:4px}.day-number{font-size:12px}.booking-item{font-size:10px;padding:4px}.booking-purpose{display:none}.stat-card{padding:15px}.stat-number{font-size:24px}.room-filter{min-width:100%}}.day-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.day-modal{animation:modalSlideIn .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:80vh;max-width:600px;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.day-modal-header{align-items:center;background:linear-gradient(135deg,#704493,#512e6e);border-radius:16px 16px 0 0;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.day-modal-header h3{color:#fff;font-size:1.125rem;font-weight:600;margin:0}.day-modal-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;line-height:1;transition:all .2s;width:32px}.day-modal-close:hover{background:#ffffff4d;transform:scale(1.1)}.day-modal-body{flex:1 1;overflow-y:auto;padding:1.25rem 1.5rem}.day-modal-empty{color:#64748b;padding:3rem 1rem;text-align:center}.day-modal-empty p{font-size:1rem;margin-bottom:1.5rem}.day-modal-empty .book-room-btn{background:linear-gradient(135deg,#704493,#512e6e);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.day-modal-empty .book-room-btn:hover{box-shadow:0 4px 12px #70449366;transform:translateY(-2px)}.day-modal-summary{background:#f8fafc;border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem}.summary-total{color:#1e293b;font-weight:600}.summary-approved{color:#10b981;font-size:.875rem}.summary-pending{color:#f59e0b;font-size:.875rem}.day-modal-bookings{display:flex;flex-direction:column;gap:.5rem}.day-modal-booking-item{grid-gap:.25rem 1rem;align-items:center;background:#f8fafc;border-left:4px solid #3b82f6;border-radius:6px;display:grid;gap:.25rem 1rem;grid-template-columns:140px 1fr auto;grid-template-rows:auto auto;padding:.75rem 1rem;transition:all .2s}.day-modal-booking-item:hover{background:#f1f5f9}.modal-booking-header{display:contents}.modal-booking-time{color:#1e293b;font-size:.8125rem;font-weight:600;grid-column:1;grid-row:1;white-space:nowrap}.modal-booking-status{border-radius:10px;color:#fff;font-size:.625rem;font-weight:600;grid-column:3;grid-row:1;justify-self:end;letter-spacing:.3px;padding:.1875rem .5rem;text-transform:uppercase}.modal-booking-room{color:#704493;font-size:.8125rem;font-weight:600;grid-column:2;grid-row:1}.modal-booking-details{border-top:1px dashed #e2e8f0;flex-wrap:wrap;gap:.5rem 1rem;grid-column:1/-1;grid-row:2;margin-top:.25rem;padding-top:.375rem}.modal-booking-details,.modal-booking-id{color:#64748b;display:flex;font-size:.75rem}.modal-booking-id{align-items:center;font-family:monospace;gap:.25rem}.modal-booking-id .id-label{color:#94a3b8;font-family:inherit}.modal-booking-user{align-items:center;color:#64748b;display:flex;font-size:.75rem;gap:.25rem}.modal-booking-user .user-label{color:#94a3b8}.modal-booking-purpose{align-items:center;color:#64748b;display:flex;font-size:.75rem;gap:.25rem;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-booking-purpose .purpose-label{color:#94a3b8;flex-shrink:0}.modal-booking-recurring{align-items:center;background:#eff6ff;border:1px solid #bfdbfe;border-radius:4px;display:inline-flex;font-size:.75rem;gap:.375rem;padding:.25rem .5rem}.modal-booking-recurring .recurring-badge{background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:3px;color:#fff;font-size:.625rem;font-weight:600;letter-spacing:.3px;padding:.125rem .5rem;text-transform:uppercase}.modal-booking-recurring .recurring-info{color:#1e40af;font-size:.75rem;font-weight:500}.day-modal-footer{background:#f8fafc;border-radius:0 0 16px 16px;border-top:1px solid #e2e8f0;display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.modal-btn{border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;transition:all .2s ease}.modal-btn-secondary{background:#fff;border:1px solid #e2e8f0;color:#64748b}.modal-btn-secondary:hover{background:#f1f5f9;color:#1e293b}.modal-btn-primary{background:linear-gradient(135deg,#704493,#512e6e);border:none;color:#fff}.modal-btn-primary:hover{box-shadow:0 4px 12px #70449366;transform:translateY(-2px)}@media (max-width:768px){.day-modal{margin:.5rem;max-height:90vh}.day-modal-header{padding:1rem}.day-modal-header h3{font-size:1rem}.day-modal-body{padding:1rem}.day-modal-summary{flex-direction:column;gap:.5rem}.day-modal-booking-item{grid-template-columns:1fr auto;grid-template-rows:auto auto auto}.modal-booking-time{grid-column:1;grid-row:1}.modal-booking-status{grid-column:2;grid-row:1}.modal-booking-room{grid-column:1/-1;grid-row:2}.modal-booking-details{flex-direction:column;gap:.25rem;grid-row:3}.modal-booking-purpose{max-width:100%}.day-modal-footer{flex-direction:column;padding:1rem}.modal-btn{text-align:center;width:100%}}.my-bookings-view{padding:0;width:100%}.btn-book-compact:hover{box-shadow:0 2px 6px #00b39e4d}.btn-book-compact:active{box-shadow:0 1px 3px #00b39e33}.btn-book-compact:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed}.btn-action-compact{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;display:flex;font-size:.8rem;font-weight:600;gap:.375rem;padding:.5rem .875rem;transition:all .2s ease;white-space:nowrap}.btn-action-compact:hover{background:#e2e8f0;border-color:#cbd5e1;color:#334155}.btn-action-compact svg{font-size:1rem}.btn-action-compact.btn-delete{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.btn-action-compact.btn-delete:hover{background:#fecaca;border-color:#f87171;color:#7f1d1d}.bookings-filters{border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;gap:8px;margin-bottom:20px;padding:12px 16px}.filter-tab{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;padding:8px 16px}.filter-tab:hover{background:#f1f5f9;border-color:#cbd5e1;color:#475569}.filter-tab.active{background:#0b7a5f}.loading-state{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:80px 24px}.loading-spinner-large{animation:spin 1s linear infinite;border:5px solid #e2e8f0;border-top-color:#0b7a5f;height:60px;margin-bottom:20px;width:60px}.loading-state p{color:#64748b;font-size:16px;font-weight:500;margin:0}.bulk-actions-bar{align-items:center;animation:slideDown .3s ease-out;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:2px solid #3b82f6;border-radius:12px;box-shadow:0 4px 12px #3b82f626;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px 20px}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.bulk-selection-info{align-items:center;display:flex;gap:12px}.bulk-checkbox{accent-color:#3b82f6;cursor:pointer;height:20px;width:20px}.selection-count{color:#1e40af;font-size:15px;font-weight:700;letter-spacing:.3px}.btn-bulk-delete{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:10px;box-shadow:0 4px 12px #ef44444d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:8px;padding:10px 20px;transition:all .3s ease}.btn-bulk-delete:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 20px #ef444466;transform:translateY(-2px)}.btn-bulk-delete .btn-icon{font-size:16px}.btn-cancel-booking-table{align-items:center;background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;color:#991b1b;cursor:pointer;display:inline-flex;font-size:11px;font-weight:600;gap:4px;padding:6px 10px;transition:all .2s ease;white-space:nowrap}.btn-cancel-booking-table:hover{background:#fecaca;border-color:#f87171;color:#7f1d1d}.no-action{color:#9ca3af;font-size:13px}.room-name{flex:1 1}.recurring-detail{background:#e3f2fd;border:1px solid #90caf9;border-radius:8px;padding:12px}.recurring-mobile-info{width:100%}.recurring-mobile-info strong{color:#1565c0;display:block;margin-bottom:8px}.recurring-mobile-details{color:#333;display:flex;flex-direction:column;font-size:12px;gap:4px}.booking-card-actions{border-top:1px solid #e5e7eb;margin-top:12px;padding-top:12px}.status-badge{border-radius:6px}.status-badge.status-pending{border:1px solid #fbbf24}.status-badge.status-upcoming{background:#d1fae5;border:1px solid #10b981;color:#065f46}.status-badge.status-ongoing{background:#dbeafe;border:1px solid #3b82f6}.status-badge.status-cancelled{background:#fee2e2;border:1px solid #ef4444}.status-badge.status-rejected{border:1px solid #dc2626}.status-badge.status-completed{background:#e5e7eb;border:1px solid #9ca3af}.booking-bottom-row{align-items:center;display:flex;flex:1 1;gap:16px}.booking-details-section{align-items:center;display:flex;flex:1 1;gap:24px}.booking-detail-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:8px;padding:6px 12px}.detail-icon-inline{color:#64748b;flex-shrink:0;font-size:16px}.detail-content{display:flex;flex-direction:column;gap:2px}.detail-label{font-size:10px;line-height:1}.detail-value{line-height:1.2}.duration-badge{background:#dbeafe;border-radius:4px;padding:2px 6px}.purpose-item{flex:1 1;max-width:400px}.purpose-text{word-break:break-word}.recurring-indicator{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border:1px solid #818cf8;border-radius:6px;display:inline-block;font-size:12px;margin-right:4px;padding:2px 6px}.booking-action-section{align-items:center;display:flex;flex-shrink:0;justify-content:flex-end;min-width:120px}.btn-cancel-booking{align-items:center;background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 14px;transition:all .2s ease;white-space:nowrap}.btn-cancel-booking:hover{background:#fecaca;border-color:#f87171;color:#7f1d1d}.btn-cancel-booking .btn-icon{font-size:14px;font-weight:700}.no-action-placeholder{align-items:center;display:flex;justify-content:center;min-height:40px}.status-info{color:#64748b;font-size:13px;font-weight:600}.empty-state{border:2px dashed #cbd5e1}.empty-icon{filter:grayscale(100%);font-size:80px;opacity:.4}.empty-state p{margin:0 auto}.my-bookings-view .modal-overlay{align-items:center;animation:luxuryFadeIn .4s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);background:linear-gradient(135deg,#141e30f2,#243b55f2);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.my-bookings-view .modal-content.cancel-modal{animation:luxurySlideUp .5s cubic-bezier(.16,1,.3,1);background:linear-gradient(135deg,#f8f9fc,#e9ecf5 50%,#f0f2f8);border-radius:28px;box-shadow:0 40px 100px #0006,0 0 0 1px #ffffff1a,inset 0 0 0 1px #ffffff0d;max-height:92vh;max-width:540px;overflow:hidden;padding:0;position:relative;width:100%}.my-bookings-view .cancel-modal .modal-header{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626 50%,#f87171);display:flex;justify-content:space-between;overflow:hidden;padding:32px 36px;position:relative}.my-bookings-view .cancel-modal .modal-header:before{animation:headerShine 8s ease-in-out infinite;background:radial-gradient(circle at top right,#ef444426,#0000 50%);content:"";height:200%;pointer-events:none;position:absolute;right:-50%;top:-50%;width:200%}.my-bookings-view .cancel-modal .modal-header h3{color:#fff;font-size:28px;font-weight:800;letter-spacing:-.8px;line-height:1.2;margin:0;position:relative;text-shadow:0 4px 12px #0000004d;z-index:1}.my-bookings-view .cancel-modal .modal-close{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:32px;font-weight:300;height:48px;justify-content:center;line-height:1;padding:0;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:48px;z-index:1}.my-bookings-view .cancel-modal .modal-close:hover{background:#ffffff40;border-color:#ffffff80;box-shadow:0 8px 24px #0000004d;transform:rotate(90deg) scale(1.1)}.my-bookings-view .cancel-modal .modal-body{background:linear-gradient(135deg,#f5f7fc,#edf0f9);padding:36px}.my-bookings-view .cancel-modal .modal-body>p{color:#2d3748;font-size:16px;font-weight:600;line-height:1.6;margin:0 0 24px;text-align:center}.my-bookings-view .cancel-modal .booking-summary{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:2px solid #ef44444d;border-radius:20px;box-shadow:0 4px 16px #ef444426;margin:24px 0;padding:24px}.my-bookings-view .cancel-modal .booking-summary>div{align-items:baseline;border-bottom:1px solid #ef444426;display:flex;margin-bottom:12px;padding:8px 0;transition:all .3s ease}.my-bookings-view .cancel-modal .booking-summary>div:last-child{border-bottom:none;margin-bottom:0}.my-bookings-view .cancel-modal .booking-summary>div:hover{background:#ef444414;border-radius:8px;padding-left:8px}.my-bookings-view .cancel-modal .booking-summary strong{color:#dc2626;font-size:14px;font-weight:800;letter-spacing:.5px;margin-right:12px;min-width:80px;text-transform:uppercase}.my-bookings-view .cancel-modal .booking-summary>div:not(strong){color:#2d3748;font-size:15px;font-weight:600}.my-bookings-view .cancel-modal .warning-text{align-items:center;animation:warningPulse 2s ease-in-out infinite;background:linear-gradient(135deg,#fef3c7,#fed7aa);border:2px solid #f59e0b;border-radius:16px;box-shadow:0 4px 12px #f59e0b33;color:#92400e;display:flex;font-size:14px;font-weight:700;gap:12px;margin:24px 0 0;padding:16px 20px}@keyframes warningPulse{0%,to{box-shadow:0 4px 12px #f59e0b33;transform:scale(1)}50%{box-shadow:0 6px 16px #f59e0b4d;transform:scale(1.02)}}.my-bookings-view .cancel-modal .modal-actions{background:linear-gradient(135deg,#f5f7fc,#edf0f9);border-top:2px solid #ef444433;display:flex;gap:16px;justify-content:flex-end;padding:28px 36px}.my-bookings-view .cancel-modal .admin-btn{border:none;border-radius:14px;box-shadow:0 6px 20px #00000026;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;letter-spacing:.8px;overflow:hidden;padding:18px 28px;position:relative;text-transform:uppercase;transition:all .4s cubic-bezier(.4,0,.2,1)}.my-bookings-view .cancel-modal .admin-btn:before{background:#fff6;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.my-bookings-view .cancel-modal .admin-btn:active:before{height:400px;width:400px}.my-bookings-view .cancel-modal .admin-btn-secondary{background:linear-gradient(135deg,#e2e8f0,#cbd5e0);color:#2d3748}.my-bookings-view .cancel-modal .admin-btn-secondary:hover:not(:disabled){background:linear-gradient(135deg,#cbd5e0,#a0aec0);box-shadow:0 10px 30px #0003;transform:translateY(-3px)}.my-bookings-view .cancel-modal .admin-btn-danger{background:linear-gradient(135deg,#fca5a5,#ef4444);color:#7f1d1d;font-weight:800}.my-bookings-view .cancel-modal .admin-btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#f87171,#dc2626);box-shadow:0 12px 40px #ef444480;transform:translateY(-3px)}.my-bookings-view .cancel-modal .admin-btn:disabled{background:linear-gradient(135deg,#e2e8f0,#cbd5e0);box-shadow:0 4px 12px #0000001a;color:#a0aec0;cursor:not-allowed;opacity:.6;transform:none}.expired-booking-warning{background-color:#fff3cd;border:2px solid #ffc107;margin:16px 0}.warning-content strong{margin-bottom:4px}.warning-content p{color:#92400e}@media (max-width:768px){.bookings-table-desktop{display:none}.bookings-cards-mobile{display:block}.bookings-filters{gap:6px;padding:12px}.filter-tab{flex:1 1 auto;font-size:12px;min-width:-webkit-fit-content;min-width:fit-content;padding:10px 16px;text-align:center}.bulk-actions-bar{flex-direction:column;gap:12px;padding:14px 16px}.btn-bulk-delete,.btn-cancel-booking,.bulk-selection-info{justify-content:center;width:100%}.my-bookings-view .modal-content.cancel-modal{margin:12px;max-height:94vh;max-width:96%}.my-bookings-view .cancel-modal .modal-header{padding:28px 24px}.my-bookings-view .cancel-modal .modal-header h3{font-size:24px}.my-bookings-view .cancel-modal .modal-close{font-size:28px;height:44px;width:44px}.my-bookings-view .cancel-modal .modal-body{padding:28px 24px}.my-bookings-view .cancel-modal .booking-summary{padding:20px}.my-bookings-view .cancel-modal .modal-actions{flex-direction:column;gap:14px;padding:24px}.my-bookings-view .cancel-modal .admin-btn{width:100%}}@media (max-width:480px){.filter-tab{font-size:11px;padding:8px 12px}.booking-card{padding:16px}.booking-card-header{align-items:flex-start;flex-direction:column;gap:12px}.status-badge{font-size:10px;padding:5px 10px}.empty-icon{font-size:60px}.empty-state h3{font-size:18px}.empty-state p{font-size:14px}.my-bookings-view .modal-overlay{padding:12px}.my-bookings-view .modal-content.cancel-modal{border-radius:24px;max-height:95vh}.my-bookings-view .cancel-modal .modal-header{border-radius:24px 24px 0 0;padding:24px 20px}.my-bookings-view .cancel-modal .modal-header h3{font-size:22px}.my-bookings-view .cancel-modal .modal-close{font-size:24px;height:40px;width:40px}.my-bookings-view .cancel-modal .modal-body{padding:24px 20px}.my-bookings-view .cancel-modal .modal-body>p{font-size:15px}.my-bookings-view .cancel-modal .booking-summary{padding:18px}.my-bookings-view .cancel-modal .booking-summary strong{font-size:13px;min-width:75px}.my-bookings-view .cancel-modal .modal-actions{padding:20px}.my-bookings-view .cancel-modal .admin-btn{font-size:13px;padding:16px 24px}}.booking-requests-view .modal-overlay{align-items:center;animation:luxuryFadeIn .4s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);background:linear-gradient(135deg,#141e30f2,#243b55f2);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}@keyframes luxuryFadeIn{0%{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);opacity:0}to{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:1}}.booking-requests-view .modal-content.action-modal{animation:luxurySlideUp .5s cubic-bezier(.16,1,.3,1);background:linear-gradient(135deg,#f8f9fc,#e9ecf5 50%,#f0f2f8);border-radius:28px;box-shadow:0 40px 100px #0006,0 0 0 1px #ffffff1a,inset 0 0 0 1px #ffffff0d;max-height:92vh;max-width:580px;overflow:hidden;padding:0;position:relative;width:100%}@keyframes luxurySlideUp{0%{opacity:0;transform:translateY(60px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}.booking-requests-view .action-modal .modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);display:flex;justify-content:space-between;overflow:hidden;padding:32px 36px;position:relative}.booking-requests-view .action-modal .modal-header:before{animation:headerShine 8s ease-in-out infinite;background:radial-gradient(circle at top right,#667eea26,#0000 50%);content:"";height:200%;pointer-events:none;position:absolute;right:-50%;top:-50%;width:200%}@keyframes headerShine{0%,to{opacity:.5;transform:translate(0)}50%{opacity:.8;transform:translate(-20px,-20px)}}.booking-requests-view .action-modal .modal-header h3{color:#fff;font-size:28px;font-weight:800;letter-spacing:-.8px;line-height:1.2;margin:0;position:relative;text-shadow:0 4px 12px #0000004d;z-index:1}.booking-requests-view .action-modal .modal-close{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:32px;font-weight:300;height:48px;justify-content:center;line-height:1;padding:0;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:48px;z-index:1}.booking-requests-view .action-modal .modal-close:hover{background:#ffffff40;border-color:#ffffff80;box-shadow:0 8px 24px #0000004d;transform:rotate(90deg) scale(1.1)}.booking-requests-view .action-modal .modal-body{background:linear-gradient(135deg,#f5f7fc,#edf0f9);padding:36px}.booking-requests-view .action-modal .modal-body>p{color:#2d3748;font-size:16px;font-weight:600;line-height:1.6;margin:0 0 24px;text-align:center}.booking-requests-view .booking-summary{background:linear-gradient(135deg,#e8ebf7,#d9dff2);border:2px solid #667eea33;border-radius:20px;box-shadow:0 4px 16px #667eea1f;margin-bottom:24px;padding:24px}.booking-requests-view .booking-summary>div{align-items:baseline;border-bottom:1px solid #667eea1a;display:flex;margin-bottom:12px;padding:8px 0;transition:all .3s ease}.booking-requests-view .booking-summary>div:last-child{border-bottom:none;margin-bottom:0}.booking-requests-view .booking-summary>div:hover{background:#667eea0d;border-radius:8px;padding-left:8px}.booking-requests-view .booking-summary strong{color:#667eea;font-size:14px;font-weight:800;letter-spacing:.5px;margin-right:12px;min-width:100px;text-transform:uppercase}.booking-requests-view .booking-summary>div:not(strong){color:#2d3748;font-size:15px;font-weight:600}.booking-requests-view .rejection-reason-group{margin-top:28px}.booking-requests-view .rejection-reason-group label{color:#1a202c;display:block;font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.booking-requests-view .rejection-reason-group .required{color:#e53e3e;font-size:14px;font-weight:800;margin-left:4px}.booking-requests-view .rejection-reason-group textarea{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:2px solid #d1d9ed;border-radius:14px;box-shadow:0 2px 8px #667eea14;color:#1a202c;font-family:inherit;font-size:15px;font-weight:500;line-height:1.6;min-height:120px;padding:16px 20px;resize:vertical;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%}.booking-requests-view .rejection-reason-group textarea:focus{background:#fffffff2;border-color:#667eea;box-shadow:0 0 0 4px #667eea26,0 8px 24px #667eea40;outline:none;transform:translateY(-2px)}.booking-requests-view .rejection-reason-group textarea::placeholder{color:#a0aec0;font-weight:500}.booking-requests-view .action-modal .modal-actions{background:linear-gradient(135deg,#f5f7fc,#edf0f9);border-top:2px solid #667eea33;display:flex;gap:16px;padding:28px 36px}.booking-requests-view .admin-btn{border:none;border-radius:14px;box-shadow:0 6px 20px #00000026;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;letter-spacing:.8px;overflow:hidden;padding:18px 28px;position:relative;text-transform:uppercase;transition:all .4s cubic-bezier(.4,0,.2,1)}.booking-requests-view .admin-btn:before{background:#fff6;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.booking-requests-view .admin-btn:active:before{height:400px;width:400px}.booking-requests-view .admin-btn-secondary{background:linear-gradient(135deg,#e2e8f0,#cbd5e0);color:#2d3748}.booking-requests-view .admin-btn-secondary:hover:not(:disabled){background:linear-gradient(135deg,#cbd5e0,#a0aec0);box-shadow:0 10px 30px #0003;transform:translateY(-3px)}.booking-requests-view .admin-btn-success{background:linear-gradient(135deg,#6ee7b7,#10b981);color:#064e3b;font-weight:800}.booking-requests-view .admin-btn-success:hover:not(:disabled){background:linear-gradient(135deg,#34d399,#059669);box-shadow:0 12px 40px #10b98180;transform:translateY(-3px)}.booking-requests-view .admin-btn-danger{background:linear-gradient(135deg,#fca5a5,#ef4444);color:#7f1d1d;font-weight:800}.booking-requests-view .admin-btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#f87171,#dc2626);box-shadow:0 12px 40px #ef444480;transform:translateY(-3px)}.booking-requests-view .admin-btn:disabled{background:linear-gradient(135deg,#e2e8f0,#cbd5e0);box-shadow:0 4px 12px #0000001a;color:#a0aec0;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.booking-requests-view .modal-content.action-modal{margin:12px;max-height:94vh;max-width:96%}.booking-requests-view .action-modal .modal-header{padding:28px 24px}.booking-requests-view .action-modal .modal-header h3{font-size:24px}.booking-requests-view .action-modal .modal-close{font-size:28px;height:44px;width:44px}.booking-requests-view .action-modal .modal-body{padding:28px 24px}.booking-requests-view .booking-summary{padding:20px}.booking-requests-view .action-modal .modal-actions{flex-direction:column;gap:14px;padding:24px}.booking-requests-view .admin-btn{width:100%}}@media (max-width:480px){.booking-requests-view .modal-overlay{padding:12px}.booking-requests-view .modal-content.action-modal{border-radius:24px;max-height:95vh}.booking-requests-view .action-modal .modal-header{border-radius:24px 24px 0 0;padding:24px 20px}.booking-requests-view .action-modal .modal-header h3{font-size:22px}.booking-requests-view .action-modal .modal-close{font-size:24px;height:40px;width:40px}.booking-requests-view .action-modal .modal-body{padding:24px 20px}.booking-requests-view .action-modal .modal-body>p{font-size:15px}.booking-requests-view .booking-summary{padding:18px}.booking-requests-view .booking-summary strong{font-size:13px;min-width:90px}.booking-requests-view .booking-summary>div:not(strong){font-size:14px}.booking-requests-view .rejection-reason-group textarea{font-size:14px;padding:14px 18px}.booking-requests-view .action-modal .modal-actions{padding:20px}.booking-requests-view .admin-btn{font-size:13px;padding:16px 24px}}@media (max-width:360px){.booking-requests-view .action-modal .modal-header h3{font-size:20px}.booking-requests-view .booking-summary{padding:16px}.booking-requests-view .rejection-reason-group textarea{font-size:13px;padding:12px 16px}}@media (prefers-color-scheme:dark){.booking-requests-view .action-modal .modal-body,.booking-requests-view .modal-content.action-modal{background:#1a202c}.booking-requests-view .action-modal .modal-body>p{color:#e2e8f0}.booking-requests-view .booking-summary{background:linear-gradient(135deg,#2d3748,#4a5568);border-color:#667eea}.booking-requests-view .booking-summary strong{color:#a0c4ff}.booking-requests-view .booking-summary>div:not(strong),.booking-requests-view .rejection-reason-group label{color:#e2e8f0}.booking-requests-view .rejection-reason-group textarea{background:#2d3748;border-color:#4a5568;color:#e2e8f0}.booking-requests-view .action-modal .modal-actions{background:#1a202c}}@media print{.booking-requests-view .modal-overlay{background:none}.booking-requests-view .modal-actions,.booking-requests-view .modal-close{display:none}.booking-requests-view .modal-content.action-modal{animation:none;background:none;border:none;box-shadow:none;max-height:none;max-width:100%;overflow:visible;padding:0;width:auto}}.booking-requests-view{box-sizing:border-box;min-height:100vh;width:100%}.booking-requests-view .page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.booking-requests-view .header-left-compact{flex-shrink:0}.booking-requests-view .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.booking-requests-view .page-title-compact .title-icon{color:#704493;font-size:1.25rem}.booking-requests-view .header-filters-compact{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:.625rem;justify-content:flex-end}.filter-tabs-compact{background:#f1f5f9;border-radius:8px;display:flex;gap:4px;padding:4px}.filter-tab-compact{background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:all .2s ease;white-space:nowrap}.filter-tab-compact:hover{background:#ffffff80;color:#374151}.filter-tab-compact.active{background:#704493;box-shadow:0 1px 3px #7044934d;color:#fff}.booking-requests-view .input.search-compact{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.5rem;min-width:220px;padding:.5rem .75rem;transition:all .2s ease}.booking-requests-view .input.search-compact:focus-within{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a}.booking-requests-view .input.search-compact .icon{align-items:center;color:#94a3b8;display:flex;font-size:1rem}.booking-requests-view .input.search-compact input{background:#0000;border:none;color:#1e293b;font-size:.875rem;outline:none;width:100%}.booking-requests-view .input.search-compact input::placeholder{color:#94a3b8}.date-input-compact{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#374151;cursor:pointer;font-size:.875rem;padding:.5rem .75rem;transition:all .2s ease}.date-input-compact:focus{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.btn-clear-compact{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem .75rem;transition:all .2s ease}.btn-clear-compact:hover{background:#e2e8f0;color:#374151}.btn-delete-compact{align-items:center;background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#dc2626;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.375rem;padding:.5rem .875rem;transition:all .2s ease}.btn-delete-compact:hover{background:#dc2626;border-color:#dc2626;color:#fff}.btn-download-compact{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;box-shadow:0 2px 6px #10b98140;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.375rem;padding:.5rem .875rem;transition:all .2s ease}.btn-download-compact:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 10px #10b98159;transform:translateY(-1px)}.results-count-bar{background:#f8fafc;border-radius:8px;color:#64748b;font-size:.8125rem;margin-bottom:1rem;padding:.5rem 1rem}.results-count-bar strong{color:#374151;font-weight:600}.bookings-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.bookings-table-desktop{display:block}.table.card{border:none;border-radius:0;box-shadow:none}.booking-requests-view .table-head{align-items:center;background:linear-gradient(40deg,#704493,#512e6e)!important;border-bottom:2px solid #e5e7eb;color:#fff!important;display:flex;font-size:13px;font-weight:600;padding:0}.booking-requests-view .table-head .cell{color:#fff!important;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 12px;text-transform:uppercase}.booking-requests-view .table-row{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;padding:0;transition:background-color .15s ease}.booking-requests-view .table-row .cell{padding:14px 12px}.table-row:hover{background:#f9fafb}.table-row:last-child{border-bottom:none}.table-row.row-expired{background:#fef2f2!important;border-left:4px solid #dc2626}.table-row.row-expired:hover{background:#fee2e2!important}.table-row.row-urgent{background:#fffbeb!important;border-left:4px solid #f59e0b}.table-row.row-urgent:hover{background:#fef3c7!important}.urgency-badge{border-radius:4px;display:block;font-size:9px;font-weight:700;letter-spacing:.5px;margin-top:4px;padding:2px 6px;text-align:center;text-transform:uppercase}.urgency-badge.expired{background:#dc2626;color:#fff}.urgency-badge.urgent{background:#f59e0b;color:#fff}.cell{color:#374151;font-size:14px}.cell.actions-cell{align-items:center;display:flex;gap:8px;justify-content:flex-end}.table-head .cell.actions-cell{justify-content:center}.room-info,.user-info{display:flex;flex-direction:column;gap:2px;min-width:0}.room-info strong,.user-info strong{color:#1f2937;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-info small,.user-info small{color:#6b7280;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{font-size:11px;letter-spacing:.8px;padding:6px 14px}.status-badge.status-pending{background:#fef3c7;border:1px solid #fcd34d}.status-badge.status-approved{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.status-badge.status-rejected{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.status-badge.status-cancelled{background:#f3f4f6;border:1px solid #d1d5db;color:#4b5563}.duration-badge{background:#eff6ff;font-size:12px;font-weight:600;padding:4px 10px}.purpose-text{color:#4b5563;font-size:13px}.btn{align-items:center;display:inline-flex;font-size:13px;gap:4px;padding:8px 16px}.btn-small{font-size:12px;font-weight:600;padding:7px 14px}.btn-success{background:#0b7a5f;border:1px solid #0b7a5f;color:#fff}.btn-success:hover{background:#065f47;border-color:#065f47;box-shadow:0 3px 8px #0b7a5f59;transform:translateY(-1px)}.btn-danger{border:1px solid #dc2626}.btn-danger:hover{background:#dc2626;border-color:#dc2626;box-shadow:0 3px 8px #dc262659;color:#fff;transform:translateY(-1px)}.booking-requests-view .btn-action-compact{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:1.125rem;height:32px;justify-content:center;min-width:32px;padding:0;transition:all .2s ease;width:32px}.booking-requests-view .btn-action-compact:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.booking-requests-view .btn-approve{background:#d1fae5;border-color:#6ee7b7;color:#065f46}.booking-requests-view .btn-approve:hover{background:#10b981;border-color:#10b981;box-shadow:0 2px 8px #10b9814d;color:#fff}.booking-requests-view .btn-reject{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.booking-requests-view .btn-reject:hover{background:#ef4444;border-color:#ef4444;box-shadow:0 2px 8px #ef44444d;color:#fff}.booking-requests-view .btn-action-compact.btn-half{flex:1 1;font-size:14px;font-weight:600;gap:6px;padding:10px 16px;width:auto}.empty-state{padding:60px 20px}.empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.empty-state h3{color:#374151;font-size:18px;font-weight:600;margin:0 0 8px}.empty-state p{font-size:14px}@media (max-width:1200px){.booking-requests-view .page-header-compact{align-items:stretch;flex-direction:column;gap:1rem}.booking-requests-view .header-filters-compact{flex-wrap:wrap;justify-content:flex-start}.booking-requests-view .input.search-compact{flex:1 1;min-width:180px}}@media (max-width:768px){.booking-requests-view .page-header-compact{padding:.75rem}.booking-requests-view .header-filters-compact{gap:.5rem}.filter-tabs-compact{justify-content:center;width:100%}.booking-requests-view .input.search-compact{min-width:auto;width:100%}.date-input-compact{flex:1 1;min-width:120px}.bookings-table-desktop{display:none}.bookings-cards-mobile{display:block;padding:16px}.booking-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;padding:16px}.booking-card-header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:10px;margin-bottom:12px;padding-bottom:12px}.booking-card-header .room-name{color:#1f2937;flex:1 1;font-weight:600}.booking-card-body{display:flex;flex-direction:column;gap:8px}.booking-detail{align-items:center;display:flex;font-size:13px;justify-content:space-between}.booking-detail .label{color:#6b7280;font-weight:500}.booking-detail .value{color:#374151;text-align:right}.booking-card-footer{border-top:1px solid #f3f4f6;display:flex;gap:8px;margin-top:12px;padding-top:12px}.btn-half{flex:1 1}}.all-bookings-view{box-sizing:border-box;min-height:100vh;width:100%}.all-bookings-view .page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.all-bookings-view .header-left-compact{flex-shrink:0}.all-bookings-view .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.all-bookings-view .page-title-compact .title-icon{color:#704493;font-size:1.25rem}.all-bookings-view .header-filters-compact{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:.625rem;justify-content:flex-end}.all-bookings-view .btn-delete-selected{background:linear-gradient(135deg,#ef4444,#dc2626)!important}.all-bookings-view .btn-delete-selected:hover{background:linear-gradient(135deg,#dc2626,#b91c1c)!important}.statistics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:30px}.stat-card{border:2px solid #0000;border-radius:16px;box-shadow:0 2px 8px #0000000f;overflow:hidden;padding:24px 20px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.stat-card:before{content:"";height:4px;left:0;position:absolute;right:0;top:0;transition:transform .3s ease}.stat-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:56px;justify-content:center;width:56px}.stat-icon svg{height:32px;width:32px}.stat-content{flex:1 1}.stat-value{font-size:28px;font-weight:800;line-height:1;margin:0 0 6px}.stat-label{font-size:13px;letter-spacing:.5px;margin:0;opacity:.7}.stat-card.stat-total:before{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-card.stat-total .stat-icon{background:linear-gradient(135deg,#667eea1a,#764ba21a)}.stat-card.stat-total .stat-value{color:#667eea}.stat-card.stat-confirmed:before{background:linear-gradient(135deg,#10b981,#059669)}.stat-card.stat-confirmed .stat-icon{background:linear-gradient(135deg,#10b9811a,#0596691a)}.stat-card.stat-confirmed .stat-value{color:#10b981}.stat-card.stat-ongoing:before{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-card.stat-ongoing .stat-icon{background:linear-gradient(135deg,#3b82f61a,#2563eb1a)}.stat-card.stat-ongoing .stat-value{color:#3b82f6}.stat-card.stat-pending:before{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-card.stat-pending .stat-icon{background:linear-gradient(135deg,#f59e0b1a,#d977061a)}.stat-card.stat-pending .stat-value{color:#f59e0b}.stat-card.stat-completed:before{background:linear-gradient(135deg,#6b7280,#4b5563)}.stat-card.stat-completed .stat-icon{background:linear-gradient(135deg,#6b72801a,#4b55631a)}.stat-card.stat-completed .stat-value{color:#6b7280}.stat-card.stat-cancelled:before{background:linear-gradient(135deg,#ef4444,#dc2626)}.stat-card.stat-cancelled .stat-icon{background:linear-gradient(135deg,#ef44441a,#dc26261a)}.stat-card.stat-cancelled .stat-value{color:#ef4444}.search-filter-row{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000d;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px;padding:16px 20px}.search-box{flex:1 1;max-width:350px;min-width:200px;position:relative}.search-box .search-icon{color:#9ca3af;font-size:18px;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.search-input{border:2px solid #e5e7eb;transition:all .2s ease}.search-input:focus{border-color:#704493;box-shadow:0 0 0 3px #7044931a}.date-filters{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.date-filter-group{align-items:center;display:flex;gap:6px}.date-filter-group label{color:#6b7280;font-size:13px;font-weight:600}.date-input{border:2px solid #e5e7eb;border-radius:8px;font-size:13px;padding:8px 12px;transition:all .2s ease}.date-input:focus{border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.btn-clear-filters{background:#f3f4f6;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-size:13px;font-weight:600;padding:8px 14px;transition:all .2s ease}.btn-clear-filters:hover{background:#e5e7eb;color:#374151}.btn-download{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;box-shadow:0 2px 8px #10b9814d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;margin-left:auto;padding:10px 18px;transition:all .2s ease}.btn-download:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.btn-download svg{font-size:18px}.bookings-filters{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 1px 3px #0000000d;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px;padding:20px}.filter-tab{background:#fff;border:2px solid #e5e7eb;border-radius:10px;color:#6b7280;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s ease}.filter-tab:hover{background:#f9fafb;border-color:#d1d5db;transform:translateY(-2px)}.filter-tab.active{background:linear-gradient(135deg,#0b7a5f,#0a6b53);border-color:#0b7a5f;box-shadow:0 4px 12px #0b7a5f4d;color:#fff}.filter-count{background:#fff3;border-radius:12px;font-size:12px;font-weight:700;min-width:24px;padding:2px 8px;text-align:center}.filter-tab.active .filter-count{background:#ffffff4d}.filter-tab:not(.active) .filter-count{background:#e5e7eb;color:#6b7280}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:10px;box-shadow:0 4px 12px #ef44444d;font-weight:700;margin-left:auto;transition:all .3s ease}.btn-danger:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 16px #ef444466;transform:translateY(-2px)}.bookings-container{overflow-x:auto;width:100%}.bookings-table-desktop{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.bookings-table{border-collapse:collapse;table-layout:fixed;width:100%}.bookings-table thead tr{background:linear-gradient(40deg,#704493,#512e6e)}.bookings-table thead th{border:none;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:14px 12px;text-align:left;text-transform:uppercase}.bookings-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background-color .15s ease}.bookings-table tbody tr:hover{background:linear-gradient(135deg,#f9fafb,#fff)}.bookings-table tbody tr:last-child{border-bottom:none}.bookings-table tbody td{color:#374151;font-size:13px;padding:14px 12px;vertical-align:middle}.recurring-info{font-size:11px}.recurring-badge{background-color:#e3f2fd;border-radius:4px;color:#1565c0;display:inline-block;font-size:11px;font-weight:500;margin-bottom:2px;padding:3px 6px}.recurring-details{color:#666;font-size:10px;margin-top:2px}.single-badge{background-color:#f5f5f5;border-radius:4px;color:#666;display:inline-block;font-size:11px;padding:3px 8px}.booking-id-cell{background:#f1f5f9;border-radius:4px;color:#475569;cursor:default;font-family:monospace;font-size:.75rem;padding:.25rem .5rem}.user-info{display:flex;flex-direction:column;gap:4px}.user-info strong{color:#111827;font-size:14px;font-weight:700}.user-info small{color:#9ca3af;font-size:12px}.room-info{display:flex;flex-direction:column;gap:4px}.room-info strong{color:#111827;font-size:14px;font-weight:700}.room-info small{color:#9ca3af;font-size:12px}.datetime-info{display:flex;flex-direction:column;gap:4px}.datetime-info div{color:#374151;font-size:13px}.duration-badge{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:1px solid #93c5fd;border-radius:6px;color:#1e40af;display:inline-block;font-size:11px;font-weight:700;padding:4px 8px;white-space:nowrap}.purpose-text{color:#374151;font-size:14px;line-height:1.5}.status-badge{border:1px solid;border-radius:16px;font-size:10px;padding:5px 10px;transition:all .2s ease;white-space:nowrap}.status-badge.status-pending{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#fbbf24;color:#92400e}.status-badge.status-confirmed,.status-badge.status-upcoming{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#34d399;color:#065f46}.status-badge.status-ongoing{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#60a5fa;color:#1e40af}.status-badge.status-cancelled{background:linear-gradient(135deg,#fecaca,#fca5a5);border-color:#f87171;color:#991b1b}.status-badge.status-rejected{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#fca5a5;color:#7f1d1d}.status-badge.status-completed{background:linear-gradient(135deg,#e5e7eb,#d1d5db);border-color:#9ca3af;color:#374151}.bookings-cards-mobile{display:none}.booking-card{background:#fff;border:2px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #0000000f;margin-bottom:16px;padding:20px;transition:all .3s ease}.booking-card:hover{border-color:#0b7a5f;box-shadow:0 8px 24px #0000001a;transform:translateY(-2px)}.booking-card-header{align-items:center;border-bottom:2px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.room-name{color:#111827;font-size:16px;font-weight:700}.booking-card-body{display:flex;flex-direction:column;gap:12px}.booking-detail{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.booking-detail .label{color:#6b7280;font-size:13px;font-weight:600}.booking-detail .value{color:#111827;font-size:13px;font-weight:600;text-align:right}.empty-state{background:linear-gradient(135deg,#fff,#f9fafb);border:2px dashed #d1d5db;border-radius:16px;padding:80px 24px}.empty-icon{filter:grayscale(50%);font-size:72px;margin-bottom:20px;opacity:.6}.empty-state h3{color:#111827;font-size:22px;font-weight:700;margin:0 0 12px}.empty-state p{color:#6b7280;font-size:15px;line-height:1.6;margin:0}.modal-overlay{animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#111827e6,#374151f2)}.modal-content.action-modal{animation:slideUp .3s ease;background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000040;max-width:500px;width:100%}.modal-header{border-bottom:2px solid #f3f4f6;padding:24px 28px}.modal-header h3{color:#111827;font-size:20px;font-weight:800;margin:0}.modal-close{background:#f3f4f6;color:#6b7280;font-size:28px;height:40px;transition:all .2s ease;width:40px}.modal-close:hover{background:#e5e7eb;color:#111827;transform:rotate(90deg)}.modal-body{padding:28px}.modal-body>p{color:#374151;font-size:15px;line-height:1.6;margin:0 0 20px}.expired-booking-warning{align-items:flex-start;background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #fbbf24;border-radius:12px;display:flex;gap:12px;padding:16px}.warning-icon{font-size:24px}.warning-content{flex:1 1}.warning-content strong{color:#92400e;display:block;font-size:14px;font-weight:800;margin-bottom:6px}.warning-content p{color:#78350f;font-size:13px;line-height:1.5;margin:0}.modal-actions{background:#f9fafb;border-radius:0 0 20px 20px;border-top:2px solid #f3f4f6;padding:20px 28px}.admin-btn{border:none;border-radius:12px;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;letter-spacing:.5px;padding:14px 24px;text-transform:uppercase;transition:all .3s ease}.admin-btn-secondary{background:#e5e7eb;color:#374151}.admin-btn-secondary:hover:not(:disabled){background:#d1d5db;box-shadow:0 6px 16px #0000001a;transform:translateY(-2px)}.admin-btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef44444d;color:#fff}.admin-btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 8px 20px #ef444466;transform:translateY(-2px)}.admin-btn:disabled{background:#e5e7eb;box-shadow:none;color:#9ca3af;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:1024px){.statistics-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.bookings-table-desktop{display:none}.bookings-cards-mobile{display:block}.search-filter-row{align-items:stretch;flex-direction:column;gap:12px;padding:16px}.search-box{max-width:100%}.date-filters{justify-content:space-between;width:100%}.btn-download{justify-content:center;margin-left:0;width:100%}.statistics-grid{gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.stat-card{gap:12px;padding:16px}.stat-icon{font-size:28px;height:48px;width:48px}.stat-value{font-size:24px}.stat-label{font-size:11px}.bookings-filters{gap:8px;padding:16px}.filter-tab{flex:1 1 45%;font-size:12px;justify-content:center;padding:10px 12px;text-align:center}.filter-count{font-size:11px;padding:2px 6px}.btn-danger{margin-left:0;margin-top:8px;width:100%}.modal-content.action-modal{max-width:95%}.modal-header{padding:20px 24px}.modal-header h3{font-size:18px}.modal-body{padding:24px}.modal-actions{flex-direction:column;padding:16px 24px}.admin-btn{width:100%}}@media (max-width:480px){.statistics-grid{grid-template-columns:1fr}.booking-card{padding:16px}.booking-card-header{align-items:flex-start;flex-direction:column;gap:12px}.filter-tab{flex:1 1 100%;font-size:11px;padding:8px 10px}.modal-close{font-size:24px;height:36px;width:36px}}.btn-feedback{align-items:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:11px;font-weight:600;gap:4px;padding:6px 12px;transition:all .2s ease}.btn-feedback:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 4px 8px #8b5cf64d;transform:translateY(-1px)}.no-feedback{color:#9ca3af;font-size:13px}.star-rating{display:inline-flex;gap:2px}.star-rating .star{color:#d1d5db;font-size:18px;transition:color .15s ease}.star-rating .star.filled{color:#f59e0b}.star-rating .star.clickable{cursor:pointer}.star-rating .star.clickable:hover{transform:scale(1.1)}.feedback-display{display:flex;justify-content:center}.feedback-modal{animation:slideUp .3s ease;background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000040;max-width:480px;width:100%}.feedback-booking-info{background:#f3f4f6;border-radius:12px;display:flex;flex-direction:column;gap:4px;margin-bottom:20px;padding:16px}.feedback-booking-info strong{color:#111827;font-size:16px}.feedback-booking-info span{color:#6b7280;font-size:13px}.feedback-form{display:flex;flex-direction:column;gap:20px}.feedback-field label{color:#374151;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.rating-input{background:#fef3c7;border:1px solid #fcd34d;border-radius:10px;display:flex;justify-content:center;padding:12px}.rating-input .star{font-size:28px}.feedback-checkboxes{display:flex;flex-direction:column;gap:12px}.feedback-checkbox{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;gap:10px;padding:12px 16px;transition:all .2s ease}.feedback-checkbox:hover{background:#f3f4f6;border-color:#d1d5db}.feedback-checkbox input[type=checkbox]{accent-color:#8b5cf6;cursor:pointer;height:18px;width:18px}.feedback-checkbox span{color:#374151;font-size:14px}.feedback-field textarea{border:1px solid #e5e7eb;border-radius:10px;font-family:inherit;font-size:14px;padding:12px 16px;resize:vertical;transition:border-color .2s ease;width:100%}.feedback-field textarea:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a;outline:none}.admin-btn-primary{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 4px 12px #8b5cf64d;color:#fff}.admin-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 8px 20px #8b5cf666;transform:translateY(-2px)}.gatemen-approval-view{box-sizing:border-box;min-height:100vh;width:100%}.gatemen-approval-view .page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.gatemen-approval-view .header-left-compact{flex-shrink:0}.gatemen-approval-view .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.gatemen-approval-view .page-title-compact .title-icon{color:#704493;font-size:1.25rem}.gatemen-approval-view .header-filters-compact{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:.625rem;justify-content:flex-end}.gatemen-approval-view .input.search-compact{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.5rem;min-width:280px;padding:.5rem .75rem;transition:all .2s ease}.gatemen-approval-view .input.search-compact:focus-within{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a}.gatemen-approval-view .input.search-compact .icon{align-items:center;color:#94a3b8;display:flex;font-size:1rem}.gatemen-approval-view .input.search-compact input{background:#0000;border:none;color:#1e293b;font-size:.875rem;outline:none;width:100%}.gatemen-approval-view .input.search-compact input::placeholder{color:#94a3b8}.gatemen-approval-view .table.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.gatemen-approval-view .table-head{align-items:center;background:linear-gradient(40deg,#704493,#512e6e)!important;border-bottom:2px solid #e5e7eb;color:#fff!important;display:flex;font-size:13px;font-weight:600;padding:0}.gatemen-approval-view .table-head .cell{color:#fff!important;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 16px;text-transform:uppercase}.gatemen-approval-view .table-row{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;padding:0;transition:background-color .15s ease}.gatemen-approval-view .table-row:hover{background:#f9fafb}.gatemen-approval-view .table-row:last-child{border-bottom:none}.gatemen-approval-view .table-row .cell{color:#374151;font-size:14px;padding:14px 16px}.gatemen-approval-view .table-head .cell:first-child,.gatemen-approval-view .table-row .cell:first-child{flex:1 1;min-width:250px}.gatemen-approval-view .table-head .cell:nth-child(2),.gatemen-approval-view .table-row .cell:nth-child(2){flex-grow:0;flex-shrink:0;padding-left:16px!important;width:200px}.gatemen-approval-view .email-cell{color:#1f2937;font-weight:500}.gatemen-approval-view .status-cell{align-items:center;display:flex}.gatemen-approval-view .no-results-cell{color:#64748b;padding:40px 20px!important;text-align:center;width:100%}.gatemen-approval-view .empty-state{background:#fff;padding:60px 20px;text-align:center}.gatemen-approval-view .empty-state h3{color:#374151;font-size:18px;font-weight:600;margin:0 0 8px}.gatemen-approval-view .empty-state p{color:#6b7280;font-size:14px;margin:0}.gatemen-approval-view .error-message{background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:14px;padding:12px 16px}@media (max-width:1200px){.gatemen-approval-view .page-header-compact{align-items:stretch;flex-direction:column;gap:1rem}.gatemen-approval-view .header-filters-compact{flex-wrap:wrap;justify-content:flex-start}.gatemen-approval-view .input.search-compact{flex:1 1;min-width:200px}}@media (max-width:768px){.gatemen-approval-view .page-header-compact{padding:.75rem}.gatemen-approval-view .header-filters-compact{gap:.5rem}.gatemen-approval-view .input.search-compact{min-width:auto;width:100%}.gatemen-approval-view .table.card{overflow-x:auto}.gatemen-approval-view .table-head,.gatemen-approval-view .table-row{min-width:500px}}.vehicle-dashboard{background-color:#f5f5f5;min-height:100vh;padding:20px}.dashboard-header{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px}.dashboard-header h1{color:#333;font-size:28px;margin:0}.date-range-selector{display:flex;gap:15px}.date-range-selector label{color:#666;display:flex;flex-direction:column;font-size:14px;gap:5px}.date-range-selector input[type=date]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px}.metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.metric-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;transition:transform .2s}.metric-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.metric-card h3{color:#666;font-size:14px;font-weight:500;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.metric-value{color:#333;font-size:36px;font-weight:700;margin:10px 0}.metric-details{color:#666;display:flex;font-size:13px;gap:15px;margin-top:10px}.metric-details .active{color:#4caf50}.metric-details .inactive{color:#f44336}.metric-details .idle{color:#ff9800}.charts-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(500px,1fr))}.chart-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.chart-card.small{grid-column:span 1;max-width:400px}.chart-card h3{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.dashboard-container{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:100vh}.loading-spinner{font-size:18px}.error-message{background:#ffebee;border:1px solid #f44336;border-radius:8px;color:#f44336;font-size:16px;padding:20px}.retry-button{background-color:#2196f3;border-radius:4px;padding:10px 20px}.retry-button:hover{background-color:#1976d2}.refresh-button{background-color:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background-color .2s}.refresh-button:hover{background-color:#1976d2}.capacity-overview{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:25px}.capacity-overview h2{color:#333;font-size:20px;font-weight:600;margin:0 0 20px}.capacity-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.capacity-card{border:2px solid;border-radius:8px;padding:20px;text-align:center;transition:transform .2s,box-shadow .2s}.capacity-card:hover{box-shadow:0 6px 12px #00000026;transform:translateY(-3px)}.capacity-card h4{font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.capacity-card .count{font-size:42px;font-weight:700;line-height:1;margin:10px 0}.capacity-card span{font-size:13px;opacity:.8}.capacity-card.status-over{background-color:#ffebee;border-color:#f44336;color:#c62828}.capacity-card.status-at{background-color:#fff3e0;border-color:#ff9800;color:#e65100}.capacity-card.status-optimal{background-color:#e8f5e9;border-color:#4caf50;color:#2e7d32}.capacity-card.status-under{background-color:#f5f5f5;border-color:#9e9e9e;color:#616161}.route-details-section,.top-users-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:25px}.route-details-section h2,.top-users-section h2{color:#333;font-size:20px;font-weight:600;margin:0 0 20px}.table-responsive{overflow-x:auto}.route-table,.users-table{background:#fff!important;border-collapse:collapse;border-radius:12px!important;box-shadow:0 2px 8px #0000001a!important;font-size:14px;overflow:hidden;width:100%}.route-table thead,.users-table thead{background-color:#f5f5f5}.route-table th,.users-table th{border-bottom:2px solid #e0e0e0;color:#333;font-weight:600;padding:12px 15px;text-align:left;white-space:nowrap}.route-table td,.users-table td{border-bottom:1px solid #f0f0f0;padding:12px 15px}.route-table tbody tr:hover,.users-table tbody tr:hover{background-color:#fafafa}.route-table td.negative{color:#f44336;font-weight:600}.route-table td.positive{color:#4caf50;font-weight:600}.status-badge{border-radius:12px;padding:4px 12px}.status-badge.status-over{background-color:#ffebee;color:#c62828}.status-badge.status-at{background-color:#fff3e0;color:#e65100}.status-badge.status-optimal{background-color:#e8f5e9;color:#2e7d32}.status-badge.status-under{background-color:#f5f5f5;color:#616161}.over-capacity{color:#f44336;font-weight:600}.normal{color:#4caf50;font-weight:600}@media (max-width:1200px){.charts-grid{grid-template-columns:1fr}.chart-card.small{max-width:100%}}@media (max-width:768px){.dashboard-header{align-items:flex-start;flex-direction:column;gap:15px}.date-range-selector{flex-direction:column;width:100%}.metrics-grid{grid-template-columns:1fr}.metric-value{font-size:28px}.capacity-cards{grid-template-columns:repeat(2,1fr)}.capacity-card .count{font-size:32px}}.admin-location-management{box-sizing:border-box;min-height:100vh;width:100%}.admin-location-management .page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;gap:1.5rem;justify-content:space-between;margin-bottom:1.5rem;padding:.75rem 1rem}.admin-location-management .header-left-compact{flex-shrink:0}.admin-location-management .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.admin-location-management .page-title-compact .title-icon{color:#704493;font-size:1.25rem}.admin-location-management .header-filters-compact{align-items:center;display:flex;flex:1 1;gap:.625rem;justify-content:flex-end}.admin-location-management .search-compact{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.5rem;min-width:280px;padding:.5rem .75rem;transition:all .2s ease}.admin-location-management .search-compact:focus-within{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a}.admin-location-management .search-compact .search-icon{align-items:center;color:#94a3b8;display:flex;font-size:1rem}.admin-location-management .search-compact input{background:#0000;border:none;color:#1e293b;font-size:.875rem;outline:none;width:100%}.admin-location-management .search-compact input::placeholder{color:#94a3b8}.table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.no-users{color:#6b7280;font-size:16px;padding:60px 20px;text-align:center}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:#6b4190;color:#fff}.users-table thead tr th:first-child{border-top-left-radius:12px}.users-table thead tr th:last-child{border-top-right-radius:12px}.users-table thead th{font-size:14px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.users-table tbody tr{background:#fff;border-bottom:1px solid #e5e7eb;transition:background-color .2s ease}.users-table tbody tr:nth-child(2n){background:#f9fafb}.users-table tbody tr:hover{background-color:#f0f4f8!important}.users-table tbody tr:last-child{border-bottom:none}.users-table tbody td{color:#374151;font-size:14px;padding:16px}.emp-id{color:#667eea;font-family:Courier New,monospace;font-weight:600}.user-name{color:#1f2937;font-weight:600}.user-email{color:#6b7280}.locations-cell{max-width:300px}.locations-display{display:flex;flex-wrap:wrap;gap:6px}.location-chip{background-color:#00b39e;border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:600;padding:4px 10px}.location-chip.more{background:#e5e7eb;color:#6b7280}.all-locations-badge{background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.actions-cell{text-align:center}.btn-edit{align-items:center;background:#f3f4f6;border:none;border-radius:6px;box-shadow:none;color:#6b7280;cursor:pointer;display:inline-flex;font-size:18px;height:36px;justify-content:center;padding:0;transition:all .2s ease;width:36px}.btn-edit:hover{background:#667eea;box-shadow:0 2px 8px #667eea4d;color:#fff;transform:scale(1.05)}.btn-edit:active{transform:scale(.95)}.modal-content{animation:modalFadeIn .3s ease;display:flex;flex-direction:column}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{align-items:flex-start;border-radius:16px 16px 0 0}.modal-header h2{margin:0 0 6px}.modal-subtitle{margin:0;opacity:.9}.btn-close{background:#fff3;border-radius:50%;color:#fff;font-size:24px;height:36px;transition:all .2s ease;width:36px}.btn-close:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-body{flex:1 1}.all-locations-toggle{background:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;margin-bottom:20px;padding:16px}.checkbox-label{color:#374151;font-size:15px;font-weight:600}.checkbox-label input[type=checkbox]{accent-color:#667eea;height:20px;width:20px}.checkbox-label span{-webkit-user-select:none;user-select:none}.info-text{background:#eff6ff;border-left:4px solid #3b82f6;border-radius:6px;color:#1e40af;font-size:13px;margin:12px 0 0;padding:12px}.location-search{margin-bottom:16px;position:relative}.location-search .search-icon{color:#9ca3af;font-size:18px;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.location-search input{border:1px solid #e2e8f0;border-radius:8px;font-size:14px;padding:10px 14px 10px 40px;transition:all .2s ease;width:100%}.location-search input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.locations-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));max-height:400px;overflow-y:auto;padding:4px}.location-badge{align-items:center;background:#f3f4f6;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:14px;font-weight:600;justify-content:space-between;padding:12px 14px;position:relative;text-align:left;transition:all .2s ease}.location-badge:hover{background:#e5e7eb;border-color:#d1d5db;transform:translateY(-1px)}.location-badge.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.location-badge.selected:hover{background:linear-gradient(135deg,#5568d3,#6a3e92)}.check-icon{font-size:16px;font-weight:700}.no-results{color:#9ca3af;font-size:14px;grid-column:1/-1;padding:40px 20px}.selection-summary{background:#eff6ff;border-radius:8px;color:#1e40af;font-size:14px;font-weight:600;margin-top:16px;padding:12px;text-align:center}.modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.btn{padding:10px 24px;transition:all .2s ease}.btn-primary{background:#667eea}.btn-primary:hover{background:#5568d3;transform:translateY(-1px)}.btn-secondary{background:#e5e7eb}.btn-secondary:hover{background:#d1d5db}@media (max-width:1024px){.admin-location-management .page-header-compact{align-items:stretch;flex-direction:column;gap:1rem}.admin-location-management .header-filters-compact{justify-content:flex-start}.users-table{font-size:13px}.users-table tbody td,.users-table thead th{padding:12px}.locations-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}@media (max-width:768px){.admin-location-management .search-compact{min-width:100%}.table-container{overflow-x:auto}.users-table{min-width:800px}.modal-content{max-height:100vh;max-width:100%}.modal-content,.modal-header{border-radius:0}.locations-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.btn{width:100%}}.location-master-view{box-sizing:border-box;min-height:100vh;width:100%}.locations-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));margin-top:1.5rem}.location-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;transition:all .3s ease}.location-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.location-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.location-title-section{align-items:center;display:flex;gap:1rem}.location-icon-wrapper{align-items:center;background:linear-gradient(135deg,#ede9fe,#ddd6fe);border:1px solid #c4b5fd;border-radius:12px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.location-icon{color:#7c3aed;font-size:1.75rem}.location-name{color:#1e293b;font-size:1.125rem;font-weight:700;line-height:1.3;margin:0}.location-code{background:#f1f5f9;border-radius:4px;color:#704493;display:inline-block;font-family:Courier New,monospace;font-size:.75rem;font-weight:700;letter-spacing:.5px;margin-top:.25rem;padding:.188rem .5rem}.location-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.location-detail-item{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:.5rem}.location-detail-item .detail-icon{color:#94a3b8;flex-shrink:0;font-size:1rem}.location-detail-item .detail-label{color:#475569;font-weight:600;min-width:100px}.location-detail-item .detail-value{color:#1e293b;font-weight:500}.location-actions{border-top:1px solid #e2e8f0;display:flex;gap:.5rem;padding-top:1rem}.btn-activate,.btn-deactivate{flex:1 1}.error-container,.loading-container{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:20px 0;padding:60px 20px}.spinner{border:4px solid #f3f3f3;border-top-color:#667eea}.error-text{color:#f44336;font-size:16px;margin:20px 0}.retry-button{background-color:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:background-color .2s}.retry-button:hover{background-color:#5568d3}.locations-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.no-locations{padding:60px}.no-locations p{color:#666;font-size:16px;margin-bottom:20px}.btn-add{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:transform .2s}.btn-add:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.locations-table{border-collapse:collapse;width:100%}.locations-table thead{background:linear-gradient(40deg,#704493,#512e6e)!important;color:#fff}.locations-table thead tr th:first-child{border-top-left-radius:12px}.locations-table thead tr th:last-child{border-top-right-radius:12px}.locations-table th{font-size:14px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.locations-table td:first-child,.locations-table th:first-child{width:80px}.locations-table td:nth-child(7),.locations-table th:nth-child(7){text-align:center}.locations-table td:nth-child(8),.locations-table th:nth-child(8){text-align:center;width:120px}.locations-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.locations-table tbody tr:hover{background-color:#f9fafb}.locations-table tbody tr.inactive-row{background-color:#f3f4f6;opacity:.6}.locations-table td{color:#374151;font-size:14px;padding:16px}.locations-table .location-code{background:#0000;border-radius:0;color:#374151;display:inline;font-family:inherit;font-weight:600;margin:0;padding:0 0 0 15px}.location-name{color:#1f2937;font-weight:600}.display-order{color:#6b7280;font-weight:600}.status-badge{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.5px;padding:6px 12px}.status-active{background:#d1fae5;color:#065f46}.status-inactive{background:#fee2e2;color:#991b1b}.actions-cell{align-items:center;display:flex;gap:8px}.btn-icon{background:#0000;border:none;border-radius:6px;cursor:pointer;font-size:16px;padding:8px 12px;transition:all .2s}.btn-icon:hover{transform:scale(1.1)}.btn-icon:disabled{cursor:not-allowed;opacity:.5}.locations-table .actions-cell{align-items:center;display:flex;gap:6px;justify-content:center}.locations-table .actions-cell .btn-action-compact{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;flex:none;height:30px;justify-content:center;min-width:30px;padding:0;transition:all .2s ease;width:30px}.locations-table .actions-cell .btn-action-compact:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.locations-table .btn-edit:hover{background:#fef3c7;border-color:#fcd34d;color:#92400e}.locations-table .btn-activate:hover{background:#d1fae5;border-color:#6ee7b7;color:#065f46}.locations-table .btn-deactivate:hover,.locations-table .btn-delete:hover{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.modal-content{border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:700px;overflow-y:auto}.modal-header{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;padding:24px}.modal-header h2{font-size:22px;font-weight:700}.modal-close{align-items:center;background:#0000;border-radius:50%;display:flex;font-size:32px;height:32px;justify-content:center;transition:background-color .2s;width:32px}.modal-close:hover{background:#fff3}.location-form{padding:24px}.form-row{grid-gap:20px;gap:20px;margin-bottom:20px}.form-group label{color:#374151}.form-group .required{color:#ef4444}.form-group input,.form-group select,.form-group textarea{border:2px solid #e5e7eb;border-radius:8px;color:#1f2937;font-size:14px;padding:12px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;outline:none}.form-group input:disabled{background-color:#f3f4f6;cursor:not-allowed}.form-group small{color:#6b7280;font-size:12px;margin-top:6px}.form-group textarea{font-family:inherit}.modal-actions{border-top:1px solid #e5e7eb;padding-top:24px}.btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-primary:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-primary:disabled{background:#9ca3af;box-shadow:none;transform:none}.btn-secondary{background:#f3f4f6;border:2px solid #e5e7eb;color:#374151}.btn-secondary:hover{background:#e5e7eb}@media (max-width:768px){.form-row{grid-template-columns:1fr}.locations-table-container{overflow-x:auto}.locations-table{min-width:800px}.modal-content{max-height:95vh}.actions-cell{flex-wrap:wrap}}.reports-page{box-sizing:border-box;min-height:100vh;width:100%}.page-header{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;justify-content:space-between;margin-bottom:20px;padding:16px 24px}.header-title,.page-header{align-items:center;display:flex}.header-title{gap:10px}.header-title svg{color:#6b4190;font-size:20px}.header-title h1{color:#333;font-size:18px;font-weight:600;margin:0}.header-actions{align-items:center;gap:12px}.page-title{color:#333;font-size:22px;font-weight:600;margin:0 0 16px}.reports-toolbar{gap:16px;justify-content:space-between;margin-bottom:20px}.reports-toolbar,.toolbar-left{align-items:center;display:flex;flex-wrap:wrap}.toolbar-left{gap:12px}.toolbar-right{gap:10px}.search-box,.toolbar-right{align-items:center;display:flex}.search-box{background:#fff;border:1px solid #ddd;border-radius:6px;gap:8px;min-width:320px;padding:10px 14px}.search-box svg{color:#999;flex-shrink:0;font-size:16px}.search-box input{background:#0000;border:none;color:#333;font-size:14px;outline:none;width:100%}.search-box input::placeholder{color:#999}.filter-tabs{background:#f0f0f0;border-radius:6px;display:flex;gap:4px;padding:4px}.filter-tab{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:all .15s ease;white-space:nowrap}.filter-tab:hover{background:#6b419014;color:#6b4190}.filter-tab.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#333}.source-select{background:#fff;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-size:14px;min-width:140px;padding:10px 14px}.source-select:focus{border-color:#6b4190;outline:none}.btn-new-report{align-items:center;background:#00a99d;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;transition:background .2s ease}.btn-new-report:hover{background:#008f85}.reports-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;overflow:visible;position:relative}.reports-table{border-collapse:collapse;width:100%}.reports-table thead{background:linear-gradient(40deg,#704493,#512e6e)}.reports-table thead tr th:first-child{border-top-left-radius:12px}.reports-table thead tr th:last-child{border-top-right-radius:12px}.reports-table th{color:#fff!important;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.reports-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.reports-table th.sortable:hover{background:#ffffff1a}.sort-icon{font-size:11px;margin-left:4px;opacity:.7;vertical-align:middle}.sort-icon.inactive{opacity:.3}.col-fav{text-align:center;width:50px}.col-name{min-width:280px}.col-source{width:120px}.col-type{width:100px}.col-runs{text-align:center;width:80px}.col-date{width:120px}.col-actions{text-align:center;width:160px}.reports-table tbody tr{border-bottom:1px solid #f0f0f0;cursor:pointer;position:relative;transition:background .15s ease}.reports-table tbody{position:relative}.reports-table tbody tr:hover{background:#fafafa}.reports-table tbody tr:last-child{border-bottom:none}.reports-table td{color:#333;font-size:14px;padding:14px 16px;vertical-align:middle}.reports-table td.col-fav{text-align:center}.reports-table td.col-runs{color:#666;font-size:13px;text-align:center}.reports-table td.col-actions{text-align:center}.btn-fav{background:none;border:none;border-radius:4px;color:#ccc;cursor:pointer;display:inline-flex;padding:6px;transition:all .15s ease}.btn-fav:hover{background:#fef3c7;color:#f59e0b}.btn-fav.active{color:#f59e0b}.btn-fav.active svg{fill:#f59e0b}.name-cell{gap:12px}.name-cell,.name-icon{align-items:center;display:flex}.name-icon{border-radius:6px;flex-shrink:0;height:36px;justify-content:center;width:36px}.name-text{display:flex;flex-direction:column;gap:2px;min-width:0}.report-name{color:#6b4190;font-size:14px;font-weight:500}.report-desc,.report-name{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-desc{color:#999;font-size:12px}.public-badge{color:#3b82f6;flex-shrink:0;font-size:14px;margin-left:6px}.source-badge{background:#00a99d;color:#fff;min-width:70px}.source-badge,.type-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;font-weight:500;justify-content:center;padding:5px 12px}.type-badge{background:#f0f0f0;color:#666;gap:4px}.action-buttons{display:flex;gap:8px}.action-buttons,.btn-action-edit{align-items:center;justify-content:center}.btn-action-edit{background:#0000;border:none;border-radius:4px;color:#999;cursor:pointer;display:inline-flex;padding:8px;transition:all .15s ease}.btn-action-edit:hover{background:#6b41901a;color:#6b4190}.btn-action-run{align-items:center;background:#6b4190;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;font-weight:500;gap:4px;justify-content:center;padding:6px 12px;transition:all .15s ease}.btn-action-run:hover:not(:disabled){background:#5a3578}.btn-action-run:disabled{cursor:not-allowed;opacity:.6}.btn-action-more{align-items:center;background:#0000;border:none;border-radius:4px;color:#999;cursor:pointer;display:inline-flex;justify-content:center;padding:8px;transition:all .15s ease}.btn-action-more:hover{background:#f0f0f0;color:#666}.dropdown-wrap{display:inline-flex;position:relative}.dropdown-menu{animation:dropdown .15s ease;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 20px #00000026;margin-top:4px;min-width:160px;padding:4px;position:absolute;right:0;top:100%;z-index:9999}@keyframes dropdown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-menu button{align-items:center;background:#0000;border:none;border-radius:4px;color:#444;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;padding:10px 12px;text-align:left;transition:background .1s ease;width:100%}.dropdown-menu button:hover{background:#f5f5f5;color:#333}.dropdown-menu button.danger{color:#dc2626}.dropdown-menu button.danger:hover{background:#fef2f2}.dropdown-divider{background:#eee;height:1px;margin:4px 0}.spinner-sm{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:14px;width:14px}.pagination{background:#fff;border-radius:8px;box-shadow:0 1px 3px #00000014;justify-content:space-between;margin-top:16px;padding:14px 20px}.pagination-info{color:#666;font-size:14px}.pagination-controls{align-items:center;display:flex;gap:12px}.page-size-select{background:#fff;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;font-size:13px;padding:8px 12px}.page-nav{align-items:center;display:flex;gap:4px}.page-nav button{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;display:inline-flex;font-size:13px;justify-content:center;padding:8px 10px;transition:all .15s ease}.page-nav button:hover:not(:disabled){background:#f5f5f5;border-color:#ccc;color:#333}.page-nav button:disabled{cursor:not-allowed;opacity:.4}.page-indicator{color:#666;font-size:13px;font-weight:500;padding:0 12px}.view-toggle{background:#f0f0f0;border-radius:4px;display:flex;padding:2px}.view-toggle button{align-items:center;background:#0000;border:none;border-radius:3px;color:#999;cursor:pointer;display:flex;justify-content:center;padding:8px 10px;transition:all .15s ease}.view-toggle button:hover{color:#666}.view-toggle button.active{background:#fff;box-shadow:0 1px 2px #00000014;color:#6b4190}.reports-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.report-card-compact{background:#fff;border:1px solid #0000;border-radius:8px;box-shadow:0 1px 3px #00000014;cursor:pointer;padding:16px;position:relative;transition:all .2s ease}.report-card-compact:hover{border-color:#6b419033;box-shadow:0 4px 12px #0000001f}.card-header-compact{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.card-icon-sm{align-items:center;border-radius:8px;display:flex;height:40px;justify-content:center;width:40px}.btn-fav-sm{background:none;border:none;border-radius:4px;color:#ccc;cursor:pointer;padding:4px;transition:all .15s ease}.btn-fav-sm.active,.btn-fav-sm:hover{color:#f59e0b}.btn-fav-sm.active svg{fill:#f59e0b}.card-body-compact h4{color:#333;font-size:15px;font-weight:600;margin:0 0 4px}.card-body-compact h4,.card-body-compact p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-body-compact p{color:#999;font-size:12px;margin:0}.card-footer-compact{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.tag-sm{align-items:center;border-radius:20px;display:inline-flex;font-size:11px;font-weight:500;gap:4px;padding:4px 10px}.tag-sm.gray{background:#f0f0f0;color:#666}.public-icon-sm{color:#3b82f6;font-size:14px}.card-actions-compact{border-top:1px solid #f0f0f0;display:flex;gap:8px;justify-content:flex-end;margin-top:12px;padding-top:12px;position:relative}.btn-icon-run{align-items:center;background:#0000;border:none;border-radius:4px;color:#6b4190;cursor:pointer;display:inline-flex;height:32px;justify-content:center;transition:all .15s ease;width:32px}.btn-icon-run:hover:not(:disabled){background:#6b41901a;color:#5a3578}.btn-icon-run:disabled{cursor:not-allowed;opacity:.5}.btn-icon-more{align-items:center;background:#0000;border:none;border-radius:4px;color:#999;cursor:pointer;display:inline-flex;height:32px;justify-content:center;transition:all .15s ease;width:32px}.btn-icon-more:hover{background:#f0f0f0;color:#666}.dropdown-menu-card{bottom:100%;margin-bottom:4px;margin-top:0;top:auto}.reports-empty{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #00000014;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.reports-empty svg{color:#ccc;margin-bottom:16px}.reports-empty h3{color:#333;font-size:18px;font-weight:600;margin:0 0 8px}.reports-empty p{color:#666;font-size:14px;margin:0 0 20px}.reports-empty button{align-items:center;background:#6b4190;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px}.reports-empty button:hover{background:#5a3578}.reports-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:80px 20px}.reports-loading .loading-spinner{animation:spin .8s linear infinite;border:3px solid #e5e5e5;border-radius:50%;border-top-color:#6b4190;height:40px;margin-bottom:12px;width:40px}.reports-loading p{color:#666;font-size:14px;margin:0}.reports-error{align-items:center;background:#fff;border-radius:8px;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.reports-error svg{color:#f87171;margin-bottom:12px}.reports-error h3{color:#333;font-size:18px;font-weight:600;margin:0 0 8px}.reports-error p{color:#666;font-size:14px;margin:0 0 16px}.reports-error button{align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:6px;color:#444;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 18px}.modal-overlay{animation:fadeIn .15s ease;z-index:2000}.modal{animation:slideIn .2s ease;background:#fff;border-radius:8px;box-shadow:0 20px 40px #0003;max-height:80vh;max-width:480px;overflow-y:auto;width:90%}.modal-header{border-bottom:1px solid #eee;padding:18px 24px}.modal-header h2{align-items:center;color:#333;display:flex;gap:10px}.modal-header h2 svg{color:#6b4190}.btn-close{align-items:center;background:#f5f5f5;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .15s ease}.btn-close:hover{background:#eee;color:#333}.modal-body{padding:24px}.modal-subtitle{color:#666;font-size:14px;margin:0 0 20px}.form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:12px}.form-group{margin-bottom:16px}.form-group label{color:#333;font-size:13px}.form-group input,.form-group select{background:#fff;border:1px solid #ddd;border-radius:6px;color:#333;font-size:14px;padding:10px 12px;transition:all .15s ease;width:100%}.form-group input:focus,.form-group select:focus{border-color:#6b4190;box-shadow:0 0 0 2px #6b41901a;outline:none}.form-hint{color:#999;display:block;font-size:12px;margin-top:4px}.preset-buttons{display:flex;flex-wrap:wrap;gap:8px}.preset-buttons button{background:#f9f9f9;border:1px solid #ddd;border-radius:4px;color:#444;cursor:pointer;font-size:12px;font-weight:500;padding:8px 14px;transition:all .15s ease}.preset-buttons button:hover{background:#6b4190;border-color:#6b4190;color:#fff}.modal-actions{margin-top:24px}.btn-primary{background:#6b4190;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:background .15s ease}.btn-primary:hover:not(:disabled){background:#5a3578}.btn-primary:disabled{opacity:.6}.btn-primary.full-width{width:100%}.btn-danger{background:#fff;border:1px solid #fecaca;border-radius:6px;color:#dc2626;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .15s ease}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626;color:#fff}.shares-list{border-top:1px solid #eee;margin-top:24px;padding-top:20px}.shares-list h4{color:#333;font-size:14px;font-weight:600;margin:0 0 12px}.share-item{background:#f9f9f9;border-radius:6px;justify-content:space-between;margin-bottom:8px;padding:12px 14px}.share-item,.share-item>div{align-items:center;display:flex}.share-item>div{font-size:13px;gap:10px}.share-type{background:#e8dff0;border-radius:4px;color:#6b4190;font-size:10px;font-weight:600;padding:3px 8px;text-transform:uppercase}.share-target{color:#333;font-weight:500}.share-permission{color:#666}.share-item button{background:none;border:none;border-radius:4px;color:#dc2626;cursor:pointer;font-size:12px;font-weight:500;padding:6px 10px}.share-item button:hover{background:#fef2f2}@media (max-width:1024px){.page-header{align-items:stretch;flex-direction:column;gap:16px}.header-actions{justify-content:space-between}.reports-toolbar{align-items:stretch;flex-direction:column}.toolbar-left,.toolbar-right{width:100%}.filter-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.toolbar-right{flex-wrap:wrap;gap:10px;justify-content:space-between}.search-box{flex:1 1;min-width:200px}}@media (max-width:768px){.reports-page{padding:16px}.page-title{font-size:20px}.reports-table-container{overflow-x:auto}.reports-table{min-width:700px}.reports-grid{grid-template-columns:1fr}.pagination{flex-direction:column;gap:12px}.form-row{grid-template-columns:1fr}}@media (max-width:480px){.filter-tab span{display:none}.filter-tab{padding:8px 12px}.pagination-controls{flex-wrap:wrap;justify-content:center}.search-box{min-width:100%}}.report-builder-container{margin:0 auto;max-width:1400px;padding:20px}.report-builder-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.report-builder-header h1{color:#333;font-size:28px;margin:0}.builder-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:25px;padding:25px}.builder-section h2{border-bottom:2px solid #3498db;color:#2c3e50;font-size:20px;margin:0 0 20px;padding-bottom:10px}.form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group label{color:#555}.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px 12px;transition:border-color .3s}.form-group input[type=number]:focus,.form-group input[type=text]:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3498db;outline:none}.form-group input[type=checkbox]{height:18px;margin-right:8px;width:18px}.builder-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:0;margin-bottom:0}.builder-tabs button{background:#0000;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:15px;font-weight:500;padding:12px 24px;transition:all .3s}.builder-tabs button:hover{background:#f8f9fa;color:#3498db}.builder-tabs button.active{background:#fff;border-bottom-color:#3498db;color:#3498db}.builder-content{background:#fff;border-radius:0 0 8px 8px;box-shadow:0 2px 4px #0000001a;min-height:400px;padding:25px}.fields-section{grid-gap:25px;display:grid;gap:25px;grid-template-columns:1fr 1fr}.available-fields,.selected-fields{background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;padding:20px}.available-fields h3,.selected-fields h3{color:#2c3e50;font-size:16px;margin:0 0 15px}.field-list,.selected-field-list{max-height:500px;overflow-y:auto}.field-item{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px}.field-item:hover{background:#f8f9fa;border-color:#3498db}.field-details{display:flex;flex:1 1;flex-direction:column;gap:2px}.field-name{color:#333;cursor:help;font-weight:500}.field-db-name{color:#7f8c8d;font-family:Courier New,monospace;font-size:11px}.field-type{background:#ecf0f1;border-radius:3px;color:#7f8c8d;font-size:12px;margin-right:10px;padding:4px 8px}.selected-field-item{background:#fff;border:1px solid #e0e0e0;border-radius:4px;margin-bottom:12px;padding:15px}.field-info{align-items:center;display:flex;gap:12px;margin-bottom:10px}.field-order{align-items:center;background:#3498db;border-radius:50%;color:#fff;display:inline-flex;font-size:14px;font-weight:700;height:28px;justify-content:center;width:28px}.field-input-group{display:flex;flex:1 1;flex-direction:column;gap:4px}.field-input-group input[type=text]{border:1px solid #ddd;border-radius:4px;padding:8px 12px}.field-db-hint{color:#7f8c8d;font-family:Courier New,monospace;font-size:11px;padding-left:4px}.field-info input[type=text]{border:1px solid #ddd;border-radius:4px;flex:1 1;padding:8px 12px}.field-options{align-items:center;display:flex;gap:15px;padding-left:40px}.field-options label{align-items:center;color:#555;display:flex;font-size:14px}.field-options select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:6px 10px}.field-options .format-select{color:#555;font-size:13px;min-width:180px}.filters-section,.grouping-section,.sorting-section{padding:10px 0}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.section-header h3{color:#2c3e50;font-size:18px;margin:0}.aggregation-list,.filter-list,.grouping-list,.sorting-list{display:flex;flex-direction:column;gap:12px}.aggregation-item,.filter-item,.grouping-item,.sorting-item{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;display:flex;gap:12px;padding:15px}.aggregation-item input[type=text],.aggregation-item select,.filter-item input[type=text],.filter-item select,.grouping-item select,.sorting-item select{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:14px;padding:8px 12px}.sort-order{background:#3498db;border-radius:4px;color:#fff;font-size:13px;font-weight:600;padding:6px 12px}.aggregation-item label,.grouping-item label{align-items:center;display:flex;font-size:14px;white-space:nowrap}.display-section{padding:10px 0}.display-section h3{border-bottom:2px solid #3498db;color:#2c3e50;font-size:18px;margin:0 0 20px;padding-bottom:10px}.btn-danger,.btn-primary,.btn-secondary{transition:all .3s}.empty-message{color:#7f8c8d;font-style:italic;padding:40px;text-align:center}.loading{padding:40px}.error-message{padding:15px}.field-list::-webkit-scrollbar,.selected-field-list::-webkit-scrollbar{width:8px}.field-list::-webkit-scrollbar-track,.selected-field-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.field-list::-webkit-scrollbar-thumb,.selected-field-list::-webkit-scrollbar-thumb{background:#bdc3c7;border-radius:4px}.field-list::-webkit-scrollbar-thumb:hover,.selected-field-list::-webkit-scrollbar-thumb:hover{background:#95a5a6}.query-preview-tab{padding:10px 0}.query-preview-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.query-preview-header h3{color:#2c3e50;font-size:18px;margin:0}.sql-query-display{background:#2d2d2d;border-radius:6px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;max-height:500px;overflow:auto;padding:20px}.sql-query-display pre{word-wrap:break-word;color:#f8f8f2;font-family:Courier New,Courier,monospace;font-size:14px;line-height:1.6;margin:0;white-space:pre-wrap}.loading-indicator{color:#95a5a6;padding:40px;text-align:center}.loading-indicator p{font-size:16px;font-style:italic;margin:0}.query-info{background:#e8f4f8;border-left:4px solid #3498db;border-radius:4px;padding:15px 20px}.query-info .info-text{color:#2c3e50;font-size:14px;line-height:1.5;margin:0}.sql-query-display::-webkit-scrollbar{height:10px;width:10px}.sql-query-display::-webkit-scrollbar-track{background:#1a1a1a;border-radius:4px}.sql-query-display::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.sql-query-display::-webkit-scrollbar-thumb:hover{background:#666}.joins-section{padding:10px 0}.join-list{display:flex;flex-direction:column;gap:20px}.join-item{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;padding:20px}.join-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);margin-bottom:15px}.join-row:last-child{margin-bottom:0}.join-row .form-group{display:flex;flex-direction:column}.join-row .form-group label{color:#555;font-size:13px;font-weight:600;margin-bottom:8px}.join-row .form-group input[type=text],.join-row .form-group select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px}.join-row .form-group input[type=text]:focus,.join-row .form-group select:focus{border-color:#3498db;outline:none}.info-text{color:#7f8c8d;font-size:14px;line-height:1.5;margin-bottom:15px}.advanced-sql-tab{padding:10px 0}.sql-mode-toggle{align-items:center;color:#555;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:10px}.sql-mode-toggle input[type=checkbox]{cursor:pointer;height:18px;width:18px}.sql-editor-section{margin-top:20px}.sql-editor-actions{display:flex;gap:10px;margin-top:15px}.sql-editor-actions button{padding:8px 16px}@media (max-width:1024px){.fields-section,.form-grid{grid-template-columns:1fr}.builder-tabs{flex-wrap:nowrap;overflow-x:auto}.aggregation-item,.filter-item,.grouping-item,.sorting-item{flex-wrap:wrap}.join-row{grid-template-columns:1fr}.query-preview-header{align-items:flex-start;flex-direction:column;gap:15px}.query-preview-header button{width:100%}.sql-query-display{max-height:300px}}.report-viewer-container{margin:0 auto;max-width:1600px;padding:20px}.report-viewer-header{align-items:flex-start;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:20px}.header-left{flex:1 1}.btn-back{padding:5px 10px;transition:color .3s}.btn-back:hover{color:#2980b9}.report-info h1{color:#2c3e50;font-size:28px;margin:0 0 8px}.report-description{color:#7f8c8d;font-size:15px;line-height:1.6;margin:0}.report-metadata{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:25px;padding:20px}.metadata-item{display:flex;flex-direction:column;gap:5px}.metadata-label{color:#7f8c8d;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.metadata-value{color:#2c3e50;font-size:15px;font-weight:500}.report-results{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:25px;padding:25px}.results-header{border-bottom:2px solid #ecf0f1;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.results-header,.results-info{align-items:center;display:flex}.results-info{gap:15px}.results-info h3{color:#2c3e50;font-size:20px;margin:0}.record-count{background:#3498db;border-radius:20px;color:#fff;font-size:13px;padding:6px 12px}.results-actions{display:flex;gap:10px}.table-container{margin-bottom:20px;overflow-x:auto}.report-table{border-collapse:collapse;font-size:14px;width:100%}.report-table thead{background:#34495e;color:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:10}.report-table th{border-right:1px solid #ffffff1a;font-weight:600;padding:12px 15px;text-align:left;white-space:nowrap}.report-table th:last-child{border-right:none}.report-table tbody tr{border-bottom:1px solid #ecf0f1;transition:background .2s}.report-table tbody tr:nth-child(2n){background:#f8f9fa}.report-table tbody tr:hover{background:#e8f4f8}.report-table td{color:#2c3e50;padding:10px 15px;vertical-align:top}.pagination{border-top:1px solid #ecf0f1;gap:10px;padding-top:20px}.page-info{color:#555;font-size:14px;font-weight:500;min-width:120px;text-align:center}.execution-info{background:#ecf0f1;border-radius:6px;color:#555;display:flex;font-size:13px;justify-content:space-between;margin-top:15px;padding:15px}.report-summary{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:25px;padding:25px}.report-summary h3{border-bottom:2px solid #3498db;color:#2c3e50;font-size:20px;margin:0 0 20px;padding-bottom:10px}.summary-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-item{background:#f8f9fa;border-left:4px solid #3498db;border-radius:6px;flex-direction:column;gap:8px;padding:15px}.summary-label{color:#7f8c8d;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.summary-value{color:#2c3e50;font-size:24px;font-weight:700}.executing-overlay{align-items:center;background:#00000080;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.executing-overlay p{color:#fff;font-size:18px;margin-top:20px}.spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;height:50px;width:50px}.no-results{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:60px;text-align:center}.no-results p{color:#7f8c8d;font-size:16px;margin:0}.btn-primary,.btn-secondary{transition:all .3s}.btn-primary:hover{background:#2980b9}.btn-sm{font-size:13px;padding:6px 14px}.loading{color:#7f8c8d;font-size:16px;padding:60px;text-align:center}.error{background:#fadbd8;border-left:4px solid #e74c3c;border-radius:6px;color:#c0392b;padding:20px}@media (max-width:1024px){.report-viewer-header{flex-direction:column;gap:20px}.header-actions{width:100%}.header-actions button{flex:1 1}.results-header{align-items:flex-start;flex-direction:column;gap:15px}.results-actions{flex-wrap:wrap;width:100%}.results-actions button{flex:1 1}.report-metadata{flex-direction:column}.summary-grid{grid-template-columns:1fr}}@media (max-width:768px){.report-viewer-container{padding:10px}.report-info h1{font-size:22px}.report-table{font-size:12px}.report-table td,.report-table th{padding:8px 10px}.pagination{flex-wrap:wrap}.page-info{margin-bottom:10px;order:-1;width:100%}}.role-list-container{margin:0 auto;max-width:1600px;padding:20px}.role-list-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.role-list-header h1{color:#2c3e50;font-size:28px;margin:0 0 5px}.role-list-header p{color:#7f8c8d;font-size:14px;margin:0}.role-list-filters{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:25px;padding:20px}.filter-group{align-items:center;gap:10px}.filter-group label{color:#2c3e50;font-size:14px}.search-input{width:300px}.filter-group select,.search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px 15px}.filter-group select{background:#fff;cursor:pointer}.filter-stats{color:#7f8c8d;font-size:14px;font-weight:600;margin-left:auto}.roles-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));margin-bottom:30px}.role-card{background:#fff;border:2px solid #0000;border-radius:8px;box-shadow:0 2px 8px #0000001a;transition:transform .2s,box-shadow .2s}.role-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.role-card.inactive{border-color:#e0e0e0;opacity:.7}.role-card-header{align-items:flex-start;border-bottom:1px solid #ecf0f1;display:flex;justify-content:space-between;padding:20px}.role-card-header h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 10px}.badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;margin-right:8px;padding:4px 10px;text-transform:uppercase}.badge-system{background:#9b59b6;color:#fff}.badge-active{background:#27ae60;color:#fff}.badge-inactive{background:#95a5a6;color:#fff}.role-card-body{padding:20px}.role-description{color:#7f8c8d;font-size:14px;line-height:1.6;margin:0 0 15px;min-height:40px}.role-stats{background:#f8f9fa;border-radius:6px;display:flex;gap:15px;justify-content:space-between;margin-bottom:15px;padding:15px}.stat-item{align-items:center;display:flex;flex:1 1;flex-direction:column}.stat-label{color:#7f8c8d;font-size:12px;font-weight:600;margin-bottom:5px}.stat-value{color:#2c3e50;font-size:20px}.role-locations{background:#e8f4f8;border-radius:4px;color:#555;font-size:13px;margin-bottom:15px;padding:10px}.role-locations strong{color:#2c3e50}.role-metadata{border-top:1px solid #ecf0f1;padding-top:10px}.role-metadata small{color:#95a5a6;font-size:12px}.role-card-actions{background:#f8f9fa;border-top:1px solid #ecf0f1;display:flex;flex-wrap:wrap;gap:8px;padding:15px 20px}.btn-action{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s}.btn-primary-small{background:#3498db;color:#fff}.btn-primary-small:hover:not(:disabled){background:#2980b9}.btn-secondary-small{background:#ecf0f1;color:#555}.btn-secondary-small:hover:not(:disabled){background:#bdc3c7}.btn-danger-small{background:#e74c3c;color:#fff}.btn-danger-small:hover:not(:disabled){background:#c0392b}.btn-action:disabled{cursor:not-allowed;opacity:.5}.no-roles{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:60px;text-align:center}.no-roles p{color:#7f8c8d;font-size:16px;margin-bottom:20px}.no-roles button{background:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px}.no-roles button:hover{background:#2980b9}.modal-overlay{background:#0009;z-index:9999}.modal-content{border-radius:8px;box-shadow:0 4px 16px #0003;padding:30px;width:90%}.modal-content h2{color:#2c3e50;font-size:22px;margin:0 0 15px}.modal-content p{color:#555;line-height:1.6;margin-bottom:15px}.warning-text{color:#e74c3c;font-weight:600}.modal-input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;margin-bottom:20px;padding:12px;width:100%}.modal-actions{gap:10px}.btn-danger,.btn-primary,.btn-secondary{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.btn-secondary:hover{background:#bdc3c7}.btn-danger{background:#e74c3c;color:#fff}.btn-danger:hover{background:#c0392b}.role-list-error,.role-list-loading{color:#7f8c8d;font-size:16px;padding:60px;text-align:center}.role-list-error{background:#fadbd8;border-left:4px solid #e74c3c;border-radius:8px;color:#c0392b}.role-list-error button{background:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:15px;padding:10px 20px}@media (max-width:1024px){.roles-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.role-list-header{align-items:flex-start;flex-direction:column;gap:15px}.role-list-filters{align-items:stretch;flex-direction:column}.filter-stats{margin-left:0}.search-input{width:100%}}@media (max-width:768px){.role-list-container{padding:10px}.roles-grid{grid-template-columns:1fr}.role-card-actions{flex-direction:column}.btn-action{width:100%}.role-stats{flex-direction:column;gap:10px}}.role-builder-container{margin:0 auto;max-width:1400px;padding:20px}.role-builder-header{align-items:flex-start;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.btn-back{background:none;border:none;color:#3498db;cursor:pointer;font-size:14px;margin-bottom:10px;padding:5px 0}.btn-back:hover{text-decoration:underline}.role-builder-header h1{align-items:center;color:#2c3e50;display:flex;flex-wrap:wrap;font-size:28px;gap:12px;margin:0 0 8px}.system-role-badge{align-items:center;background:linear-gradient(135deg,#f39c12,#e67e22);border-radius:16px;box-shadow:0 2px 4px #f39c124d;color:#fff;display:inline-flex;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.role-builder-header p{color:#7f8c8d;font-size:14px;margin:0}.header-actions{display:flex;gap:10px}.error-message{background:#fadbd8;border-left:4px solid #e74c3c;border-radius:6px;color:#c0392b;margin-bottom:20px;padding:15px 20px}.role-builder-tabs{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:5px;margin-bottom:25px;padding:5px}.tab{background:#0000;border:none;border-radius:4px;color:#7f8c8d;cursor:pointer;flex:1 1;font-weight:600;padding:12px 20px;transition:all .2s}.tab:hover{background:#ecf0f1}.tab.active{background:#3498db;color:#fff}.tab-content{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:30px}.form-section h3{border-bottom:2px solid #3498db;color:#2c3e50;font-size:20px;margin:0 0 25px;padding-bottom:10px}.form-group{margin-bottom:25px}.form-group input[type=text],.form-group textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:12px 15px;transition:border-color .2s;width:100%}.form-group input[type=text]:focus,.form-group textarea:focus{border-color:#3498db;outline:none}.form-group textarea{min-height:100px;resize:vertical}.helper-text{color:#95a5a6;display:block;font-size:12px;font-style:italic;margin-top:6px}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:10px}.checkbox-label input[type=checkbox]{cursor:pointer;height:18px;width:18px}.permissions-section{max-width:100%}.permissions-header{margin-bottom:25px}.permissions-header h3{color:#2c3e50;font-size:20px;margin:0 0 8px}.permissions-header p{color:#7f8c8d;font-size:14px;margin:0}.permissions-matrix{border:1px solid #e0e0e0;border-radius:6px;margin-bottom:30px;overflow:hidden}.matrix-header{background:#34495e;color:#fff;display:grid;font-weight:600;grid-template-columns:2fr 2fr 80px}.header-cell{font-size:14px;padding:15px}.matrix-row{border-bottom:1px solid #e0e0e0;display:grid;grid-template-columns:2fr 2fr 80px;transition:background .2s}.matrix-row:hover{background:#f8f9fa}.matrix-row:last-child{border-bottom:none}.module-cell{border-right:1px solid #e0e0e0;padding:15px}.module-name{color:#2c3e50;font-size:14px;font-weight:600;margin-bottom:4px}.module-description{color:#7f8c8d;font-size:12px;line-height:1.4}.level-cell{align-items:center;border-right:1px solid #e0e0e0;display:flex;padding:15px}.level-cell select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:13px;padding:10px;transition:border-color .2s;width:100%}.level-cell select:focus{border-color:#3498db;outline:none}.level-cell select.has-permission{background:#e8f8f5;border-color:#27ae60}.toggle-switch{align-items:center;cursor:pointer;display:flex;gap:12px}.toggle-switch input{display:none}.toggle-slider{background:#ccc;border-radius:26px;height:26px;position:relative;transition:background .3s;width:50px}.toggle-slider:before{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;content:"";height:20px;left:3px;position:absolute;top:3px;transition:transform .3s;width:20px}.toggle-switch input:checked+.toggle-slider{background:#27ae60}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(24px)}.toggle-label{color:#7f8c8d;font-size:14px;font-weight:600}.toggle-switch input:checked~.toggle-label{color:#27ae60}.action-cell{padding:15px}.action-cell,.btn-remove{align-items:center;display:flex;justify-content:center}.btn-remove{background:#e74c3c;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:14px;height:28px;transition:background .2s;width:28px}.btn-remove:hover{background:#c0392b}.no-permissions{background:#f8f9fa;border-radius:6px;color:#7f8c8d;margin-bottom:20px;padding:40px;text-align:center}.permissions-summary{background:#f8f9fa;border-radius:6px;padding:20px}.permissions-summary h4{color:#2c3e50;font-size:16px;margin:0 0 15px}.summary-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.summary-item{align-items:center;background:#fff;border-left:3px solid #3498db;border-radius:4px;display:flex;justify-content:space-between;padding:10px 15px}.summary-module{color:#2c3e50;font-size:13px;font-weight:600}.summary-level{border-radius:12px;font-size:11px;font-weight:600;padding:4px 10px;text-transform:uppercase}.level-read{background:#d4edda;color:#155724}.level-write{background:#cce5ff;color:#004085}.level-admin{background:#f8d7da;color:#721c24}.btn-primary,.btn-secondary{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.btn-primary{background:#3498db;color:#fff}.btn-primary:hover:not(:disabled){background:#2980b9}.btn-primary:disabled{background:#95a5a6;cursor:not-allowed}.btn-secondary{background:#ecf0f1;color:#555}.btn-secondary:hover:not(:disabled){background:#bdc3c7}.btn-secondary:disabled{cursor:not-allowed;opacity:.5}.role-builder-loading{color:#7f8c8d;font-size:16px;padding:60px;text-align:center}.location-selector{background:#f9f9f9;border:1px solid #ddd;border-radius:4px;padding:15px}.location-selector-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.btn-select-all{background:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:8px 15px;transition:background .2s}.btn-select-all:hover{background:#2980b9}.selected-count{color:#7f8c8d;font-size:13px;font-weight:600}.location-checkboxes{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));max-height:300px;overflow-y:auto}.location-checkbox-label{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;display:flex;font-weight:400;gap:8px;padding:8px 12px;transition:all .2s}.location-checkbox-label:hover{background:#f0f8ff;border-color:#3498db}.location-checkbox-label input[type=checkbox]{cursor:pointer;height:16px;width:16px}.location-checkbox-label span{color:#2c3e50;font-size:13px}.no-locations{color:#7f8c8d;font-style:italic;padding:20px;text-align:center}@media (max-width:1024px){.role-builder-header{flex-direction:column;gap:15px}.header-actions{width:100%}.header-actions button{flex:1 1}.matrix-header,.matrix-row{grid-template-columns:1fr 1fr 60px}.summary-grid{grid-template-columns:1fr}}@media (max-width:768px){.role-builder-container{padding:10px}.tab-content{padding:20px 15px}.matrix-header,.matrix-row{grid-template-columns:1fr}.action-cell,.level-cell,.module-cell{border-bottom:1px solid #e0e0e0;border-right:none}.action-cell{justify-content:flex-start;padding:10px 15px}.role-builder-tabs{flex-direction:column}.tab{text-align:left}}.my-profile-view{margin:0 auto;max-width:1400px;padding:20px}.profile-header{margin-bottom:30px}.profile-header h1{color:#1a1a1a;font-size:28px;font-weight:600;margin-bottom:8px}.profile-subtitle{color:#666;font-size:14px;margin:0}.profile-content{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(500px,1fr))}.profile-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.profile-card .card-header{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e0e0e0;padding:20px 24px}.profile-card .card-header h2{align-items:center;color:#fff;display:flex;font-size:18px;font-weight:600;gap:8px;margin:0}.profile-card .card-body{padding:24px}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.info-item{display:flex;flex-direction:column;gap:6px}.info-label{align-items:center;color:#666;display:flex;font-size:13px;font-weight:500;gap:6px;letter-spacing:.5px;text-transform:uppercase}.info-icon{color:#667eea;font-size:16px}.info-value{color:#1a1a1a;font-size:15px;font-weight:500}.role-badge,.status-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.role-badge.role-super_admin{background:#fef3c7;color:#92400e}.role-badge.role-admin{background:#dbeafe;color:#1e40af}.role-badge.role-user{background:#d1fae5;color:#065f46}.role-badge.role-gatemen{background:#e0e7ff;color:#3730a3}.role-badge.role-registered_user{background:#f3e8ff;color:#6b21a8}.status-badge.status-active{background:#d1fae5;color:#065f46}.status-badge.status-inactive{background:#fee2e2;color:#991b1b}.password-form{max-width:500px}.password-form .form-group{margin-bottom:20px}.password-form .form-group label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.password-form .form-group input{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:10px 14px;transition:all .2s;width:100%}.password-form .form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.password-form .error-message{background:#fee2e2;border-left:4px solid #dc2626;color:#991b1b}.password-form .error-message,.password-form .success-message{border-radius:6px;font-size:14px;margin-bottom:16px;padding:12px 16px}.password-form .success-message{background:#d1fae5;border-left:4px solid #10b981;color:#065f46}.password-form .form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.password-rules-hint{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;color:#666;font-size:12px;margin-top:10px;padding:12px 14px}.password-rules-hint strong{color:#495057;display:block;margin-bottom:6px}.password-rules-hint ul{line-height:1.8;margin:0;padding-left:18px}.password-rules-hint li{margin-bottom:2px}.loading-spinner{font-size:16px;padding:40px;text-align:center}.my-profile-view .error-message{background:#fee2e2;border-left:4px solid #dc2626;border-radius:6px;color:#991b1b;font-size:14px;margin:20px 0;padding:16px}@media (max-width:768px){.info-grid,.profile-content{grid-template-columns:1fr}.password-form .form-actions{flex-direction:column}.password-form .form-actions button{width:100%}}.bulk-upload-modal{display:flex;flex-direction:column;max-height:90vh;max-width:700px;overflow:hidden}.bulk-upload-modal .modal-header{align-items:center;background:linear-gradient(40deg,#704493,#512e6e);color:#fff;display:flex;justify-content:space-between;padding:1rem 1.25rem}.bulk-upload-modal .modal-header h3{font-size:1.125rem;font-weight:600;margin:0}.bulk-upload-modal .modal-close{align-items:center;background:#ffffff1a;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1.25rem;height:32px;justify-content:center;transition:background .2s;width:32px}.bulk-upload-modal .modal-close:hover{background:#fff3}.bulk-upload-content{flex:1 1;overflow-y:auto;padding:1.25rem}.upload-instructions h4{color:#1e293b;font-size:1rem;margin:0 0 .5rem}.upload-instructions p{color:#64748b;font-size:.875rem;margin:0 0 1rem}.template-section{margin-bottom:1rem}.btn-template{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#704493;cursor:pointer;display:inline-flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.btn-template:hover{background:#f1f5f9;border-color:#704493}.column-info{background:#f8fafc;border-radius:8px;margin-bottom:1rem;padding:1rem}.column-info h5{color:#374151;font-size:.8125rem;font-weight:600;letter-spacing:.5px;margin:0 0 .5rem;text-transform:uppercase}.column-info ul{color:#64748b;font-size:.8125rem;margin:0 0 .75rem;padding-left:1.25rem}.column-info ul li{margin-bottom:.25rem}.column-info ul li strong{color:#1e293b}.col-type{color:#94a3b8;font-size:.75rem}.drop-zone{align-items:center;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:2rem;transition:all .2s}.drop-zone:hover{background:#faf5ff;border-color:#704493}.drop-zone .drop-icon{color:#704493;font-size:3rem;margin-bottom:.75rem}.drop-zone p{color:#64748b;font-size:.875rem;margin:0}.error-list,.warning-list{border-radius:8px;font-size:.8125rem;margin-top:1rem;padding:.75rem 1rem}.error-list{background:#fee2e2;border:1px solid #fca5a5}.error-list h5{color:#991b1b}.error-list ul li{color:#b91c1c}.warning-list{background:#fef3c7;border:1px solid #fcd34d}.warning-list h5{color:#92400e}.warning-list ul li{color:#a16207}.error-list h5,.warning-list h5{align-items:center;display:flex;font-size:.8125rem;font-weight:600;gap:.5rem;margin:0 0 .5rem}.error-list ul,.warning-list ul{margin:0;padding-left:1.25rem}.error-list ul li,.warning-list ul li{margin-bottom:.25rem}.preview-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.file-info,.preview-header{align-items:center;display:flex}.file-info{color:#374151;font-size:.875rem;gap:.5rem}.file-info svg{color:#704493;font-size:1.25rem}.record-count{background:#dcfce7;border-radius:4px;color:#166534;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.btn-reset{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:inline-flex;font-size:.8125rem;gap:.375rem;padding:.375rem .75rem;transition:all .2s}.btn-reset:hover{background:#f1f5f9;color:#374151}.preview-table-container{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;overflow:hidden}.preview-table{border-collapse:collapse;font-size:.8125rem;width:100%}.preview-table th{background:linear-gradient(40deg,#704493,#512e6e);color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.625rem .75rem;text-align:left;text-transform:uppercase}.preview-table td{border-bottom:1px solid #f3f4f6;color:#374151;padding:.5rem .75rem}.preview-table tbody tr:last-child td{border-bottom:none}.preview-table tbody tr:hover{background:#f9fafb}.more-records{background:#f8fafc;border-top:1px solid #e2e8f0;color:#64748b;font-size:.8125rem;margin:0;padding:.5rem;text-align:center}.upload-actions{border-top:1px solid #e2e8f0;display:flex;gap:.75rem;justify-content:flex-end;padding-top:1rem}.btn-cancel{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.btn-cancel:hover{background:#f8fafc;color:#374151}.btn-upload{background:linear-gradient(135deg,#16a34a,#15803d);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1.25rem;transition:all .2s}.btn-upload:hover:not(:disabled){background:linear-gradient(135deg,#15803d,#166534);box-shadow:0 4px 12px #16a34a4d;transform:translateY(-1px)}.btn-upload:disabled{cursor:not-allowed;opacity:.6}.result-container{padding:2rem 1rem;text-align:center}.result-icon{align-items:center;border-radius:50%;display:inline-flex;font-size:2rem;height:64px;justify-content:center;margin-bottom:1rem;width:64px}.result-icon.success{background:#dcfce7;color:#16a34a}.result-icon.error{background:#fee2e2;color:#dc2626}.result-container h4{color:#1e293b;font-size:1.25rem;margin:0 0 .5rem}.result-container p{color:#64748b;font-size:.875rem;margin:0 0 1.5rem}.result-actions{display:flex;gap:.75rem;justify-content:center}.btn-done{background:#704493;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1.5rem;transition:all .2s}.btn-done:hover{background:#512e6e}.excel-upload-modal{max-width:750px}.excel-upload-modal .modal-header{background:linear-gradient(40deg,#217346,#185c37)}.excel-drop-zone{background:#ecfdf5;border-color:#d1fae5}.excel-drop-zone:hover{background:#d1fae5;border-color:#217346}.excel-drop-zone .excel-icon{color:#217346;font-size:3rem}.excel-drop-zone .file-types{color:#94a3b8;font-size:.75rem;margin-top:.5rem}.excel-sheets-info{background:#f8fafc;border-radius:8px;margin-bottom:1rem;padding:1rem}.excel-sheets-info h5{align-items:center;color:#374151;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin:0 0 .75rem}.sheet-info{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:.75rem;padding:.75rem 1rem}.sheet-info:last-child{margin-bottom:0}.sheet-name{color:#1e293b;font-size:.875rem;margin-bottom:.5rem}.sheet-name strong{color:#217346}.sheet-columns{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.375rem}.columns-label{color:#64748b;font-size:.75rem;margin-right:.25rem}.columns-list{display:flex;flex-wrap:wrap;gap:.375rem}.column-tag{background:#e2e8f0;color:#475569}.column-more,.column-tag{border-radius:4px;display:inline-block;font-size:.6875rem;padding:.125rem .5rem}.column-more{background:#f1f5f9;color:#94a3b8;font-style:italic}.upload-notes{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem}.upload-notes h5{color:#92400e;font-size:.8125rem;font-weight:600;margin:0 0 .5rem}.upload-notes ul{color:#a16207;font-size:.8125rem;margin:0;padding-left:1.25rem}.upload-notes ul li{margin-bottom:.25rem}.confirm-section{padding:1.5rem 0;text-align:center}.confirm-icon{margin-bottom:1rem}.confirm-section h4{color:#1e293b;font-size:1.125rem;margin:0 0 .5rem}.confirm-section>p{color:#64748b;font-size:.875rem;margin:0 0 1rem}.action-list{background:#f8fafc;border-radius:8px;color:#374151;font-size:.8125rem;margin:0;padding:1rem 1rem 1rem 2rem;text-align:left}.action-list li{margin-bottom:.5rem}.action-list li:last-child{margin-bottom:0}.excel-btn{align-items:center;background:linear-gradient(135deg,#217346,#185c37);display:inline-flex;gap:.5rem}.excel-btn:hover:not(:disabled){background:linear-gradient(135deg,#185c37,#14532d);box-shadow:0 4px 12px #2173464d}.spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;width:16px}.result-details{background:#f8fafc;border-radius:8px;margin:1rem auto;max-width:350px;padding:1rem;text-align:left}.result-stat{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:.5rem 0}.result-stat:last-child{border-bottom:none}.stat-label{font-size:.8125rem}.stat-value{color:#16a34a;font-size:.875rem;font-weight:600}.result-warnings{border-top:1px solid #e2e8f0;margin-top:1rem;padding-top:1rem}.result-warnings h5{align-items:center;color:#92400e;display:flex;font-size:.75rem;font-weight:600;gap:.375rem;margin:0 0 .5rem}.result-warnings ul{color:#a16207;font-size:.75rem;margin:0;padding-left:1rem}.result-warnings ul li{margin-bottom:.25rem}.file-name{font-weight:500}.file-size{color:#94a3b8;font-size:.8125rem}.result-errors-section{background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;margin-top:1rem;overflow:hidden}.errors-header{align-items:center;background:#fee2e2;cursor:pointer;display:flex;justify-content:space-between;padding:.75rem 1rem;-webkit-user-select:none;user-select:none}.errors-header:hover{background:#fecaca}.errors-header h5{align-items:center;color:#991b1b;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin:0}.errors-header .expand-btn{align-items:center;background:#fff;border:1px solid #fca5a5;border-radius:4px;color:#dc2626;cursor:pointer;display:flex;font-size:.75rem;gap:.25rem;padding:.25rem .5rem;transition:all .2s}.errors-header .expand-btn:hover{background:#fef2f2;border-color:#dc2626}.errors-content{padding:.75rem 1rem}.errors-summary{border-bottom:1px dashed #fca5a5;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;padding-bottom:.75rem}.error-category{align-items:center;border-radius:12px;display:inline-flex;font-size:.6875rem;font-weight:600;letter-spacing:.3px;padding:.25rem .625rem;text-transform:uppercase}.error-category.jr{background:#dbeafe;color:#1e40af}.error-category.candidate{background:#fef3c7;color:#92400e}.error-category.other{background:#f3e8ff;color:#6b21a8}.errors-list-container{background:#fff;border:1px solid #fecaca;border-radius:6px;max-height:200px;overflow-y:auto}.errors-content.expanded .errors-list-container{max-height:350px}.errors-list{list-style:none;margin:0;padding:0}.error-item{border-bottom:1px solid #fee2e2;display:flex;flex-direction:column;font-size:.8125rem;gap:.25rem;padding:.625rem .875rem}.error-item:hover{background:#fef2f2}.error-row-id{background:#dc2626;border-radius:4px;color:#fff;display:inline-block;font-size:.6875rem;font-weight:600;padding:.125rem .5rem;width:-webkit-fit-content;width:fit-content}.error-message{color:#7f1d1d;line-height:1.4}.errors-more{background:#fef2f2;color:#991b1b;font-size:.75rem;font-style:italic;padding:.5rem;text-align:center}.errors-list-container::-webkit-scrollbar{width:6px}.errors-list-container::-webkit-scrollbar-track{background:#fee2e2;border-radius:3px}.errors-list-container::-webkit-scrollbar-thumb{background:#fca5a5;border-radius:3px}.errors-list-container::-webkit-scrollbar-thumb:hover{background:#f87171}@media (max-width:600px){.bulk-upload-modal{margin:1rem;max-width:95%}.preview-header{align-items:flex-start;gap:.75rem}.preview-header,.result-actions,.upload-actions{flex-direction:column}.btn-cancel,.btn-done,.btn-reset,.btn-upload{justify-content:center;width:100%}.errors-header{align-items:flex-start;gap:.5rem}.errors-header,.errors-summary{flex-direction:column}.error-item{padding:.5rem}}.job-requisitions-view{box-sizing:border-box;min-height:100vh;width:100%}.job-requisitions-view .page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-left:4px solid #14b8a6;border-radius:8px;box-shadow:0 1px 3px #0000000f;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.5rem 1rem}.job-requisitions-view .header-left-compact{flex-shrink:0}.job-requisitions-view .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.job-requisitions-view .page-title-compact .title-icon{color:#704493;font-size:1.25rem}.job-requisitions-view .header-filters-compact{align-items:center;display:flex;flex:1 1;gap:.5rem;justify-content:flex-end}.job-requisitions-view .input.search-compact{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.5rem;min-width:250px;padding:.5rem .75rem;transition:all .2s ease}.job-requisitions-view .input.search-compact:focus-within{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a}.job-requisitions-view .input.search-compact .icon{align-items:center;color:#94a3b8;display:flex;font-size:1rem}.job-requisitions-view .input.search-compact input{background:#0000;border:none;color:#1e293b;font-size:.875rem;outline:none;width:100%}.job-requisitions-view .input.search-compact input::placeholder{color:#94a3b8}.job-requisitions-view .filter-select-compact{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#1e293b;cursor:pointer;font-size:.875rem;min-width:140px;padding:.5rem .75rem;transition:all .2s ease}.job-requisitions-view .filter-select-compact:focus{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.job-requisitions-view .btn-book-compact{align-items:center;background:linear-gradient(135deg,#14b8a6,#0d9488);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.375rem;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap}.job-requisitions-view .btn-book-compact:hover{background:linear-gradient(135deg,#0d9488,#0f766e);box-shadow:0 4px 12px #14b8a64d;transform:translateY(-1px)}.job-requisitions-view .table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.job-requisitions-view .data-table td,.job-requisitions-view .data-table th{white-space:nowrap}.job-requisitions-view .loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.job-requisitions-view .spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#704493;height:50px;width:50px}.job-requisitions-view .data-table{border-collapse:collapse;width:100%}.job-requisitions-view .data-table thead{background:linear-gradient(40deg,#704493,#512e6e);color:#fff}.job-requisitions-view .data-table thead tr th:first-child{border-top-left-radius:12px}.job-requisitions-view .data-table thead tr th:last-child{border-top-right-radius:12px}.job-requisitions-view .data-table th{font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px 12px;text-align:left;text-transform:uppercase}.job-requisitions-view .data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.job-requisitions-view .data-table th.sortable:hover{background:#ffffff1a}.job-requisitions-view .sort-icon{font-size:14px;margin-left:4px;vertical-align:middle}.job-requisitions-view .data-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.job-requisitions-view .data-table tbody tr:hover{background-color:#f9fafb}.job-requisitions-view .data-table td{color:#374151;font-size:14px;padding:16px 12px}.job-requisitions-view .sno-cell{color:#6b7280;font-weight:500;width:50px}.job-requisitions-view .code-cell{color:#704493;font-weight:600}.job-requisitions-view .title-cell{color:#1f2937;font-weight:500}.job-requisitions-view .designation-cell{color:#6b7280;font-size:13px}.job-requisitions-view .positions-cell .filled{color:#1f2937;font-weight:600}.job-requisitions-view .positions-cell .separator{background:none;border-radius:0;color:#6b7280;display:inline;height:auto;margin:0;width:auto}.job-requisitions-view .date-cell,.job-requisitions-view .positions-cell .approved{color:#6b7280}.job-requisitions-view .actions-cell{align-items:center;display:flex;gap:6px;justify-content:center}.job-requisitions-view .status-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:11px;font-weight:600;padding:4px 10px;text-transform:uppercase}.job-requisitions-view .status-badge.open{background:#dcfce7;color:#166534}.job-requisitions-view .status-badge.closed{background:#fee2e2;color:#991b1b}.job-requisitions-view .status-badge.filled{background:#dbeafe;color:#1e40af}.job-requisitions-view .status-badge.on-hold{background:#fef3c7;color:#92400e}.job-requisitions-view .status-badge.cancelled{background:#f3f4f6;color:#6b7280}.job-requisitions-view .btn-action-compact{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:16px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.job-requisitions-view .btn-action-compact svg{height:18px;width:18px}.job-requisitions-view .btn-action-compact:hover{background:#e5e7eb;border-color:#d1d5db;box-shadow:0 2px 4px #0000001a;color:#374151;transform:translateY(-1px)}.job-requisitions-view .btn-action-compact.btn-candidates{background:#f3f4f6;color:#6b7280}.job-requisitions-view .btn-action-compact.btn-candidates:hover{background:#dcfce7;border-color:#86efac;color:#16a34a}.job-requisitions-view .btn-action-compact.btn-edit{background:#f3f4f6;color:#6b7280}.job-requisitions-view .btn-action-compact.btn-edit:hover{background:#fef3c7;border-color:#fcd34d;color:#d97706}.job-requisitions-view .btn-action-compact.btn-delete{background:#f3f4f6;color:#6b7280}.job-requisitions-view .btn-action-compact.btn-delete:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.job-requisitions-view .stats-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:1rem}.job-requisitions-view .stat-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;gap:1rem;padding:1rem 1.25rem}.job-requisitions-view .stat-card .stat-icon{align-items:center;border-radius:10px;display:flex;font-size:24px;height:48px;justify-content:center;width:48px}.job-requisitions-view .stat-card .stat-icon.open{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#16a34a}.job-requisitions-view .stat-card .stat-icon.closed{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.job-requisitions-view .stat-card .stat-icon.filled{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#2563eb}.job-requisitions-view .stat-card .stat-icon.hold{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.job-requisitions-view .stat-card .stat-info h4{color:#64748b;font-size:12px;font-weight:500;letter-spacing:.5px;margin:0 0 4px;text-transform:uppercase}.job-requisitions-view .stat-card .stat-info .stat-value{color:#1e293b;font-size:1.5rem;font-weight:700}.job-requisitions-view .pagination{align-items:center;background:#fff;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem}.job-requisitions-view .pagination-info{color:#64748b;font-size:13px}.job-requisitions-view .pagination-controls{align-items:center;display:flex;gap:.5rem}.job-requisitions-view .pagination-btn{background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:13px;padding:6px 12px;transition:all .2s ease}.job-requisitions-view .pagination-btn:hover:not(:disabled){background:#f8fafc;border-color:#704493}.job-requisitions-view .pagination-btn:disabled{cursor:not-allowed;opacity:.5}.job-requisitions-view .pagination-btn.active{background:#704493;border-color:#704493;color:#fff}.job-requisitions-view .empty-state{background:#fff;padding:60px 20px;text-align:center}.job-requisitions-view .empty-state h3{color:#374151;font-size:18px;font-weight:600;margin:0 0 8px}.job-requisitions-view .empty-state p{color:#6b7280;font-size:14px;margin:0}.job-requisitions-view .error-message{background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:14px;margin-bottom:1rem;padding:12px 16px}@media (max-width:1200px){.job-requisitions-view .page-header-compact{align-items:stretch;flex-direction:column;gap:1rem}.job-requisitions-view .header-filters-compact{flex-wrap:wrap;justify-content:flex-start}.job-requisitions-view .input.search-compact{flex:1 1;min-width:200px}.job-requisitions-view .table-container{overflow-x:auto}.job-requisitions-view .data-table{min-width:1000px}}@media (max-width:768px){.job-requisitions-view .page-header-compact{padding:.75rem}.job-requisitions-view .header-filters-compact{gap:.5rem}.job-requisitions-view .filter-select-compact,.job-requisitions-view .input.search-compact{min-width:auto;width:100%}.job-requisitions-view .stats-row{grid-template-columns:repeat(2,1fr)}}.job-requisitions-view .btn-book-compact.active{background:linear-gradient(135deg,#704493,#512e6e)}.job-requisitions-view .filter-badge{background:#dc2626;border-radius:10px;color:#fff;font-size:10px;font-weight:600;margin-left:4px;padding:2px 6px}.job-requisitions-view .advanced-filters-panel{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 2px 6px #0000000f;margin-bottom:1rem;padding:1rem 1.25rem}.job-requisitions-view .filters-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.job-requisitions-view .filter-group{display:flex;flex-direction:column;gap:4px}.job-requisitions-view .filter-group label{color:#64748b;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.job-requisitions-view .filter-group input,.job-requisitions-view .filter-group select{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;padding:8px 12px;transition:all .2s ease}.job-requisitions-view .filter-group input:focus,.job-requisitions-view .filter-group select:focus{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.job-requisitions-view .filter-actions{display:flex;justify-content:flex-end;margin-top:1rem}.job-requisitions-view .btn-clear-filters{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:8px 16px;transition:all .2s ease}.job-requisitions-view .btn-clear-filters:hover{background:#e2e8f0;color:#475569}.job-requisitions-view .pipeline-cell{min-width:120px}.job-requisitions-view .pipeline-mini{border-radius:6px;cursor:pointer;display:flex;gap:4px;padding:4px;transition:all .2s ease}.job-requisitions-view .pipeline-mini:hover{background:#f1f5f9}.job-requisitions-view .pipeline-stage{align-items:center;border-radius:6px;display:inline-flex;font-size:11px;font-weight:600;gap:2px;padding:4px 6px;transition:all .2s ease}.job-requisitions-view .pipeline-stage .stage-icon{flex-shrink:0;font-size:12px}.job-requisitions-view .pipeline-stage .stage-count{font-size:11px;font-weight:600}.job-requisitions-view .pipeline-stage.sourced{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#475569}.job-requisitions-view .pipeline-stage.interview{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.job-requisitions-view .pipeline-stage.selected{background:linear-gradient(135deg,#ede9fe,#ddd6fe);color:#6d28d9}.job-requisitions-view .pipeline-stage.offered{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af}.job-requisitions-view .pipeline-stage.joined{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534}.job-requisitions-view .pipeline-stage:hover{box-shadow:0 2px 4px #0000001a;transform:scale(1.05)}.job-requisitions-view .pipeline-dot{align-items:center;border-radius:4px;color:#fff;display:inline-flex;font-size:11px;font-weight:600;height:22px;justify-content:center;min-width:22px}.job-requisitions-view .pipeline-dot.sourced{background:#64748b}.job-requisitions-view .pipeline-dot.interview{background:#f59e0b}.job-requisitions-view .pipeline-dot.selected{background:#8b5cf6}.job-requisitions-view .pipeline-dot.offered{background:#3b82f6}.job-requisitions-view .pipeline-dot.joined{background:#22c55e}.job-requisitions-view .pipeline-loading{color:#94a3b8;font-size:13px}.job-requisitions-view .btn-action-compact.btn-view{background:#f3f4f6;color:#6b7280}.job-requisitions-view .btn-action-compact.btn-view:hover{background:#ede9fe;border-color:#c4b5fd;color:#7c3aed}.job-requisitions-view .jr-detail-modal{padding:0}.job-requisitions-view .jr-detail-info{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:1rem 1.5rem}.job-requisitions-view .jr-info-row{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:.5rem}.job-requisitions-view .jr-info-row:last-child{margin-bottom:0}.job-requisitions-view .jr-info-row span{color:#475569;font-size:13px}.job-requisitions-view .jr-pipeline-summary{background:#fff;border-bottom:1px solid #e2e8f0;display:flex;gap:.75rem;justify-content:center;padding:1rem 1.5rem}.job-requisitions-view .pipeline-stage-box{align-items:center;border-radius:8px;display:flex;flex-direction:column;min-width:80px;padding:.75rem 1.25rem}.job-requisitions-view .pipeline-stage-box .stage-icon-lg{font-size:1.5rem;margin-bottom:4px}.job-requisitions-view .pipeline-stage-box .stage-count{font-size:1.75rem;font-weight:700}.job-requisitions-view .pipeline-stage-box .stage-label{font-size:11px;font-weight:600;margin-top:4px;text-transform:uppercase}.job-requisitions-view .pipeline-stage-box.sourced{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:1px solid #cbd5e1}.job-requisitions-view .pipeline-stage-box.sourced .stage-count,.job-requisitions-view .pipeline-stage-box.sourced .stage-icon-lg{color:#475569}.job-requisitions-view .pipeline-stage-box.sourced .stage-label{color:#64748b}.job-requisitions-view .pipeline-stage-box.interview{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fcd34d}.job-requisitions-view .pipeline-stage-box.interview .stage-count,.job-requisitions-view .pipeline-stage-box.interview .stage-icon-lg{color:#92400e}.job-requisitions-view .pipeline-stage-box.interview .stage-label{color:#b45309}.job-requisitions-view .pipeline-stage-box.selected{background:linear-gradient(135deg,#ede9fe,#ddd6fe);border:1px solid #c4b5fd}.job-requisitions-view .pipeline-stage-box.selected .stage-count,.job-requisitions-view .pipeline-stage-box.selected .stage-icon-lg{color:#6d28d9}.job-requisitions-view .pipeline-stage-box.selected .stage-label{color:#7c3aed}.job-requisitions-view .pipeline-stage-box.offered{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:1px solid #93c5fd}.job-requisitions-view .pipeline-stage-box.offered .stage-count,.job-requisitions-view .pipeline-stage-box.offered .stage-icon-lg{color:#1e40af}.job-requisitions-view .pipeline-stage-box.offered .stage-label{color:#2563eb}.job-requisitions-view .pipeline-stage-box.joined{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border:1px solid #86efac}.job-requisitions-view .pipeline-stage-box.joined .stage-count,.job-requisitions-view .pipeline-stage-box.joined .stage-icon-lg{color:#166534}.job-requisitions-view .pipeline-stage-box.joined .stage-label{color:#16a34a}.job-requisitions-view .jr-candidates-section{padding:1rem 1.5rem}.job-requisitions-view .jr-candidates-section h4{color:#1e293b;font-size:14px;font-weight:600;margin:0 0 1rem}.job-requisitions-view .compact-table{font-size:13px}.job-requisitions-view .compact-table td,.job-requisitions-view .compact-table th{padding:10px 8px}.job-requisitions-view .stage-badge{align-items:center;border-radius:10px;display:inline-flex;font-size:10px;font-weight:600;padding:3px 8px;text-transform:uppercase}.job-requisitions-view .stage-badge.sourced{background:#f1f5f9;color:#64748b}.job-requisitions-view .stage-badge.screening{background:#fef3c7;color:#92400e}.job-requisitions-view .stage-badge.interview{background:#ffedd5;color:#c2410c}.job-requisitions-view .stage-badge.selected{background:#ede9fe;color:#6d28d9}.job-requisitions-view .stage-badge.offered{background:#dbeafe;color:#1e40af}.job-requisitions-view .stage-badge.joined{background:#dcfce7;color:#166534}.job-requisitions-view .stage-badge.rejected,.job-requisitions-view .stage-badge.withdrawn{background:#fee2e2;color:#991b1b}.upload-dropdown-container{position:relative}.upload-dropdown-menu{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 16px #0000001f;margin-top:4px;min-width:240px;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.upload-dropdown-item{align-items:center;background:#fff;border:none;color:#374151;cursor:pointer;display:flex;font-size:.875rem;gap:.75rem;padding:.75rem 1rem;text-align:left;transition:all .2s;width:100%}.upload-dropdown-item:hover{background:#f8fafc}.upload-dropdown-item:first-child{border-bottom:1px solid #e2e8f0}.upload-dropdown-item .upload-icon{align-items:center;border-radius:6px;display:inline-flex;font-size:.6875rem;font-weight:700;height:32px;justify-content:center;text-transform:uppercase;width:32px}.upload-dropdown-item .upload-icon.excel{background:#dcfce7;color:#166534}.upload-dropdown-item .upload-icon.csv{background:#dbeafe;color:#1e40af}.upload-dropdown-item.excel-item:hover{background:#f0fdf4}.upload-dropdown-item.csv-item:hover{background:#eff6ff}.edit-form-sections{max-height:70vh;overflow-y:auto;padding-right:8px}.edit-form-sections .form-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1.25rem;padding:1rem}.edit-form-sections .form-section:last-of-type{margin-bottom:0}.edit-form-sections .form-section-title{border-bottom:1px solid #e2e8f0;color:#704493;font-size:.875rem;font-weight:600;letter-spacing:.3px;margin:0 0 .75rem;padding-bottom:.5rem}.edit-form-sections .form-row{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem}.edit-form-sections .form-row:last-child{margin-bottom:0}.edit-form-sections .form-group{flex:1 1 200px;min-width:0}.edit-form-sections .form-group label{color:#475569;display:block;font-size:.75rem;font-weight:500;margin-bottom:4px}.edit-form-sections .form-group input,.edit-form-sections .form-group select,.edit-form-sections .form-group textarea{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.8125rem;padding:8px 10px;transition:all .2s;width:100%}.edit-form-sections .form-group input:focus,.edit-form-sections .form-group select:focus,.edit-form-sections .form-group textarea:focus{border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.edit-form-sections .form-group input:disabled,.edit-form-sections .form-group select:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed}.edit-form-sections .form-group textarea{min-height:60px;resize:vertical}.edit-form-sections::-webkit-scrollbar{width:6px}.edit-form-sections::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.edit-form-sections::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.edit-form-sections::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width:768px){.edit-form-sections .form-row{flex-direction:column;gap:.75rem}.edit-form-sections .form-group{flex:1 1 100%}.edit-form-sections .form-section{padding:.75rem}}.candidate-pipeline-view{box-sizing:border-box;min-height:100vh;width:100%}.candidate-pipeline-view .page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-left:4px solid #14b8a6;border-radius:8px;box-shadow:0 1px 3px #0000000f;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.5rem 1rem}.candidate-pipeline-view .header-left-compact{flex-shrink:0}.candidate-pipeline-view .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.candidate-pipeline-view .page-title-compact .title-icon{color:#704493;font-size:1.25rem}.candidate-pipeline-view .header-filters-compact{align-items:center;display:flex;flex:1 1;gap:.5rem;justify-content:flex-end}.candidate-pipeline-view .input.search-compact{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.5rem;min-width:220px;padding:.5rem .75rem;transition:all .2s ease}.candidate-pipeline-view .input.search-compact:focus-within{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a}.candidate-pipeline-view .input.search-compact .icon{align-items:center;color:#94a3b8;display:flex;font-size:1rem}.candidate-pipeline-view .input.search-compact input{background:#0000;border:none;color:#1e293b;font-size:.875rem;outline:none;width:100%}.candidate-pipeline-view .filter-select-compact{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#1e293b;cursor:pointer;font-size:.875rem;min-width:130px;padding:.5rem .75rem;transition:all .2s ease}.candidate-pipeline-view .filter-select-compact:focus{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.candidate-pipeline-view .btn-book-compact{align-items:center;background:linear-gradient(135deg,#14b8a6,#0d9488);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.375rem;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap}.candidate-pipeline-view .btn-book-compact:hover{background:linear-gradient(135deg,#0d9488,#0f766e);box-shadow:0 4px 12px #14b8a64d;transform:translateY(-1px)}.candidate-pipeline-view .table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.candidate-pipeline-view .loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.candidate-pipeline-view .spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#704493;height:50px;width:50px}.candidate-pipeline-view .data-table{border-collapse:collapse;width:100%}.candidate-pipeline-view .data-table thead{background:linear-gradient(40deg,#704493,#512e6e);color:#fff}.candidate-pipeline-view .data-table thead tr th:first-child{border-top-left-radius:12px}.candidate-pipeline-view .data-table thead tr th:last-child{border-top-right-radius:12px}.candidate-pipeline-view .data-table th{font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px 12px;text-align:left;text-transform:uppercase}.candidate-pipeline-view .data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.candidate-pipeline-view .data-table th.sortable:hover{background:#ffffff1a}.candidate-pipeline-view .sort-icon{font-size:14px;margin-left:4px;vertical-align:middle}.candidate-pipeline-view .data-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.candidate-pipeline-view .data-table tbody tr:hover{background-color:#f9fafb}.candidate-pipeline-view .data-table td{color:#374151;font-size:14px;padding:16px 12px}.candidate-pipeline-view .sno-cell{color:#6b7280;font-weight:500;width:50px}.candidate-pipeline-view .code-cell{color:#704493;font-weight:600}.candidate-pipeline-view .name-cell{color:#1f2937;font-weight:600}.candidate-pipeline-view .email-cell,.candidate-pipeline-view .phone-cell{color:#6b7280;font-size:13px}.candidate-pipeline-view .jr-code-cell{color:#704493;font-weight:500}.candidate-pipeline-view .exp-cell{text-align:center}.candidate-pipeline-view .date-cell{color:#6b7280}.candidate-pipeline-view .actions-cell{align-items:center;display:flex;gap:6px;justify-content:center}.candidate-pipeline-view .btn-action-compact{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:16px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.candidate-pipeline-view .btn-action-compact svg{height:18px;width:18px}.candidate-pipeline-view .btn-action-compact:hover{background:#e5e7eb;border-color:#d1d5db;box-shadow:0 2px 4px #0000001a;color:#374151;transform:translateY(-1px)}.candidate-pipeline-view .btn-action-compact.btn-edit:hover{background:#fef3c7;border-color:#fcd34d;color:#d97706}.candidate-pipeline-view .btn-action-compact.btn-delete:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.candidate-pipeline-view .stage-badge{align-items:center;border-radius:10px;display:inline-flex;font-size:10px;font-weight:600;padding:3px 8px;text-transform:uppercase;white-space:nowrap}.candidate-pipeline-view .stage-badge.sourced{background:#f0f9ff;color:#0369a1}.candidate-pipeline-view .stage-badge.screening{background:#fef3c7;color:#92400e}.candidate-pipeline-view .stage-badge.interview{background:#f3e8ff;color:#7c3aed}.candidate-pipeline-view .stage-badge.selected{background:#dcfce7;color:#166534}.candidate-pipeline-view .stage-badge.offered{background:#dbeafe;color:#1e40af}.candidate-pipeline-view .stage-badge.joined{background:#10b981;color:#fff}.candidate-pipeline-view .stage-badge.rejected{background:#fee2e2;color:#991b1b}.candidate-pipeline-view .stage-badge.withdrawn{background:#f3f4f6;color:#6b7280}.candidate-pipeline-view .pipeline-stats{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.candidate-pipeline-view .pipeline-stat{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;font-size:13px;gap:.5rem;padding:.5rem 1rem}.candidate-pipeline-view .pipeline-stat .stat-dot{border-radius:50%;height:8px;width:8px}.candidate-pipeline-view .pipeline-stat .stat-count{color:#1e293b;font-weight:700}.candidate-pipeline-view .pipeline-stat .stat-label{color:#64748b}.candidate-pipeline-view .dot-sourced{background:#0369a1}.candidate-pipeline-view .dot-screening{background:#d97706}.candidate-pipeline-view .dot-interview{background:#7c3aed}.candidate-pipeline-view .dot-selected{background:#16a34a}.candidate-pipeline-view .dot-offered{background:#2563eb}.candidate-pipeline-view .dot-joined{background:#10b981}.candidate-pipeline-view .dot-rejected{background:#dc2626}.candidate-pipeline-view .info-banner{align-items:center;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:10px;display:flex;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem}.candidate-pipeline-view .info-banner .info-icon{color:#0369a1;font-size:1.25rem}.candidate-pipeline-view .info-banner .info-text{color:#0c4a6e;font-size:13px}.candidate-pipeline-view .info-banner .info-text strong{color:#0369a1}.candidate-pipeline-view .empty-state{background:#fff;padding:60px 20px;text-align:center}.candidate-pipeline-view .empty-state h3{color:#374151;font-size:18px;font-weight:600;margin:0 0 8px}.candidate-pipeline-view .empty-state p{color:#6b7280;font-size:14px;margin:0}.candidate-pipeline-view .pagination{align-items:center;background:#fff;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem}.candidate-pipeline-view .pagination-info{color:#64748b;font-size:13px}.candidate-pipeline-view .pagination-controls{align-items:center;display:flex;gap:.5rem}.candidate-pipeline-view .pagination-btn{background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:13px;padding:6px 12px;transition:all .2s ease}.candidate-pipeline-view .pagination-btn:hover:not(:disabled){background:#f8fafc;border-color:#704493}.candidate-pipeline-view .pagination-btn:disabled{cursor:not-allowed;opacity:.5}.candidate-pipeline-view .pagination-btn.active{background:#704493;border-color:#704493;color:#fff}.candidate-pipeline-view .error-message{background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:14px;margin-bottom:1rem;padding:12px 16px}@media (max-width:1200px){.candidate-pipeline-view .page-header-compact{align-items:stretch;flex-direction:column;gap:1rem}.candidate-pipeline-view .header-filters-compact{flex-wrap:wrap;justify-content:flex-start}.candidate-pipeline-view .table.card{overflow-x:auto}.candidate-pipeline-view .table-head,.candidate-pipeline-view .table-row{min-width:1100px}}@media (max-width:768px){.candidate-pipeline-view .pipeline-stats{flex-direction:column}.candidate-pipeline-view .filter-select-compact,.candidate-pipeline-view .input.search-compact{min-width:auto;width:100%}}.candidate-pipeline-view .btn-book-compact.active{background:linear-gradient(135deg,#704493,#512e6e)}.candidate-pipeline-view .filter-badge{background:#dc2626;border-radius:10px;color:#fff;font-size:10px;font-weight:600;margin-left:4px;padding:2px 6px}.candidate-pipeline-view .advanced-filters-panel{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 2px 6px #0000000f;margin-bottom:1rem;padding:1rem 1.25rem}.candidate-pipeline-view .filters-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.candidate-pipeline-view .filter-group{display:flex;flex-direction:column;gap:4px}.candidate-pipeline-view .filter-group label{color:#64748b;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.candidate-pipeline-view .filter-group input,.candidate-pipeline-view .filter-group select{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;padding:8px 12px;transition:all .2s ease}.candidate-pipeline-view .filter-group input:focus,.candidate-pipeline-view .filter-group select:focus{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.candidate-pipeline-view .filter-actions{display:flex;justify-content:flex-end;margin-top:1rem}.candidate-pipeline-view .btn-clear-filters{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:8px 16px;transition:all .2s ease}.candidate-pipeline-view .btn-clear-filters:hover{background:#e2e8f0;color:#475569}.candidate-pipeline-view .detail-section{border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem;padding-bottom:1rem}.candidate-pipeline-view .detail-section:last-child{border-bottom:none;margin-bottom:0}.candidate-pipeline-view .detail-section-title{border-bottom:2px solid #704493;color:#704493;display:inline-block;font-size:14px;font-weight:600;margin:0 0 .75rem;padding-bottom:.5rem}.candidate-pipeline-view .detail-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr)}@media (max-width:900px){.candidate-pipeline-view .detail-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.candidate-pipeline-view .detail-grid{grid-template-columns:1fr}}.candidate-pipeline-view .detail-item{background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;display:flex;flex-direction:column;gap:2px;padding:.5rem}.candidate-pipeline-view .detail-label{color:#64748b;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.candidate-pipeline-view .detail-value{color:#1e293b;font-size:14px;font-weight:500}.candidate-pipeline-view .detail-value .stage-badge{font-size:11px}.candidate-pipeline-view .edit-form-sections{padding:.5rem}.candidate-pipeline-view .form-section{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.candidate-pipeline-view .form-section-title{border-bottom:2px solid #704493;color:#704493;display:inline-block;font-size:13px;font-weight:600;letter-spacing:.5px;margin:0 0 1rem;padding-bottom:.5rem;text-transform:uppercase}.candidate-pipeline-view .form-section .form-row{display:flex;gap:1rem;margin-bottom:.75rem}.candidate-pipeline-view .form-section .form-row:last-child{margin-bottom:0}.candidate-pipeline-view .form-section .form-group{flex:1 1;min-width:0}.candidate-pipeline-view .form-section .form-group label{color:#475569;display:block;font-size:12px;font-weight:500;margin-bottom:4px}.candidate-pipeline-view .form-section .form-group input,.candidate-pipeline-view .form-section .form-group select,.candidate-pipeline-view .form-section .form-group textarea{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:14px;padding:8px 10px;transition:all .2s ease;width:100%}.candidate-pipeline-view .form-section .form-group input:focus,.candidate-pipeline-view .form-section .form-group select:focus,.candidate-pipeline-view .form-section .form-group textarea:focus{border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.candidate-pipeline-view .form-section .form-group input::placeholder,.candidate-pipeline-view .form-section .form-group textarea::placeholder{color:#9ca3af}@media (max-width:768px){.candidate-pipeline-view .form-section .form-row{flex-direction:column;gap:.75rem}.candidate-pipeline-view .form-section .form-group{flex:initial}}.job-dashboard-view{box-sizing:border-box;min-height:100vh;width:100%}.job-dashboard-view .dashboard-tabs{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;gap:.5rem;margin-bottom:1rem;overflow-x:auto;padding:.75rem}.job-dashboard-view .dashboard-tab{align-items:center;background:#f8fafc;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.625rem 1rem;transition:all .2s ease;white-space:nowrap}.job-dashboard-view .dashboard-tab:hover{background:#f1f5f9;color:#334155}.job-dashboard-view .dashboard-tab.active{background:linear-gradient(135deg,#704493,#512e6e);color:#fff}.job-dashboard-view .dashboard-tab .tab-icon{font-size:1.125rem}.job-dashboard-view .page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-left:4px solid #14b8a6;border-radius:8px;box-shadow:0 1px 3px #0000000f;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.5rem 1rem}.job-dashboard-view .header-left-compact{flex-shrink:0}.job-dashboard-view .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.job-dashboard-view .page-title-compact .title-icon{color:#704493;font-size:1.25rem}.job-dashboard-view .header-filters-compact{align-items:center;display:flex;flex:1 1;gap:.5rem;justify-content:flex-end}.job-dashboard-view .filter-select-compact{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#1e293b;cursor:pointer;font-size:.875rem;min-width:140px;padding:.5rem .75rem;transition:all .2s ease}.job-dashboard-view .filter-select-compact:focus{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.job-dashboard-view .btn-book-compact{align-items:center;background:linear-gradient(135deg,#14b8a6,#0d9488);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.375rem;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap}.job-dashboard-view .btn-book-compact:hover{background:linear-gradient(135deg,#0d9488,#0f766e);box-shadow:0 4px 12px #14b8a64d;transform:translateY(-1px)}.job-dashboard-view .btn-book-compact:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.job-dashboard-view .btn-book-compact.btn-download{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.job-dashboard-view .btn-book-compact.btn-download:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 12px #2563eb4d}.job-dashboard-view .btn-book-compact.btn-download:disabled{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.job-dashboard-view .summary-stats-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.job-dashboard-view .summary-stat-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;gap:1rem;padding:1.25rem}.job-dashboard-view .summary-stat-card .stat-icon{align-items:center;border-radius:12px;display:flex;font-size:26px;height:52px;justify-content:center;width:52px}.job-dashboard-view .summary-stat-card .stat-icon.purple{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);color:#7c3aed}.job-dashboard-view .summary-stat-card .stat-icon.green{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#16a34a}.job-dashboard-view .summary-stat-card .stat-icon.blue{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#2563eb}.job-dashboard-view .summary-stat-card .stat-icon.amber{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.job-dashboard-view .summary-stat-card .stat-icon.red{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.job-dashboard-view .summary-stat-card .stat-icon.teal{background:linear-gradient(135deg,#ccfbf1,#99f6e4);color:#0d9488}.job-dashboard-view .summary-stat-card .stat-info h4{color:#64748b;font-size:12px;font-weight:500;letter-spacing:.5px;margin:0 0 4px;text-transform:uppercase}.job-dashboard-view .summary-stat-card .stat-info .stat-value{color:#1e293b;font-size:1.75rem;font-weight:700}.job-dashboard-view .summary-stat-card .stat-info .stat-sub{color:#64748b;font-size:12px;margin-top:2px}.job-dashboard-view .dashboard-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.job-dashboard-view .dashboard-grid.single-col{grid-template-columns:1fr}.job-dashboard-view .dashboard-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;overflow:hidden}.job-dashboard-view .dashboard-card.full-width{grid-column:1/-1}.job-dashboard-view .card-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1rem 1.25rem}.job-dashboard-view .card-header h3{align-items:center;color:#1e293b;display:flex;font-size:1rem;font-weight:600;gap:.5rem;margin:0}.job-dashboard-view .card-header h3 .header-icon{color:#704493}.job-dashboard-view .card-body{padding:1rem 1.25rem}.job-dashboard-view .data-table{border-collapse:collapse;width:100%}.job-dashboard-view .data-table thead th{background:linear-gradient(40deg,#704493,#512e6e);color:#fff;font-size:11px;font-weight:600;letter-spacing:.5px;padding:10px 12px;text-align:left;text-transform:uppercase}.job-dashboard-view .data-table thead th:first-child{border-radius:8px 0 0 0}.job-dashboard-view .data-table thead th:last-child{border-radius:0 8px 0 0}.job-dashboard-view .data-table tbody td{border-bottom:1px solid #f3f4f6;color:#374151;font-size:13px;padding:10px 12px}.job-dashboard-view .data-table tbody tr:last-child td{border-bottom:none}.job-dashboard-view .data-table tbody tr:hover{background:#f9fafb}.job-dashboard-view .data-table .highlight{color:#704493;font-weight:600}.job-dashboard-view .data-table .number-cell{font-weight:500;text-align:right}.job-dashboard-view .progress-container{align-items:center;display:flex;gap:.75rem}.job-dashboard-view .progress-bar{background:#e2e8f0;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.job-dashboard-view .progress-fill{border-radius:4px;height:100%;transition:width .3s ease}.job-dashboard-view .progress-fill.green{background:linear-gradient(90deg,#16a34a,#22c55e)}.job-dashboard-view .progress-fill.blue{background:linear-gradient(90deg,#2563eb,#3b82f6)}.job-dashboard-view .progress-fill.amber{background:linear-gradient(90deg,#d97706,#f59e0b)}.job-dashboard-view .progress-fill.purple{background:linear-gradient(90deg,#7c3aed,#8b5cf6)}.job-dashboard-view .progress-value{color:#1e293b;font-size:12px;font-weight:600;min-width:40px;text-align:right}.job-dashboard-view .source-mix-list{list-style:none;margin:0;padding:0}.job-dashboard-view .source-mix-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:.75rem 0}.job-dashboard-view .source-mix-item:last-child{border-bottom:none}.job-dashboard-view .source-info{align-items:center;display:flex;gap:.75rem}.job-dashboard-view .source-color{border-radius:3px;height:12px;width:12px}.job-dashboard-view .source-name{color:#374151;font-size:13px}.job-dashboard-view .source-stats{align-items:center;display:flex;gap:1rem}.job-dashboard-view .source-count{color:#1e293b;font-size:14px;font-weight:600}.job-dashboard-view .source-percent{color:#64748b;font-size:12px;min-width:45px;text-align:right}.job-dashboard-view .tat-badge{align-items:center;border-radius:6px;display:inline-flex;font-size:12px;font-weight:600;padding:4px 8px}.job-dashboard-view .tat-badge.fast{background:#dcfce7;color:#166534}.job-dashboard-view .tat-badge.normal{background:#dbeafe;color:#1e40af}.job-dashboard-view .tat-badge.slow{background:#fef3c7;color:#92400e}.job-dashboard-view .tat-badge.critical{background:#fee2e2;color:#991b1b}.job-dashboard-view .performance-stars{color:#fbbf24;display:flex;gap:2px}.job-dashboard-view .performance-stars .star-empty{color:#e2e8f0}.job-dashboard-view .empty-state{color:#64748b;padding:40px 20px;text-align:center}.job-dashboard-view .empty-state h4{color:#374151;font-size:16px;margin:0 0 8px}.job-dashboard-view .empty-state p{font-size:14px;margin:0}.job-dashboard-view .loading-state{color:#64748b;padding:40px 20px;text-align:center}@media (max-width:1200px){.job-dashboard-view .dashboard-grid{grid-template-columns:1fr}.job-dashboard-view .summary-stats-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.job-dashboard-view .page-header-compact{align-items:stretch;flex-direction:column;gap:1rem}.job-dashboard-view .header-filters-compact{flex-wrap:wrap;justify-content:flex-start}.job-dashboard-view .summary-stats-row{grid-template-columns:1fr}.job-dashboard-view .dashboard-tabs{flex-wrap:nowrap;padding-bottom:.5rem}.job-dashboard-view .data-table{display:block;overflow-x:auto}}.job-master-data-view{padding:0}.job-master-data-view .tabs-container{background:#fff;border-bottom:1px solid #e5e7eb;display:flex;gap:8px;margin-bottom:0;overflow-x:auto;padding:16px 20px}.job-master-data-view .tab-btn{align-items:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s;white-space:nowrap}.job-master-data-view .tab-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#475569}.job-master-data-view .tab-btn.active{background:linear-gradient(135deg,#704493,#8b5cf6);border-color:#704493;color:#fff}.job-master-data-view .tab-btn .tab-icon{font-size:18px}.job-master-data-view .page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-left:4px solid #14b8a6;border-radius:8px;box-shadow:0 1px 3px #0000000f;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.5rem 1rem}.job-master-data-view .header-left-compact{flex-shrink:0}.job-master-data-view .page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.job-master-data-view .page-title-compact .title-icon{color:#704493;font-size:1.25rem}.job-master-data-view .header-filters-compact{align-items:center;display:flex;flex:1 1;gap:.5rem;justify-content:flex-end}.job-master-data-view .search-compact{align-items:center;display:flex;position:relative}.job-master-data-view .search-compact .icon{color:#94a3b8;font-size:18px;left:12px;position:absolute}.job-master-data-view .search-compact input{border:1px solid #e5e7eb;border-radius:8px;font-size:13px;padding:8px 12px 8px 38px;transition:all .2s;width:220px}.job-master-data-view .search-compact input:focus{border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.job-master-data-view .btn-book-compact{align-items:center;background:linear-gradient(135deg,#14b8a6,#0d9488);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.375rem;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap}.job-master-data-view .btn-book-compact:hover{background:linear-gradient(135deg,#0d9488,#0f766e);box-shadow:0 4px 12px #14b8a64d;transform:translateY(-1px)}.job-master-data-view .table{border-radius:12px;box-shadow:0 1px 3px #0000001a;margin:16px 20px;overflow:hidden}.job-master-data-view .table-head{background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;padding:12px 16px}.job-master-data-view .table-head .cell{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.job-master-data-view .table-row{background:#fff;border-bottom:1px solid #f1f5f9;display:flex;padding:14px 16px;transition:background .2s}.job-master-data-view .table-row:hover{background:#f8fafc}.job-master-data-view .table-row:last-child{border-bottom:none}.job-master-data-view .cell{align-items:center;color:#475569;display:flex;flex:1 1;font-size:13px}.job-master-data-view .cell:first-child{color:#704493;font-weight:600}.job-master-data-view .status-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:11px;font-weight:600;padding:4px 10px;text-transform:uppercase}.job-master-data-view .status-badge.active{background:#dcfce7;color:#16a34a}.job-master-data-view .status-badge.inactive{background:#fef3c7;color:#d97706}.job-master-data-view .btn-action-compact{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:16px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.job-master-data-view .btn-action-compact svg{height:18px;width:18px}.job-master-data-view .btn-action-compact:hover{background:#e5e7eb;border-color:#d1d5db;box-shadow:0 2px 4px #0000001a;color:#374151;transform:translateY(-1px)}.job-master-data-view .btn-action-compact.btn-edit:hover{background:#fef3c7;border-color:#fcd34d;color:#d97706}.job-master-data-view .btn-action-compact.btn-delete:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.job-master-data-view .empty-state{background:#fff;padding:60px 20px;text-align:center}.job-master-data-view .empty-state h3{color:#374151;font-size:18px;font-weight:600;margin:0 0 8px}.job-master-data-view .empty-state p{color:#6b7280;font-size:14px;margin:0}.job-master-data-view .modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.job-master-data-view .modal-content{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;max-height:90vh;max-width:500px;overflow:auto;width:100%}.job-master-data-view .modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.job-master-data-view .modal-header h3{color:#1e293b;font-size:18px;font-weight:600;margin:0}.job-master-data-view .modal-close{background:none;border:none;color:#64748b;cursor:pointer;font-size:24px;line-height:1}.job-master-data-view .modal-close:hover{color:#1e293b}.job-master-data-view .modal-body,.job-master-data-view .user-form{padding:20px}.job-master-data-view .form-group{margin-bottom:16px}.job-master-data-view .form-group label{color:#475569;display:block;font-size:13px;font-weight:500;margin-bottom:6px}.job-master-data-view .form-group input,.job-master-data-view .form-group select,.job-master-data-view .form-group textarea{border:1px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 12px;transition:all .2s;width:100%}.job-master-data-view .form-group input:focus,.job-master-data-view .form-group select:focus,.job-master-data-view .form-group textarea:focus{border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.job-master-data-view .form-group textarea{min-height:80px;resize:vertical}.job-master-data-view .form-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:16px}.job-master-data-view .admin-btn{border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.job-master-data-view .admin-btn-primary{background:linear-gradient(135deg,#704493,#8b5cf6);border:none;color:#fff}.job-master-data-view .admin-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#5d3a7a,#7c3aed)}.job-master-data-view .admin-btn-primary:disabled{cursor:not-allowed;opacity:.6}.job-master-data-view .admin-btn-secondary{background:#fff;border:1px solid #e5e7eb;color:#64748b}.job-master-data-view .admin-btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.job-master-data-view .admin-btn-danger{background:#ef4444;border:none;color:#fff}.job-master-data-view .admin-btn-danger:hover{background:#dc2626}@media (max-width:768px){.job-master-data-view .tabs-container{padding:12px}.job-master-data-view .tab-btn{font-size:12px;padding:8px 12px}.job-master-data-view .tab-btn span{display:none}.job-master-data-view .page-header-compact{align-items:stretch;flex-direction:column;gap:12px}.job-master-data-view .header-filters-compact{flex-wrap:wrap}.job-master-data-view .search-compact input{width:100%}}.error-logs-page{box-sizing:border-box;min-height:100vh;width:100%}.error-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin-bottom:24px}.stat-card{box-shadow:0 2px 8px #00000014;gap:16px;padding:20px}.stat-card:hover{box-shadow:0 4px 12px #0000001f}.stat-card.critical .stat-icon{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.stat-card.error .stat-icon{background:linear-gradient(135deg,#ffedd5,#fed7aa);color:#ea580c}.stat-card.warning .stat-icon{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.error-actions-bar{gap:16px;justify-content:space-between;margin-bottom:16px}.error-actions-bar,.search-section{align-items:center;display:flex;flex-wrap:wrap}.search-section{gap:12px}.search-input-wrapper{position:relative;width:300px}.search-input-wrapper .search-icon{color:#94a3b8;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.search-input{border:2px solid #e2e8f0;border-radius:8px;font-size:.9rem;padding:10px 12px 10px 40px;transition:border-color .2s;width:100%}.search-input:focus{border-color:#6b4190;outline:none}.filter-toggle-btn,.refresh-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-weight:500;gap:6px;padding:10px 16px;transition:all .2s}.filter-toggle-btn:hover,.refresh-btn:hover{border-color:#6b4190;color:#6b4190}.filter-toggle-btn.active{background:#6b4190;border-color:#6b4190;color:#fff}.bulk-actions{align-items:center;display:flex;gap:12px}.selected-count{color:#64748b;font-size:.875rem;font-weight:500}.bulk-resolve-btn{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:6px;padding:10px 16px;transition:transform .2s,box-shadow .2s}.bulk-resolve-btn:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.filters-panel{align-items:flex-end;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px;padding:20px}.filter-group{gap:6px;min-width:150px}.filter-group label{font-size:.8rem}.filter-group input,.filter-group select{border:2px solid #e2e8f0;border-radius:8px;font-size:.9rem;padding:10px 12px;transition:border-color .2s}.filter-group input:focus,.filter-group select:focus{border-color:#6b4190;outline:none}.clear-filters-btn{background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-weight:500;padding:10px 16px;transition:background .2s}.clear-filters-btn:hover{background:#e2e8f0}.error-list-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.error-list-header{grid-gap:12px;background:linear-gradient(135deg,#6b4190,#8b5caa);color:#fff;display:grid;font-size:.7rem;font-weight:700;gap:12px;grid-template-columns:40px 100px 1fr 150px 100px 60px;letter-spacing:.5px;padding:14px 20px;text-transform:uppercase}.error-item{border-bottom:1px solid #e2e8f0;transition:background .2s}.error-item:last-child{border-bottom:none}.error-item:hover .error-row{background:#f8fafc}.error-row{grid-gap:12px;align-items:center;cursor:pointer;display:grid;gap:12px;grid-template-columns:40px 100px 1fr 150px 100px 60px;padding:16px 20px}.error-checkbox input{cursor:pointer;height:18px;width:18px}.severity-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.75rem;font-weight:600;gap:4px;padding:4px 10px;text-transform:uppercase}.error-message{display:flex;flex-direction:column;gap:4px;overflow:hidden}.error-type{color:#1e293b;font-size:.9rem;font-weight:600}.error-text{color:#64748b;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.error-uri{font-size:.75rem}.error-uri code{background:#f1f5f9;border-radius:4px;color:#6b4190;padding:2px 6px}.error-time{display:flex;flex-direction:column;gap:2px}.relative-time{color:#1e293b;font-size:.85rem;font-weight:600}.full-time{color:#94a3b8;font-size:.75rem}.status-badge{font-size:.75rem;padding:4px 10px}.status-badge.resolved{background:#dcfce7;color:#16a34a}.status-badge.unresolved{background:#fee2e2;color:#dc2626}.error-actions{color:#94a3b8;display:flex;justify-content:center}.error-details{background:#f8fafc;border-top:1px solid #e2e8f0;padding:20px}.details-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.detail-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:16px}.detail-section h4{border-bottom:2px solid #e2e8f0;color:#6b4190;font-size:.8rem;font-weight:700;letter-spacing:.5px;margin-bottom:12px;padding-bottom:8px;text-transform:uppercase}.detail-row{font-size:.875rem;gap:8px;margin-bottom:8px}.detail-label{min-width:100px}.detail-value{word-break:break-all}.stack-trace-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000d;overflow:hidden}.stack-trace-header{align-items:center;background:#1e293b;display:flex;justify-content:space-between;padding:12px 16px}.stack-trace-header h4{color:#fff;font-size:.8rem;font-weight:700;letter-spacing:.5px;margin:0;text-transform:uppercase}.copy-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.75rem;font-weight:500;gap:4px;padding:6px 12px;transition:background .2s}.copy-btn:hover{background:#fff3}.stack-trace{background:#0f172a;color:#e2e8f0;font-family:Consolas,Monaco,monospace;font-size:.75rem;line-height:1.5;margin:0;max-height:300px;overflow:auto;padding:16px;white-space:pre-wrap;word-break:break-all}.error-detail-actions{display:flex;gap:12px;margin-top:20px}.delete-btn,.reopen-btn,.resolve-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:600;gap:6px;padding:10px 20px;transition:transform .2s,box-shadow .2s}.resolve-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.resolve-btn:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.reopen-btn{background:linear-gradient(135deg,#6b4190,#8b5caa);color:#fff}.reopen-btn:hover{box-shadow:0 4px 12px #6b41904d;transform:translateY(-1px)}.delete-btn{background:#fee2e2;color:#dc2626}.delete-btn:hover{background:#fecaca}.empty-state,.loading-state{align-items:center;color:#64748b;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.empty-state .empty-icon{color:#10b981;margin-bottom:16px}.empty-state h3{font-size:1.25rem;margin-bottom:8px}.modal-content{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;max-width:500px;padding:28px;width:100%}.modal-content h3{color:#1e293b;font-size:1.25rem;margin-bottom:12px}.modal-content p{color:#64748b;margin-bottom:16px}.modal-content textarea{border:2px solid #e2e8f0;border-radius:8px;font-size:.9rem;padding:12px;resize:vertical;transition:border-color .2s;width:100%}.modal-content textarea:focus{border-color:#6b4190;outline:none}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.cancel-btn,.confirm-btn,.delete-confirm-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:600;gap:6px;padding:10px 20px;transition:transform .2s}.cancel-btn{background:#f1f5f9;color:#64748b}.cancel-btn:hover{background:#e2e8f0}.confirm-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.confirm-btn:hover{transform:translateY(-1px)}.delete-confirm-btn{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff}.delete-confirm-btn:hover{transform:translateY(-1px)}@media (max-width:1200px){.error-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.error-list-header,.error-row{grid-template-columns:40px 80px 1fr 100px 80px}.error-actions,.header-actions{display:none}}@media (max-width:768px){.error-stats-grid{grid-template-columns:1fr}.search-input-wrapper{width:100%}.error-list-header{display:none}.error-row{align-items:flex-start;display:flex;flex-direction:column;gap:8px}.error-checkbox{position:absolute;right:16px;top:16px}.error-item{position:relative}.details-grid{grid-template-columns:1fr}}.audit-logs-page{box-sizing:border-box;min-height:100vh;width:100%}.page-header-bar{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px 24px}.header-title-section{align-items:center;display:flex;gap:10px}.header-title-section svg{color:#6b4190;font-size:20px}.header-title-section h1{color:#333;font-size:18px;font-weight:600;margin:0}.header-subtitle{border-left:1px solid #e5e7eb;color:#6b7280;font-size:13px;margin-left:12px;padding-left:12px}.audit-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(7,1fr);margin-bottom:20px}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;display:flex;gap:14px;padding:16px 20px;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.stat-card .stat-icon{align-items:center;border-radius:10px;display:flex;font-size:18px;height:44px;justify-content:center;width:44px}.stat-card.total .stat-icon{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4f46e5}.stat-card.today .stat-icon{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.stat-card.logins .stat-icon{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669}.stat-card.failed .stat-icon{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.stat-card.creates .stat-icon{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669}.stat-card.updates .stat-icon{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#2563eb}.stat-card.deletes .stat-icon{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.stat-content{display:flex;flex-direction:column}.stat-value{color:#1e293b;font-size:1.5rem;font-weight:700}.stat-label{color:#64748b;font-size:.7rem;letter-spacing:.3px;text-transform:uppercase}.audit-filters{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;margin-bottom:20px;padding:16px 20px}.filter-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.filter-row:last-child{margin-bottom:0}.filter-group{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:140px}.filter-group label{color:#64748b;font-size:.7rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.filter-input,.filter-select{border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;padding:8px 12px;transition:border-color .2s}.filter-input:focus,.filter-select:focus{border-color:#6b4190}.filter-actions{align-items:flex-end;display:flex}.btn-clear{background:#f1f5f9;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 14px;transition:background .2s}.btn-clear:hover{background:#e2e8f0}.audit-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;overflow:hidden}.table-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:14px 20px}.results-count{color:#64748b;font-size:13px;font-weight:500}.audit-table{border-collapse:collapse;width:100%}.audit-table th{background:linear-gradient(135deg,#6b4190,#8b5caa);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.5px;padding:12px 14px;text-align:left;text-transform:uppercase}.audit-table td{border-bottom:1px solid #f3f4f6;color:#374151;font-size:13px;padding:12px 14px}.audit-table tbody tr:hover{background:#f8fafc}.audit-table tbody tr.failed-row{background:#fef2f2}.audit-table tbody tr.failed-row:hover{background:#fee2e2}.timestamp-cell{color:#6b7280;font-size:12px;white-space:nowrap}.entity-cell{max-width:180px}.entity-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-cell{display:flex;flex-direction:column;gap:2px}.user-email{color:#1e293b;font-weight:500}.user-role{color:#9ca3af;font-size:10px;text-transform:uppercase}.action-badge{border-radius:20px;display:inline-block;font-size:.65rem;font-weight:600;letter-spacing:.3px;padding:3px 8px;text-transform:uppercase}.badge-success{background:#d1fae5;color:#059669}.badge-info{background:#dbeafe;color:#2563eb}.badge-danger{background:#fee2e2;color:#dc2626}.badge-warning{background:#fef3c7;color:#d97706}.badge-primary{background:#e0e7ff;color:#4f46e5}.badge-secondary{background:#f3f4f6;color:#6b7280}.badge-purple{background:#ede9fe;color:#7c3aed}.badge-teal{background:#ccfbf1;color:#0d9488}.status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.65rem;font-weight:600;gap:4px;padding:3px 8px;text-transform:uppercase}.status-success{background:#dcfce7;color:#16a34a}.status-failed{background:#fee2e2;color:#dc2626}.btn-view{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;color:#374151;cursor:pointer;font-size:12px;font-weight:500;padding:5px 12px;transition:all .2s}.btn-view:hover{background:#6b4190;border-color:#6b4190;color:#fff}.pagination{align-items:center;border-top:1px solid #e5e7eb;display:flex;gap:8px;justify-content:center;padding:16px}.pagination-btn{background:#fff;border:1px solid #e5e7eb;border-radius:4px;color:#374151;cursor:pointer;font-size:13px;padding:6px 14px;transition:background .2s,border-color .2s}.pagination-btn:hover:not(:disabled){background:#6b4190;border-color:#6b4190;color:#fff}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#6b7280;font-size:13px;padding:0 12px}.loading-state{color:#64748b;padding:60px 20px}.loading-state .spinner{animation:spin .8s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#6b4190;height:36px;margin-bottom:12px;width:36px}.no-data{color:#9ca3af;font-size:14px;padding:60px;text-align:center}.modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content.audit-modal{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:700px;overflow:hidden;width:100%}.modal-header{align-items:center;background:linear-gradient(135deg,#6b4190,#8b5caa);color:#fff;display:flex;justify-content:space-between;padding:16px 20px}.modal-header h2{font-size:18px;font-weight:600;margin:0}.modal-close{background:none;border:none;color:#fff;cursor:pointer;font-size:24px;line-height:1;opacity:.8;padding:0;transition:opacity .2s}.modal-close:hover{opacity:1}.modal-body{overflow-y:auto;padding:20px}.detail-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}.detail-row{display:flex;flex-direction:column;gap:4px}.detail-row.full-width{grid-column:1/-1}.detail-label{font-size:11px;font-weight:600;letter-spacing:.5px}.detail-value{font-size:13px;word-break:break-word}.detail-value.error-text{color:#dc2626}.detail-value.user-agent{color:#6b7280;font-size:11px;word-break:break-all}.json-value{background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;font-family:Monaco,Menlo,Consolas,monospace;font-size:11px;margin:0;max-height:180px;overflow-x:auto;overflow-y:auto;padding:10px;white-space:pre-wrap;word-break:break-all}@media (max-width:1400px){.audit-stats-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:1024px){.audit-stats-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.audit-stats-grid{grid-template-columns:repeat(2,1fr)}.filter-group{min-width:100%}.audit-table{display:block;overflow-x:auto}.detail-grid{grid-template-columns:1fr}}@media (max-width:480px){.audit-stats-grid{grid-template-columns:1fr}}.department-management{min-height:100vh;width:100%}.department-management .page-header-compact{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px;padding:16px 24px}.department-management .header-left-compact{align-items:center;display:flex;gap:12px}.department-management .page-title-compact{align-items:center;color:#333;display:flex;font-size:18px;font-weight:600;gap:10px;margin:0}.department-management .title-icon{color:#6b4190;font-size:24px}.department-management .header-subtitle{border-left:1px solid #e5e7eb;color:#6b7280;font-size:13px;margin-left:12px;padding-left:12px}.department-management .header-actions-compact{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.department-management .search-compact{min-width:250px;position:relative}.department-management .search-compact .search-icon{color:#9ca3af;font-size:18px;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.department-management .search-compact input{border:1px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 12px 10px 40px;transition:border-color .2s;width:100%}.department-management .search-compact input:focus{border-color:#6b4190;outline:none}.department-management .btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 16px;transition:all .2s}.department-management .btn-primary{background:linear-gradient(135deg,#6b4190,#8b5caa);color:#fff}.department-management .btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #6b41904d;transform:translateY(-1px)}.department-management .btn-secondary{background:#f3f4f6;border:1px solid #e5e7eb;color:#374151}.department-management .btn-secondary:hover:not(:disabled){background:#e5e7eb}.department-management .btn-danger{background:linear-gradient(135deg,#dc2626,#ef4444);color:#fff}.department-management .btn-danger:hover:not(:disabled){box-shadow:0 4px 12px #dc26264d;transform:translateY(-1px)}.department-management .btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.department-management .error-container,.department-management .loading-container{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.department-management .spinner{animation:spin .8s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#6b4190;height:40px;margin-bottom:16px;width:40px}.department-management .error-text{color:#dc2626;margin-bottom:16px}.department-management .retry-button{background:#6b4190;border:none;border-radius:8px;color:#fff;cursor:pointer;padding:10px 20px}.department-management .table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;overflow:hidden}.department-management .no-data{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.department-management .no-data-icon{color:#d1d5db;font-size:48px;margin-bottom:16px}.department-management .departments-table{border-collapse:collapse;width:100%}.department-management .departments-table thead tr{background:linear-gradient(135deg,#6b4190,#8b5caa)}.department-management .departments-table th{color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:14px 16px;text-align:left;text-transform:uppercase}.department-management .departments-table td{border-bottom:1px solid #f3f4f6;color:#374151;font-size:14px;padding:14px 16px}.department-management .departments-table tbody tr:hover{background:#f8fafc}.department-management .departments-table tbody tr.inactive-row{background:#fef2f2;opacity:.7}.department-management .dept-code{color:#6b4190;font-weight:600}.department-management .dept-name{font-weight:500}.department-management .dept-description{color:#6b7280;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.department-management .dept-order{color:#6b7280;text-align:center}.department-management .status-badge{border:none;border-radius:20px;cursor:pointer;display:inline-block;font-size:11px;font-weight:600;padding:4px 12px;text-transform:uppercase;transition:all .2s}.department-management .status-badge.active{background:#dcfce7;color:#16a34a}.department-management .status-badge.active:hover{background:#bbf7d0}.department-management .status-badge.inactive{background:#fee2e2;color:#dc2626}.department-management .status-badge.inactive:hover{background:#fecaca}.department-management .actions-cell{display:flex;gap:8px}.department-management .btn-icon{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:all .2s;width:32px}.department-management .btn-edit{background:#e0e7ff;color:#4f46e5}.department-management .btn-edit:hover{background:#c7d2fe}.department-management .btn-delete{background:#fee2e2;color:#dc2626}.department-management .btn-delete:hover{background:#fecaca}.department-management .modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.department-management .modal-content{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:500px;overflow:hidden;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.department-management .modal-header{align-items:center;background:linear-gradient(135deg,#6b4190,#8b5caa);color:#fff;display:flex;justify-content:space-between;padding:16px 20px}.department-management .modal-header h2{font-size:18px;font-weight:600;margin:0}.department-management .btn-close{background:none;border:none;color:#fff;cursor:pointer;font-size:24px;line-height:1;opacity:.8;padding:0;transition:opacity .2s}.department-management .btn-close:hover{opacity:1}.department-management .modal-body{overflow-y:auto;padding:20px}.department-management .form-group{margin-bottom:16px}.department-management .form-group label{color:#374151;display:block;font-size:13px;font-weight:600;margin-bottom:6px}.department-management .form-group input,.department-management .form-group textarea{border:1px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.department-management .form-group input:focus,.department-management .form-group textarea:focus{border-color:#6b4190;outline:none}.department-management .form-group input:disabled{background:#f3f4f6;color:#9ca3af}.department-management .form-group .help-text{color:#6b7280;display:block;font-size:12px;margin-top:4px}.department-management .modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.department-management .delete-modal .modal-body p{color:#374151;margin-bottom:12px}.department-management .delete-modal .warning-text{background:#fef3c7;border-left:3px solid #f59e0b;border-radius:6px;color:#6b7280;font-size:13px;padding:10px}@media (max-width:768px){.department-management .page-header-compact{align-items:stretch;flex-direction:column}.department-management .header-actions-compact{flex-direction:column}.department-management .search-compact{min-width:100%}.department-management .departments-table{display:block;overflow-x:auto}.department-management .dept-description{max-width:150px}}.user-layout{background-color:#f5f7fa;display:flex;min-height:100vh}.user-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.user-main{background-color:#f5f7fa;flex:1 1;overflow-y:auto;padding:24px}.loading-spinner{align-items:center;color:#666;display:flex;font-size:1.2rem;height:100vh;justify-content:center}@media (max-width:768px){.user-main{padding:16px}}.user-sidebar{background:linear-gradient(180deg,#704493,#512e6e);border-right:1px solid #ffffff1a;box-shadow:0 0 40px #7044934d,0 0 10px #0000001a;color:#fff;display:flex;flex-direction:column;overflow:hidden;padding:0;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:280px}.user-sidebar.collapsed{width:70px}.user-sidebar:before{display:none}.user-sidebar .sidebar-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000;border-bottom:1px solid #ffffff26;padding:20px 16px;position:relative}.user-sidebar .logo-section{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.user-sidebar .logo-full-img{filter:brightness(0) invert(1);height:auto;max-width:140px;transition:transform .3s ease}.user-sidebar .logo-full-img:hover{transform:scale(1.02)}.user-sidebar .logo-icon-container{align-items:center;border-radius:6px;display:flex;height:30px;justify-content:flex-start;overflow:hidden;transition:transform .3s ease;width:30px}.user-sidebar .logo-icon-container:hover{transform:scale(1.1)}.user-sidebar .logo-icon-cropped{filter:brightness(0) invert(1);height:auto;margin-left:0;width:120px}.user-sidebar.collapsed .logo-section{justify-content:center;margin-bottom:0}.user-sidebar .workspace-title{align-items:center;border-top:1px solid #ffffff1a;color:#ffffffe6;display:flex;font-size:1rem;font-weight:600;gap:8px;padding-top:8px}.user-sidebar .workspace-icon{color:#37e2ce;font-size:1.1rem}.collapse-btn{align-items:center;background:#0000;border:none;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;justify-content:center;padding:4px;transition:all .3s ease}.collapse-btn:hover{background:#ffffff1a;border-radius:6px}.user-sidebar.collapsed .collapse-btn{position:absolute;right:50%;top:60px;transform:translateX(50%)}.user-sidebar.collapsed .logout-btn span,.user-sidebar.collapsed .menu a span:not(.menu-icon){display:none}.user-sidebar nav{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:16px 0}.user-sidebar nav::-webkit-scrollbar{width:6px}.user-sidebar nav::-webkit-scrollbar-track{background:#ffffff0d;border-radius:10px}.user-sidebar nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.user-sidebar nav::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.user-sidebar .menu{list-style:none;margin:0;padding:0}.user-sidebar .menu li{margin-bottom:4px;padding:0 12px}.user-sidebar .menu a{align-items:center;border-radius:12px;color:#ffffffd9;display:flex;font-size:.95rem;font-weight:500;gap:14px;overflow:hidden;padding:12px 16px;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.user-sidebar .menu a:before{background:linear-gradient(90deg,#ffffff26,#ffffff0d);bottom:0;content:"";left:0;position:absolute;top:0;transition:width .4s cubic-bezier(.4,0,.2,1);width:0}.user-sidebar .menu a.active{background:#ffffff26;box-shadow:0 4px 16px #0003;color:#fff;font-weight:600}.user-sidebar .menu a.active:after{background:#37e2ce;border-radius:50%;box-shadow:0 0 8px #37e2ce;content:"";height:6px;position:absolute;right:12px;top:50%;transform:translateY(-50%);width:6px}.user-sidebar .menu-icon{align-items:center;display:flex;flex-shrink:0;font-size:1.4rem;justify-content:center;transition:transform .3s ease;width:24px}.user-sidebar .menu-icon svg{height:1.4rem;width:1.4rem}.user-sidebar .menu a.active .menu-icon{filter:drop-shadow(0 0 8px rgba(55,226,206,.5))}.user-sidebar .sidebar-footer{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000001a;border-top:1px solid #ffffff26;padding:16px}.user-sidebar .logout-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.user-sidebar .logout-btn:hover{background:#ffffff26;border-color:#ffffff4d;box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.user-sidebar .logout-btn:active{transform:translateY(0)}@media (max-width:768px){.user-sidebar{bottom:0;left:-100%;position:fixed;top:0;transition:left .3s ease;z-index:1000}.user-sidebar.mobile-open{left:0}.mobile-menu-btn{background:#704493;border:none;border-radius:8px;box-shadow:0 2px 8px #0003;color:#fff;cursor:pointer;display:block;left:16px;padding:10px;position:fixed;top:16px;z-index:999}.mobile-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;inset:0;position:fixed;z-index:999}}@media (min-width:769px){.mobile-menu-btn,.mobile-overlay{display:none}}.book-room-view{background:linear-gradient(135deg,#f5f7fa,#e9ecef);min-height:100vh;padding:1.5rem}.page-header-compact{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;gap:1.5rem;justify-content:space-between;margin-bottom:1.5rem;padding:.75rem 1rem}.header-left-compact{flex-shrink:0}.page-title-compact{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.page-title-compact .title-icon{color:#704493;font-size:1.25rem}.header-filters-compact{align-items:center;display:flex;flex:1 1;gap:.625rem;justify-content:flex-end}.search-compact{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.5rem;min-width:200px;padding:.5rem .75rem;transition:all .2s ease}.search-compact:focus-within{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a}.search-compact .icon{align-items:center;color:#94a3b8;display:flex;font-size:1rem}.search-compact input{background:#0000;border:none;color:#1e293b;font-size:.875rem;outline:none;width:100%}.search-compact input::placeholder{color:#94a3b8}.select-compact{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#1e293b;cursor:pointer;font-size:.875rem;font-weight:500;min-width:120px;padding:.5rem .75rem;transition:all .2s ease}.select-compact:hover{background:#fff;border-color:#cbd5e1}.select-compact:focus{background:#fff;border-color:#704493;box-shadow:0 0 0 3px #7044931a;outline:none}.select-compact:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed;opacity:.6}.btn-reset-compact{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap}.btn-reset-compact:hover{background:#e2e8f0;border-color:#cbd5e1}.btn-reset-compact:active{transform:scale(.98)}.book-room-header{animation:fadeInDown .6s ease-out;margin-bottom:2.5rem}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.book-room-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:800;letter-spacing:-1px;margin-bottom:.5rem}.book-room-subtitle{color:#64748b;font-size:1.125rem;font-weight:400}.custom-filters-bar{animation:fadeIn .8s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe6;border:1px solid #667eea1a;border-radius:24px;box-shadow:0 8px 32px #00000014,0 2px 8px #0000000a,inset 0 0 0 1px #ffffff80;margin-bottom:2.5rem;padding:2rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.filters-header{align-items:center;display:flex;gap:.75rem;margin-bottom:1.5rem}.filters-icon{font-size:1.5rem}.filters-label{color:#1e293b;font-size:1.125rem;font-weight:700;margin:0}.filters-row{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:2fr 1fr 1fr 1fr auto}.filter-input,.filter-select{background:#fff;border:2px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 3px #0000000d;color:#1e293b;font-size:1rem;font-weight:500;padding:.875rem 1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.filter-input::placeholder{color:#94a3b8;font-weight:400}.filter-input:focus,.filter-select:focus{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a,0 4px 12px #667eea26;outline:none;transform:translateY(-1px)}.filter-select:disabled{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-color:#e2e8f0;cursor:not-allowed;opacity:.6}.search-input{position:relative}.search-input:focus{box-shadow:0 0 0 4px #667eea1a,0 8px 24px #667eea33}.reset-btn{background:linear-gradient(135deg,#64748b,#475569);border:none;border-radius:14px;box-shadow:0 4px 12px #64748b4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.reset-btn:hover{background:linear-gradient(135deg,#475569,#334155);box-shadow:0 8px 20px #64748b66;transform:translateY(-2px)}.reset-btn:active{box-shadow:0 2px 8px #64748b4d;transform:translateY(0)}.rooms-list-container{min-height:400px;padding:1rem 0}.rooms-list{animation:fadeInUp .6s ease-out;display:flex;flex-direction:column;gap:1rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.room-card{animation:cardEntrance .6s ease-out backwards;background:#fff;border:1px solid #e2e8f0cc;border-radius:24px;box-shadow:0 4px 24px #0000000f,0 2px 8px #0000000a;overflow:hidden;padding:0;position:relative;transition:all .5s cubic-bezier(.34,1.56,.64,1)}@keyframes cardEntrance{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.room-card:first-child{animation-delay:.1s}.room-card:nth-child(2){animation-delay:.2s}.room-card:nth-child(3){animation-delay:.3s}.room-card:nth-child(4){animation-delay:.4s}.room-card:nth-child(5){animation-delay:.5s}.room-card:nth-child(6){animation-delay:.6s}.room-card:before{animation:gradientShift 3s ease infinite;background:linear-gradient(90deg,#667eea,#764ba2 50%,#f093fb);background-size:200% 100%;content:"";height:5px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .4s ease}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.room-card:hover:before{opacity:1}.room-card:hover{border-color:#667eea4d;box-shadow:0 24px 48px #667eea40,0 12px 24px #764ba226,0 0 0 1px #667eea1a;transform:translateY(-12px) scale(1.03)}.room-card.skeleton{animation:pulse 1.5s ease-in-out infinite;pointer-events:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.room-card-visual{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:1px solid #e2e8f0cc;display:flex;height:120px;justify-content:center;overflow:hidden;position:relative}.room-visual-icon{filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));font-size:3.5rem;z-index:1}.room-card-content{padding:1.5rem}.room-card-header{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.room-card-title{color:#1e293b;font-size:1.5rem;font-weight:700;letter-spacing:-.3px;line-height:1.3;margin:0}.room-type-badge{align-self:flex-start;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:6px;box-shadow:0 2px 8px #3b82f640;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.375rem .875rem;text-transform:uppercase;white-space:nowrap}.room-card-body{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.room-detail{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.625rem;padding:.625rem;transition:all .2s ease}.room-detail:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 4px 12px #0000000d;transform:translateY(-2px)}.detail-icon{flex-shrink:0;font-size:1.25rem}.detail-label{color:#64748b;font-size:.688rem;font-weight:500;letter-spacing:.3px;margin-bottom:.125rem;text-transform:uppercase}.detail-text{color:#1e293b;font-size:.938rem;font-weight:600;line-height:1.2}.latest-bookings{margin:.75rem 0 0;padding:0}.bookings-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.625rem;padding:0 .25rem}.bookings-icon{color:#64748b;font-size:1rem}.bookings-title{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.bookings-scroll-container{-ms-overflow-style:none;display:flex;gap:.5rem;margin:0 -.25rem;overflow-x:auto;padding:.25rem;scrollbar-width:none}.bookings-scroll-container::-webkit-scrollbar{display:none}.booking-item{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:100px;cursor:default;display:inline-flex;flex-shrink:0;font-size:.75rem;gap:.5rem;padding:.5rem .75rem;transition:all .2s ease;white-space:nowrap}.booking-item:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.booking-user-info{align-items:center;display:flex;gap:.5rem}.booking-avatar{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #3b82f640;color:#fff;display:flex;flex-shrink:0;font-size:.625rem;font-weight:700;height:24px;justify-content:center;width:24px}.booking-user{color:#1e293b;font-weight:600;max-width:120px;overflow:hidden;text-overflow:ellipsis}.booking-time{align-items:center;color:#64748b;display:flex;font-size:.688rem;font-weight:500;gap:.25rem}.booking-time:before{color:#cbd5e1;content:"•"}.room-card-footer{padding:0 1.5rem 1.5rem}.btn-full{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;box-shadow:0 4px 16px #3b82f64d;color:#fff;cursor:pointer;font-size:.938rem;font-weight:600;letter-spacing:.3px;overflow:hidden;padding:.875rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.btn-full:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 8px 24px #3b82f666;transform:translateY(-2px)}.btn-full:active{box-shadow:0 4px 12px #3b82f64d;transform:translateY(0)}.btn-icon{font-size:1.125rem;margin-right:.5rem}.empty-state{animation:fadeIn 1s ease-out;background:#fff;border:1px solid #e2e8f0cc;border-radius:32px;box-shadow:0 8px 40px #0000000f;grid-column:1/-1;padding:5rem 2rem;text-align:center}.empty-icon{animation:float 4s ease-in-out infinite;filter:drop-shadow(0 8px 24px rgba(0,0,0,.1));font-size:6rem;margin-bottom:2rem;opacity:.9}.empty-state h3{color:#1e293b;font-size:2rem;font-weight:800;letter-spacing:-.5px;margin:0 0 1rem}.empty-state p{color:#64748b;font-size:1.125rem;line-height:1.7;margin:0 auto 2rem;max-width:500px}.empty-action{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:14px;box-shadow:0 8px 24px #667eea66;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.empty-action:hover{box-shadow:0 12px 32px #667eea80;transform:translateY(-2px)}.skeleton-title{border-radius:12px;height:2rem;margin-bottom:1.5rem}.skeleton-text,.skeleton-title{animation:shimmer 2s ease-in-out infinite;background:linear-gradient(90deg,#e2e8f0,#f1f5f9 50%,#e2e8f0);background-size:200% 100%}.skeleton-text{border-radius:8px;height:1.25rem;margin-bottom:1rem}.skeleton-text:nth-child(2){width:80%}.skeleton-text:nth-child(3){width:60%}.skeleton-button{animation:shimmer 2s ease-in-out infinite;background:linear-gradient(90deg,#e2e8f0,#f1f5f9 50%,#e2e8f0);background-size:200% 100%;border-radius:16px;height:3.5rem;margin-top:2rem}@media (max-width:1200px){.filters-row{grid-template-columns:1fr}.filter-input,.filter-select{min-width:100%}.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}@media (max-width:768px){.book-room-view{padding:1rem}.book-room-title{font-size:2rem}.book-room-subtitle{font-size:1rem}.custom-filters-bar{padding:1.5rem}.filters-row{gap:.75rem}.rooms-grid{gap:1.5rem;grid-template-columns:1fr;padding:.25rem}.room-card-visual{height:140px}.room-visual-icon{font-size:4rem}.room-card-content{padding:1.5rem}.room-card-title{font-size:1.5rem}.room-type-badge{font-size:.75rem;padding:.4rem 1rem}.btn-full{font-size:1rem;padding:1rem 1.5rem}.empty-state{padding:4rem 1.5rem}.empty-icon{font-size:5rem}.empty-state h3{font-size:1.75rem}.empty-state p{font-size:1rem}}@media (max-width:480px){.book-room-title{font-size:1.75rem}.room-card-header{align-items:flex-start;flex-direction:column}.room-type-badge{align-self:flex-start}.booking-item{align-items:flex-start;flex-direction:column;gap:.5rem}.booking-time{margin-left:0}}@media print{.btn-full,.custom-filters-bar{display:none}.room-card{border:1px solid #ddd;box-shadow:none;page-break-inside:avoid}}.loading-state{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:4rem 2rem}.loading-spinner-large{animation:spin .8s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#3b82f6;height:48px;width:48px}.room-row{grid-gap:1rem;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:1rem;grid-template-columns:2fr 2fr 2.5fr 150px;padding:.875rem 1rem;transition:all .2s ease}.room-row:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f;transform:translateY(-1px)}.room-main-info{align-items:center;display:flex;gap:.75rem}.room-icon-wrapper{align-items:center;background:linear-gradient(135deg,#ede9fe,#ddd6fe);border:1px solid #c4b5fd;border-radius:8px;display:flex;flex-shrink:0;height:44px;justify-content:center;transition:all .2s ease;width:44px}.room-row:hover .room-icon-wrapper{background:linear-gradient(135deg,#ddd6fe,#c4b5fd);border-color:#a78bfa;transform:scale(1.05)}.room-icon{color:#7c3aed;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));font-size:1.5rem}.room-name-section{display:flex;flex-direction:column;gap:.25rem}.room-name{color:#1e293b;font-size:.95rem;font-weight:600;line-height:1.3;margin:0}.room-type{align-items:center;align-self:flex-start;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:6px;color:#fff;cursor:help;display:inline-flex;flex-shrink:0;height:24px;justify-content:center;transition:all .2s ease;width:24px}.room-type:hover{box-shadow:0 2px 8px #3b82f64d;transform:scale(1.1)}.room-type svg{font-size:.875rem}.room-details-section{display:flex;flex-wrap:wrap;gap:.5rem}.room-detail-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;font-size:.8rem;font-weight:500;gap:.375rem;padding:.25rem .5rem;white-space:nowrap}.detail-icon,.room-detail-item{align-items:center;display:flex}.detail-icon{color:#94a3b8;font-size:1rem}.detail-value{color:#1e293b;font-weight:600}.bookings-compact,.room-bookings-section{display:flex;flex-direction:column;gap:.375rem}.booking-chip{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;font-size:.7rem;gap:.375rem;padding:.375rem .5rem;transition:all .2s ease}.booking-chip:hover{background:#fff;border-color:#cbd5e1}.booking-avatar-small{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #3b82f640;color:#fff;display:flex;flex-shrink:0;font-size:.625rem;font-weight:700;height:24px;justify-content:center;width:24px}.booking-info{color:#64748b;font-weight:500;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.more-bookings{color:#3b82f6;font-size:.75rem;font-weight:600;padding:.375rem .5rem}.no-bookings{color:#94a3b8;font-size:.813rem;font-style:italic;padding:.5rem}.room-action-section{justify-content:center}.btn-book,.room-action-section{align-items:center;display:flex}.btn-book{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;box-shadow:0 2px 8px #3b82f64d;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease;white-space:nowrap}.btn-book:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #3b82f666;transform:translateY(-2px)}.btn-book:active{transform:translateY(0)}.btn-book-compact{align-items:center;background:linear-gradient(135deg,#00b39e,#00a08e);border:none;border-radius:6px;box-shadow:0 1px 4px #00b39e33;color:#fff;cursor:pointer;display:flex;font-size:.8rem;font-weight:600;gap:.375rem;padding:.5rem .875rem;transition:all .2s ease;white-space:nowrap}.btn-book-compact:hover{background:linear-gradient(135deg,#00a08e,#008f7e);box-shadow:0 2px 8px #00b39e4d;transform:translateY(-1px)}.btn-book-compact:active{transform:translateY(0)}.btn-book-compact svg{font-size:1rem}@media (max-width:1200px){.room-row{gap:1rem;grid-template-columns:1.5fr 1.5fr 2fr 140px}}@media (max-width:992px){.room-row{gap:1.5rem;grid-template-columns:1fr;padding:1.5rem}.room-action-section{justify-content:stretch}.btn-book,.btn-book-compact{justify-content:center;width:100%}}@media (max-width:768px){.room-icon-wrapper{height:48px;width:48px}.room-icon{font-size:1.75rem}.room-name{font-size:1rem}.room-detail-item{font-size:.813rem;padding:.375rem .625rem}.detail-icon{font-size:.875rem}}.room-icon-wrapper{position:relative}.availability-dot{border:2px solid #fff;border-radius:50%;bottom:-2px;box-shadow:0 1px 3px #0003;height:12px;position:absolute;right:-2px;width:12px}.availability-dot.availability-green{background-color:#10b981}.availability-dot.availability-yellow{background-color:#f59e0b}.availability-dot.availability-red{background-color:#ef4444}.room-name-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.availability-badge{align-items:center;border-radius:8px;display:inline-flex;font-size:.688rem;font-weight:600;gap:.25rem;letter-spacing:.015em;padding:.188rem .5rem;white-space:nowrap}.availability-badge svg{font-size:.813rem}.availability-badge-green{background-color:#d1fae5;color:#065f46}.availability-badge-yellow{background-color:#fef3c7;color:#92400e}.availability-badge-red{background-color:#fee2e2;color:#991b1b}.booking-chip.my-booking{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#3b82f6;box-shadow:0 2px 6px #3b82f626}.my-booking-label{background-color:#eff6ff;border-radius:8px;color:#1e40af;font-weight:700;margin-right:.25rem}.booking-duration,.my-booking-label{font-size:.75rem;padding:.125rem .5rem}.booking-duration{background-color:#f1f5f9;border-radius:6px;color:#475569;font-weight:600}@media (max-width:1024px){.room-name-row{align-items:flex-start;flex-direction:column;gap:.5rem}.availability-badge{font-size:.688rem;padding:.188rem .625rem}}@media (max-width:768px){.availability-dot{border-width:1.5px;height:10px;width:10px}.availability-badge{font-size:.625rem;padding:.188rem .5rem}}.room-detail-item.next-available-info{background-color:#fef3c7;border:1px solid #fbbf24;border-radius:8px;font-weight:600;padding:.5rem .75rem}.next-available-info .detail-value{color:#92400e;font-weight:600}.change-password-container{align-items:center;background:linear-gradient(40deg,#704493,#512e6e);display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}.change-password-container:after,.change-password-container:before{animation:float 6s ease-in-out infinite;background:linear-gradient(45deg,#9333ea1a,#ec48991a);border-radius:50%;content:"";pointer-events:none;position:absolute}.change-password-container:before{height:200px;left:10%;top:10%;width:200px}.change-password-container:after{animation-delay:2s;bottom:15%;height:150px;right:10%;width:150px}@keyframes float{0%,to{opacity:.3;transform:translateY(0) rotate(0deg)}50%{opacity:.6;transform:translateY(-20px) rotate(180deg)}}.change-password-card{animation:slideIn .6s ease-out;background:#fff;border-radius:20px;box-shadow:0 8px 32px #0003;max-width:500px;overflow:hidden;position:relative;width:100%;z-index:1}.change-password-card:before{animation:shimmer 3s linear infinite;background:linear-gradient(90deg,#0000,#00b39e,#37e2ce,#0000);content:"";height:2px;left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.change-password-header{background:linear-gradient(40deg,#704493,#512e6e);color:#fff;padding:24px 32px}.change-password-header h1{font-size:24px;font-weight:600;margin:0}.required-notice{align-items:flex-start;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:8px;display:flex;gap:12px;margin-top:16px;padding:12px}.warning-icon{align-items:center;background:#fbbf24;border-radius:50%;color:#1a1a2e;display:flex;flex-shrink:0;font-weight:700;height:24px;justify-content:center;width:24px}.required-notice p{font-size:14px;line-height:1.5;margin:0}.password-rules-section{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:20px 32px}.password-rules-section h3{color:#475569;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.password-rules-list{list-style-type:disc;margin:0;padding:0 0 0 20px}.password-rules-list li{color:#64748b;font-size:13px;line-height:1.5;margin-bottom:4px}.change-password-form{padding:24px 32px 32px}.form-group{margin-bottom:20px}.form-group label{color:#2c3e50;display:block;font-size:14px;font-weight:600;letter-spacing:.3px;margin-bottom:8px;text-transform:uppercase}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper input{background:#fffffff2;border:2px solid #e2e8f0;border-radius:10px;font-size:14px;padding:14px 48px 14px 16px;transition:all .3s ease;width:100%}.password-input-wrapper input:focus{border-color:#00b39e;box-shadow:0 0 0 4px #00b39e26;outline:none}.password-input-wrapper input::placeholder{color:#0006}.password-toggle{background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:18px;opacity:.5;padding:6px;position:absolute;right:12px;transition:all .3s ease}.password-toggle:hover{background:#00b39e1a;color:#00b39e;opacity:1}.password-strength{align-items:center;display:flex;gap:12px;margin-top:10px}.strength-bar{background:#e5e7eb;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.strength-fill{border-radius:3px;height:100%;transition:width .3s,background-color .3s}.strength-label{font-size:12px;font-weight:600;min-width:80px;text-align:right}.error-text{color:#dc2626}.error-text,.success-text{display:block;font-size:12px;margin-top:6px}.success-text{color:#059669}.form-actions{display:flex;gap:12px;margin-top:28px}.btn-cancel{background:#f3f4f6;border:1px solid #d1d5db;border-radius:10px;color:#374151;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:14px 24px;transition:all .3s ease}.btn-cancel:hover:not(:disabled){background:#e5e7eb;transform:translateY(-2px)}.btn-cancel:disabled{cursor:not-allowed;opacity:.5}.btn-submit{background:linear-gradient(135deg,#00b39e,#37e2ce);border:none;border-radius:10px;box-shadow:0 4px 15px #00b39e4d;color:#fff;cursor:pointer;flex:2 1;font-size:14px;font-weight:600;overflow:hidden;padding:14px 24px;position:relative;transition:all .3s ease}.btn-submit:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .5s,height .5s;width:0}.btn-submit:hover:not(:disabled):before{height:300px;width:300px}.btn-submit:hover:not(:disabled){box-shadow:0 6px 20px #00b39e66;transform:translateY(-3px)}.btn-submit:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}@media (max-width:480px){.change-password-container{padding:16px}.change-password-header{padding:20px 24px}.password-rules-section{padding:16px 24px}.change-password-form{padding:20px 24px 24px}.form-actions{flex-direction:column}.btn-submit{flex:1 1}}.deviceAuth-container{align-items:center;display:flex;height:100vh;justify-content:center}.deviceAuth-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2b184ccc;border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 15px 30px #0006;display:flex;flex-direction:column;max-width:400px;padding:40px 30px;width:100%}.deviceAuth-title{color:#fff;font-size:2em;font-weight:700;margin-bottom:30px;position:relative}.input-group{margin-bottom:25px;text-align:left}.input-group label{color:#ccc;display:block;font-size:.95em;font-weight:500;margin-bottom:8px}.input-group input{background-color:#0000004d;border:1px solid #ffffff1a;border-radius:8px;box-sizing:border-box;color:#fff;font-size:1.05em;padding:12px 15px;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.input-group input::placeholder{color:#a0a0a0;opacity:.8}.input-group input:focus{border-color:#feb47b;box-shadow:0 0 0 2px #feb47b4d;outline:none}.authenticate-button{background:linear-gradient(90deg,#f97316,#ec4899)!important;border:none;border-radius:12px;box-shadow:0 4px 15px #f973164d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:10px;padding:15px 30px;transition:all .3s ease}.authenticate-button:hover{box-shadow:0 6px 20px #f9731666;transform:translateY(-2px)}.authenticate-button:active{transform:translateY(0)}.deviceAuth-spinner{animation:spin 1s linear infinite;border:4px solid #0000001a;border-left-color:#fff;border-radius:50%;display:inline-block;height:20px;vertical-align:middle;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.703d734e.css.map*/