:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74c3c;--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-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-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--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;padding:4px;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:320px;width:var(--toastify-toast-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{left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{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{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{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)}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;padding: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{--y:0;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-sizing:border-box;cursor:default;direction:ltr;display:flex;font-family:sans-serif;font-family:var(--toastify-font-family);justify-content:space-between;margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);overflow:hidden;padding:8px;position:relative;touch-action:none;z-index:0}.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-body{align-items:center;display:flex;flex:1 1 auto;margin:auto 0;padding:6px}.Toastify__toast-body>div:last-child{flex:1 1;word-break:break-word}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:20px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}@media only screen and (max-width:480px){.Toastify__toast{border-radius:0;margin-bottom:0}}.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:#e74c3c;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:#e74c3c;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{align-self:flex-start;background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;transition:.3s ease;z-index:1}.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{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:9999;z-index:var(--toastify-z-index)}.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;border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);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);bottom:0;height:5px;left:0;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)}}body{background-color:#f0f2f5;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;padding:0}a{color:#007bff;text-decoration:none}a:hover{text-decoration:underline}.container{margin:auto;overflow:hidden;width:80%}.header{border-bottom:3px solid #0779e4;min-height:70px;padding-top:30px}.footer,.header{background:#333;color:#fff}.footer{bottom:0;left:0;padding:10px;position:fixed;text-align:center;width:100%}.status-badge{border:1px solid #0000;cursor:pointer;transition:all .2s ease}.status-badge:hover{opacity:.8;transform:scale(1.05)}.status-awaiting-approval,.status-awaiting_approval{background-color:#fff3cd;border-color:#ffeaa7;color:#856404}.status-pending-start,.status-pending_start{background-color:#d4edda;border-color:#c3e6cb;color:#155724}.status-in-progress,.status-in_progress{background-color:#cce5ff;border-color:#b3d9ff;color:#004085}.status-pending-completed,.status-pending_completed{background-color:#e2e3e5;border-color:#d6d8db;color:#383d41}.status-completed{background-color:#d1ecf1;border-color:#bee5eb;color:#0c5460}.status-cancelled,.status-rejected{background-color:#f8d7da;border-color:#f5c6cb;color:#721c24}.status-archived{background-color:#e2e3e5;border-color:#d6d8db;color:#495057}.status-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.75rem;min-width:120px;padding:2px}.status-dropdown:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}@media screen and (max-width:600px){table{border-radius:.5rem;display:block;overflow-x:auto;padding:10px;width:100%}.page-header{border-bottom:1px solid #ddd;font-size:1.25rem;font-weight:700;max-height:8vh;padding:1rem;text-align:center}.page-header h1{color:#333;font-size:2rem;margin:0}}.login-container{align-items:center;background-color:#f0f2f5;display:flex;flex-direction:column;height:100vh;justify-content:center}.login-form{background-color:#fff;border-radius:8px;box-shadow:0 4px 8px #0000001a;padding:20px;width:300px}.login-form h2{margin-bottom:20px;text-align:center}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px}.form-group input{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;padding:10px;width:100%}.login-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px;width:100%}.login-button:hover{background-color:#0056b3}.install-button{background-color:#90ee90;border:none;border-radius:8px;box-shadow:0 2px 8px #00000014;color:#000;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:600;margin:24px;padding:12px 32px;text-align:center;transition:background .2s,transform .2s;width:340px}.install-button:focus,.install-button:hover{background-color:#adff2f;outline:none;transform:translateY(-2px) scale(1.03)}.install-hint{background-color:#90ee90;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:.9rem;line-height:1.4;margin-top:10px;max-width:340px;padding:10px 0;text-align:center}.dashboard-container{background-color:#f7faff;border-radius:.5rem;box-shadow:0 0 10px #0000000d;margin:0 auto;padding-bottom:2rem;width:100%}.dashboard-welcome{background:linear-gradient(90deg,#1a73e8,#34a853);border-radius:.5rem .5rem 0 0;box-shadow:0 2px 8px #1a73e814;color:#fff;margin-bottom:1.5rem;padding:2rem 2rem 1.2rem}.dashboard-welcome h2{font-size:2rem;font-weight:700;margin:0 0 .5rem}.dashboard-welcome p{font-size:1.1rem;margin:0;opacity:.95}.dashboard-addplus-wrapper{align-items:center;display:flex;margin-bottom:1.5rem;position:relative}.addplus-btn{align-items:center;background:#1a73e8;border:none;border-radius:2rem;box-shadow:0 2px 8px #1a73e814;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:.7em;padding:.7rem 2.2rem;transition:background .2s}.addplus-btn:hover{background:#1760c4}.addplus-card{animation:fadeIn .2s;background:#fff;border-radius:1rem;box-shadow:0 4px 24px #1a73e821;left:0;max-width:95vw;min-width:320px;padding:1.5rem 2rem 1.2rem;position:absolute;top:110%;z-index:10}.addplus-card h4{color:#1a73e8;font-size:1.2rem;margin:0 0 1rem}.addplus-options{display:flex;gap:1.2rem;justify-content:space-between;margin-bottom:1.2rem}.addplus-option{align-items:center;background:#f7faff;border:1px solid #e3eafc;border-radius:.75rem;color:#1a73e8;cursor:pointer;display:flex;flex-direction:column;font-size:1rem;font-weight:500;min-width:80px;padding:1rem .7rem;transition:background .15s,border .15s,box-shadow .15s}.addplus-option:hover{background:#e3eafc;border-color:#1a73e8}.addplus-option:focus,.addplus-option:hover{background:#e3eafc;border-color:#1a73e8;box-shadow:0 2px 8px #1a73e821;outline:none}.addplus-option span{font-size:.98em;margin-top:.5em}.addplus-close{background:none;border:none;color:#888;cursor:pointer;font-size:1em;margin-top:.5em;text-decoration:underline}.review-cards{margin-bottom:2rem}.review-card-grid{grid-gap:1.2rem;display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.review-card{align-items:center;background:#fff;border:2.5px solid #e3eafc;border-radius:1rem;box-shadow:0 2px 8px #1a73e80f;display:flex;gap:1.1rem;padding:1.2rem 1.2rem 1rem;transition:border .2s,box-shadow .2s}.review-card.clickable{box-shadow:0 2px 8px #1a73e81a;cursor:pointer;transition:border .2s,box-shadow .2s,background .15s}.review-card.clickable:focus,.review-card.clickable:hover{background:#f0f6ff;border-color:#1760c4!important;box-shadow:0 4px 16px #1a73e82e;outline:none}.review-icon{flex-shrink:0;font-size:2.2rem}.review-info{align-items:flex-start;display:flex;flex-direction:column}.review-count{color:#222;font-size:1.5rem;font-weight:700}.review-label{color:#555;font-size:1.05rem}.summary-section{background:#e3eafc;border-radius:1rem;box-shadow:0 2px 8px #1a73e80f;margin-bottom:2rem;padding:1.2rem 1.5rem}.summary-list{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));list-style:none;margin-top:.5rem;padding-left:0}.summary-list li{background:#fff;border-left:5px solid #2563eb;border-radius:.375rem;box-shadow:0 0 3px #0000000d;color:#333;font-weight:500;padding:.75rem}.live-users{display:flex;flex-direction:column;gap:.75rem}.user-box{background-color:#f3f4f6;border-left:4px solid #2563eb;border-radius:.5rem;color:#333;font-size:.875rem;padding:.75rem}.charts-wrapper{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr;margin-top:2rem;padding:0 1rem}.chart-wrapper{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000000d;max-width:100%;overflow-x:auto;padding:1rem 1rem 2rem}.chart-canvas{max-height:350px}.chart-header{align-items:center;display:flex;justify-content:space-between}.chart-toggle{display:flex;gap:.5rem}.toggle-btn{background-color:#fff;border:1px solid #ccc;border-radius:.375rem;cursor:pointer;font-size:.875rem;padding:.4rem .8rem;transition:all .2s ease}.toggle-btn.active{background-color:#2563eb;border-color:#1e40af;color:#fff}.live-users-section{background:#fff;border-radius:.5rem;box-shadow:0 1px 4px #0000000f;margin:2rem 1rem 1rem;padding:1rem}.section-title{color:#2563eb;font-size:1.25rem;font-weight:700;margin-bottom:1rem}.live-users-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.user-card{background:#f9fafb;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.95rem;line-height:1.4;padding:1rem}.user-card p{margin:.25rem 0}.user-card a{color:#2563eb;text-decoration:underline}.user-card.finished{background-color:#fff7ed;border-color:#facc15}@media (max-width:900px){.dashboard-addplus-wrapper,.dashboard-section,.dashboard-welcome,.live-users-section,.summary-section{padding-left:1rem;padding-right:1rem}.addplus-card{min-width:220px;padding:1rem .7rem}}@media (max-width:600px){.dashboard-welcome{font-size:1rem;padding:1.2rem .5rem .7rem}.dashboard-addplus-wrapper{align-items:stretch;flex-direction:column}.addplus-btn{font-size:1rem;padding:.7rem .5rem;width:100%}.addplus-card{left:0;max-width:99vw;min-width:0;min-width:auto;padding:1rem .5rem;right:0;width:98vw}.addplus-options{flex-direction:column;gap:.7rem}.review-card-grid{gap:.7rem}.live-users-list,.review-card-grid,.summary-list{grid-template-columns:1fr}.charts-wrapper{gap:1rem;padding:0 .2rem}}.sub-page-container{animation:subpage-fade-in .25s;background:#f8fafc;border-radius:18px;box-shadow:0 2px 16px #00000012;display:flex;flex-direction:column;margin:2.5rem auto;max-width:600px;min-height:60vh;overflow:hidden;position:relative;transition:box-shadow .2s;width:100%}.sub-page-container.enter{animation:subpage-slide-in .25s cubic-bezier(.4,0,.2,1)}.sub-page-container.exit{animation:subpage-slide-out .25s cubic-bezier(.4,0,.2,1)}@keyframes subpage-slide-in{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes subpage-slide-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(32px)}}.sub-page-header{align-items:center;background:#fff;border-top-left-radius:18px;border-top-right-radius:18px;box-shadow:0 2px 8px #0000000a;display:flex;gap:1rem;padding:1rem 1.25rem .75rem;position:-webkit-sticky;position:sticky;top:0;z-index:2}.sub-page-header h2{font-size:1.5rem;margin:.5rem;text-align:center;width:100%}.sub-page-back-button{align-items:center;background:#e3e8ef;border:none;border-radius:50%;box-shadow:0 1px 4px #0000000a;cursor:pointer;display:flex;font-size:1.3rem;height:38px;justify-content:center;margin-right:1rem;transition:background .15s;width:38px}.sub-page-back-button:hover{background:#d1d5db}.back-icon{color:#374151;font-size:1.3rem}.sub-page-title{color:#22223b;flex:1 1;font-size:1.25rem;font-weight:600;margin:0;text-align:left}.sub-page-content{flex:1 1;overflow-y:auto;padding:1.5rem 1.25rem 2rem}@media (max-width:700px){.sub-page-container{border-radius:0;box-shadow:none;margin:0;max-width:100vw;min-height:100vh}.sub-page-header{border-radius:0;padding:1rem .75rem .75rem}.sub-page-content{padding:1.1rem .75rem 1.5rem}}.user-profile{background:#fff;border-radius:18px;box-shadow:0 2px 16px #00000012;display:flex;flex-direction:column;margin:2.5rem auto;max-width:420px;padding:2.2rem 2rem 2rem;position:relative}.user-profile h2{color:#22223b;font-size:1.4rem;font-weight:700;margin-bottom:1.2rem;text-align:center}.user-info{background:#f8fafc;border-radius:12px;box-shadow:0 1px 4px #00000008;color:#333;font-size:1.05rem;margin-bottom:2rem;padding:1.1rem 1rem 1rem}.user-info>div{margin-bottom:.5rem}.user-info>div:last-child{margin-bottom:0}.change-section{margin-top:.5rem}.change-section h3{color:#2d3142;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.change-section form{display:flex;flex-direction:column;gap:.7rem}.change-section label{color:#444;font-size:.98rem;margin-bottom:.2rem}.change-section input{background:#f8fafc;border:1px solid #d1d5db;border-radius:8px;font-size:1rem;margin-bottom:.2rem;padding:.6rem .9rem;transition:border .15s}.change-section input:focus{border:1.5px solid #4f8cff;outline:none}.quick-button{background:#4f8cff;border:none;border-radius:8px;box-shadow:0 1px 4px #0000000a;color:#fff;cursor:pointer;font-size:1.08rem;font-weight:600;margin-top:.7rem;padding:.7rem 0;transition:background .15s}.quick-button:hover{background:#2563eb}@media (max-width:600px){.user-profile{border-radius:0;box-shadow:none;margin:0;max-width:100vw;padding:1.2rem .5rem 1.5rem}}.employee-dashboard-container{background:linear-gradient(135deg,#667eea,#764ba2);box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;overflow-x:hidden;padding:.75rem 1rem 1rem;position:relative}.employee-dashboard-container *{box-sizing:border-box}.employee-dashboard-container .employee-dashboard-header{color:#fff;font-size:1.25rem;font-weight:400;margin-bottom:1rem;text-align:center;text-shadow:0 2px 4px #0000004d}.employee-dashboard-container .employee-dashboard-grid{display:flex;flex-direction:column;gap:.75rem;margin:0 auto;max-width:100%}.employee-dashboard-container .employee-dashboard-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 4px 20px #0000001a;min-height:auto;overflow:hidden;padding:1rem;position:relative;transition:all .3s ease}.employee-dashboard-container .employee-dashboard-card:before{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:16px 16px 0 0;content:"";height:3px;left:0;position:absolute;right:0;top:0}.employee-dashboard-container .employee-dashboard-card:hover{box-shadow:0 6px 25px #00000026;transform:translateY(-2px)}.employee-dashboard-container .employee-dashboard-card h3{align-items:center;color:#2c3e50;display:flex;font-size:1rem;font-weight:600;gap:.5rem;margin-bottom:.5rem}.employee-dashboard-container .employee-dashboard-card p{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#34495e;font-size:1.5rem;font-weight:700;margin:0;text-align:center}.employee-dashboard-container .time-cards-row{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-bottom:.75rem}.employee-dashboard-container .time-card-compact{padding:.75rem}.employee-dashboard-container .time-card-compact h3{font-size:.85rem;margin-bottom:.25rem}.employee-dashboard-container .time-card-compact p{font-size:1.25rem}.employee-dashboard-container .earnings-summary-card{background:linear-gradient(135deg,#f3e5f5,#e1bee7);padding:.75rem}.employee-dashboard-container .earnings-summary-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr;margin-top:.5rem}.employee-dashboard-container .earnings-item{background:#ffffff80;border-radius:8px;padding:.5rem;text-align:center}.employee-dashboard-container .earnings-item h4{color:#6a1b9a;font-size:.7rem;font-weight:600;margin-bottom:.15rem}.employee-dashboard-container .earnings-item .amount{color:#4a148c;font-size:1.1rem;font-weight:800}.employee-dashboard-container .quick-actions-card{padding:.75rem}.employee-dashboard-container .quick-actions-grid{grid-gap:.5rem;gap:.5rem;grid-template-columns:1fr 1fr;margin-top:.75rem}.employee-dashboard-container .modern-quick-button{align-items:center;border-radius:10px;box-shadow:0 3px 12px #667eea4d;display:flex;font-size:.85rem;justify-content:center;min-height:50px;padding:.75rem 1rem;text-align:center}.employee-dashboard-container .modern-quick-button:hover{box-shadow:0 5px 18px #667eea66;transform:translateY(-1px)}.employee-dashboard-container .account-button{box-shadow:0 3px 12px #ff6b6b4d;grid-column:span 2}.employee-dashboard-container .account-button:hover{box-shadow:0 5px 18px #ff6b6b66}.employee-dashboard-container .active-tracking-indicator{height:10px;right:.75rem;top:.75rem;width:10px}.employee-dashboard-container .welcome-message{border-radius:12px;margin-bottom:1rem;padding:.75rem}.employee-dashboard-container .welcome-message h2{font-size:1.1rem}.employee-dashboard-container .loading-skeleton{border-radius:6px;height:1.25rem}@media (max-width:480px){.employee-dashboard-container{max-height:calc(100vh - 65px);min-height:calc(100vh - 65px);overflow-y:auto;padding:.5rem .75rem 70px}.employee-dashboard-container .employee-dashboard-header{font-size:1.1rem;margin-bottom:.75rem}.employee-dashboard-container .time-cards-row{gap:.5rem;margin-bottom:.5rem}.employee-dashboard-container .time-card-compact{padding:.4rem}.employee-dashboard-container .time-card-compact h3{font-size:.7rem}.employee-dashboard-container .time-card-compact p{font-size:1rem}.employee-dashboard-container .earnings-item h4{font-size:.65rem}.employee-dashboard-container .earnings-item .amount{font-size:1rem}.employee-dashboard-container .modern-quick-button{font-size:.7rem;min-height:40px;padding:.4rem .6rem}.employee-dashboard-container .employee-dashboard-grid{gap:.5rem}.employee-dashboard-container .employee-dashboard-card{padding:.6rem}}@media (max-width:768px) and (orientation:landscape){.employee-dashboard-container{max-height:calc(100vh - 65px);min-height:calc(100vh - 65px);overflow-y:auto;padding:.5rem 1rem 60px}.employee-dashboard-container .employee-dashboard-grid{gap:.5rem}.employee-dashboard-container .employee-dashboard-card{padding:.5rem}}.employee-dashboard-container .time-card{background:linear-gradient(135deg,#e3f2fd,#bbdefb)}.employee-dashboard-container .earnings-card{background:linear-gradient(135deg,#e8f5e8,#c8e6c9)}.employee-dashboard-container .earnings-card .earnings-amount{color:#2e7d32;font-size:2.5rem;font-weight:800}.employee-dashboard-container .earnings-card .earnings-label{color:#388e3c;font-size:1rem;font-weight:500;margin-bottom:.5rem}.employee-dashboard-container .quick-actions-card{background:linear-gradient(135deg,#fff3e0,#ffe0b2);grid-column:span 2}.employee-dashboard-container .quick-actions-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:1.5rem}.employee-dashboard-container .modern-quick-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;overflow:hidden;padding:1rem 1.5rem;position:relative;transition:all .3s ease}.employee-dashboard-container .modern-quick-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.employee-dashboard-container .modern-quick-button:hover:before{left:100%}.employee-dashboard-container .modern-quick-button:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.employee-dashboard-container .modern-quick-button:active{transform:translateY(0)}.employee-dashboard-container .account-button{background:linear-gradient(135deg,#ff6b6b,#ee5a24);box-shadow:0 4px 15px #ff6b6b4d}.employee-dashboard-container .account-button:hover{box-shadow:0 8px 25px #ff6b6b66}.employee-dashboard-container .stats-row{grid-gap:2rem;display:grid;gap:2rem;grid-column:span 2;grid-template-columns:1fr 1fr}.employee-dashboard-container .active-tracking-indicator{animation:pulse 2s infinite;background:#4caf50;border-radius:50%;height:12px;position:absolute;right:1rem;top:1rem;width:12px}.employee-dashboard-container .welcome-message{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:15px;margin-bottom:2rem;padding:1.5rem}.employee-dashboard-container .welcome-message h2{color:#fff;font-size:1.8rem;font-weight:400;margin:0}.employee-dashboard-container .loading-skeleton{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:8px;height:2rem}.employee-dashboard-container .card-icon{font-size:1.5rem;opacity:.8}@media (max-width:768px){.employee-dashboard-container{max-height:calc(100vh - 65px);min-height:calc(100vh - 65px);overflow-y:auto;padding:.5rem 1rem 70px}.employee-dashboard-container .employee-dashboard-header{font-size:1.1rem;margin-bottom:1rem}.employee-dashboard-container .employee-dashboard-grid{gap:.75rem;grid-template-columns:1fr}.employee-dashboard-container .earnings-summary-card,.employee-dashboard-container .quick-actions-card,.employee-dashboard-container .stats-row{grid-column:span 1}.employee-dashboard-container .quick-actions-grid,.employee-dashboard-container .stats-row{grid-template-columns:1fr}}.time-tracking-container{background-color:#fff;display:flex;flex-direction:column;height:100vh}.time-tracking-body{flex:1 1;padding:1.5rem}.welcome-text{font-size:1.125rem;font-weight:500;margin-bottom:1.5rem}.start-button{background-color:#2563eb;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem;width:100%}.toggle-option{transition:color .3s ease}.error-message{background-color:#ffe6e6;border-radius:5px;color:red;font-weight:700;margin:10px 0;padding:10px;text-align:center}.time-tracking-active-container{background-color:#fff;display:flex;flex-direction:column;height:100vh}.time-tracking-active-header{border-bottom:1px solid #ddd;font-size:1.25rem;font-weight:700;padding:1rem;text-align:center}.time-tracking-active-body{flex:1 1;padding:1.5rem}.current-job-info{margin-bottom:2rem;text-align:center}.current-job-title{font-size:1.5rem;font-weight:700;margin:0}.current-job-name{color:blue;cursor:pointer;font-size:1rem;margin-bottom:.5rem;text-decoration:underline}.current-job-start{color:gray;font-size:.875rem}.running-timer{font-size:2rem;font-weight:700;margin-top:.75rem}.label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.input{border:1px solid #ccc;border-radius:.375rem;box-sizing:border-box;margin-bottom:1.5rem;padding:.5rem;width:100%}.input.note{height:6rem;resize:none}.group-buttons{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1rem}.secondary-button{background-color:#add8e6;border:none;border-radius:.5rem;cursor:pointer;flex:1 1;font-size:12px;padding:.5rem}.submit-button{background-color:#10b981;margin-bottom:1rem}.end-button,.submit-button{border-radius:.5rem;font-size:1rem;padding:.75rem;width:100%}.end-button{background-color:#dc2626;border:none;color:#fff;cursor:pointer}.custom-toggle{background-color:#eee;border-radius:999px;display:flex;height:50px;margin-bottom:1.5rem;overflow:hidden;position:relative}.custom-toggle.disabled{opacity:.5;pointer-events:none}.custom-toggle.disabled .toggle-option{cursor:not-allowed}.toggle-option{cursor:pointer;flex:1 1;font-weight:500;line-height:50px;text-align:center;-webkit-user-select:none;user-select:none;z-index:2}.toggle-option.selected{color:#fff}.toggle-slider{background-color:#2563eb;border-radius:999px;bottom:4px;position:absolute;top:4px;transition:transform .3s ease;width:50%;z-index:1}.toggle-slider.work{transform:translateX(100%)}.toggle-slider.driving{transform:translateX(0)}button:disabled{background-color:#ccc;cursor:not-allowed;pointer-events:none}.button-wrapper{display:inline-block;position:relative}.driving-overlay{background-color:#ffeaea;border-radius:4px;color:#b30000;font-weight:700;left:0;min-height:30px;opacity:70%;padding:8px;position:absolute;right:0;text-align:center}.tracking-error-modal{max-width:350px;padding:1.5rem 1rem 1rem;text-align:center}.tracking-error-modal h2{color:#b71c1c;font-size:1.3rem;margin-bottom:.5rem}.tracking-error-modal p{font-size:1rem;margin-bottom:.5rem}.modal-actions{display:flex;gap:1rem;justify-content:center;margin-top:1.2rem}.modal-actions .end-button{background:linear-gradient(135deg,#e53935,#b71c1c);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.6rem 1.2rem;transition:background .2s}.modal-actions .end-button:hover{background:linear-gradient(135deg,#b71c1c,#e53935)}.modal-actions .secondary-button{background:#f5f5f5;border:1px solid #bbb;border-radius:8px;color:#333;cursor:pointer;font-weight:500;padding:.6rem 1.2rem;transition:background .2s}.modal-actions .secondary-button:hover{background:#e0e0e0}.upload-container{background-color:#fff;border-radius:.5rem;margin:auto;max-height:90vh;max-width:600px;padding:1.5rem}.button-group{flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.upload-button{background-color:#2563eb;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:600;padding:.75rem}.upload-button:hover{background-color:#1e40af}.preview-container{margin-top:1.5rem;padding-bottom:5rem}.preview-grid{grid-gap:1rem;background-color:#fff;border:1px solid #ddd;border-radius:.5rem;box-sizing:border-box;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin-bottom:1rem;max-height:300px;overflow-y:auto;padding:.5rem;scroll-behavior:smooth}.preview-wrapper{border-radius:.5rem;overflow:hidden;position:relative}.preview-image{border:1px solid #ddd;border-radius:.375rem;height:140px;object-fit:cover;width:100%}.remove-button{background-color:#dc2626e6;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:8px;height:13px;left:1px;padding:0;position:absolute;top:1px;width:15px;z-index:1}.notes-popup{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 4px 8px #0000001a;max-width:380px;padding:20px;position:absolute;z-index:1000}.notes-header{align-items:center;display:flex;justify-content:space-between}.notes-popup .close-btn{background:none;border:none;color:red;cursor:pointer;font-size:16px}.notes-list{list-style:none;margin:0;max-height:50vh;overflow-y:auto;padding:0}.note-card{background-color:#f9f9f9;border:1px solid #ddd;border-radius:4px;margin-bottom:5px;padding:5px}.note-text,.note-title{border:1px solid #ccc;border-radius:4px;margin-bottom:5px;padding:5px;width:97%}.note-text{resize:vertical}.note-create-btn,.note-delete-btn,.note-save-btn{border:none;border-radius:4px;cursor:pointer;margin-right:5px;padding:5px 10px}.note-delete-btn{background-color:#e74c3c;color:#fff}.note-save-btn{background-color:#3497db;color:#fff}.note-create-btn{background-color:#2ecc71;color:#fff}.new-note{margin-bottom:15px}.notes-popup h1{font-size:30px;margin:0 0 5px;padding:0}.notes-popup .note-footer{display:flex;justify-content:flex-end}.notes-popup .note-time-stemps{color:#777;font-size:8px;margin-left:10px}.notes-embedded{background-color:#fff;border:none;border-radius:0;box-shadow:none;max-width:100%;padding:0;position:static}.notes-embedded .notes-header h1{font-size:18px;margin-bottom:15px}.add-task-section{align-items:flex-start;display:flex;gap:.5rem}.new-task{box-sizing:border-box;flex:1 1;font-size:1rem;height:2.5rem;padding:.5rem}.input-title,.new-task{border:1px solid #ccc;border-radius:.375rem}.input-title{padding:.35rem;width:98%}.add-button{background-color:#2563eb;border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-weight:500;height:2.5rem;padding:0 1rem}.tasks-list{display:flex;flex-direction:column;gap:.5rem;max-height:55vh;overflow-y:auto;padding:.5rem 0;scroll-behavior:smooth}.task-item{align-items:center;background:#f9f9f9;border-radius:.375rem;gap:.25rem;padding:.5rem}.task-controls,.task-item{display:flex}.editable-title{flex:1 1}.title-display span{font-size:.95rem}.title-display.archived,.title-display.completed{color:#9ca3af;text-decoration:line-through}.edit-button{background:none;border:none;color:#555;cursor:pointer;font-size:1rem;margin-left:5px;padding:0}.status-badge{border-radius:.375rem;box-sizing:border-box;font-size:.8rem;font-weight:700;padding:.25rem 0}.status-badge.pending{background-color:#facc15}.status-badge.in_progress{background-color:#60a5fa}.status-badge.completed{background-color:#4ade80}.assignment-select{background:#fff;border:1px solid #ccc;border-radius:.375rem;box-sizing:border-box;font-size:.7rem;height:2rem;padding:.25rem}.delete-button{background:none;border:none;color:#dc2626;cursor:pointer;font-size:1.85rem;margin:-10px -10px -10px -2px;padding:5px 0 0}.save-button{background-color:#10b981;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1rem;margin-top:1.5rem;padding:.75rem;width:100%}.time-tracking-page-container{height:100%;overflow:hidden;position:relative;width:100%}.screen{height:100%;left:0;position:absolute;top:0;transition:transform .5s ease;width:100%}.slide-right{animation:slideRight .5s forwards}.slide-left{animation:slideLeft .5s forwards}@keyframes slideRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.shared-week-navigator{display:flex;flex-direction:column;gap:8px}.shared-week-navigator-label{align-items:center;color:#495057;display:flex;font-size:.9rem;font-weight:500;gap:4px}.shared-required-indicator{color:#dc3545;font-size:1.1em}.shared-clear-week-btn{align-items:center;background:#dc3545cc;border:none;border-radius:50%;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-size:.6rem;height:18px;justify-content:center;margin-left:6px;padding:3px;transition:all .2s ease;width:18px}.shared-clear-week-btn:hover{background:#dc3545;transform:scale(1.1)}.shared-week-navigator-controls{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;box-sizing:border-box;color:#495057;display:flex;font-size:.9rem;gap:8px;min-height:40px;padding:10px 12px;transition:all .3s ease}.shared-week-navigator-controls:hover{background:#ffffff26;border-color:#fff9}.shared-week-nav-btn{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;display:flex;font-size:.8em;height:24px;justify-content:center;transition:all .2s ease;width:24px}.shared-week-nav-btn:hover:not(:disabled){background:#fff3;border-color:#fff9;color:#fff;transform:translateY(-1px)}.shared-week-nav-btn:disabled{background:#ffffff0d;border-color:#fff3;color:#fff6;cursor:not-allowed;transform:none}.shared-week-display{background:#0000;border:none;color:#495057;flex:1 1;font-size:.9rem;font-weight:500;min-width:140px;padding:0;text-align:center;transition:transform .3s ease,opacity .2s ease;white-space:nowrap}.shared-week-display.sliding-left{animation:sharedSlideLeft .3s ease}.shared-week-display.sliding-right{animation:sharedSlideRight .3s ease}@keyframes sharedSlideLeft{0%{opacity:.5;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes sharedSlideRight{0%{opacity:.5;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.shared-week-navigator-hint{color:#6c757d;margin-top:8px;text-align:center}.shared-quick-week-btn{background:none;border:none;color:#007bff;cursor:pointer;font-size:inherit;padding:0 2px;text-decoration:underline}.shared-quick-week-btn:hover{color:#0056b3}@media (max-width:768px){.shared-week-navigator{padding:12px}.shared-week-navigator-controls{gap:6px;padding:8px 10px}.shared-week-nav-btn{font-size:.75em;height:22px;width:22px}.shared-week-display{font-size:.85rem;min-width:120px}.shared-clear-week-btn{height:16px;margin-left:4px;width:16px}}@media (max-width:480px){.shared-week-navigator-controls{flex-wrap:wrap;gap:4px;justify-content:center}.shared-week-display{font-size:.8rem;min-width:100px}}.data-loader{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:1rem}.data-loader-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1rem}.data-loader-header.collapsible-header{cursor:pointer;-webkit-user-select:none;user-select:none}.data-loader-header.collapsible-header:hover{background:#f1f5f9}.header-left{align-items:center;display:flex;flex:1 1;gap:1rem}.data-loader-title,.header-right{align-items:center;display:flex;gap:.5rem}.data-loader-title{color:#1e293b;font-size:1rem;font-weight:600;margin:0}.title-icon{color:#3b82f6}.data-loader-summary{color:#64748b;font-size:.875rem;font-weight:400}.data-loader-actions,.refresh-btn{align-items:center;display:flex;gap:.5rem}.refresh-btn{background:#3b82f6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.refresh-btn:hover:not(:disabled){background:#2563eb}.refresh-btn:disabled{background:#94a3b8;cursor:not-allowed}.collapse-toggle{background:#0000;border:1px solid #d1d5db;border-radius:4px;color:#64748b;cursor:pointer;padding:.5rem;transition:all .2s}.collapse-toggle:hover{background:#f3f4f6;color:#374151}.data-loader-content{padding:1rem}.data-loader-content.collapsible-content{border-top:1px solid #e2e8f0}.param-control{margin-bottom:1rem}.param-label{align-items:center;color:#374151;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;margin-bottom:.5rem}.param-icon{color:#6b7280}.param-input,.param-select{border:1px solid #d1d5db;border-radius:4px;transition:border-color .2s;width:100%}.param-input,.param-select{background:#fff;font-size:.875rem;padding:.5rem}.param-select{border:1px solid #d1d5db;border-radius:6px;position:relative;transition:all .2s ease;z-index:10}.param-select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a;outline:none;z-index:200}.param-select:hover{border-color:#9ca3af}.param-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.param-checkbox{margin-right:.5rem}.checkbox-label{color:#374151;font-size:.875rem}.checkbox-text{-webkit-user-select:none;user-select:none}.date-range-inputs{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-top:.5rem}.custom-date-inputs{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.date-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;flex:1 1;font-size:.875rem;min-width:120px;padding:.5rem;transition:all .2s ease}.date-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a;outline:none}.date-input:hover{border-color:#9ca3af}.param-actions{border-top:1px solid #e2e8f0;display:flex;gap:.5rem;margin-top:1.5rem;padding-top:1rem}.apply-btn,.reset-btn{border:none;border-radius:4px;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.apply-btn{background:#10b981;color:#fff}.apply-btn:hover:not(:disabled){background:#059669}.apply-btn:disabled{background:#94a3b8;cursor:not-allowed}.reset-btn{background:#6b7280}.reset-btn:hover:not(:disabled){background:#4b5563}.reset-btn:disabled{background:#d1d5db;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}.week-navigator-container{margin-bottom:1rem}.week-navigator-container.full-width{grid-column:1/-1}@media (max-width:768px){.data-loader-header{gap:1rem}.data-loader-header,.header-left,.header-right{align-items:stretch;flex-direction:column}.date-range-inputs{grid-template-columns:1fr}.param-actions{flex-direction:column}.jobs-data-loader-content{grid-template-columns:1fr}.custom-date-inputs{flex-direction:column}.date-input{min-width:100%}}.shared-modern-filters{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem;overflow:hidden}.shared-filters-header{align-items:flex-start;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.shared-results-info{flex:1 1}.shared-results-count{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:1.5rem;font-weight:700;margin:0 0 .25rem}.shared-results-subtitle{color:#6b7280;font-size:.875rem;margin:0}.shared-view-controls{align-items:center;display:flex;gap:1.5rem}.shared-view-mode-controls{align-items:center;display:flex;gap:.75rem}.shared-control-label{color:#374151;font-size:.875rem;font-weight:500}.shared-view-mode-buttons{border:1px solid #d1d5db;border-radius:8px;display:flex;overflow:hidden}.shared-view-mode-btn{background:#fff;border:none;color:#6b7280;cursor:pointer;font-size:1rem;padding:.5rem .75rem;transition:all .2s ease}.shared-view-mode-btn:hover{background:#f3f4f6;color:#374151}.shared-view-mode-btn.active{background:#667eea;color:#fff}.shared-view-mode-btn+.shared-view-mode-btn{border-left:1px solid #d1d5db}.shared-filters-controls{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem;padding:1.5rem}.shared-search-control{display:flex;flex:1 1;flex-direction:column;gap:.5rem;min-width:250px}.shared-search-input-wrapper{max-width:400px;position:relative;width:100%}.shared-search-icon{color:#9ca3af;font-size:.875rem;left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.shared-search-input{background:#fff;border:2px solid #e5e7eb;border-radius:10px;box-sizing:border-box;font-size:.875rem;padding:.75rem 1rem .75rem 2.5rem;transition:all .2s ease;width:100%}.shared-search-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.shared-search-input::placeholder{color:#9ca3af}.shared-clear-search{align-items:center;background:none;border:none;color:#9ca3af;cursor:pointer;display:flex;font-size:1.25rem;height:20px;justify-content:center;line-height:1;padding:0;position:absolute;right:1rem;top:50%;transform:translateY(-50%);transition:color .2s ease;width:20px}.shared-clear-search:hover{color:#374151}.shared-filter-controls{display:flex;flex-shrink:0;flex-wrap:wrap;gap:1rem}.shared-filter-control{display:flex;flex-direction:column;gap:.5rem;min-width:180px}.shared-filter-label{align-items:center;color:#374151;display:flex;font-size:.875rem;font-weight:500;gap:.5rem}.shared-filter-icon{color:#667eea;font-size:.75rem}.shared-filter-select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:.875rem;padding:.75rem;position:relative;transition:all .2s ease;z-index:10}.shared-filter-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none;z-index:200}.shared-filter-control{position:relative;z-index:5}.shared-filter-control:focus-within{z-index:150}.shared-action-controls{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1.5rem;min-width:0}.shared-sort-controls{flex-direction:column;min-width:200px}.shared-sort-controls,.shared-sort-wrapper{display:flex;gap:.5rem}.shared-sort-select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;flex:1 1;font-size:.875rem;padding:.75rem;transition:all .2s ease}.shared-sort-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.shared-sort-order-btn{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;min-width:48px;padding:.75rem;transition:all .2s ease}.shared-sort-order-btn:hover{background:#f3f4f6;border-color:#d1d5db;color:#374151}.shared-sort-order-btn.asc{border-color:#10b981;color:#10b981}.shared-sort-order-btn.desc{border-color:#ef4444;color:#ef4444}.shared-layout-controls{display:flex;flex-direction:column;gap:.5rem}.shared-layout-buttons{border:2px solid #e5e7eb;border-radius:8px;display:flex;overflow:hidden}.shared-layout-btn{align-items:center;background:#fff;border:none;color:#6b7280;cursor:pointer;display:flex;justify-content:center;min-width:48px;padding:.75rem;transition:all .2s ease}.shared-layout-btn:hover{background:#f3f4f6;color:#374151}.shared-layout-btn.active{background:#667eea;color:#fff}.shared-layout-btn+.shared-layout-btn{border-left:1px solid #e5e7eb}.shared-daterange-control{flex-direction:column;gap:.5rem}.shared-custom-date-inputs{display:flex;flex-wrap:wrap;gap:.5rem}.shared-date-input{border:1px solid #d1d5db;border-radius:6px;flex:1 1;font-size:.875rem;min-width:120px;padding:.5rem;transition:all .2s ease}.shared-date-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a;outline:none}.shared-date-range-info{color:#6b7280;font-size:.75rem;font-style:italic;padding:.25rem 0}.shared-week-control{flex-direction:column;gap:.5rem}.shared-week-navigator{min-width:200px;width:100%}.shared-filter-control.shared-daterange-control,.shared-filter-control.shared-week-control{min-width:200px}@media (max-width:768px){.shared-modern-filters{border-radius:0;box-shadow:none;margin-bottom:1rem;padding:0}.shared-filters-header{align-items:stretch;flex-direction:column;gap:.7rem;padding:.7rem}.shared-results-info{margin-bottom:.5rem}.shared-view-controls{align-items:stretch;flex-direction:column;gap:.7rem}.shared-filters-controls{flex-direction:column;gap:1rem;padding:.7rem}.shared-search-control{gap:.3rem;max-width:100%;min-width:0}.shared-search-input-wrapper{max-width:100%}.shared-search-input{font-size:.95rem;padding:.5rem .7rem .5rem 2rem}.shared-filter-controls{flex-direction:row;gap:.5rem;overflow-x:auto;padding-bottom:.5rem}.shared-filter-control{flex-shrink:0;gap:.3rem;min-width:120px}.shared-filter-select{font-size:.95rem;padding:.5rem}.shared-action-controls{flex-direction:column;gap:1rem}.shared-sort-controls{gap:.3rem;min-width:100%}.shared-sort-select{font-size:.95rem;padding:.5rem}.shared-sort-order-btn{font-size:1rem;min-width:36px;padding:.5rem}.shared-layout-controls{gap:.3rem}.shared-layout-buttons{border-width:1px}}@media (max-width:600px){.shared-modern-filters{border-radius:6px;box-shadow:0 1px 4px #00000012;margin-bottom:.7rem}.shared-filters-header{flex-direction:column;gap:.3rem;padding:.7rem .6rem}.shared-filters-controls{flex-direction:column;gap:.5rem;padding:.5rem .4rem}.shared-search-control{gap:.15rem;max-width:100%;min-width:0}.shared-search-input-wrapper{max-width:100%}.shared-search-input{border-radius:6px;font-size:.93rem;padding:.32rem .5rem .32rem 1.5rem}.shared-filter-controls{flex-direction:row;gap:.3rem;overflow-x:auto;padding-bottom:.3rem}.shared-filter-control{flex-shrink:0;gap:.15rem;min-width:90px}.shared-filter-select{border-radius:6px;font-size:.93rem;padding:.32rem}.shared-action-controls{flex-direction:column;gap:.5rem}.shared-sort-controls{gap:.15rem;min-width:100%}.shared-sort-order-btn,.shared-sort-select{border-radius:6px;font-size:.93rem;padding:.32rem}.shared-sort-order-btn{min-width:28px}.shared-layout-controls{gap:.15rem}.shared-layout-buttons{border-width:1px}}@media (max-width:480px){.shared-modern-filters{border-radius:0;box-shadow:none;margin-bottom:.5rem;padding:0}.shared-filters-controls,.shared-filters-header{gap:.3rem;padding:.5rem}.shared-search-control{gap:.2rem;max-width:100%;min-width:0}.shared-search-input{font-size:16px;padding:.4rem .5rem .4rem 1.7rem}.shared-filter-controls{gap:.2rem}.shared-filter-control{gap:.2rem;min-width:90px}.shared-filter-select{font-size:.9rem;padding:.3rem}}.shared-loading-container{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:2rem;text-align:center}.shared-loading-small{gap:.5rem;padding:1rem}.shared-loading-medium{gap:1rem;padding:2rem}.shared-loading-large{gap:1.5rem;padding:3rem}.shared-loading-spinner{align-items:center;display:flex;flex-direction:column;gap:.75rem}.shared-spinner-icon{animation:sharedSpin 1s linear infinite;color:#667eea}.shared-loading-small .shared-spinner-icon{font-size:1.5rem}.shared-loading-medium .shared-spinner-icon{font-size:2rem}.shared-loading-large .shared-spinner-icon{font-size:3rem}@keyframes sharedSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.shared-loading-dots{align-items:center;display:flex;gap:.5rem}.shared-dot{animation:sharedDotPulse 1.4s ease-in-out infinite both;background:#667eea;border-radius:50%;height:8px;width:8px}.shared-loading-small .shared-dot{height:6px;width:6px}.shared-loading-large .shared-dot{height:12px;width:12px}.shared-dot:first-child{animation-delay:-.32s}.shared-dot:nth-child(2){animation-delay:-.16s}.shared-dot:nth-child(3){animation-delay:0s}@keyframes sharedDotPulse{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.shared-loading-pulse{position:relative}.shared-pulse-circle{animation:sharedPulse 2s ease-in-out infinite;background:#667eea;border-radius:50%;height:40px;width:40px}.shared-loading-small .shared-pulse-circle{height:30px;width:30px}.shared-loading-large .shared-pulse-circle{height:60px;width:60px}@keyframes sharedPulse{0%{opacity:1;transform:scale(.8)}50%{opacity:.5;transform:scale(1.2)}to{opacity:1;transform:scale(.8)}}.shared-loading-message{color:#6b7280;font-size:.9rem;font-weight:500;margin:0}.shared-loading-small .shared-loading-message{font-size:.8rem}.shared-loading-large .shared-loading-message{font-size:1.1rem}@media (max-width:768px){.shared-loading-container{padding:1.5rem}.shared-loading-large{padding:2rem}}.card-list-container{background:none;box-shadow:none;box-sizing:border-box;margin:0 auto;max-height:80vh;max-width:100vw;overflow-y:auto;padding:0;width:100%}.card-list-error{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:24px 0;padding:48px;text-align:center}.card-list-error p{color:#dc3545;font-size:1.1rem;margin-bottom:24px}.card-list-filters{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.filters-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.results-count{color:#2c3e50;font-size:1.2rem;font-weight:600;margin:0}.filters-controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.search-control{min-width:250px}.search-input{transition:border-color .3s ease,box-shadow .3s ease;width:100%}.filter-control{align-items:center;display:flex;gap:8px}.filter-icon{color:#6c757d;font-size:.9rem}.filter-select{background:#fff;border:1px solid #dee2e6;border-radius:8px;cursor:pointer;font-size:1rem;min-width:150px;padding:12px 16px;transition:border-color .3s ease,box-shadow .3s ease}.filter-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.sort-controls{align-items:center;display:flex;gap:12px}.sort-field-control{align-items:center;display:flex;gap:8px}.sort-label{color:#6c757d;font-size:.9rem;font-weight:500}.sort-select{background:#fff;border:1px solid #dee2e6;border-radius:8px;cursor:pointer;font-size:1rem;min-width:120px;padding:12px 16px;transition:border-color .3s ease}.sort-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.sort-order-btn{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:8px;color:#6c757d;cursor:pointer;display:flex;height:44px;justify-content:center;transition:all .3s ease;width:44px}.sort-order-btn:hover{background:#f8f9ff;border-color:#007bff;color:#007bff}.sort-order-btn.asc{background:#e8f4fd;border-color:#007bff;color:#007bff}.sort-order-btn.desc{background:#fff3cd;border-color:#ffc107;color:#856404}.layout-controls{align-items:center;display:flex;gap:12px}.layout-label{color:#495057;font-size:14px;font-weight:500;white-space:nowrap}.layout-buttons{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;display:flex;gap:4px;padding:2px}.layout-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:#6c757d;cursor:pointer;display:flex;font-size:14px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.layout-btn:hover{background:#e9ecef;color:#495057}.layout-btn.active{background:#007bff;box-shadow:0 2px 4px #007bff33;color:#fff}.layout-btn.active:hover{background:#0056b3}.card-list-grid{grid-gap:20px;display:grid;gap:20px;margin-bottom:24px}.card-list-grid.default{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.card-list-grid.compact{gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.card-list-grid.card,.card-list-grid.detailed{gap:24px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.card-list-grid.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.card-list-grid.full-row{gap:12px;grid-template-columns:1fr}.card-item{background:#fff;border:1px solid #dee2e6;border-radius:12px;overflow:hidden;padding:20px;position:relative;transition:all .3s ease}.card-item:hover{border-color:#007bff;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.card-item.clickable{cursor:pointer}.card-item.clickable:hover{border-color:#007bff;box-shadow:0 6px 12px #00000026}.card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.card-header.compact{margin-bottom:12px}.card-header.card,.card-header.detailed{margin-bottom:20px}.card-title{color:#2c3e50;flex:1 1;font-size:1.2rem;font-weight:600;line-height:1.3;margin:0}.card-title.compact{font-size:1rem;font-weight:500}.card-status{flex-shrink:0}.card-content{margin-bottom:16px}.card-content.compact{margin-bottom:12px}.card-content.card,.card-content.detailed{margin-bottom:20px}.card-content.grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:16px}.card-content.full-row{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}.full-row-main{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.full-row-header{align-items:center;display:flex;flex:1 1;gap:16px}.full-row-header .card-title{flex:1 1;margin:0}.full-row-fields{gap:24px}.full-row-fields,.full-row-secondary{align-items:center;display:flex;flex-wrap:wrap}.full-row-secondary{border-top:1px solid #e9ecef;gap:20px;padding-top:12px}.card-description{color:#495057;font-size:.95rem;line-height:1.5;margin-bottom:16px}.card-fields-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.card-field{align-items:center;display:flex;font-size:.9rem;gap:8px;margin-bottom:8px}.card-field.compact{font-size:.85rem;margin-bottom:6px}.card-field.grid{align-items:flex-start;background:#f8f9fa;border-radius:6px;flex-direction:column;margin-bottom:0;padding:8px}.card-field.important{background:#f8f9ff;border:1px solid #e3f2fd;border-radius:6px;font-size:.9rem;margin-bottom:0;padding:8px 12px}.card-field.secondary{color:#6c757d;font-size:.85rem;margin-bottom:0}.field-icon{color:#007bff;flex-shrink:0;font-size:.85rem}.field-content{align-items:center;display:flex;flex:1 1;gap:6px;min-width:0}.card-field.grid .field-content{align-items:flex-start;flex-direction:column;gap:4px;width:100%}.field-label{color:#6c757d;flex-shrink:0;font-weight:500}.field-value{color:#495057;word-break:break-word}.card-field.grid .field-value{color:#2c3e50;font-weight:600}.status-badge{white-space:nowrap}.card-actions{border-top:1px solid #dee2e6;display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px}.card-action-btn{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;color:inherit;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:6px;justify-content:center;min-height:36px;padding:8px 16px;text-decoration:none;transition:all .3s ease}.card-action-btn:hover:not(:disabled){background:#f8f9ff;border-color:#007bff;color:#007bff;transform:translateY(-1px)}.card-action-btn:disabled{cursor:not-allowed;opacity:.6}.card-action-btn.primary{background:#007bff;border-color:#007bff;color:#fff}.card-action-btn.primary:hover:not(:disabled){background:#0056b3;border-color:#0056b3;color:#fff}.card-action-btn.secondary{background:#fff;border-color:#6c757d;color:#6c757d}.card-action-btn.secondary:hover:not(:disabled){background:#6c757d;color:#fff}.card-action-btn.danger{border-color:#dc3545;color:#dc3545}.card-action-btn.danger:hover:not(:disabled){background:#dc3545;color:#fff}.action-icon{font-size:.8rem}.card-list-empty{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:center;min-height:300px}.empty-state{padding:48px;text-align:center}.empty-state h3{color:#6c757d;font-size:1.5rem;margin-bottom:12px}.empty-state p{color:#6c757d;font-size:1rem;line-height:1.5}.card-list-loader{padding:24px}.loader-spinner{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:200px;text-align:center}.spinner{margin-bottom:16px}.loader-spinner p{color:#6c757d;font-size:1.1rem}.skeleton-filters{background:#fff;border-radius:12px;display:flex;gap:16px;margin-bottom:24px;padding:24px}.skeleton-filter,.skeleton-search,.skeleton-sort{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:8px;height:44px}.skeleton-search{width:250px}.skeleton-filter{width:150px}.skeleton-sort{width:120px}.skeleton-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.skeleton-card{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:20px}.skeleton-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.skeleton-title{border-radius:4px;height:24px;width:60%}.skeleton-badge,.skeleton-title{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%}.skeleton-badge{border-radius:10px;height:20px;width:80px}.skeleton-content{margin-bottom:16px}.skeleton-line{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:4px;height:16px;margin-bottom:8px}.skeleton-line.short{width:30%}.skeleton-line.medium{width:70%}.skeleton-footer{border-top:1px solid #dee2e6;display:flex;gap:8px;padding-top:16px}.skeleton-button{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:6px;height:36px;width:100px}@media (max-width:768px){.card-list-container{padding:0 16px}.card-list-filters{margin-bottom:16px;padding:16px}.filters-controls,.filters-header{align-items:stretch;flex-direction:column;gap:12px}.search-control{min-width:auto;width:100%}.sort-controls{align-items:stretch;flex-direction:column;gap:8px}.sort-field-control{justify-content:space-between}.card-list-grid,.card-list-grid.card,.card-list-grid.compact,.card-list-grid.default,.card-list-grid.detailed,.card-list-grid.full-row,.card-list-grid.grid{grid-template-columns:1fr}.card-item{padding:16px}.card-header{align-items:stretch;flex-direction:column;gap:8px}.card-fields-grid{grid-template-columns:1fr}.card-actions{flex-direction:column;gap:8px}.card-action-btn{justify-content:center}.full-row-main{flex-direction:column;gap:12px}.full-row-fields,.full-row-secondary{gap:12px}.layout-controls{align-items:stretch;flex-direction:column;gap:8px}.layout-buttons{justify-content:center}.skeleton-filters{flex-direction:column;gap:12px}.skeleton-filter,.skeleton-search,.skeleton-sort{width:100%}.skeleton-cards{grid-template-columns:1fr}}@media (max-width:480px){.card-item,.card-list-filters{padding:12px}.card-title{font-size:1.1rem}.card-field{font-size:.85rem}.field-content{align-items:flex-start;flex-direction:column;gap:2px}}@media (max-width:600px){.card-item{border-radius:8px!important;font-size:.95rem!important;padding:8px!important}.card-title{font-size:1rem!important}.card-content,.card-content.card,.card-content.detailed{margin-bottom:10px!important}.card-fields-grid{gap:6px!important;grid-template-columns:1fr!important}.card-field{font-size:.8rem!important;gap:3px!important;margin-bottom:2px!important;padding:2px 0!important}.card-header.detailed{gap:6px!important;margin-bottom:10px!important;padding-bottom:2px!important}.back-to-top{bottom:80px!important;right:20px}}.search-highlight{background-color:#fff3cd;box-shadow:0 1px 2px #0000001a;color:#856404;padding:1px 3px}.back-to-top{align-items:center;background:#007bff;border:none;border-radius:50%;bottom:30px;box-shadow:0 4px 8px #007bff4d;color:#fff;cursor:pointer;display:flex;height:50px;justify-content:center;opacity:0;position:fixed;right:30px;transition:all .3s ease;visibility:hidden;width:50px;z-index:99999!important}.back-to-top.visible{opacity:1;visibility:visible}.back-to-top:hover{background:#0056b3;box-shadow:0 6px 12px #007bff66;transform:translateY(-2px)}.amendment-form{background:#fff;border-radius:10px;box-shadow:0 2px 12px #00000012,0 1px 2px #2563eb0f;display:flex;flex-direction:column;gap:.32rem;margin:0 auto;max-height:70vh;max-width:95vw;overflow-y:auto;padding:1.1rem .7rem;width:100%}.amendment-form h2,.amendment-title,.form-header{color:#2563eb;font-size:1.13rem;font-weight:700;margin-bottom:.18rem;padding-bottom:.18rem;padding-top:0;text-align:center}.form-label{color:#1e293b;font-size:.97rem;font-weight:600;margin-bottom:.08rem;margin-top:.12rem}.form-input,.form-textarea{background:#f8fafc;border:1.2px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.97rem;margin-bottom:.05rem;padding:.38rem .6rem;transition:border-color .2s,box-shadow .2s;width:100%}.form-input:focus,.form-textarea:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 1.5px #2563eb1a;outline:none}.form-textarea{font-size:.97rem;line-height:1.2;min-height:48px;resize:vertical}.form-buttons{display:flex;gap:.38rem;justify-content:flex-end;margin-top:.18rem}.submit-button{background:linear-gradient(90deg,#2563eb 60%,#1d4ed8);border:none;border-radius:6px;box-shadow:0 1px 4px #2563eb12;color:#fff;cursor:pointer;font-size:.97rem;font-weight:600;height:2.7rem;padding:.38rem .9rem;transition:background .2s,box-shadow .2s}.submit-button:hover{background:linear-gradient(90deg,#1d4ed8 60%,#2563eb);box-shadow:0 2px 8px #2563eb1c}.cancel-button{background:#e5e7eb;border:none;border-radius:6px;color:#334155;cursor:pointer;font-size:.97rem;font-weight:500;height:2.7rem;padding:.38rem .9rem;transition:background .2s,color .2s}.cancel-button:hover{background:#cbd5e1;color:#1e293b}.form-input .react-select__control{background:#f8fafc;border:1.2px solid #d1d5db;border-radius:6px;font-size:.97rem;min-height:32px}.form-input .react-select__control--is-focused{border-color:#2563eb;box-shadow:0 0 0 1.5px #2563eb1a}.form-input .react-select__menu{border-radius:6px;font-size:.97rem}@media (max-width:600px){.amendment-form{border-radius:0;box-shadow:none;gap:.18rem;max-height:70vh;max-width:95vw;padding:.38rem .08rem}.amendment-form h2,.amendment-title,.form-header{font-size:.98rem;margin-bottom:.12rem;padding-bottom:.12rem;padding-top:0}.form-label{font-size:.93rem;margin-bottom:.04rem;margin-top:.08rem}.form-input,.form-textarea{border-radius:4px;font-size:.93rem;margin-bottom:.02rem;padding:.28rem .4rem}.form-textarea{min-height:36px}.form-buttons{gap:.18rem}.cancel-button,.submit-button{border-radius:4px;font-size:.93rem;height:2.2rem;padding:.28rem .6rem}}.table-container{font-family:Arial,sans-serif;margin-top:10px;position:relative}.table-container,table{margin-bottom:10px;width:100%}table{border-collapse:collapse}thead{position:-webkit-sticky;position:sticky;top:0}td,th{align-items:center;border-bottom:1px solid #ddd;display:flex;padding:1px 2px}th{background-color:#f2f2f2;cursor:pointer;width:10%}th:hover{background-color:#ddd}thead th{flex-direction:column;justify-content:space-between}thead th,tr{display:flex}.table-container .filter-container{display:flex;margin-bottom:5px}.table-container .filterAndFilterType{display:flex;width:100%}.table-container .filterType{border-color:#ccc;border-radius:2px;box-sizing:border-box;cursor:pointer;margin-left:1px;z-index:1}.table-container input[type=date],.table-container input[type=datetime-local],.table-container input[type=number],.table-container input[type=text],.table-container select{border:1px solid #ccc;border-radius:2px;box-sizing:border-box;height:25px;padding:14px 3px;width:100%}.table-container input[type=date]:focus,.table-container input[type=datetime-local]:focus,.table-container input[type=number]:focus,.table-container input[type=text]:focus,.table-container select:focus{border-color:#007bff;outline:none}.table-container .icon-btn{background:none;border:none;color:#000;cursor:pointer;font-size:20px;padding:2px}.table-container .done{color:green!important;font-size:23px;padding-bottom:0;padding-left:0;padding-top:0}.table-container .done:hover,.table-container .icon-btn:hover{color:#007bff!important}.table-container .pagination-container{background-color:#f2f2f2;bottom:0;color:#000;display:flex;justify-content:center;margin-top:10px;z-index:0}.table-container .pagination-container button{background-color:#f1f1f1;border:none;color:#000;cursor:pointer;margin:0 5px;padding:5px 10px}.pagination-container button.active{background-color:#007bff;color:#000}.pagination-container button:hover{background-color:#007bff;color:#fff}.pagination-container button:disabled{background-color:#f1f1f1;color:gray;cursor:not-allowed}.table-container .delete-btn{color:red}.table-container .edit-btn{color:green}.table-container .confirmation-modal{align-items:center;background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%}.table-container .confirmation-modal-content{background:#fff;border-radius:8px;padding:20px;text-align:center}.table-container .confirmation-modal-content button{border:none;border-radius:4px;cursor:pointer;margin:0 10px;padding:5px 10px}.table-container .confirmation-modal-content .confirm-btn{background-color:red;color:#fff}.confirmation-modal-content .cancel-btn{background-color:#007bff;color:#fff}.confirmation-modal-content .confirm-btn:hover{background-color:darkred}.confirmation-modal-content .cancel-btn:hover{background-color:#0056b3}.records-per-page-dropdown{padding:0!important;width:70px!important}.table-actions{display:flex;justify-content:flex-start;padding:1px}.table-container .add-btn{align-items:center;background-color:#28a745;border:none;border-radius:4px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;justify-content:center;margin-left:5px;padding:5px 9px}.table-container .add-btn:hover{background-color:#15812c}.table-container .download-btn{align-items:center;background-color:#007bff;border:none;border-radius:4px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;justify-content:center;margin-left:10px;padding:5px 9px}.table-container .download-btn:hover{background-color:#0056b3}.table-container .icon-action-btn{background:none;border:none;color:blue;cursor:pointer;font-size:20px;padding:2px;position:relative}.table-container .icon-action-btn:hover{color:#add8e6!important}.table-container .icon-action-btn-badge{background-color:red;border-radius:50%;color:#fff;font-size:8px;font-weight:700;line-height:1;padding:3px 4px;position:absolute;right:-6px;top:-6px}table tr:nth-child(2n){background-color:#f0eeee}table tr:hover{background-color:#e0f7fa}.add-new-record-form{background:#fff;border-radius:10px;box-shadow:0 2px 12px #00000012,0 1px 2px #2563eb0f;display:flex;flex-direction:column;gap:.5rem;margin:0 auto;max-height:70vh;overflow-y:auto;padding:1.1rem .7rem;width:95%}.add-new-record-label{color:#1e293b;font-size:.97rem;font-weight:600;margin-bottom:.08rem;margin-top:.12rem}.add-new-record-input,.add-new-record-select{background:#f8fafc;border:1.2px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.97rem;margin-bottom:.05rem;padding:.38rem .6rem;transition:border-color .2s,box-shadow .2s;width:100%}.add-new-record-input:focus,.add-new-record-select:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 1.5px #2563eb1a;outline:none}.add-new-record-buttons{display:flex;gap:.38rem;justify-content:flex-end;margin-top:.18rem}.add-new-record-cancel{background:#e5e7eb;border:none;border-radius:6px;color:#334155;cursor:pointer;font-size:.97rem;font-weight:500;height:2.1rem;padding:.38rem .9rem;transition:background .2s,color .2s}.add-new-record-cancel:hover{background:#cbd5e1;color:#1e293b}.add-new-record-submit{background:linear-gradient(90deg,#2563eb 60%,#1d4ed8);border:none;border-radius:6px;box-shadow:0 1px 4px #2563eb12;color:#fff;cursor:pointer;font-size:.97rem;font-weight:600;height:2.1rem;padding:.38rem .9rem;transition:background .2s,box-shadow .2s}.add-new-record-submit:hover{background:linear-gradient(90deg,#1d4ed8 60%,#2563eb);box-shadow:0 2px 8px #2563eb1c}@media (max-width:600px){.add-new-record-form{border-radius:0;box-shadow:none;gap:.18rem;max-height:70vh;max-width:100vw;padding:.38rem .08rem}.add-new-record-label{font-size:.93rem;margin-bottom:.04rem;margin-top:.08rem}.add-new-record-input,.add-new-record-select{border-radius:4px;font-size:.93rem;margin-bottom:.02rem;padding:.28rem .4rem}.add-new-record-buttons{gap:.18rem}.add-new-record-cancel,.add-new-record-submit{border-radius:4px;font-size:.93rem;height:1.7rem;padding:.28rem .6rem}}.tabs{border-bottom:2px solid #ddd;display:flex;flex-direction:row;justify-content:flex-start;width:100%}.tab{background-color:initial;border:none;border-bottom:2px solid #0000;border-radius:5px 5px 0 0;border-right:1px solid #ddd;color:#555;cursor:pointer;font-weight:500;margin:0;padding:10px 20px;transition:all .3s ease}.tab:hover{background-color:#eaeaea;color:#222}.tab.active{background-color:#fff;border-bottom:2px solid #007bff;color:#007bff;font-weight:600}.tab-content{background-color:#fff;border:1px solid #ddd;border-radius:0 5px 5px 5px;padding:10px;width:100%}.reminders-badge{background-color:red;border-radius:50px;color:#fff;font-size:12px;margin-left:3px;padding:3px 6px;position:absolute;top:3px}.property-duplicate-modal-backdrop{align-items:center;background:#00000059;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.property-duplicate-modal{background:#fff;border-radius:10px;box-shadow:0 4px 32px #0000002e;max-width:400px;padding:2rem 2.5rem;text-align:center;width:90vw;z-index:10000}.property-duplicate-modal h3{color:#1a73e8;margin-top:0}.property-duplicate-modal button{margin:1.2em .5em 0;min-width:100px}.property-duplicate-modal b{color:#333}.slide-panel-overlay{animation:fadeInSmooth .3s ease forwards;background-color:#00000080;bottom:0;left:0;opacity:0;position:fixed;right:0;top:0;z-index:998}@keyframes fadeInSmooth{0%{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);opacity:0}to{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.slide-panel{background:#fff;box-shadow:-2px 0 10px #0000001a;display:flex;flex-direction:column;height:100vh;overflow:hidden;position:fixed;right:0;top:0;transform:translateX(100%);transition:transform .8s cubic-bezier(.25,.46,.45,.94);will-change:transform;z-index:999}.slide-panel-open{animation:slideInSmooth .5s cubic-bezier(.25,.46,.45,.94) forwards;box-shadow:-2px 0 20px #00000026;transform:translateX(0)}@keyframes slideInSmooth{0%{transform:translateX(100%)}to{transform:translateX(0)}}.slide-panel-header{align-items:center;animation:slideInFromTop .6s ease .2s forwards;background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;min-height:60px;opacity:0;padding:20px;transform:translateY(-20px)}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.slide-panel-title{color:#333;font-size:1.25rem;font-weight:600;margin:0}.slide-panel-close{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:1.2rem;padding:8px;transition:all .2s ease}.slide-panel-content{animation:slideInFromRight 1s ease .3s forwards;flex:1 1;opacity:0;overflow-y:auto;padding:0;transform:translateX(20px)}@media (max-width:768px){.slide-panel{transition:transform .5s cubic-bezier(.25,.46,.45,.94);width:100vw!important}.slide-panel-open{animation:slideInSmoothMobile .5s cubic-bezier(.25,.46,.45,.94) forwards}}@keyframes slideInSmoothMobile{0%{transform:translateX(100%)}to{transform:translateX(0)}}@media (max-width:480px){.slide-panel-header{animation:slideInFromTop .5s ease .3s forwards;padding:15px}.slide-panel-title{font-size:1.1rem}.slide-panel-content{animation:slideInFromRight .5s ease .4s forwards}}.slide-panel-content{scroll-behavior:smooth}.slide-panel-close:hover{background-color:#e9ecef;color:#333;transform:scale(1.05)}.slide-panel-close:active{transform:scale(.95)}.time-tracked-container{height:100%;overflow-y:auto;padding:20px}.time-tracked-loading{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.loading-icon{animation:spin 2s linear infinite;font-size:2rem;margin-bottom:10px}.time-tracked-error{color:#e74c3c}.time-tracked-empty,.time-tracked-error{align-items:center;display:flex;justify-content:center;padding:60px 20px;text-align:center}.time-tracked-empty{color:#666;flex-direction:column}.empty-icon{color:#bdc3c7;font-size:3rem;margin-bottom:15px}.time-tracked-empty h3{color:#34495e;margin-bottom:8px}.time-tracked-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.summary-card{align-items:center;background:#fff;border-left:4px solid #3498db;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:15px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.summary-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.summary-card.total{border-left-color:#3498db}.summary-card.working{border-left-color:#27ae60}.summary-card.driving{border-left-color:#f39c12}.summary-icon{align-items:center;background:#3498db1a;border-radius:50%;color:#3498db;display:flex;font-size:1.2rem;height:50px;justify-content:center;width:50px}.summary-card.working .summary-icon{background:#27ae601a;color:#27ae60}.summary-card.driving .summary-icon{background:#f39c121a;color:#f39c12}.summary-content h4{color:#7f8c8d;font-size:.9rem;font-weight:500;margin:0 0 5px}.summary-value{color:#2c3e50;font-size:1.4rem;font-weight:600;margin:0 0 2px}.summary-count{color:#95a5a6;font-size:.8rem;margin:0}.time-tracked-records h4{color:#2c3e50;font-size:1.1rem;font-weight:600;margin-bottom:20px}.time-record{background:#fff;border-left:4px solid #3498db;border-radius:12px;box-shadow:0 2px 6px #00000014;margin-bottom:16px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.time-record:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-1px)}.time-record.working{border-left-color:#27ae60}.time-record.driving{border-left-color:#f39c12}.record-header{justify-content:space-between;margin-bottom:15px}.record-header,.record-type{align-items:center;display:flex}.record-type{color:#2c3e50;font-weight:600;gap:8px}.type-icon{font-size:1rem}.time-record.working .type-icon{color:#27ae60}.time-record.driving .type-icon{color:#f39c12}.record-duration{align-items:center;background:#3498db1a;border-radius:20px;color:#3498db;display:flex;font-size:.9rem;font-weight:600;gap:6px;padding:6px 12px}.duration-icon{font-size:.8rem}.record-details{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:15px}.record-time{line-height:1.4}.record-time,.record-user{color:#34495e;font-size:.9rem}.record-user{align-items:center;display:flex;gap:8px}.detail-icon{color:#7f8c8d;font-size:.8rem}.record-locations{margin-bottom:15px}.location{align-items:flex-start;color:#34495e;display:flex;font-size:.9rem;gap:8px;line-height:1.3;margin-bottom:8px}.location:last-child{margin-bottom:0}.record-note{align-items:flex-start;background:#f1c40f1a;border-radius:8px;color:#34495e;display:flex;font-size:.9rem;gap:8px;line-height:1.4;margin-bottom:10px;padding:12px}.record-warning{align-items:center;background:#e74c3c1a;border:1px solid #e74c3c33;border-radius:8px;color:#e74c3c;display:flex;font-size:.85rem;font-weight:500;gap:8px;padding:10px 12px}@media (max-width:768px){.time-tracked-container{padding:15px}.time-tracked-summary{gap:12px;grid-template-columns:1fr}.summary-card{padding:15px}.record-header{align-items:flex-start;flex-direction:column;gap:10px}.record-details{gap:12px;grid-template-columns:1fr}.time-record{padding:15px}}@media (prefers-color-scheme:dark){.summary-card,.time-record{background:#2c3e50;color:#ecf0f1}.record-type,.summary-value{color:#ecf0f1}.location,.record-time,.record-user{color:#bdc3c7}}.job-details-panel{display:flex;flex-direction:column;height:100%}.job-tabs{background:#f8f9fa;border-bottom:2px solid #e0e0e0;display:flex;flex-wrap:wrap}.job-tab{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;flex:1 1;font-size:14px;gap:8px;justify-content:center;min-width:0;padding:15px 16px;position:relative;transition:all .2s ease;white-space:nowrap}.job-tab:hover{background-color:#e9ecef;color:#333}.job-tab.active{background-color:#fff;border-bottom:2px solid #007bff;color:#007bff;margin-bottom:-2px}.tab-badge{background:#dc3545;border-radius:12px;color:#fff;font-size:11px;min-width:18px;padding:2px 6px;text-align:center}.job-tab.active .tab-badge{background:#007bff}.job-tab-content{background:#fff;flex:1 1;overflow-y:auto;padding:5px}.job-details-content{padding:20px}.job-summary-section{margin-bottom:30px}.job-summary-section h4{color:#333;font-size:18px;margin:0 0 15px}.summary-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.stat-item{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:20px;text-align:center}.stat-number{color:#007bff;display:block;font-size:24px;margin-bottom:5px}.stat-label{color:#666;display:block;font-size:12px;text-transform:uppercase}.job-actions-section{margin-bottom:30px}.job-actions-section h4{color:#333;font-size:18px;margin:0 0 15px}.action-buttons{display:flex;flex-direction:row;gap:15px;justify-content:space-evenly}.button-group{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:10px;padding:15px}.button-group-label{color:#333;font-weight:500;min-width:120px}.action-btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:14px;gap:6px;padding:8px 15px;transition:all .2s ease}.action-btn.main-action{font-size:14px;font-weight:500;padding:10px 20px}.preview-btn{background:#17a2b8;color:#fff}.preview-btn:hover{background:#138496}.download-btn{background:#28a745;color:#fff}.download-btn:hover{background:#218838}.download-btn:disabled{background:#6c757d;cursor:not-allowed}.job-details-section{border:1px solid #e0e0e0;border-radius:8px;padding:20px}.section-header{justify-content:space-between;margin-bottom:20px}.section-header h4{color:#333;font-size:18px;margin:0}.cancel-btn,.edit-btn,.save-btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s ease}.edit-btn{background:#007bff;color:#fff}.edit-btn:hover{background:#0056b3}.edit-actions{display:flex;gap:10px}.save-btn{background:#28a745;color:#fff}.save-btn:hover{background:#218838}.cancel-btn{background:#6c757d;color:#fff}.cancel-btn:hover{background:#545b62}.job-form{display:flex;flex-direction:column;gap:20px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-group{gap:8px}.form-group.full-width{grid-column:1/-1}.form-group label{color:#333;font-size:14px;font-weight:500}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.form-value{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:4px;color:#333;display:flex;font-size:14px;min-height:20px;padding:10px}.status-badge{border-radius:12px;font-size:12px;font-weight:500;padding:4px 8px;text-transform:capitalize}.status-awaiting_approval{background:#fff3cd;color:#856404}.status-pending_start{background:#d1ecf1;color:#0c5460}.status-in_progress{background:#cce5ff;color:#004085}.status-pending_completed{background:#f8d7da;color:#721c24}.status-completed{background:#d4edda;color:#155724}.status-cancelled,.status-rejected{background:#f8d7da;color:#721c24}.status-archived{background:#e2e3e5;color:#383d41}.invoice-status-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:24px;padding:20px}.invoice-status-section h4{align-items:center;color:#28a745;display:flex;font-size:1.1rem;font-weight:600;margin:0 0 16px}.invoice-history{display:flex;flex-direction:column;gap:12px}.invoice-item{align-items:center;border:1px solid #dee2e6;box-shadow:0 1px 3px #0000000d;display:flex;justify-content:space-between;padding:16px}.invoice-item:hover{border-color:#007bff;box-shadow:0 2px 8px #0000001a}.invoice-info{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:16px}.invoice-number{color:#495057;font-size:1rem;font-weight:700;min-width:80px}.invoice-date{color:#6c757d;font-size:.9rem;min-width:100px}.invoice-type{border-radius:16px;font-size:.8rem;font-weight:600;min-width:80px;padding:4px 12px;text-align:center;text-transform:capitalize}.invoice-type.type-labour{background:#e3f2fd;color:#1976d2}.invoice-type.type-expenses{background:#fff3e0;color:#f57c00}.invoice-type.type-both{background:#f3e5f5;color:#7b1fa2}.invoice-period{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;color:#495057;font-size:.8rem;min-width:80px;padding:4px 10px;text-align:center}.invoice-amount{color:#28a745;font-size:1rem;font-weight:700;min-width:80px;text-align:right}.invoice-actions{gap:8px;margin-left:16px}.action-btn.small-action{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.9rem;height:36px;justify-content:center;padding:0;transition:all .2s ease;width:36px}.action-btn.small-action:hover{box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}.action-btn.view-btn{background:#e3f2fd;color:#1976d2}.action-btn.view-btn:hover{background:#1976d2;color:#fff}.action-btn.delete-btn{background:#ffebee;color:#d32f2f}.action-btn.delete-btn:hover{background:#d32f2f;color:#fff}@media (max-width:768px){.job-details-content{padding:15px}.form-row{gap:15px;grid-template-columns:1fr}.summary-stats{grid-template-columns:repeat(2,1fr)}.button-group{align-items:stretch;flex-direction:column}.button-group-label{margin-bottom:10px;min-width:auto}.job-tabs{flex-wrap:wrap}.job-tab{flex:1 1;min-width:120px}.invoice-item{align-items:stretch;flex-direction:column;gap:12px}.invoice-info{align-items:flex-start;flex-direction:column;gap:8px}.invoice-actions{align-self:flex-end;margin-left:0}.invoice-amount,.invoice-date,.invoice-number,.invoice-period{min-width:auto;text-align:left}.invoice-amount{color:#28a745;font-size:1.1rem;font-weight:700}.expenses-list{max-height:65vh}}@media (max-width:480px){.summary-stats{grid-template-columns:1fr}.stat-item{padding:15px}.action-buttons{gap:10px}.button-group{padding:10px}.invoice-info{gap:6px}.invoice-period,.invoice-type{font-size:.75rem;padding:3px 8px}.action-btn{font-size:.8rem;height:32px;width:32px}}.jobs-page{background-color:#f8f9fa;margin:0 auto;max-width:1400px;min-height:100vh;padding:24px}.jobs-page-header{margin-bottom:32px;text-align:center}.jobs-page-header h1{color:#2c3e50;font-size:2.5rem;font-weight:700;margin-bottom:8px}.jobs-page-header p{color:#6c757d;font-size:1.1rem;margin:0}.jobs-page-unauthorized{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:48px auto;max-width:500px;min-height:60vh;padding:48px;text-align:center}.unauthorized-icon{color:#dc3545;font-size:4rem;margin-bottom:24px}.jobs-page-unauthorized h2{color:#dc3545;font-size:1.8rem;margin-bottom:16px}.jobs-page-unauthorized p{color:#6c757d;font-size:1.1rem;line-height:1.6}.jobs-tabs{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;gap:8px;margin-bottom:32px;overflow-x:auto;padding:8px}.jobs-tab{align-items:center;background:#0000;border:none;border-radius:8px;color:#6c757d;cursor:pointer;display:flex;font-weight:500;gap:12px;min-width:-webkit-fit-content;min-width:fit-content;padding:16px 24px;transition:all .3s ease;white-space:nowrap}.jobs-tab:hover{background:#f8f9fa;color:#495057}.jobs-tab.active{background:#007bff;color:#fff}.tab-icon{font-size:1.2rem}.tab-label{font-size:1rem}.tab-count{background:#fff3;border-radius:12px;font-size:.875rem;font-weight:600;min-width:24px;padding:4px 8px;text-align:center}.jobs-tab.active .tab-count{background:#ffffff4d}.jobs-content{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;overflow:hidden}.jobs-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:64px;text-align:center}.jobs-loading .spinner{animation:spin 1s linear infinite;color:#007bff;font-size:2rem;margin-bottom:16px}.jobs-loading p{color:#6c757d;font-size:1.1rem}.jobs-error{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:64px;text-align:center}.jobs-error p{color:#dc3545;font-size:1.1rem;margin-bottom:24px}.retry-btn{transition:background-color .3s ease}.jobs-dashboard{padding:32px}.dashboard-stats{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:40px}.stat-card{align-items:center;background:#fff;border-left:4px solid;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;gap:20px;padding:24px;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.stat-card.total{border-left-color:#28a745}.stat-card.emergency{border-left-color:#dc3545}.stat-card.maintenance{border-left-color:#ffc107}.stat-card.refurbishment{border-left-color:#17a2b8}.stat-icon{align-items:center;border-radius:50%;display:flex;font-size:2.5rem;justify-content:center;padding:16px}.stat-card.total .stat-icon{background:#e8f5e8;color:#28a745}.stat-card.emergency .stat-icon{background:#f8e8e8;color:#dc3545}.stat-card.maintenance .stat-icon{background:#fff8e1;color:#ffc107}.stat-card.refurbishment .stat-icon{background:#e8f4f8;color:#17a2b8}.stat-content h3{color:#6c757d;font-size:1rem;font-weight:600;margin:0 0 8px}.stat-number{color:#2c3e50;font-size:2.5rem;font-weight:700;margin:0}.dashboard-section{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:24px}.dashboard-section h3{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:20px}.dashboard-status{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:24px}.dashboard-status h3{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:20px}.status-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.status-card{align-items:center;background:#f8f9fa;border-left:4px solid;border-radius:8px;display:flex;gap:16px;padding:20px;transition:all .3s ease}.status-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.status-card.completed{border-left-color:#28a745}.status-card.in-progress{border-left-color:#17a2b8}.status-card.pending{border-left-color:#ffc107}.status-card.awaiting{border-left-color:#fd7e14}.status-info{display:flex;flex-direction:column}.status-label{color:#6c757d;font-size:.9rem;font-weight:500}.status-count{color:#2c3e50;font-size:1.8rem;font-weight:700}.dashboard-content{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr}.jobs-list{padding:32px}.jobs-list-header h2{color:#2c3e50;font-size:1.8rem;font-weight:600;margin:0}.jobs-controls{flex-wrap:wrap;gap:16px}.jobs-controls,.search-control{align-items:center;display:flex}.search-control{position:relative}.search-icon{color:#6c757d;left:12px;position:absolute;z-index:1}.search-input{border:1px solid #dee2e6;border-radius:8px;font-size:1rem;padding:12px 12px 12px 40px;transition:border-color .3s ease;width:250px}.search-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.filter-control,.sort-control{align-items:center;display:flex;gap:8px}.filter-select,.sort-select{background:#fff;border:1px solid #dee2e6;border-radius:8px;cursor:pointer;font-size:1rem;padding:12px 16px;transition:border-color .3s ease}.filter-select:focus,.sort-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.job-card{background:#fff;border:1px solid #dee2e6;border-radius:12px;cursor:pointer;margin-bottom:16px;padding:24px;transition:all .3s ease}.job-card:hover{border-color:#007bff;box-shadow:0 4px 8px #0000001a;transform:translateY(-1px)}.job-card-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.job-title{font-size:1.3rem;margin:0 0 8px}.job-meta{color:#6c757d;display:flex;flex-wrap:wrap;font-size:.9rem;gap:16px;margin-bottom:16px}.job-meta-item{align-items:center;display:flex;gap:6px}.job-description{color:#495057;line-height:1.6;margin-bottom:16px}.job-card-footer{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.job-badges{flex-wrap:wrap}.job-action-btn,.job-actions,.job-badges{display:flex;gap:8px}.job-action-btn{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;justify-content:center;min-width:120px;padding:10px 16px;transition:all .3s ease}.job-action-btn.primary{background:#007bff;border-color:#007bff;color:#fff}.job-action-btn.primary:hover{background:#0056b3;border-color:#0056b3;transform:translateY(-1px)}.job-action-btn.secondary{background:#fff;border:1px solid #007bff;color:#007bff}.job-action-btn.secondary:hover{background:#007bff;color:#fff;transform:translateY(-1px)}.status-badge{border-radius:16px;letter-spacing:.5px;padding:4px 12px}.no-jobs{padding:64px 32px;text-align:center}.no-jobs h3{color:#495057;font-size:1.5rem;margin-bottom:16px}.no-jobs p{font-size:1.1rem;line-height:1.6}.status-icon{margin-right:8px}.status-icon.completed{color:#28a745}.status-icon.in-progress{color:#17a2b8}.status-icon.pending{color:#ffc107}.status-icon.awaiting{color:#fd7e14}.job-type-icon{margin-right:8px}.job-type-icon.emergency{color:#dc3545}.job-type-icon.maintenance{color:#ffc107}.job-type-icon.refurbishment{color:#17a2b8}.job-type-icon.other{color:#6c757d}@media (max-width:768px){.jobs-page{padding:16px}.jobs-tabs{flex-wrap:wrap;gap:4px}.jobs-tab{flex:1 1;min-width:auto;padding:12px 16px}.dashboard-stats{grid-template-columns:1fr}.jobs-controls{flex-direction:column;justify-content:stretch}.search-input{width:100%}.job-card-footer,.job-card-header{align-items:stretch;flex-direction:column}.job-actions{justify-content:stretch}.job-action-btn{text-align:center}.dashboard-content,.status-cards{grid-template-columns:1fr}.recent-job-item{align-items:stretch;flex-direction:column;gap:12px}.job-meta{justify-content:space-between}.jobs-list-header{align-items:stretch;flex-direction:column;gap:16px}.create-job-btn,.jobs-header-actions{justify-content:center}.status-options{grid-template-columns:1fr}.job-card-footer{gap:8px}.job-action-btn{flex:1 1;min-width:auto}}@media (max-width:600px){.jobs-tabs{flex-wrap:wrap;gap:.3rem;padding:.3rem .1rem}.jobs-tab{flex:1 1 40%;margin:.1rem 0;min-width:80px;padding:.3rem .7rem}.jobs-tab,.tab-label{font-size:.92rem}.tab-count{font-size:.85rem;padding:.1rem .4rem}}@media (max-width:480px){.jobs-page-header h1{font-size:2rem}.stat-card{padding:16px}.stat-icon{padding:12px}.stat-icon,.stat-number{font-size:2rem}.jobs-dashboard,.jobs-list{padding:16px}}.jobs-list-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.jobs-header-actions{align-items:center;display:flex;gap:12px}.create-job-btn{align-items:center;background:#28a745;border:none;border-radius:8px;box-shadow:0 2px 4px #28a74533;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:8px;padding:12px 20px;transition:all .3s ease}.create-job-btn:hover{background:#218838;box-shadow:0 4px 8px #28a7454d;transform:translateY(-1px)}.jobs-card-list{margin-top:0}.status-badge.clickable{border:2px solid #0000;cursor:pointer;transition:all .3s ease}.status-badge.clickable:hover{border-color:#0003;box-shadow:0 2px 4px #0000001a;transform:scale(1.05)}.status-badge.awaiting{background:#fff3cd;color:#856404}.status-badge.pending{background:#cce5ff;color:#004085}.status-badge.in-progress{background:#d1ecf1;color:#0c5460}.status-badge.completed,.status-badge.pending-completed{background:#d4edda;color:#155724}.status-badge.cancelled{background:#f8d7da;color:#721c24}.status-badge.archived{background:#e2e3e5;color:#383d41}.status-badge.rejected{background:#f8d7da;color:#721c24}.requested-badge{border-radius:16px;font-size:.75rem;font-weight:600;padding:4px 12px;text-transform:capitalize}.requested-badge.tenant{background:#e8f4fd;color:#1e6091}.requested-badge.landlord{background:#f0e6ff;color:#6f42c1}.requested-badge.office{background:#fff3cd;color:#856404}.requested-badge.employee{background:#d1ecf1;color:#0c5460}.gallery-page{padding:1rem}.gallery-filter-bar{display:flex;gap:.5rem;margin-bottom:1rem}.gallery-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.gallery-card{background:#fff;border-radius:.5rem;box-shadow:0 1px 4px #0000001a;cursor:pointer;overflow:hidden;transition:transform .2s ease}.gallery-card:hover{transform:scale(1.02)}.gallery-image-container{aspect-ratio:1/1;background:#f9f9f9;width:100%}.gallery-image{height:100%;object-fit:contain;width:100%}.gallery-details{display:flex;flex-direction:column;font-size:.85rem;gap:.25rem;padding:.5rem}.gallery-modal{align-items:center;background:#141414e6;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.modal-image{max-height:80vh;max-width:90vw}.modal-close,.modal-next,.modal-prev{background:#0000;border:none;color:#fff;cursor:pointer;font-size:2rem;position:absolute}.modal-close{right:1rem;top:1rem}.modal-prev{left:1rem}.modal-next{right:1rem}.gallery-details p{margin:0}.invoice-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1200px;padding:20px}.invoice-page-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 20px #0000001a;color:#fff;margin-bottom:30px;padding:40px}.header-content{align-items:center;display:flex;gap:20px}.header-icon{font-size:3rem;opacity:.9}.header-text h1{font-size:2.5rem;font-weight:600;margin:0 0 10px}.header-text p{font-size:1.1rem;line-height:1.5;margin:0;opacity:.9}.invoice-page-content{display:flex;flex-direction:column;gap:30px}.action-section,.configuration-section,.job-selection-section{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 10px #0000000d;padding:30px}.section-header{align-items:center;border-bottom:2px solid #f8f9fa;display:flex;gap:12px;margin-bottom:25px;padding-bottom:15px}.section-icon{color:#667eea;font-size:1.3rem}.section-header h3{color:#2c3e50;font-size:1.4rem;font-weight:600;margin:0}.selection-info{margin-left:auto}.selected-count{background:#e3f2fd;border-radius:20px;color:#1976d2;font-size:.9rem;font-weight:500;padding:4px 12px}.config-form{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.form-group{display:flex;flex-direction:column}.checkbox-form-group{justify-self:start;min-width:auto;width:-webkit-fit-content;width:fit-content}.form-group label{align-items:center;color:#2c3e50;display:flex;font-size:.95rem;font-weight:600;gap:8px;margin-bottom:8px}.label-icon{color:#667eea;font-size:.9rem}.form-control{background:#fff;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;padding:12px 16px;transition:all .2s ease}.form-control:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-help{color:#6c757d;font-size:.85rem;line-height:1.4;margin-top:6px}.simple-checkbox-label{align-items:center;color:#2c3e50;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:10px;margin-bottom:0;margin-top:8px}.simple-checkbox{accent-color:#667eea;cursor:pointer;height:18px;margin:0;width:18px}.checkbox-wrapper{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:all .2s ease}.checkbox-wrapper:hover{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-checkbox{accent-color:#667eea;border:2px solid #e9ecef;border-radius:4px;cursor:pointer;height:20px;margin:0;transition:all .2s ease;width:20px}.form-checkbox:checked{background-color:#667eea;border-color:#667eea}.checkbox-text{cursor:pointer;font-size:.95rem;margin:0}.checkbox-group{align-items:center;flex-direction:row;gap:15px;margin-top:8px}.checkbox-label{align-items:center;color:#2c3e50;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:12px;margin-bottom:0}.checkbox-label input[type=checkbox]{accent-color:#667eea;border:2px solid #e9ecef;border-radius:4px;cursor:pointer;height:20px;transition:all .2s ease;width:20px}.checkbox-label input[type=checkbox]:checked{background-color:#667eea;border-color:#667eea}.checkbox-label input[type=checkbox]:hover{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.checkbox-text{color:#2c3e50;font-weight:500}.info-icon{color:#17a2b8;margin-right:4px}.job-selection-content{display:flex;flex-direction:column;gap:20px}.selection-controls{display:flex;justify-content:flex-start}.loading-state{align-items:center;color:#6c757d;display:flex;gap:10px;justify-content:center;padding:40px}.jobs-list{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;max-height:400px;overflow-y:auto}.job-item{align-items:center;background:#fff;border-bottom:1px solid #e9ecef;cursor:pointer;display:flex;gap:15px;padding:15px 20px;transition:all .2s ease}.job-item:hover{background:#f8f9fa}.job-item.selected{background:#e3f2fd;border-left:4px solid #1976d2}.job-item:last-child{border-bottom:none}.job-checkbox input[type=checkbox]{accent-color:#667eea;height:18px;width:18px}.job-info{flex:1 1}.job-title{color:#2c3e50;font-size:1rem;font-weight:600;margin-bottom:6px}.job-details{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.job-id{color:#6c757d;font-size:.85rem;font-weight:600}.job-status{border-radius:12px;font-size:.75rem;font-weight:600;padding:3px 8px;text-transform:uppercase}.job-status.status-completed{background:#d4edda;color:#155724}.job-status.status-in-progress{background:#fff3cd;color:#856404}.job-status.status-pending-start{background:#cce5ff;color:#004085}.job-address{color:#6c757d;flex:1 1;font-size:.85rem}.no-jobs{align-items:center;color:#6c757d;display:flex;flex-direction:column;justify-content:center;padding:40px}.no-jobs-icon{font-size:2rem;margin-bottom:10px;opacity:.5}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:8px;padding:12px 24px;text-align:center;text-decoration:none;transition:all .2s ease}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea4d}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#5a6268}.action-section{text-align:center}.action-info{align-items:flex-start;background:#f8f9fa;border-left:4px solid #17a2b8;border-radius:8px;display:flex;gap:10px;margin-bottom:25px;padding:20px}.action-info p{color:#495057;line-height:1.5;margin:0;text-align:left}.generate-btn{font-size:1.1rem;min-width:250px;padding:15px 30px}@media (max-width:768px){.invoice-page{padding:15px}.invoice-page-header{padding:25px}.header-content{flex-direction:column;gap:15px;text-align:center}.header-text h1{font-size:2rem}.config-form{grid-template-columns:1fr}.job-details{align-items:flex-start;flex-direction:column;gap:8px}.action-section,.configuration-section,.job-selection-section{padding:20px}}.invoice-tabs{border-bottom:2px solid #e2e8f0;display:flex;margin-bottom:2rem}.invoice-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:1rem 1.5rem;transition:all .2s ease}.invoice-tab.active,.invoice-tab:hover{background-color:#f8fafc;color:#3b82f6}.invoice-tab.active{border-bottom-color:#3b82f6}.tab-icon{font-size:1.1rem}.invoice-tab-content{display:flex;flex-direction:column;gap:30px;margin-top:2rem}.invoice-history-content{max-width:1200px}.history-filters{align-items:end;background:#f8fafc;border-radius:8px;display:flex;gap:1rem;margin-bottom:2rem;padding:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{color:#374151;font-size:.875rem;font-weight:500}.filter-group input,.filter-group select{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;min-width:150px;padding:.5rem}.clear-filters-btn{background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;height:-webkit-fit-content;height:fit-content;padding:.5rem 1rem}.clear-filters-btn:hover{background:#4b5563}.invoice-history-list{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1rem}.invoice-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.invoice-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;transition:all .2s ease}.invoice-item:hover{border-color:#3b82f6;box-shadow:0 4px 6px #0000001a}.invoice-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.invoice-number{color:#1f2937;font-size:1.1rem;font-weight:600}.invoice-type{border-radius:12px;font-size:.75rem;font-weight:500;padding:.25rem .75rem;text-transform:uppercase}.invoice-type.type-labour{background:#dbeafe;color:#1e40af}.invoice-type.type-expenses{background:#fef3c7;color:#92400e}.invoice-type.type-both{background:#e0e7ff;color:#5b21b6}.invoice-details{align-items:end;display:flex;justify-content:space-between}.invoice-date,.invoice-period{color:#6b7280;font-size:.875rem}.invoice-period{font-weight:500}.invoice-amount{color:#059669;font-size:1.1rem;font-weight:600}.invoice-actions{display:flex;gap:.5rem}.btn-sm{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.875rem;justify-content:center;padding:.5rem;transition:all .2s ease}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.pagination{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:2rem}.page-info{color:#6b7280;font-size:.875rem}.empty-state,.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.loading-state .spinner{animation:spin 1s linear infinite;color:#3b82f6;font-size:1.5rem;margin-bottom:1rem}.empty-state .empty-icon{color:#9ca3af;font-size:3rem;margin-bottom:1rem}.empty-state h3{color:#374151;margin-bottom:.5rem}.empty-state p{color:#6b7280}.modern-table-filters-container{margin-bottom:0}.modern-table-selection-info{align-items:center;background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;display:flex;gap:.75rem;padding:.5rem 1rem}.modern-table-selected-count{color:#1d4ed8;font-size:.875rem;font-weight:600}.modern-table-clear-selection-btn{background:#dc2626;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.75rem;padding:.25rem .75rem;transition:background-color .2s ease}.modern-table-clear-selection-btn:hover{background:#b91c1c}.modern-table-pagination-section{align-items:center;background:#fff;border-top:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:1rem 1.5rem}.modern-table-pagination-info{align-items:center;display:flex;flex-wrap:wrap;gap:2rem}.modern-table-rows-per-page{align-items:center;color:#374151;display:flex;font-size:.875rem;gap:.5rem}.modern-table-page-icon{color:#6b7280}.modern-table-rows-select{background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:.875rem;padding:.25rem .5rem}.modern-table-rows-select:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a;outline:none}.modern-table-page-info{color:#6b7280;font-size:.875rem;white-space:nowrap}.modern-table-pagination-controls{align-items:center;display:flex;gap:.25rem}.modern-table-page-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;display:flex;font-size:.875rem;height:36px;justify-content:center;min-width:36px;padding:.5rem;transition:all .2s ease}.modern-table-page-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af;transform:translateY(-1px)}.modern-table-page-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.modern-table-page-btn.active{background:#667eea;border-color:#667eea;color:#fff;font-weight:600}.modern-table-page-btn.active:hover{background:#5a67d8;border-color:#5a67d8;transform:translateY(-1px)}.modern-table-page-numbers{display:flex;gap:.25rem}.modern-table-page-btn.first,.modern-table-page-btn.last,.modern-table-page-btn.next,.modern-table-page-btn.prev{font-size:.75rem}.modern-table-filter-mode-toggle{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin-bottom:1.5rem;padding:1.5rem;position:relative;z-index:5}.modern-table-filter-mode-toggle:before{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}.filter-mode-buttons{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;box-shadow:inset 0 2px 4px #0000000d;display:flex;gap:.75rem;padding:8px;width:-webkit-fit-content;width:fit-content}.filter-mode-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.75rem;justify-content:center;min-width:160px;padding:1rem 1.5rem;position:relative;transition:all .3s ease}.filter-mode-btn:hover{background:#fffc;box-shadow:0 4px 8px #0000001a;color:#374151;transform:translateY(-2px)}.filter-mode-btn.active{background:#fff;border:2px solid #667eea;box-shadow:0 4px 12px #667eea33;color:#667eea;font-weight:700;transform:translateY(-1px)}.filter-mode-btn.active:before{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;bottom:-2px;content:"";left:-2px;opacity:.1;position:absolute;right:-2px;top:-2px;z-index:-1}.filter-mode-btn svg{font-size:1rem}.modern-table-column-filter-info{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:1rem;padding:1rem}.column-filter-header h3{color:#374151;font-size:1rem;font-weight:600;margin:0 0 .5rem}.column-filter-header p{color:#6b7280;font-size:.875rem;margin:0 0 1rem}.modern-table-stats{color:#6b7280;display:flex;font-size:.875rem;gap:1rem}.modern-table-count,.modern-table-page-info{font-weight:500}.filter-mode-header{margin-bottom:1rem;text-align:center}.filter-mode-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#374151;font-size:1.1rem;font-weight:700;margin:0 0 .5rem}.filter-mode-description{color:#6b7280;font-size:.875rem;font-weight:500;margin:0}@media (max-width:768px){.modern-table-pagination-section{align-items:stretch;flex-direction:column;gap:1rem}.modern-table-pagination-info{gap:1rem;justify-content:center}.modern-table-pagination-controls{flex-wrap:wrap;justify-content:center}.modern-table-page-numbers{margin-bottom:.5rem;order:-1}.modern-table-page-btn{font-size:.75rem;height:32px;min-width:32px}.modern-table-page-info{text-align:center;width:100%}}@media (max-width:480px){.modern-table-pagination-info{flex-direction:column;gap:.75rem}.modern-table-page-numbers{gap:.125rem}.modern-table-page-btn{height:28px;min-width:28px;padding:.25rem}}.table-loader{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.table-loader-header{align-items:center;justify-content:space-between}.table-loader-filters,.table-loader-header{border-bottom:1px solid #e5e7eb;display:flex;padding:1.5rem}.table-loader-filters{gap:1rem}.table-loader-content{overflow-x:auto}.loader-table{border-collapse:collapse;width:100%}.loader-table td,.loader-table th{border-bottom:1px solid #f3f4f6;padding:1rem}.loader-table th{background:#f9fafb}.table-loader-pagination{align-items:center;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem 1.5rem}.loader-skeleton{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:4px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.loader-title{height:24px;width:200px}.loader-actions{height:36px;width:120px}.loader-search{height:40px;width:300px}.loader-filter{height:40px;width:150px}.loader-header-cell{height:20px;width:100%}.loader-cell{height:16px;width:80%}.loader-pagination-info{height:20px;width:200px}.loader-pagination-controls{height:36px;width:300px}@media (max-width:768px){.table-loader-header{align-items:stretch;gap:1rem}.table-loader-filters,.table-loader-header{flex-direction:column}.table-loader-pagination{flex-direction:column;gap:1rem}.loader-filter,.loader-search{width:100%}}.modern-table-renderer{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.modern-table-wrapper{border:1px solid #e5e7eb;border-radius:8px;max-height:70vh;overflow-x:auto;overflow-y:auto}.modern-data-table{background:#fff;border-collapse:collapse;border-spacing:0;font-size:.875rem;table-layout:fixed;width:100%}.modern-data-table td,.modern-data-table th{box-sizing:border-box;overflow:hidden;padding:.75rem 1rem;text-align:left;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.modern-data-table td:last-child,.modern-data-table th:last-child{border-right:none}.modern-data-table th{min-width:120px;width:auto}.modern-table-select-column{max-width:50px!important;min-width:50px!important;width:50px!important}.modern-table-actions-column{max-width:150px!important;min-width:150px!important;width:150px!important}.modern-data-table thead{position:-webkit-sticky;position:sticky;top:0;z-index:10}.modern-table-header{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;font-weight:600;position:relative;text-align:left;-webkit-user-select:none;user-select:none}.modern-table-header-main{align-items:center;cursor:pointer;display:flex;flex:1 1;justify-content:space-between}.modern-table-column-filter-controls{flex-shrink:0;margin-left:.5rem}.modern-table-filter-toggle{background:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:#ffffffb3;cursor:pointer;font-size:.75rem;padding:4px 6px;transition:all .2s ease}.modern-table-filter-toggle:hover{background:#fff3;color:#fff}.modern-table-filter-toggle.active{background:#ffffff4d;border-color:#fff6;color:#fff}.modern-table-column-filter-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #00000026;left:0;margin-top:4px;padding:8px;position:absolute;right:0;top:100%;z-index:20}.modern-table-column-filter-input,.modern-table-column-filter-select{border:1px solid #d1d5db;border-radius:4px;color:#374151;font-size:.8rem;padding:6px 8px;width:100%}.modern-table-column-filter-input:focus,.modern-table-column-filter-select:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a;outline:none}.modern-table-header.sortable{cursor:pointer;transition:background-color .2s ease}.modern-table-header.sortable:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1)}.modern-table-header-content{align-items:center;display:flex;gap:.5rem;justify-content:space-between;min-height:auto;padding:0;position:relative;width:100%}.modern-table-header-label{font-size:.875rem;font-weight:600}.sort-icon{font-size:.75rem;transition:all .2s ease}.sort-icon.inactive{opacity:.5}.sort-icon.active{opacity:1}.sort-icon.active.asc{color:#10b981}.sort-icon.active.desc{color:#ef4444}.modern-table-header.boolean-column,.modern-table-header.status-column{text-align:center}.modern-table-header.boolean-column .modern-table-header-main,.modern-table-header.status-column .modern-table-header-main{justify-content:center}.modern-table-cell.boolean,.modern-table-cell.status{text-align:center!important}.modern-table-cell.currency,.modern-table-cell.number{text-align:right!important}.modern-table-select-column{text-align:center;width:50px}.modern-table-actions-column{text-align:center;width:120px}.modern-table-row{border-bottom:1px solid #f3f4f6;cursor:pointer;transition:all .2s ease}.modern-table-row:hover{background-color:#f8fafc;box-shadow:inset 2px 0 0 #667eea}.modern-table-row.selected{background-color:#eff6ff;border-color:#dbeafe;box-shadow:inset 2px 0 0 #2563eb}.modern-table-row.selected:hover{background-color:#e0f2fe}.modern-table-row.hovered{box-shadow:0 4px 8px #0000001a,inset 2px 0 0 #667eea}.modern-data-table tbody tr{border-bottom:1px solid #f1f5f9}.modern-data-table tbody tr:last-child{border-bottom:none}.modern-table-cell{border:none;color:#374151;font-size:.875rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.modern-table-select-cell{text-align:center}.modern-table-select-checkbox{accent-color:#667eea;cursor:pointer;height:16px;width:16px}.empty-cell{color:#9ca3af;font-style:italic}.search-highlight{background-color:#fef3c7;border-radius:3px;color:#92400e;font-weight:600;padding:.125rem .25rem}.modern-table-cell.currency,.modern-table-cell.number{font-family:SF Mono,Monaco,Consolas,monospace;font-weight:500;text-align:right}.modern-table-cell.date,.modern-table-cell.datetime{color:#6b7280;font-family:SF Mono,Monaco,Consolas,monospace}.modern-table-cell.boolean,.modern-table-cell.status{text-align:center}.boolean-icon{font-size:1rem}.boolean-icon.true{color:#10b981}.boolean-icon.false{color:#ef4444}.status-badge{border-radius:9999px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.05em;min-width:80px;padding:.25rem .75rem;text-align:center;text-transform:uppercase}.status-active,.status-completed,.status-done{background-color:#d1fae5;color:#065f46}.status-in-progress,.status-pending{background-color:#fef3c7;color:#92400e}.status-cancelled,.status-failed,.status-inactive{background-color:#fee2e2;color:#991b1b}.status-draft{background-color:#f3f4f6;color:#374151}.modern-table-actions-cell{text-align:center}.modern-table-actions-menu{align-items:center;display:flex;gap:.25rem;justify-content:center}.modern-table-action-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:.875rem;gap:.25rem;padding:.5rem;transition:all .2s ease}.modern-table-action-btn:hover{background-color:#f3f4f6;color:#374151;transform:translateY(-1px)}.modern-table-action-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.modern-table-action-btn.edit{color:#2563eb}.modern-table-action-btn.edit:hover{background-color:#eff6ff;border-color:#dbeafe}.modern-table-action-btn.delete{color:#dc2626}.modern-table-action-btn.delete:hover{background-color:#fef2f2;border-color:#fecaca}.modern-table-action-btn.view{color:#059669}.modern-table-action-btn.view:hover{background-color:#f0fdf4;border-color:#dcfce7}.modern-table-action-label{font-size:.75rem;font-weight:500}.layout-compact .modern-table-header-content{padding:0}.layout-compact .modern-data-table td,.layout-compact .modern-data-table th,.layout-compact .modern-table-actions-cell{padding:.5rem .75rem}.layout-comfortable .modern-table-header-content{padding:0}.layout-comfortable .modern-data-table td,.layout-comfortable .modern-data-table th,.layout-comfortable .modern-table-actions-cell{padding:.75rem 1rem}.layout-spacious .modern-table-header-content{padding:0}.layout-spacious .modern-data-table td,.layout-spacious .modern-data-table th,.layout-spacious .modern-table-actions-cell{padding:1rem 1.25rem}.layout-spacious .modern-data-table{font-size:1rem}.modern-table-empty{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:center;min-height:400px}.modern-table-empty-content{max-width:300px;text-align:center}.modern-table-empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.6}.modern-table-empty-content h3{color:#374151;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.modern-table-empty-content p{color:#6b7280;font-size:.875rem;margin:0}@media (max-width:768px){.modern-table-wrapper{max-height:60vh}.modern-data-table{font-size:.75rem}.modern-table-header-content{padding:.75rem .5rem}.modern-table-cell{max-width:150px;padding:.5rem}.modern-table-actions-menu{flex-direction:column;gap:.125rem}.modern-table-action-btn{font-size:.75rem;padding:.25rem}.modern-table-action-label{display:none}.status-badge{font-size:.625rem;padding:.125rem .5rem}}@media (max-width:480px){.modern-table-cell{font-size:.75rem;max-width:100px}.modern-table-header-label{font-size:.75rem}.modern-table-actions-column{width:80px}.modern-table-select-column{width:40px}}.modern-table-main-container{display:flex;flex-direction:column;gap:1.5rem;min-height:400px;position:relative}.modern-table-error{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:center;min-height:400px}.error-content{max-width:400px;padding:2rem;text-align:center}.error-content h3{color:#dc2626;font-size:1.5rem;font-weight:600;margin:0 0 1rem}.error-content p{color:#6b7280;font-size:1rem;margin:0 0 1.5rem}.retry-btn{background:#667eea;border-radius:8px;font-size:1rem;padding:.75rem 1.5rem}.retry-btn:hover{background:#5a67d8;transform:translateY(-1px)}.modern-table-back-to-top{background:#667eea;border:none;border-radius:50%;bottom:2rem;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;height:48px;opacity:0;position:fixed;right:2rem;transform:translateY(20px);transition:all .3s ease;visibility:hidden;width:48px;z-index:1000}.modern-table-back-to-top.visible{opacity:1;transform:translateY(0);visibility:visible}.modern-table-back-to-top:hover{background:#5a67d8;box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}@media (max-width:768px){.modern-table-main-container{gap:1rem}.modern-table-back-to-top{bottom:1rem;height:40px;right:1rem;width:40px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modern-table-main-container>*{animation:fadeIn .3s ease-out}@media print{.modern-table-main-container{box-shadow:none}.modern-table-back-to-top{display:none}.modern-table{font-size:.75rem}.table-wrapper{max-height:none;overflow:visible}.actions-cell,.actions-column,.select-cell,.select-column{display:none}}.new-table-test{background:#f8fafc;min-height:100vh;padding:2rem}.page-header{margin-bottom:2rem}.page-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.page-header p{color:#6b7280;font-size:1.125rem;margin:0;max-width:600px}@media (max-width:768px){.new-table-test{padding:1rem}.page-header h1{font-size:2rem}.page-header p{font-size:1rem}}.settings-page{background:#f8f9fa;margin:0 auto;max-width:1400px;min-height:100vh;padding:0}.settings-header{align-items:flex-start;background:#fff;border-bottom:1px solid #e5e7eb;border-radius:0 0 8px 8px;box-shadow:0 2px 8px #00000026;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.settings-title{align-items:center;display:flex;gap:15px}.title-icon{color:#007bff;font-size:2rem}.settings-title h1{color:#333;font-size:1.8rem;margin:0}.settings-title p{color:#666;font-size:.9rem;margin:5px 0 0}.settings-actions{display:flex;gap:10px}.reset-btn,.save-all-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.reset-btn{background:#6c757d;color:#fff}.reset-btn:hover{background:#5a6268}.save-all-btn{background:#28a745;color:#fff}.save-all-btn:hover{background:#218838}.settings-content{background:none;border:none;display:flex;flex-direction:column;gap:25px;margin:0;padding:0 20px 40px}.settings-category{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.category-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;gap:12px;padding:20px}.category-header h2{color:#333;font-size:1.4rem;margin:0}.settings-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));padding:20px}.setting-card{background:#fafafa;border:1px solid #e9ecef;border-radius:6px;padding:20px;transition:all .2s ease}.setting-card:hover{box-shadow:0 2px 8px #0000001a}.setting-info{margin-bottom:15px}.setting-label{align-items:center;display:flex;gap:8px;margin-bottom:8px}.setting-name{color:#333;font-size:1rem}.sensitive-icon{color:#dc3545;font-size:.8rem}.setting-description{color:#666;font-size:.85rem;line-height:1.4;margin:0 0 10px}.setting-key{color:#666;font-size:.8rem}.setting-key code{background:#e9ecef;border-radius:4px;color:#495057;font-family:Monaco,Consolas,monospace;padding:2px 6px}.setting-controls{align-items:flex-start;display:flex;gap:10px}.setting-input-container{gap:8px}.setting-input-container,.setting-input-wrapper{align-items:center;display:flex;flex:1 1;position:relative}.input-status-indicators{align-items:center;display:flex;flex-shrink:0;gap:4px;margin-right:4px;min-height:20px}@media (max-width:600px){.setting-input-container{align-items:stretch;flex-direction:column;gap:6px}.input-status-indicators{justify-content:flex-start;margin-right:0;margin-top:2px}}.setting-input,.setting-select{background:#fff;border:1px solid #ced4da;border-radius:4px;font-size:.9rem;padding:10px 12px;transition:all .2s ease;width:100%}.setting-input:focus,.setting-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.setting-input.changed,.setting-select.changed{background:#fff8e1;border-color:#ffc107}.password-toggle{background:none;border:none;color:#6c757d;cursor:pointer;font-size:.9rem;padding:4px;position:absolute;right:10px}.password-toggle:hover{color:#495057}.change-indicator{margin-left:8px}.save-individual-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;flex-shrink:0;padding:10px 12px;transition:all .2s ease}.save-individual-btn:hover{background:#0056b3}.save-individual-btn.disabled,.save-individual-btn:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed;opacity:.6}.save-individual-btn.disabled:hover,.save-individual-btn:disabled:hover{background:#e5e7eb;box-shadow:0 2px 4px #0000001a;color:#9ca3af;transform:none}.required-indicator{color:#dc3545;font-weight:700;margin-left:4px}.setting-help-text{color:#6c757d;font-size:.85rem;font-style:italic;line-height:1.3;margin:4px 0}.setting-indicators{display:none}.error-indicator{color:#dc3545;cursor:help;font-size:.9rem}.change-indicator{animation:pulse 2s infinite;color:#ffc107;cursor:help;font-size:.9rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.change-indicator:hover{color:#ffb700}.validation-errors{display:flex;flex-direction:column;gap:2px;margin-top:4px}.validation-error{background:#fff5f5;border:1px solid #fed7d7;border-radius:3px;color:#dc3545;display:block;font-size:.8rem;padding:2px 6px}.setting-input.error,.setting-input.error:focus,.setting-select.error{border-color:#dc3545;box-shadow:0 0 0 .2rem #dc354540}.setting-name{align-items:center;display:flex;font-weight:600}.setting-input-container.has-errors{border-left:3px solid #dc3545;padding-left:8px}.validation-error:hover{background:#f8d7da;border-color:#f5c6cb}.setting-input.validating{animation:validating .4s linear infinite;background-image:linear-gradient(45deg,#0000 25%,#fff3 0,#fff3 75%,#0000 0,#0000),linear-gradient(45deg,#0000 25%,#fff3 0,#fff3 75%,#0000 0,#0000);background-position:0 0,8px 8px;background-size:16px 16px}@keyframes validating{0%{background-position:0 0,8px 8px}to{background-position:16px 16px,24px 24px}}.setting-card[data-required=true]{border-left:3px solid #007bff}.setting-card[data-required=true] .setting-name:before{background:#007bff;border-radius:50%;content:"";display:inline-block;height:4px;margin-right:6px;width:4px}.settings-empty,.settings-error,.settings-loading,.settings-page-unauthorized{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:40px 20px;text-align:center}.spinner{animation:spin 1s linear infinite;color:#007bff;font-size:2rem;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.empty-icon,.error-icon,.unauthorized-icon{color:#6c757d;font-size:3rem;margin-bottom:20px}.retry-btn{align-items:center;background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:8px;margin-top:20px;padding:12px 24px;transition:all .2s ease}.retry-btn:hover{background:#0056b3}.changes-notification{align-items:center;animation:slideIn .3s ease;background:#fbbf24;border:1px solid #f59e0b;border-radius:8px;bottom:20px;box-shadow:0 4px 12px #00000026;color:#92400e;display:flex;font-weight:500;gap:10px;padding:12px 20px;position:fixed;right:20px;z-index:90}.save-notification-btn{background:#212529;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .2s ease}.save-notification-btn:hover{background:#495057}@media (max-width:768px){.settings-page{padding:15px}.settings-header{align-items:stretch;flex-direction:column;gap:20px;padding:15px}.settings-actions{justify-content:flex-end;order:-1}.settings-content{padding:0 15px 40px}.settings-grid{grid-template-columns:1fr;padding:15px}.setting-controls{flex-direction:column;gap:15px}.setting-input-container{align-items:stretch;flex-direction:column;gap:8px}.input-status-indicators{justify-content:flex-start;margin-left:0;margin-top:4px}.changes-notification{bottom:15px;left:15px;right:15px}}@media (max-width:480px){.settings-title{align-items:flex-start;flex-direction:column;gap:10px}.settings-title h1,.title-icon{font-size:1.5rem}}.landing{color:#333;font-family:Arial,sans-serif;line-height:1.6}.hero{background-color:#0059b3;color:#fff;padding:60px 20px;text-align:center}.hero h1{font-size:3rem;margin-bottom:10px}.tagline{font-size:1.2rem;margin-bottom:20px}.cta-buttons .btn{border:2px solid #fff;border-radius:25px;color:#fff;display:inline-block;margin:10px;padding:10px 20px;text-decoration:none;transition:background-color .2s}.cta-buttons .btn.primary{background-color:#fff;color:#0059b3}.cta-buttons .btn:hover{background-color:#ffffff1a}.features{background-color:#f8f9fa;padding:60px 20px;text-align:center}.features h2{font-size:2rem;margin-bottom:40px}.grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:0 auto;max-width:1000px}.card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:20px}.card .icon{font-size:2rem;margin-bottom:10px}.contact{background:#e6f0ff;padding:60px 20px;text-align:center}.contact form{display:flex;flex-direction:column;gap:15px;margin:20px auto;max-width:400px}.contact input,.contact textarea{border:1px solid #ccc;border-radius:5px;font-size:1rem;padding:10px}.contact button{background-color:#0059b3;border:none;border-radius:5px;color:#fff;cursor:pointer;font-weight:700;padding:12px}.contact button:hover{background-color:#004080}.email{margin-top:15px}footer{background:#f1f1f1;font-size:.9rem;padding:15px;text-align:center}.notfound-modern-wrapper{align-items:center;background:linear-gradient(135deg,#f8fafc,#e0e7ef);border-radius:18px;box-shadow:0 4px 32px #00000012;display:flex;flex-direction:column;justify-content:center;min-height:80vh;padding:40px 16px}.notfound-icon{color:#2e7be6;font-size:4rem;margin-bottom:16px}.notfound-title{color:#2e7be6;font-size:4rem;font-weight:800;margin:0}.notfound-subtitle{color:#222;font-size:2rem;font-weight:600;margin:8px 0 12px}.notfound-message{color:#444;font-size:1.15rem;margin-bottom:32px;text-align:center}.notfound-home-btn{background:#2e7be6;border-radius:8px;box-shadow:0 2px 8px #2e7be614;color:#fff;display:inline-block;font-size:1.1rem;font-weight:600;padding:12px 32px;text-decoration:none;transition:background .2s}.notfound-home-btn:hover{background:#1b4e8a}.mobile-wrapper{align-items:center;background-color:#f0f2f5;display:flex;justify-content:center;min-height:100vh;padding:0 1rem}.mobile-content{background:#fff;border-radius:.75rem .75rem 0 0;box-shadow:0 0 15px #0000001a;height:calc(100vh - 65px);max-width:400px;overflow-y:auto;padding-bottom:65px;position:relative;width:100%}.bottom-navbar{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border:1px solid #ffffff1a;border-top-left-radius:1rem;border-top-right-radius:1rem;bottom:0;box-shadow:0 -4px 20px #00000040;display:flex;height:65px;justify-content:space-around;left:50%;max-width:400px;position:fixed;transform:translateX(-50%);width:100%;z-index:999}.bottom-nav-item{align-items:center;border-radius:.75rem;color:#aaa;display:flex;flex-direction:column;font-size:.75rem;overflow:hidden;padding:.5rem;position:relative;text-decoration:none;transition:all .3s ease}.bottom-nav-item:before{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border-radius:.75rem;bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.bottom-nav-item .icon{font-size:1.25rem;margin-bottom:2px;transition:all .3s ease}.bottom-nav-item.active,.bottom-nav-item:hover{color:#667eea;transform:translateY(-2px)}.bottom-nav-item.active:before,.bottom-nav-item:hover:before{opacity:1}.bottom-nav-item.active .icon,.bottom-nav-item:hover .icon{transform:scale(1.1)}.bottom-nav-item .label{font-size:.65rem;font-weight:500;margin-top:2px}.modern-sidebar-container{display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,sans-serif;height:100vh}.modern-sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;display:none;width:100vw;z-index:999}.modern-sidebar,.modern-sidebar-overlay{height:100vh;left:0;position:fixed;top:0}.modern-sidebar{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 10px 30px #0000001a;display:flex;flex-direction:column;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1000}.modern-sidebar-collapsed{width:70px}.modern-sidebar-expanded{width:280px}.modern-sidebar-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;min-height:80px;padding:1.5rem 1rem}.modern-sidebar-logo{align-items:center;display:flex;flex:1 1;gap:.75rem;min-width:0;overflow:hidden}.modern-sidebar-logo-icon{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffff40,#ffffff1a);border:1px solid #fff3;border-radius:10px;box-shadow:0 2px 8px #0000001a;color:#fff;display:flex;flex-shrink:0;font-size:1.1rem;height:40px;justify-content:center;transition:all .3s ease;width:40px}.modern-sidebar-logo-icon:hover{background:linear-gradient(135deg,#ffffff4d,#ffffff26);box-shadow:0 6px 20px #0003;transform:translateY(-1px)}.modern-sidebar-logo-icon svg{height:18px;width:18px}.modern-sidebar-logo-text{animation:fadeInSlide .3s ease-out forwards;color:#fff;display:flex;flex:1 1;flex-direction:column;gap:.1rem;min-width:0;overflow:hidden}@keyframes fadeInSlide{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.modern-sidebar-logo-text h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#f0f4f8);-webkit-background-clip:text;background-clip:text;font-size:1.1rem;font-weight:700;line-height:1.1;margin:0;text-shadow:0 2px 4px #0000001a;transition:all .3s ease}.modern-sidebar-logo-text h3:hover{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#e2e8f0);-webkit-background-clip:text;background-clip:text;transform:translateX(1px)}.modern-sidebar-logo-text span{align-self:flex-start;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#ffffff14;border:1px solid #ffffff1f;border-radius:3px;color:#ffffffb3;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.65rem;font-weight:400;letter-spacing:.8px;opacity:.75;overflow:hidden;padding:1px 4px;position:relative;text-transform:uppercase;transition:all .2s ease}.modern-sidebar-logo-text span:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.modern-sidebar-logo-text span:hover:before{left:100%}.modern-sidebar-logo-text span:hover{background:#ffffff26;border-color:#ffffff4d;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.modern-sidebar-toggle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .2s ease;width:36px}.modern-sidebar-toggle:hover{background:#fff3;transform:scale(1.05)}.modern-sidebar-nav{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:1rem 0}.modern-sidebar-nav::-webkit-scrollbar{width:4px}.modern-sidebar-nav::-webkit-scrollbar-track{background:#0000}.modern-sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.modern-sidebar-nav-section{padding:0 1rem}.modern-sidebar-section-title{color:#fff9;display:block;font-size:.75rem;font-weight:500;letter-spacing:.5px;margin-bottom:.75rem;padding-left:.5rem;text-transform:uppercase}.modern-sidebar-nav-item{align-items:center;border-radius:12px;color:#fffc;display:flex;gap:1rem;margin-bottom:.25rem;overflow:hidden;padding:.75rem .5rem;position:relative;text-decoration:none;transition:all .2s ease}.modern-sidebar-nav-item:hover{background:#ffffff1a;color:#fff;transform:translateX(4px)}.modern-sidebar-nav-item-active{background:#ffffff26;box-shadow:0 4px 15px #0000001a;color:#fff}.modern-sidebar-nav-item-active:before{background:#fff;border-radius:0 2px 2px 0;content:"";height:100%;left:0;position:absolute;top:0;width:3px}.modern-sidebar-nav-icon{align-items:center;display:flex;flex-shrink:0;font-size:1.1rem;height:20px;justify-content:center;width:20px}.modern-sidebar-nav-content{display:flex;flex-direction:column;gap:.25rem;min-width:0;overflow:hidden}.modern-sidebar-nav-label{font-size:.9rem;font-weight:500}.modern-sidebar-nav-description,.modern-sidebar-nav-label{line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modern-sidebar-nav-description{font-size:.75rem;opacity:.7}.modern-sidebar-footer{border-top:1px solid #ffffff1a;padding:1rem}.modern-sidebar-logout{align-items:center;border-radius:12px;color:#fffc;display:flex;gap:1rem;padding:.75rem .5rem;text-decoration:none;transition:all .2s ease}.modern-sidebar-logout:hover{background:#ffffff1a;color:#fff;transform:translateX(4px)}.modern-sidebar-main-content{background:#fff!important;color:#1f2937!important;flex:1 1;overflow-x:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.modern-sidebar-main-content-collapsed{margin-left:70px}.modern-sidebar-main-content-expanded{margin-left:280px}.modern-sidebar-mobile-open-btn{background:#2563eb;border:none;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#fff;display:none;left:7px;padding:.38rem .6rem;position:fixed;top:7px;z-index:1001}@media (max-width:768px){.modern-sidebar-mobile-open-btn{display:block!important}.modern-sidebar-overlay{display:block}.modern-sidebar-collapsed{transform:translateX(-100%)}.modern-sidebar-expanded{transform:translateX(0);width:280px}.modern-sidebar-main-content-collapsed,.modern-sidebar-main-content-expanded{margin-left:0}.modern-sidebar-header{padding:1rem .75rem}.modern-sidebar-logo-text h3{font-size:1rem}.modern-sidebar-logo-text span{font-size:.55rem}}@keyframes slideIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.modern-sidebar-expanded .modern-sidebar-logo-text,.modern-sidebar-expanded .modern-sidebar-nav-content{animation:slideIn .3s ease-out}.modern-sidebar-logout:focus,.modern-sidebar-nav-item:focus,.modern-sidebar-toggle:focus{outline:2px solid #ffffff80;outline-offset:2px}