@charset "UTF-8";html{--mat-sys-background: #faf9fd;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #f2f0f4;--mat-sys-inverse-primary: #abc7ff;--mat-sys-inverse-surface: #2f3033;--mat-sys-on-background: #1a1b1f;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #00458f;--mat-sys-on-primary-fixed: #001b3f;--mat-sys-on-primary-fixed-variant: #00458f;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #3e4759;--mat-sys-on-secondary-fixed: #131c2b;--mat-sys-on-secondary-fixed-variant: #3e4759;--mat-sys-on-surface: #1a1b1f;--mat-sys-on-surface-variant: #44474e;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #0000ef;--mat-sys-on-tertiary-fixed: #00006e;--mat-sys-on-tertiary-fixed-variant: #0000ef;--mat-sys-outline: #74777f;--mat-sys-outline-variant: #c4c6d0;--mat-sys-primary: #005cbb;--mat-sys-primary-container: #d7e3ff;--mat-sys-primary-fixed: #d7e3ff;--mat-sys-primary-fixed-dim: #abc7ff;--mat-sys-scrim: #000000;--mat-sys-secondary: #565e71;--mat-sys-secondary-container: #dae2f9;--mat-sys-secondary-fixed: #dae2f9;--mat-sys-secondary-fixed-dim: #bec6dc;--mat-sys-shadow: #000000;--mat-sys-surface: #faf9fd;--mat-sys-surface-bright: #faf9fd;--mat-sys-surface-container: #efedf0;--mat-sys-surface-container-high: #e9e7eb;--mat-sys-surface-container-highest: #e3e2e6;--mat-sys-surface-container-low: #f4f3f6;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #dbd9dd;--mat-sys-surface-tint: #005cbb;--mat-sys-surface-variant: #e0e2ec;--mat-sys-tertiary: #343dff;--mat-sys-tertiary-container: #e0e0ff;--mat-sys-tertiary-fixed: #e0e0ff;--mat-sys-tertiary-fixed-dim: #bec2ff;--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f}html{--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12)}html{--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12)}html{--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500}html{--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px}html{--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}:root{--brand: #00A3B9;--brand-hover: #0090a5;--brand-dark: #008b99;--brand-light: #e6f7fa;--brand-xlight: #f0fbfc;--brand-rgb: 0, 163, 185;--sidebar-fg: rgba(255, 255, 255, .92);--sidebar-fg-muted: rgba(255, 255, 255, .6);--sidebar-item-hover: rgba(0, 0, 0, .18);--sidebar-item-active: rgba(255, 255, 255, .22);--sidebar-border: rgba(255, 255, 255, .1)}.cdk-overlay-dark-backdrop{background:#00000073}html,body{height:100%;margin:0;overflow:hidden;font-family:Roboto,Helvetica Neue,sans-serif;background-color:#f5f5f5}.btn,.modal-backdrop .modal .modal-actions .btn-cancel,.modal-backdrop .modal .modal-actions .btn-save{display:inline-flex;align-items:center;gap:5px;padding:.6rem 1rem;border-radius:5px;border:none;font-weight:500;cursor:pointer;transition:background-color .3s ease,color .3s ease;color:#fff}.btn i,.modal-backdrop .modal .modal-actions .btn-cancel i,.modal-backdrop .modal .modal-actions .btn-save i{font-size:14px}.btn-primary,.modal-backdrop .modal .modal-actions .btn-save{background-color:var(--brand)}.btn-primary:hover,.modal-backdrop .modal .modal-actions .btn-save:hover{background-color:var(--brand-dark)}.btn-update{background-color:#ffc107}.btn-update:hover{background-color:#e0a800}.btn-info,.btn-info:hover{background-color:#42c46d}.btn-delete{background-color:#dc3545}.btn-delete:hover{background-color:#c82333}.terminated-row{background-color:#ffe6ea!important;opacity:.9}.terminated-text{color:#d12d4a;font-weight:700;padding:5px 10px;background-color:#ffe6ea;border-radius:5px;margin-left:10px}.btn-terminate,.btn-terminate:hover{background-color:#e08d10}.terminated{color:#ad2323}.btn-cancel,.modal-backdrop .modal .modal-actions .btn-cancel{background-color:#6c757d}.btn-cancel:hover,.modal-backdrop .modal .modal-actions .btn-cancel:hover{background-color:#5a6268}.btn-logout{background-color:#dc3545}.btn-logout:hover{background-color:#c82333}.card{background-color:#fff;border-radius:8px;box-shadow:0 0 20px #0000001a;padding:1rem}.form-group{margin-bottom:1rem;text-align:left}.form-group label{font-weight:500;margin-bottom:.25rem;display:block}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.6rem;border-radius:4px;border:1px solid #ccc;font-size:.95rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--brand)}.table{width:100%;border-collapse:collapse}.table th,.table td{border:1px solid #ddd;padding:8px;text-align:left}.table th{background-color:#f2f2f2}.table td.actions{justify-content:space-between!important}.status-badge{padding:4px 8px;border-radius:8px;color:#fff}.status-badge.active{background-color:#28a745}.status-badge.inactive{background-color:#dc3545}.modal-backdrop{position:fixed;inset:0;background:#0f172a73;display:flex;justify-content:center;align-items:center;z-index:999;animation:peekFadeIn .2s ease}.modal-backdrop .modal form,.modal-backdrop .modal>*:not(h3):not(.form-group){padding:1.4rem}.modal-backdrop .modal .modal-actions{display:flex;justify-content:flex-end;gap:.6rem;padding-top:0}.modal-backdrop .modal .modal-actions .btn-save{margin-right:10px}.modal .form-control,.modal input:not([type=checkbox]):not([type=radio]),.modal select,.modal textarea{width:100%;padding:8px 12px;border-radius:8px;border:1px solid #e5e7eb;font-size:.9rem;margin-bottom:0;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;background:#fff;color:#1a202c}.modal .form-group{margin-bottom:.6rem;padding:0 1.4rem}.modal .form-group:first-of-type{padding-top:1.2rem}.modal .form-group:last-of-type{padding-bottom:.4rem}.modal .form-control:focus,.modal input:not([type=checkbox]):not([type=radio]):focus,.modal select:focus,.modal textarea:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12)}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.dashboard-layout{display:flex;height:100%;background:#f6f7fb;font-family:Poppins,sans-serif;color:#333;overflow:hidden}.sidebar{width:240px;background-color:var(--brand);color:#fff;display:flex;flex-direction:column;padding:12px 15px 30px;box-shadow:2px 0 8px #0000001a;height:calc(100vh - 10px);height:calc(100dvh - 10px);overflow:hidden}.sidebar h3{text-align:center;font-size:20px;font-weight:600;margin-bottom:30px}.sidebar ul{list-style:none;padding:0;margin:0}.sidebar ul li{margin-bottom:15px}.sidebar ul li a{display:block;color:#fff;text-decoration:none;font-size:15px;padding:10px 12px;border-radius:8px;transition:background .3s,transform .2s}.sidebar ul li a:hover,.sidebar ul li a.active{background-color:#fff3;transform:translate(4px)}.sidebar .logout-container{margin-top:auto;text-align:center}.content:has(app-vega-ai){padding:0;margin:0;border-radius:0;box-shadow:none;overflow:hidden!important;background:transparent}.content{flex:1;min-height:0;padding:0;background-color:transparent;overflow:auto}.content h2{font-size:24px;font-weight:600;margin-bottom:15px;color:var(--brand)}.content p{font-size:15px;color:#555}@media (max-width: 992px){.dashboard-layout{flex-direction:column}.sidebar{position:fixed;top:0;left:0;width:250px;height:100%;background:#2c3e50;color:#fff;transform:translate(-100%);transition:transform .3s ease-in-out;z-index:1000;overflow-y:auto}.content{margin:0;padding:0}}@media (max-width: 576px){.sidebar ul li a{font-size:13px;padding:8px 10px}.content{padding:0}}.login-container{display:flex;height:100vh;font-family:Inter,Segoe UI,sans-serif}.login-left{flex:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,#1e293b,#0f172a);position:relative;overflow:hidden;perspective:900px}.login-left:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 90% 22% at 60% 38%,rgba(150,170,240,.09) 0%,transparent 80%),radial-gradient(ellipse 60% 16% at 42% 52%,rgba(120,145,220,.07) 0%,transparent 80%),radial-gradient(ellipse 40% 28% at 22% 68%,rgba(100,130,210,.05) 0%,transparent 80%),radial-gradient(ellipse 70% 12% at 75% 58%,rgba(160,180,240,.05) 0%,transparent 80%),radial-gradient(ellipse 50% 35% at 50% 50%,rgba(80,110,200,.04) 0%,transparent 100%)}.login-left:after{content:"";position:absolute;top:0;left:0;width:1px;height:1px;z-index:0;pointer-events:none;box-shadow:23px 14px #ffffff8c,89px 32px 1px #ffffff59,156px 8px #ffffffa6,234px 48px #fff6,312px 22px 1px #ffffff80,445px 38px #ffffff4d,523px 15px #fff9,612px 44px 1px #ffffff59,670px 9px #ffffff73,48px 88px #ffffff4d,112px 112px 1px #ffffff8c,189px 96px #fff6,267px 134px #ffffffa6,334px 108px 1px #ffffff59,412px 122px #ffffff80,490px 88px #ffffffb3,567px 145px 1px #ffffff4d,635px 100px #ffffff73,12px 178px #ffffff8c,79px 212px 1px #ffffff59,157px 190px #fff9,224px 224px #fffc,302px 198px 1px #ffffff4d,379px 234px #ffffff80,457px 212px #fff6,535px 178px 1px #ffffffa6,602px 224px #ffffff59,669px 190px #ffffff73,35px 267px #fff6,102px 290px 1px #fff9,179px 312px #ffffff59,246px 278px #ffffff8c,324px 300px 1px #ffffffbf,402px 267px #ffffff4d,479px 312px #ffffff80,557px 290px 1px #fff6,624px 278px #fff9,57px 356px #ffffff59,124px 378px 1px #ffffff8c,202px 400px #ffffff73,279px 367px #ffffffb3,357px 389px 1px #ffffff4d,435px 356px #ffffff80,512px 400px #fff6,590px 378px 1px #ffffff8c,657px 356px #ffffff59,14px 445px #ffffff80,80px 467px 1px #ffffff59,158px 490px #fff9,236px 456px #fff6,314px 478px 1px #ffffff4d,391px 445px #ffffffa6,469px 490px #ffffff73,547px 467px 1px #ffffff80,614px 456px #ffffff59,671px 478px #ffffff8c,36px 534px #fff6,103px 556px 1px #fff9,180px 578px #ffffff59,258px 534px #ffffff8c,336px 567px 1px #ffffff73,413px 545px #ffffff4d,491px 578px #ffffffb3,569px 534px 1px #fff6,636px 556px #ffffff80,58px 623px #ffffff59,125px 645px 1px #ffffff8c,203px 612px #ffffff73,280px 656px #ffffff4d,358px 634px 1px #fff9,436px 667px #fff6,513px 623px #ffffff80,591px 656px 1px #ffffff59,658px 634px #ffffff73,15px 712px #fff6,82px 745px 1px #ffffff8c,159px 723px #ffffff59,237px 756px #fff9,315px 712px 1px #ffffff4d,392px 745px #ffffff80,470px 723px #ffffff73,548px 756px 1px #ffffff59,615px 712px #ffffff8c,672px 745px #fff6,200px 160px 2px #ffffffe6,410px 320px 2px #ffffffd9,580px 240px 2px #fffc,140px 500px 2px #ffffffd9,520px 580px 2px #fffc,320px 680px 2px #ffffffbf}.login-left__inner{display:flex;flex-direction:column;align-items:center;gap:14px;z-index:1;text-align:center;padding:48px}.login-brand-logo{width:68px;height:68px;object-fit:contain;filter:brightness(0) invert(1);opacity:.92;margin-bottom:4px}.login-brand-name{font-size:1.9rem;font-weight:700;color:#fff;letter-spacing:-.4px;margin:0}.login-brand-tagline{font-size:.97rem;color:#ffffff7a;margin:0;font-weight:400}.login-brand-sub{font-size:.75rem;color:#ffffff47;margin:10px 0 0;font-weight:400;letter-spacing:.06em}.login-right{flex:1;display:flex;align-items:center;justify-content:flex-start;padding-left:80px;background:#f1f4f8}.login-box{width:440px;background:#fff;border-radius:22px;padding:44px 48px;box-shadow:0 4px 32px #0000001a,0 1px 6px #0000000f}.login-box__header{margin-bottom:30px;text-align:center}.login-box__title{font-size:1.55rem;font-weight:700;color:#0f172a;margin:0 0 6px;letter-spacing:-.3px}.login-box__sub{font-size:.85rem;color:#94a3b8;margin:0;font-weight:400}.login-field{margin-bottom:16px}.login-field__label{display:block;font-size:.8rem;font-weight:600;color:#374151;margin-bottom:5px;letter-spacing:.025em}.login-field__wrap{position:relative}.login-field__icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#b0bac7;font-size:.82rem;pointer-events:none}.login-field__input{width:100%;height:46px;padding:0 14px 0 36px;border:1.5px solid #cdd4de;border-radius:10px;font-size:.92rem;color:#0f172a;background:#f8fafc;box-sizing:border-box;transition:border-color .16s,box-shadow .16s,background .16s}.login-field__input::placeholder{color:#c8d0da}.login-field__input:focus{outline:none;border-color:var(--brand);background:#fff;box-shadow:0 0 0 3px #00a3b91a}.login-field__footer{display:flex;justify-content:flex-start;margin-top:5px}.login-forgot{font-size:.78rem;color:#94a3b8;text-decoration:none;transition:color .15s}.login-forgot:hover{color:var(--brand)}.login-error{font-size:.8rem;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:8px 12px;margin-bottom:12px}.login-btn{width:100%;height:48px;margin-top:10px;background:var(--brand-dark);color:#fff;border:none;border-radius:10px;font-size:.93rem;font-weight:600;cursor:pointer;letter-spacing:.02em;transition:background .16s,box-shadow .16s,transform .1s;box-shadow:0 2px 12px #008b9959}.login-btn:hover:not(:disabled){background:#007080;box-shadow:0 4px 18px #008b9970;transform:translateY(-1px)}.login-btn:disabled{background:#7fc9d3;cursor:not-allowed;box-shadow:none;transform:none}.login-sso-reserved{margin-top:20px;min-height:16px}.login-constellation{position:absolute;width:468px;height:676px;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;overflow:visible;animation:lyra-float 32s ease-in-out infinite}@keyframes lyra-float{0%{transform:translate(calc(-50% + 0px),calc(-50% + 0px))}20%{transform:translate(calc(-50% + 14px),calc(-50% - 10px))}40%{transform:translate(calc(-50% + 10px),calc(-50% + 14px))}60%{transform:translate(calc(-50% - 14px),calc(-50% + 8px))}80%{transform:translate(calc(-50% - 8px),calc(-50% - 14px))}to{transform:translate(calc(-50% + 0px),calc(-50% + 0px))}}.c-lines line{stroke:#ffffff2e;stroke-width:.7;stroke-linecap:round}.star-hit{fill:transparent;cursor:default}.star-dot{fill:#ffffffeb}.star-dot--lg{fill:#fff}@keyframes star-twinkle{0%,to{opacity:1}45%{opacity:.35}50%{opacity:.5}}.star-t1{animation:star-twinkle 3.2s 0s ease-in-out infinite}.star-t2{animation:star-twinkle 2.8s .9s ease-in-out infinite}.star-t3{animation:star-twinkle 3.7s .4s ease-in-out infinite}.star-t4{animation:star-twinkle 2.5s 1.5s ease-in-out infinite}.star-t5{animation:star-twinkle 3.4s .7s ease-in-out infinite}.star-t6{animation:star-twinkle 3s 1.2s ease-in-out infinite}.star-tip{opacity:0;transition:opacity .2s ease;pointer-events:none}.star-tip text{fill:#fff;font-size:9px;font-family:Inter,Segoe UI,sans-serif;font-weight:500;letter-spacing:.03em;text-anchor:start}.star-group:hover .star-tip{opacity:1}.star-group:hover .star-dot{fill:#fff;opacity:1}.toggle-sidebar-btn{display:none}@media (max-width: 900px){.login-right{justify-content:center;padding-left:24px;padding-right:24px}.login-box{width:100%;max-width:440px}}@media (max-width: 768px){.login-container{flex-direction:column}.login-left{flex:0 0 200px}.login-right{flex:1}.login-box{padding:32px 24px}.login-constellation{display:none}}.modal-backdrop{position:fixed;inset:0;background:#0f172a73;display:flex;justify-content:center;align-items:center;z-index:1000;animation:peekFadeIn .2s ease}.modal-backdrop .modal{background:#fff;padding:0;border-radius:12px;width:520px;max-width:92vw;max-height:88vh;overflow-y:auto;box-shadow:0 24px 60px #00000038;animation:modalScaleIn .2s cubic-bezier(.4,0,.2,1)}.modal-backdrop .modal h3{margin:0;padding:0 1.4rem;height:52px;display:flex;align-items:center;background:var(--brand);color:#fff;font-size:1rem;font-weight:600;border-radius:12px 12px 0 0;flex-shrink:0}.modal-backdrop .modal .search-input{width:100%;padding:8px;margin-bottom:10px;border-radius:6px;border:1px solid #ccc}.modal-backdrop .modal .user-list{max-height:200px;overflow-y:auto;border:1px solid #eee;border-radius:6px;margin-bottom:10px}.modal-backdrop .modal .user-item{padding:6px 10px;cursor:pointer;border-bottom:1px solid #f3f3f3}.modal-backdrop .modal .user-item:hover{background-color:#f0f8ff}.modal-backdrop .modal .selected-list{margin-bottom:10px}.modal-backdrop .modal .selected-list .selected-item{display:flex;justify-content:space-between;align-items:center;background:#f5f5f5;padding:5px 10px;border-radius:6px;margin-bottom:5px}.modal-backdrop .modal .selected-list .selected-item .remove{cursor:pointer;color:#d9534f;font-weight:700;font-size:16px}.modal-backdrop .modal .modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;background:#fbfbfd;border-top:1px solid #f0f0f0}.modal-backdrop .modal .modal-actions .btn,.modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .btn-cancel{display:inline-flex;align-items:center;gap:6px;padding:9px 27px!important;border-radius:5px!important;border:none!important;cursor:pointer;font-weight:500;font-size:.875rem!important;transition:all .15s ease;white-space:nowrap}.modal-backdrop .modal .modal-actions .btn-primary,.modal-backdrop .modal .modal-actions .btn-save{background:var(--brand);color:#fff}.modal-backdrop .modal .modal-actions .btn-primary:hover,.modal-backdrop .modal .modal-actions .btn-save:hover{background:var(--brand-dark);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--brand-rgb),.28)}.modal-backdrop .modal .modal-actions .btn-cancel{background:#e5e7eb;color:#374151;border:1px solid #d1d5db}.modal-backdrop .modal .modal-actions .btn-cancel:hover{background:#d1d5db}.report-tabs{background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.tab-header{display:flex;border-bottom:2px solid #e6e6e6;background-color:#fafafa}.tab-item{flex:1;text-align:center;padding:14px 0;font-weight:500;color:#555;cursor:pointer;transition:all .3s ease;border-bottom:3px solid transparent}.tab-item:hover{background-color:#f3f7ff;color:var(--brand)}.active-tab{color:var(--brand);background-color:#fff;border-bottom:3px solid var(--brand);font-weight:600}.tab-content{padding:20px}.report-tabs h3{padding:1rem 1.2rem .4rem;margin:0}.report-tabs .table-controls{padding:0 1.2rem .6rem}.tab-content .table-responsive>div,.table-responsive>div{width:max-content;min-width:100%}.table{width:100%;border-collapse:collapse;margin-top:10px}.table th{background:var(--brand);color:#fff;text-align:left;padding:13px 14px;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border:none}.table td{padding:12px 14px;border:none;border-bottom:1px solid #f1f5f9;text-align:left;font-size:.875rem;color:#374151;vertical-align:middle}.table tbody tr{transition:background .12s ease}.table tbody tr:hover{background:var(--brand-light)}.table tbody tr:nth-child(2n){background-color:var(--brand-xlight)}.table tbody tr:last-child td{border-bottom:none}.completed{color:#28a745;font-weight:600}.pending{color:#ff9800;font-weight:600}.btn,.modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .btn-cancel{padding:6px 12px;border-radius:6px;cursor:pointer;border:none;transition:all .2s ease}.btn-view{background-color:#28a745;color:#fff;margin-right:8px}.btn-download{background-color:#17a2b8;color:#fff}.btn-view:hover,.btn-download:hover{opacity:.85}.table-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.table-controls input[type=text]{padding:6px 12px;border-radius:6px;border:1px solid #ccc;font-size:14px;width:200px;transition:all .3s ease}.table-controls input[type=text]:focus{outline:none;border-color:#007bff;box-shadow:0 0 5px #007bff80}.table-controls .pagination{display:flex;align-items:center;gap:5px}.table-controls .pagination button{padding:6px 12px;border-radius:6px;border:1px solid #007bff;background-color:#fff;color:#007bff;cursor:pointer;font-weight:500;transition:all .2s ease}.table-controls .pagination button:hover:not(:disabled){background-color:#007bff;color:#fff}.table-controls .pagination button:disabled{opacity:.5;cursor:not-allowed}.table-controls .pagination span{font-size:14px;font-weight:500;margin:0 8px;color:#555}.table-controls .pagination button.active{background-color:#007bff;color:#fff;border-color:#007bff}.employee-profile{margin-top:40px;text-align:center;padding:20px;background:#f8fafc;border-radius:20px;box-shadow:0 4px 10px #0000001a}.profile-title{font-size:24px;color:#333;margin-bottom:20px;font-weight:600}.profile-card{display:inline-block;background:#fff;padding:25px 40px;border-radius:15px;box-shadow:0 2px 8px #0000001a;text-align:left;min-width:300px}.profile-info{display:flex;flex-direction:column;gap:10px}.profile-row{display:flex;justify-content:space-between;border-bottom:1px solid #e0e0e0;padding:6px 0}.profile-row .label{color:#666;font-weight:500}.profile-row .value{color:#222;font-weight:600}.welcome-message{margin:15px 0;padding:10px 15px;background-color:#f0f4ff;color:#1a1a1a;font-weight:500;border-radius:6px;text-align:center;font-size:14px;box-shadow:0 1px 3px #0000001a;transition:background-color .3s ease}.welcome-message:hover{background-color:#dbe6ff}.modal-backdrop{position:fixed;inset:0;background-color:#00000073;display:flex;justify-content:center;align-items:center;z-index:1050}.modal.bulk-report-modal{background:#fff;border-radius:12px;padding:20px;width:100%;max-width:1500px;max-height:80vh;overflow-y:auto;box-shadow:0 10px 35px #0003;animation:fadeInUp .25s ease}.modal.bulk-report-modal h3{margin-bottom:16px;font-size:20px;font-weight:600;color:#222}.bulk-report-scroll{overflow-x:auto;overflow-y:hidden;width:100%}.bulk-report-modal{max-width:1000px;width:90%;margin:0 auto;padding:20px;overflow-x:auto;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026}.bulk-report-header,.bulk-report-row{display:grid;grid-auto-flow:column;grid-template-columns:1.2fr 1.4fr 1.2fr 1fr 1.3fr auto auto auto;gap:8px;align-items:center;min-width:1000px}.bulk-report-header{font-weight:600;background:#f5f7fa;border-bottom:2px solid #e4e9f0;color:#333}.bulk-report-row{border-bottom:1px solid #f0f2f5;transition:background .12s ease}.bulk-report-row:nth-child(2n){background:#fbfdff}.bulk-report-row:hover{background:#f1f7ff}.bulk-report-row input,.bulk-report-row select,.bulk-report-row textarea{width:100%;box-sizing:border-box;padding:6px 8px;border:1px solid #d1d7e0;border-radius:4px;font-size:13px;background:transparent}.bulk-report-row input:focus,.bulk-report-row textarea:focus,.bulk-report-row select:focus{outline:none;border-color:#4f8ef7;box-shadow:0 0 0 3px #4f8ef714;background:#fff}.bulk-report-row input[type=number]{text-align:right}.bulk-report-container{overflow-x:auto}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;background:#fbfbfd;border-top:1px solid #f0f0f0}.modal-actions .btn,.modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .btn-cancel{display:inline-flex;align-items:center;gap:6px;padding:9px 27px!important;border-radius:5px!important;border:none!important;font-weight:500;font-size:.875rem!important;cursor:pointer;transition:all .15s ease;white-space:nowrap}.modal-actions .btn-primary,.modal-backdrop .modal .modal-actions .btn-save{background:var(--brand);color:#fff}.modal-actions .btn-primary:hover,.modal-backdrop .modal .modal-actions .btn-save:hover{background:var(--brand-dark);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--brand-rgb),.28)}.modal-actions .btn-cancel,.modal-backdrop .modal .modal-actions .btn-cancel{background:#e5e7eb;color:#374151;border:1px solid #d1d5db}.modal-actions .btn-cancel:hover,.modal-backdrop .modal .modal-actions .btn-cancel:hover{background:#d1d5db}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 820px){.bulk-report-header,.bulk-report-row{grid-template-columns:1fr;gap:6px}.bulk-report-row .user-name{margin-bottom:4px}.bulk-report-row input,.bulk-report-row textarea{font-size:14px}.bulk-report-header{display:none}}.monthly-report-container{max-width:1000px;margin:40px auto;background:#fff;padding:30px;border-radius:15px;box-shadow:0 4px 15px #0000001a}.report-header{text-align:center;margin-bottom:20px}.report-info p{font-size:16px;margin:5px 0}.table-container{margin-top:20px}table{width:100%;border-collapse:collapse}thead{background:var(--brand)}thead th{color:#fff;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:13px 14px;text-align:left;white-space:nowrap;border:none}th{padding:13px 14px;text-align:left;border:none}td{padding:12px 14px;text-align:left;border:none;border-bottom:1px solid #f1f5f9;font-size:.875rem;color:#374151;vertical-align:middle}tbody tr{transition:background .12s ease}tbody tr:nth-child(2n){background-color:var(--brand-xlight)}tbody tr:hover{background-color:var(--brand-light)}tbody tr:last-child td{border-bottom:none}.description-cell{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.loading{text-align:center;padding:50px;font-size:18px;color:#666}.total-entry{margin-top:10px;font-weight:700;color:#333}.is-invalid{border:1px solid #e74c3c!important;background-color:#fcebea}.text-danger{font-size:12px;color:#e74c3c}.dashboard-layout{display:flex;height:100vh;height:100dvh;overflow:hidden;background:#f5f7fb}.sidebar{width:260px;background:var(--brand);color:var(--sidebar-fg);display:flex;flex-direction:column;padding:12px 1.25rem 30px;height:calc(100vh - 10px);height:calc(100dvh - 10px);overflow:hidden;transition:width .25s ease}.sidebar.collapsed{width:64px;padding:0;height:100vh;height:100dvh;overflow:visible}.sidebar.collapsed .nav-menu{overflow:hidden;padding-top:1.2rem}.sidebar.collapsed .sidebar-brand,.sidebar.collapsed .sidebar-icon-row,.sidebar.collapsed .nav-menu li,.sidebar.collapsed .nav-menu a,.sidebar.collapsed .sidebar-link,.sidebar.collapsed .sidebar-bell-row,.sidebar.collapsed .sidebar-user-footer{display:flex!important;justify-content:center!important;align-items:center!important;width:64px!important;padding:.35rem 6px .35rem 0!important;margin:0!important;gap:0!important}.sidebar.collapsed .nav-menu ul{padding:0;margin:0;width:64px}.sidebar.collapsed .nav-menu li{margin-bottom:.05rem;position:relative}.sidebar.collapsed .nav-menu a .nav-icon,.sidebar.collapsed .sidebar-link .nav-icon,.sidebar.collapsed .sidebar-icon-row__icon{margin:0!important;font-size:1.1rem}.sidebar.collapsed .nav-menu li.active>a{width:42px!important;border-radius:10px!important;padding:.4rem 0!important;background:var(--sidebar-item-active)!important}.sidebar.collapsed .nav-menu a:hover{width:42px!important;border-radius:10px!important;padding:.4rem 0!important;transform:none!important}.sidebar.collapsed .sidebar-item{width:64px}.sidebar.collapsed .sidebar-brand{padding:.8rem 6px .8rem 0!important;gap:0}.sidebar.collapsed .sidebar-bell-row{padding:.55rem 6px .55rem 0!important;margin:0!important;position:relative}.sidebar.collapsed .sidebar-user-footer{padding:.8rem 6px .9rem 0!important;margin-top:auto;position:relative}.sidebar.collapsed .nav-menu li[title]:not([title=""]):after{content:attr(title);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:#0f172ade;color:#f1f5f9;font-size:.72rem;font-weight:500;padding:4px 10px;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s ease;z-index:9999;letter-spacing:.01em}.sidebar.collapsed .nav-menu li[title]:not([title=""]):hover:after{opacity:1}.sidebar.collapsed .sidebar-bell-row[title]:not([title=""]):after{content:attr(title);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:#0f172ade;color:#f1f5f9;font-size:.72rem;font-weight:500;padding:4px 10px;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s ease;z-index:9999;letter-spacing:.01em}.sidebar.collapsed .sidebar-bell-row[title]:not([title=""]):hover:after{opacity:1}.sidebar.collapsed .sidebar-user-footer[title]:not([title=""]):after{content:attr(title);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:#0f172ade;color:#f1f5f9;font-size:.72rem;font-weight:500;padding:4px 10px;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s ease;z-index:9999;letter-spacing:.01em}.sidebar.collapsed .sidebar-user-footer[title]:not([title=""]):hover:after{opacity:1}.sidebar-flyout{width:200px;background:#f9fafb;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;flex-shrink:0;height:100%;padding:12px 8px;animation:flyout-in .18s ease}.sidebar-flyout__header{display:flex;align-items:center;gap:10px;padding:8px 6px 16px;border-bottom:1px solid #e5e7eb;margin-bottom:8px}.sidebar-flyout__back{background:none;border:none;color:#6b7280;cursor:pointer;padding:4px 6px;border-radius:6px;font-size:.85rem;transition:background .15s}.sidebar-flyout__back:hover{background:#e5e7eb;color:#111}.sidebar-flyout__title{font-size:.95rem;font-weight:700;color:#111827}.sidebar-flyout__item{display:flex;align-items:center;gap:10px;padding:9px 10px;font-size:.875rem;color:#374151;text-decoration:none;border-radius:7px;transition:background .15s}.sidebar-flyout__item:hover{background:#e5e7eb;color:#111}.sidebar-flyout__item.active{background:#ede9fe;color:var(--brand);font-weight:600}.sidebar-flyout__icon{font-size:.5rem;color:#9ca3af;flex-shrink:0}@keyframes flyout-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.flyout-active{background:var(--sidebar-item-active);border-radius:6px}.sidebar-icon-row{display:flex;align-items:center;justify-content:center;width:100%;padding:.5rem 0;cursor:pointer;color:var(--sidebar-fg-muted);transition:background .15s,color .15s;border-radius:6px}.sidebar-icon-row:hover{background:var(--sidebar-item-hover);color:var(--sidebar-fg)}.sidebar-icon-row__icon{font-size:1.1rem}.sidebar-bell-row{display:flex;align-items:center;gap:12px;padding:10px 16px;cursor:pointer;border-radius:8px;margin:0 8px 4px;color:var(--sidebar-fg-muted);transition:background .15s;position:relative}.sidebar-bell-row:hover{background:var(--sidebar-item-hover);color:var(--sidebar-fg)}.sidebar-bell-row .notification-bell{position:relative;display:flex;align-items:center;justify-content:center;font-size:1.1rem;background:none!important;border:none!important;width:auto!important;height:auto!important;border-radius:0!important;margin:0!important;padding:0!important;color:inherit!important;transform:none!important}.sidebar-bell-label{font-size:.875rem;font-weight:400}.sidebar-collapse-btn{background:none;border:none;color:var(--sidebar-fg-muted);cursor:pointer;padding:4px 6px;border-radius:6px;font-size:.78rem;line-height:1;opacity:.55;transition:background .18s,color .18s,opacity .18s;flex-shrink:0;align-self:center}.sidebar-collapse-btn:hover{background:var(--sidebar-item-hover);color:var(--sidebar-fg);opacity:1}.user-panel{display:flex;align-items:center;padding:1rem 1rem 1.1rem;gap:11px;position:relative;background:linear-gradient(135deg,var(--sidebar-item-active),transparent);border-bottom:1px solid var(--sidebar-border);margin-bottom:.6rem}.user-panel:after{content:"";position:absolute;bottom:0;left:1rem;right:1rem;height:1px;background:linear-gradient(90deg,transparent,var(--sidebar-border),transparent)}@media (max-width: 1024px){.user-panel{margin-top:35px}}@media (max-width: 768px){.user-panel{margin-top:35px}}@media (max-width: 480px){.user-panel{margin-top:35px}}.user-panel .avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#1a4a8a,#0d2248);border:2px solid rgba(255,255,255,.22);box-shadow:0 0 0 3px #ffffff12,0 4px 14px #00000040;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:0}.user-panel .avatar i{font-size:1.4rem;color:#ffffffeb}.user-info{display:flex;flex-direction:column;flex:1;min-width:0}.user-name{font-weight:700;font-size:.92rem;color:var(--sidebar-fg);letter-spacing:.015em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-container{width:100%;max-width:200px;height:200px;margin-left:0!important}.progress-values{font-weight:700;font-size:.95rem;margin-left:55px}.user-status{display:flex;align-items:center;font-size:.72rem;color:var(--sidebar-fg-muted);margin-top:3px;letter-spacing:.01em}.status-dot{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 2px #4ade8047;margin-right:5px;flex-shrink:0;animation:status-pulse 2.4s ease-in-out infinite}@keyframes status-pulse{0%,to{box-shadow:0 0 0 2px #4ade8047}50%{box-shadow:0 0 0 4px #4ade801a}}.menu-section-title{font-size:.8rem;text-transform:uppercase;letter-spacing:1px;color:var(--sidebar-fg-muted);margin:1.2rem 0 .5rem}.sidebar.collapsed .nav-menu li.nav-group-spacer{margin-top:20px!important}.nav-menu{flex:1;overflow-y:auto;scrollbar-width:none}.nav-menu::-webkit-scrollbar{display:none}.nav-menu ul{list-style:none;padding:0;margin:0}.nav-menu li{margin-bottom:.1rem}.nav-menu a{display:flex;align-items:center;text-decoration:none;padding:.5rem .7rem;border-radius:8px;color:var(--sidebar-fg);font-size:.95rem;transition:background .18s ease,color .18s ease,transform .1s ease}.nav-menu a .nav-icon{font-size:1.1rem;margin-right:.7rem;width:20px;text-align:center}.nav-menu a:hover{background:#ffffff12;color:var(--sidebar-fg);transform:translate(1px)}.nav-menu li.active>a{background:var(--sidebar-item-active);color:var(--sidebar-fg);border-radius:8px}.sidebar-user-footer{display:flex;align-items:center;gap:10px;padding:8px 14px;margin-top:auto;border-top:1px solid var(--sidebar-border);cursor:pointer;border-radius:8px;transition:background .2s;position:relative}.sidebar-user-footer:hover{background:var(--sidebar-item-hover)}.sidebar-user-footer__info{flex:1;min-width:0}.sidebar-user-footer__name{font-size:.875rem;font-weight:600;color:var(--sidebar-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-footer__pos{font-size:.75rem;color:var(--sidebar-fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-footer__dots{color:var(--sidebar-fg-muted);font-size:.9rem;flex-shrink:0}.sidebar-avatar-sm{width:32px;height:32px;border-radius:50%;background:var(--brand);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.85rem;flex-shrink:0;overflow:hidden}.sidebar-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.sidebar-user-menu{width:220px;background:#fff;border-radius:10px;box-shadow:0 8px 24px #0000001f;z-index:2000;padding:8px 0;border:1px solid #e5e7eb;animation:userMenuIn .12s ease-out}.sidebar-user-menu:before{content:"";position:absolute;bottom:12px;left:-6px;width:12px;height:12px;background:#fff;border-left:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;transform:rotate(45deg);z-index:1}.sidebar-user-menu__item{display:flex;align-items:center;gap:10px;padding:8px 14px;font-size:.875rem;color:#374151;cursor:pointer;transition:background .15s}.sidebar-user-menu__item i{width:16px;text-align:center;color:#6b7280;font-size:.85rem}.sidebar-user-menu__item:hover{background:#f3f4f6}.sidebar-user-menu__item--logout,.sidebar-user-menu__item--logout i{color:#dc2626}.sidebar-user-menu__item--logout:hover{background:#fef2f2}.sidebar-user-menu__divider{height:1px;background:#e5e7eb;margin:8px 0}@keyframes userMenuIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.logout-container{margin-top:auto;padding-top:1.2rem}.btn-logout{width:100%;border:none;outline:none;display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.65rem .75rem;border-radius:.6rem;background:#e63946;color:#fff;font-weight:500;font-size:.95rem;cursor:pointer;transition:background .2s ease,transform .1s ease}.btn-logout i{font-size:1rem}.btn-logout:hover{background:#d02736;transform:translateY(-1px)}.content{flex:1;padding:0}.btn,.modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .btn-cancel{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:8px!important;font-size:.8rem;font-weight:500;border:none!important;cursor:pointer;color:#fff!important;box-shadow:0 2px 5px #00000026;transition:all .2s ease-in-out}.btn i,.modal-backdrop .modal .modal-actions .btn-save i,.modal-backdrop .modal .modal-actions .btn-cancel i{font-size:.85rem}.btn:hover,.modal-backdrop .modal .modal-actions .btn-save:hover,.modal-backdrop .modal .modal-actions .btn-cancel:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0003}.btn:active,.modal-backdrop .modal .modal-actions .btn-save:active,.modal-backdrop .modal .modal-actions .btn-cancel:active{transform:translateY(0);box-shadow:0 1px 3px #00000026}.btn-primary,.modal-backdrop .modal .modal-actions .btn-save{background:var(--brand)!important}.btn-update{background:linear-gradient(135deg,#ffca28,#f9a825)!important}.btn-delete{background:linear-gradient(135deg,#e53935,#c62828)!important}.btn-info,.btn-view{background:linear-gradient(135deg,#3f8cff,#5bd3ff)!important}.btn:focus,.modal-backdrop .modal .modal-actions .btn-save:focus,.modal-backdrop .modal .modal-actions .btn-cancel:focus{outline:none!important;box-shadow:none!important}.disabled-btn{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.projects-container,.users-container,.monthly-reports-container,.daily-reports-container,.change-password-container,.project-details-container,.settings-container,.user-details-container{max-width:1500px;padding:1.5rem 2rem;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.projects-header,.users-header,.report-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.projects-header h2,.users-header h2,.report-header h2,.settings-container h2{font-size:1.6rem;font-weight:700;color:#132b4c;margin:0 0 1.2rem}.projects-header .btn-primary,.projects-header .modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .projects-header .btn-save,.users-header .btn-primary,.users-header .modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .users-header .btn-save{display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;padding:.45rem 1.1rem;border:none;background:linear-gradient(135deg,#3f8cff,#5bd3ff);color:#fff;font-size:.9rem;font-weight:600;box-shadow:0 6px 14px #3f8cff59;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.projects-header .btn-primary i,.projects-header .modal-backdrop .modal .modal-actions .btn-save i,.modal-backdrop .modal .modal-actions .projects-header .btn-save i,.users-header .btn-primary i,.users-header .modal-backdrop .modal .modal-actions .btn-save i,.modal-backdrop .modal .modal-actions .users-header .btn-save i{font-size:.9rem}.projects-header .btn-primary:hover,.projects-header .modal-backdrop .modal .modal-actions .btn-save:hover,.modal-backdrop .modal .modal-actions .projects-header .btn-save:hover,.users-header .btn-primary:hover,.users-header .modal-backdrop .modal .modal-actions .btn-save:hover,.modal-backdrop .modal .modal-actions .users-header .btn-save:hover{transform:translateY(-1px);box-shadow:0 8px 18px #3f8cff73;opacity:.95}.projects-header .btn-primary:active,.projects-header .modal-backdrop .modal .modal-actions .btn-save:active,.modal-backdrop .modal .modal-actions .projects-header .btn-save:active,.users-header .btn-primary:active,.users-header .modal-backdrop .modal .modal-actions .btn-save:active,.modal-backdrop .modal .modal-actions .users-header .btn-save:active{transform:translateY(0);box-shadow:0 4px 10px #00000026}.table-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.table-controls input[type=text]{flex:1;border-radius:999px;border:1px solid #d3ddf0;padding:.45rem .9rem;font-size:.85rem;outline:none;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.table-controls input[type=text]:focus{border-color:#3f8cff;box-shadow:0 0 0 2px #3f8cff2e}.table-controls .pagination{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#4f5f7a}.table-controls .pagination button{border-radius:999px;border:none;padding:.3rem .7rem;font-size:.8rem;cursor:pointer;background:#e7eefc;color:#20407a;transition:background .15s ease,transform .1s ease,opacity .15s ease}.table-controls .pagination button:hover:not(:disabled){background:#d4e1ff;transform:translateY(-1px)}.table-controls .pagination button:disabled{opacity:.45;cursor:default}.error{margin-bottom:.75rem;padding:.6rem .9rem;border-radius:.7rem;background:#ffe6e8;color:#b3261e;font-size:.85rem}.projects-container .table,.users-container .table,.monthly-reports-container .table,.daily-reports-container .table,.change-password-container .table,.project-details-container .table,.user-details-container .table,.container .table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;margin-bottom:0}.user-details-container .table-responsive,.users-container .table-responsive,.projects-container .table-responsive,.monthly-reports-container .table-responsive,.daily-reports-container .table-responsive,.project-details-container .table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%;background:#fff;border-radius:1rem;box-shadow:0 12px 28px #0f235f0f;margin-bottom:.7rem}.user-details-container .table-responsive table,.users-container .table-responsive table,.projects-container .table-responsive table,.monthly-reports-container .table-responsive table,.daily-reports-container .table-responsive table,.project-details-container .table-responsive table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}.projects-container .table thead,.users-container .table thead,.monthly-reports-container .table thead,.daily-reports-container .table thead,.change-password-container .table thead,.project-details-container .table thead,.user-details-container .table thead,.monthly-timesheet-container .table thead,.monthly-timesheet-detail-container .table thead,.container .table thead{background:var(--brand)}.projects-container .table thead th,.users-container .table thead th,.monthly-reports-container .table thead th,.daily-reports-container .table thead th,.change-password-container .table thead th,.project-details-container .table thead th,.user-details-container .table thead th,.monthly-timesheet-container .table thead th,.monthly-timesheet-detail-container .table thead th,.container .table thead th{padding:.75rem .9rem;font-size:.82rem;text-align:left;color:#fff;font-weight:600;border-bottom:none;white-space:nowrap}.projects-container .table tbody tr,.users-container .table tbody tr,.monthly-reports-container .table tbody tr,.daily-reports-container .table tbody tr,.change-password-container .table tbody tr,.project-details-container .table tbody tr,.user-details-container .table tbody tr,.container .table tbody tr{transition:background .15s ease}.projects-container .table tbody tr:nth-child(odd),.users-container .table tbody tr:nth-child(odd),.monthly-reports-container .table tbody tr:nth-child(odd),.daily-reports-container .table tbody tr:nth-child(odd),.change-password-container .table tbody tr:nth-child(odd),.project-details-container .table tbody tr:nth-child(odd),.user-details-container .table tbody tr:nth-child(odd),.container .table tbody tr:nth-child(odd){background:#fbfdff}.projects-container .table tbody tr:hover,.users-container .table tbody tr:hover,.monthly-reports-container .table tbody tr:hover,.daily-reports-container .table tbody tr:hover,.change-password-container .table tbody tr:hover,.project-details-container .table tbody tr:hover,.user-details-container .table tbody tr:hover,.container .table tbody tr:hover{background:#f2f6ff}.projects-container .table tbody td,.users-container .table tbody td,.monthly-reports-container .table tbody td,.daily-reports-container .table tbody td,.change-password-container .table tbody td,.project-details-container .table tbody td,.user-details-container .table tbody td,.container .table tbody td{padding:.65rem .9rem;font-size:.85rem;color:#34435b;vertical-align:middle}.actions{text-align:right;white-space:nowrap;display:flex;justify-content:flex-end;gap:.4rem}.actions .btn,.actions .modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .actions .btn-save,.actions .modal-backdrop .modal .modal-actions .btn-cancel,.modal-backdrop .modal .modal-actions .actions .btn-cancel{font-size:.75rem;padding:.35rem .75rem}.total-entry{margin-top:.3rem;font-size:.85rem;font-weight:600;color:#465270}.text-center{text-align:center}.monthly-reports-container .report-info{margin-bottom:1rem;font-size:.9rem;color:#34435b}.monthly-reports-container .report-info p{margin:.1rem 0}.monthly-reports-container .table-container h3{font-size:1.1rem;font-weight:600;color:#132b4c;margin-bottom:.8rem}.monthly-reports-container td:last-child{white-space:nowrap}.monthly-reports-container td:last-child .btn,.monthly-reports-container td:last-child .modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .monthly-reports-container td:last-child .btn-save,.monthly-reports-container td:last-child .modal-backdrop .modal .modal-actions .btn-cancel,.modal-backdrop .modal .modal-actions .monthly-reports-container td:last-child .btn-cancel{font-size:.75rem;padding:.35rem .75rem;margin-bottom:.15rem}.project-details-container .project-info.card{background:#fff;border-radius:1rem;padding:1.2rem 1.5rem;box-shadow:0 10px 24px #0f235f14;margin-bottom:1.5rem}.project-details-container .project-header h2{font-size:1.5rem;font-weight:700;color:#132b4c;margin-bottom:.4rem}.project-details-container .project-header p{margin:.1rem 0;font-size:.9rem;color:#4a5675}.project-details-container .project-header p strong{color:#132b4c}.tables-section{margin-top:1rem}.tables-section .card{background:#fff;border-radius:1rem;padding:1rem 1.3rem;box-shadow:0 8px 18px #0f235f0f;margin-bottom:1.5rem}.tables-section .card h3{font-size:1.1rem;font-weight:600;color:#132b4c;margin-bottom:.8rem}.tables-section .table-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.7rem}.form-group{margin-bottom:.8rem}.form-group label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.25rem;color:#2a3550}.form-group input,.form-group textarea,.form-group select{width:100%;border-radius:.6rem;border:1px solid #d3ddf0;padding:.45rem .7rem;font-size:.85rem;outline:none;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:#3f8cff;box-shadow:0 0 0 2px #3f8cff2e}.text-danger{color:#c62828;font-size:.75rem}.settings-card{max-width:640px;margin:24px auto 0;background:#fff;border-radius:10px;box-shadow:0 1px 6px #0000000f;border:1px solid #eef0f3;padding:32px}.settings-card__header{margin-bottom:24px}.settings-card__title{font-size:1.4rem;font-weight:700;color:#0f172a;margin:0 0 6px}.settings-card__subtitle{font-size:.88rem;color:#64748b;margin:0}.settings-card .form-group{margin-bottom:16px}.settings-card .form-group label{display:block;font-size:.82rem;font-weight:600;color:#374151;margin-bottom:6px}.settings-card__hint{display:block;font-size:.78rem;color:#94a3b8;margin-top:4px}.settings-card__actions{display:flex;justify-content:flex-end;margin-top:20px}.settings-card__btn{display:inline-flex;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;color:#fff;background:var(--brand, #132b4c);border:none;border-radius:8px;cursor:pointer;transition:background .15s,box-shadow .15s}.settings-card__btn:hover{background:var(--brand-dark, #0f2240);box-shadow:0 2px 8px #0000001f}.settings-card__btn:disabled{opacity:.6;cursor:not-allowed}.settings-container .form-control{width:100%;border-radius:.6rem;border:1px solid #d3ddf0;padding:.5rem .75rem;font-size:.9rem;outline:none;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.settings-container .form-control:focus{border-color:#3f8cff;box-shadow:0 0 0 2px #3f8cff2e}.alert{padding:.6rem .9rem;border-radius:.6rem;font-size:.85rem;margin-bottom:.8rem}.alert-success{background:#e6f4ea;color:#1e7b34;border:1px solid #b3e0c3}.alert-danger{background:#fdecea;color:#c62828;border:1px solid #f5c2c0}.search-input,.select-input{width:100%;border-radius:.6rem;border:1px solid #d3ddf0;padding:.45rem .7rem;font-size:.85rem;margin-bottom:.7rem;outline:none;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.search-input:focus,.select-input:focus{border-color:#3f8cff;box-shadow:0 0 0 2px #3f8cff2e}.is-invalid{border-color:#e53935!important}.user-list{max-height:200px;border-radius:.8rem;border:1px solid #d3ddf0;overflow-y:auto;background:#fff;margin-bottom:.8rem}.user-item{padding:.45rem .7rem;font-size:.85rem;cursor:pointer;border-bottom:1px solid #edf1fc;transition:background .15s ease}.user-item:hover{background:#eef3ff}.selected-list{margin-top:.8rem}.selected-list h4{font-size:.9rem;font-weight:600;margin-bottom:.4rem}.selected-item{display:inline-flex;align-items:center;gap:.4rem;background:#e3f2fd;color:#1c355f;border-radius:999px;padding:.25rem .55rem;font-size:.8rem;margin:0 .3rem .3rem 0}.selected-item .remove{cursor:pointer;font-weight:700}.modal-backdrop{position:fixed;inset:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:999;animation:peekFadeIn .2s ease}.modal{background:#fff;border-radius:12px;padding:0;width:560px;max-width:92vw;max-height:88vh;overflow-y:auto;box-shadow:0 24px 60px #00000038;animation:modalScaleIn .2s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.modal h3{margin:0;padding:0 1.4rem;height:52px;display:flex;align-items:center;background:var(--brand);color:#fff;font-size:1rem;font-weight:600;border-radius:12px 12px 0 0;flex-shrink:0}.modal form{padding:1.4rem;overflow-y:auto}.modal-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem}.btn-cancel,.modal-backdrop .modal .modal-actions .btn-cancel{background:#e5e7eb!important;color:#374151!important}.bulk-report-modal{max-width:98vw}.bulk-report-header,.bulk-report-row{display:grid;grid-template-columns:1.2fr 1.4fr 1.5fr 1fr 1.2fr .8fr .9fr 1fr 1fr 1fr .9fr 1.2fr;gap:.5rem;align-items:center;min-width:1300px}.bulk-report-header{font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;color:#4a5675;margin-bottom:.5rem}.bulk-report-header .col{font-weight:600}.bulk-report-row{padding:.35rem 0;border-bottom:1px solid #edf1fc;font-size:.85rem}.bulk-report-row .user-name{font-weight:600}.employee-profile{max-width:900px;margin:2rem auto;padding:1.5rem 2rem}.employee-profile .profile-title{font-size:1.6rem;font-weight:700;color:#132b4c;margin-bottom:1rem}.employee-profile .profile-card{background:#fff;border-radius:1rem;padding:1.2rem 1.5rem;box-shadow:0 10px 24px #0f235f14}.employee-profile .profile-info .profile-row{display:flex;margin-bottom:.4rem;font-size:.9rem}.employee-profile .profile-info .profile-row .label{width:80px;font-weight:600;color:#4a5675}.employee-profile .profile-info .profile-row .value{color:#1f2937}.ud-topcard{display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:14px;padding:18px 24px;margin-bottom:16px;box-shadow:0 2px 8px #0f235f0f;border:1px solid #f1f5f9}.ud-topcard__left{display:flex;align-items:center;gap:16px;min-width:0}.ud-topcard .avatar{width:52px;height:52px;border-radius:12px;background:var(--brand-light, #e6f7fa);color:var(--brand, #00A3B9);font-size:1.2rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ud-topcard__info{min-width:0}.ud-topcard__name{font-size:1.15rem;font-weight:700;color:#0f172a;margin:0 0 2px;line-height:1.2}.ud-topcard__meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:6px}.ud-topcard__meta span{font-size:.75rem;color:#64748b;display:inline-flex;align-items:center;gap:4px}.ud-topcard__meta span i{font-size:.65rem;color:#94a3b8}.ud-topcard__badges{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ud-topcard__actions{flex-shrink:0}.ov-tab{padding:20px}.ov-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ov-section{background:#fff;border:1px solid #f1f5f9;border-radius:12px;padding:18px}.ov-section__title{font-size:.82rem;font-weight:600;color:#475569;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid #f1f5f9}.ov-section__title i{color:var(--brand);margin-right:6px;font-size:.78rem}.ov-field{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid #fafbfc}.ov-field:last-child{border-bottom:none}.ov-field__label{font-size:.78rem;color:#94a3b8;font-weight:500}.ov-field__value{font-size:.82rem;color:#0f172a;font-weight:500;text-align:right}.ov-field__value small{color:#94a3b8;font-weight:400}@media (max-width: 768px){.ov-grid{grid-template-columns:1fr}.ud-topcard{flex-direction:column;align-items:flex-start;gap:12px}.ud-topcard__actions{align-self:flex-end}}.emp-tasks-tab{padding:16px}.emp-tasks-tab .tsk-list-wrap{border-radius:10px;border:1px solid #eef0f3;overflow-x:auto;overflow-y:auto;max-height:600px;box-shadow:none!important;background:#fff!important;margin-bottom:0;width:100%}.emp-tasks-tab .tsk-list-fill{min-height:0}.emp-tasks-tab table.tsk-list-table{width:max-content!important;min-width:100%!important;table-layout:auto!important;border-collapse:collapse!important;border-spacing:0!important;font-size:.84rem}.emp-tasks-tab table.tsk-list-table thead tr{background:#f1f5f9!important}.emp-tasks-tab table.tsk-list-table thead th.tsk-list-th{color:#334155!important;font-size:.72rem!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.05em!important;padding:9px 12px!important;border-bottom:2px solid #e2e8f0!important;background:#f1f5f9!important;white-space:nowrap;position:sticky;top:0;z-index:5}.emp-tasks-tab .tsk-list-row{border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .12s}.emp-tasks-tab .tsk-list-row:nth-child(2n){background:#f8fafc}.emp-tasks-tab .tsk-list-row:hover{background:#f4f7fb!important}.emp-tasks-tab .tsk-list-row--overdue{background:snow!important}.emp-tasks-tab .tsk-list-row--overdue:hover{background:#fff5f5!important}.emp-tasks-tab .tsk-list-row:last-child{border-bottom:none}.emp-tasks-tab td.tsk-list-td{padding:10px 12px!important;color:#374151!important;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:none!important}.emp-tasks-tab td.tsk-list-td--name{font-weight:500}.emp-tasks-tab tr.tsk-list-row:nth-child(2n){background:#f8fafc}.emp-tasks-tab .tsk-empty-state{text-align:center;padding:48px 20px;color:#94a3b8;font-size:.85rem}.emp-tasks-tab .tsk-empty-state i{font-size:1.4rem;display:block;margin-bottom:8px;color:#cbd5e1}.emp-tasks-tab .tsk-empty-state p{margin:0}.emp-tasks-tab .emp-tasks-footer{display:flex;align-items:center;justify-content:space-between;padding:10px 4px 0;font-size:.78rem}.emp-tasks-tab .emp-tasks-footer__count{color:#94a3b8;font-weight:500}.emp-tasks-tab .emp-tasks-footer .proj-pagination{gap:8px}.user-details-container .user-info.card{background:#fff;border-radius:1rem;padding:1.2rem 1.5rem;box-shadow:0 10px 24px #0f235f14;margin-bottom:1.5rem;overflow:hidden}.user-details-container .user-header{display:flex;align-items:flex-start;gap:1rem}.user-details-container .user-header h2{font-size:1.5rem;font-weight:700;color:#132b4c;margin-bottom:.4rem}.user-details-container .user-header p{margin:.12rem 0;font-size:.9rem;color:#4a5675}.user-details-container .user-header p strong{color:#132b4c}.report-tabs.card{background:#fff;border-radius:1rem;padding:1rem 1.3rem;box-shadow:0 8px 18px #0f235f0f}.tab-header{display:inline-flex;padding:.2rem;background:#edf2ff;border-radius:999px;margin-bottom:1rem}.tab-item{padding:.35rem .9rem;border-radius:999px;font-size:.85rem;color:#4a5675;cursor:pointer;transition:background .15s ease,color .15s ease}.tab-item:not(.active-tab):hover{background:#ffffffb3}.active-tab{background:#fff;color:#132b4c;font-weight:600;box-shadow:0 3px 8px #0f235f26}.tab-content h3{font-size:1.1rem;font-weight:600;color:#132b4c;margin-bottom:.8rem}.open,.closed{display:inline-flex;align-items:center;justify-content:center;padding:.18rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600}.open{background:#e6f4ea;color:#1e7b34}.closed{background:#fdecea;color:#c62828}.tooltip{position:relative}@media (hover: hover) and (pointer: fine){.tooltip:after,.tooltip:before{opacity:0;pointer-events:none;transition:opacity .15s ease-out,transform .15s ease-out}.tooltip:hover:after{content:attr(data-tooltip);position:absolute;top:-34px;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:4px 9px;border-radius:6px;font-size:.75rem;white-space:nowrap;box-shadow:0 4px 10px #00000026;opacity:1;z-index:50}.tooltip:hover:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%);border-width:6px;border-style:solid;border-color:transparent transparent #1f2937 transparent;opacity:1}}.loading{text-align:center;padding:2rem 1rem;color:#4a5675;font-size:.95rem}@media (max-width: 768px){.projects-container,.users-container,.monthly-reports-container,.daily-reports-container,.change-password-container,.project-details-container,.settings-container,.user-details-container{margin:1rem;padding:1rem 1.1rem}.projects-header,.users-header,.report-header{flex-direction:column;align-items:flex-start;gap:.7rem}.projects-header h2,.users-header h2,.report-header h2,.settings-container h2{font-size:1.3rem}.table-controls{flex-direction:column;align-items:stretch}.actions{flex-wrap:wrap;justify-content:flex-start}.btn,.modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .btn-cancel{padding:6px 12px;font-size:.75rem}.content{padding:1rem}.sidebar{width:230px;padding:1.2rem 1rem}.monthly-reports-container td:last-child{display:flex;flex-wrap:wrap;gap:.25rem}.monthly-reports-container td:last-child .btn,.monthly-reports-container td:last-child .modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .monthly-reports-container td:last-child .btn-save,.monthly-reports-container td:last-child .modal-backdrop .modal .modal-actions .btn-cancel,.modal-backdrop .modal .modal-actions .monthly-reports-container td:last-child .btn-cancel{padding:4px 10px}.bulk-report-header,.bulk-report-row{grid-template-columns:1.1fr 1.2fr 1.2fr .8fr 1fr}.user-details-container .user-header{flex-direction:column;align-items:flex-start}.tab-header{width:100%;justify-content:flex-start;flex-wrap:wrap}}.update-btn{margin-top:25px}@media (max-width: 1024px){.update-btn{display:block;margin:20px 0 10px auto}}@media (max-width: 768px){.update-btn{display:block;margin:15px 0 10px auto;width:fit-content}}@media (max-width: 1024px){.table-controls{flex-direction:column;align-items:stretch;gap:10px}.table-controls input{width:100%;font-size:1rem;padding:10px}.pagination{justify-content:center;flex-wrap:wrap;gap:5px}.pagination button{padding:8px 12px}.table th,.table td{font-size:.95rem;padding:8px}.actions button{font-size:.9rem;padding:5px 8px}.modal{width:85%;max-height:90vh}.dashboard-layout .sidebar{position:fixed;top:0;left:0;height:100%;transform:translate(-100%);z-index:1000;overflow-y:auto;padding-bottom:3rem}.dashboard-layout .sidebar.active{transform:translate(0)}.dashboard-layout .content{padding:15px}.toggle-sidebar-btn{display:block;position:fixed;top:15px;left:15px;background:#2c3e50;color:#fff;border:none;border-radius:6px;padding:8px 12px;font-size:1.1rem;cursor:pointer;z-index:1100}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}.table-responsive .table{width:max-content;min-width:100%;border-collapse:collapse;white-space:nowrap}}@media (max-width: 768px){.table th,.table td{font-size:.9rem;padding:8px 10px}.actions{display:flex;flex-direction:column;gap:6px}.actions button{width:100%;padding:8px;font-size:.9rem}.total-entry{text-align:center;font-size:.95rem}.modal{width:95%;padding:15px}.modal h3{font-size:1.2rem}.form-group label{font-size:.9rem}.form-group input,.form-group select{font-size:1rem;padding:8px 10px}.modal-actions{flex-direction:row;flex-wrap:wrap;gap:10px}.modal-actions button{width:auto}.table-responsive .table{width:max-content;min-width:100%;white-space:nowrap}}@media (max-width: 480px){.table-controls input{font-size:.9rem;padding:8px}.pagination span{font-size:.85rem}.table th,.table td,.actions button{font-size:.85rem;padding:6px}.modal{width:98%;padding:10px}.modal h3{font-size:1rem}.profile-card{padding:12px}.profile-row{flex-direction:column;align-items:flex-start}.profile-row .label,.profile-row .value{font-size:.9rem}}@media (max-width: 1024px){.sidebar .logout-container{padding:2.5rem 1rem;text-align:center}.sidebar .logout-container .btn-logout{padding:6px 10px;font-size:.9rem}}@media (max-width: 768px){.sidebar .logout-container{position:relative;top:0;width:100%;text-align:center}.sidebar .logout-container .btn-logout{width:90%;padding:8px;font-size:1rem}}@media (max-width: 1024px){.user-details-container .tab-content{padding:15px}.user-details-container .tab-content table{width:100%;border-collapse:separate;border-spacing:0;border-radius:1rem;overflow:hidden;box-shadow:0 12px 28px #0f235f0f;margin-bottom:.7rem}.user-details-container .tab-content table thead{background:var(--brand)}.user-details-container .tab-content table thead th{padding:.75rem .9rem;font-size:.82rem;text-align:left;color:#fff;font-weight:600;border-bottom:none;white-space:nowrap}.user-details-container .tab-content table tbody td{padding:.65rem .9rem;font-size:.85rem;color:#34435b;vertical-align:middle}.user-details-container .tab-content h3{font-size:1.05rem;margin-bottom:.7rem}.user-details-container .tab-content .table-controls input{width:100%;font-size:.95rem;padding:8px}}@media (max-width: 768px){.user-details-container .tab-content{padding:10px}.user-details-container .tab-content h3{font-size:1rem;margin-bottom:.6rem}.user-details-container .tab-content table thead th,.user-details-container .tab-content table tbody td{font-size:.8rem;padding:6px 8px}.user-details-container .tab-content .table-controls input{font-size:.9rem;padding:6px 8px}}@media (max-width: 480px){.user-details-container .tab-content{padding:8px}.user-details-container .tab-content h3{font-size:.95rem;margin-bottom:.5rem}.user-details-container .tab-content table thead th,.user-details-container .tab-content table tbody td{font-size:.75rem;padding:4px 6px}.user-details-container .tab-content .table-controls input{font-size:.85rem;padding:5px 6px}}.no-report{background-color:#f8d7da;color:#721c24;text-align:center;padding:4px 0}.monthly-timesheet-table{width:100%;border-collapse:collapse;overflow-y:auto}.monthly-timesheet-table td.has-lines{cursor:pointer;white-space:nowrap}.monthly-timesheet-table td.has-lines:hover{background:#e0f7fa}.monthly-timesheet-table td.has-lines .lines-toggle-icon{display:inline-block;width:14px;font-size:.75rem;color:var(--brand);margin-right:4px}.monthly-timesheet-table tr.lines-expand-row>td{padding:0;background:#f8fafc;border-bottom:2px solid #e5e7eb}.monthly-timesheet-table .lines-expand-inner{display:flex;flex-wrap:wrap;gap:16px;padding:14px 16px}.monthly-timesheet-table .lines-day-block{background:#fff;border:1px solid #d1d5db;border-radius:8px;overflow:hidden;min-width:220px}.monthly-timesheet-table .lines-day-block .lines-day-header{background:var(--brand);color:#fff;font-size:.78rem;font-weight:700;padding:5px 12px;letter-spacing:.4px}.monthly-timesheet-table .lines-day-block .lines-inner-table{width:100%;border-collapse:collapse;font-size:.82rem}.monthly-timesheet-table .lines-day-block .lines-inner-table thead tr{background:#f0f9ff}.monthly-timesheet-table .lines-day-block .lines-inner-table th{padding:5px 10px;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;text-align:left}.monthly-timesheet-table .lines-day-block .lines-inner-table td{padding:5px 10px;border-bottom:1px solid #f3f4f6;color:#1f2937}.monthly-timesheet-table .lines-day-block .lines-inner-table tr:last-child td{border-bottom:none}.monthly-timesheet-table thead{position:sticky;top:0;z-index:5;background:var(--brand)}.monthly-timesheet-table th{background:var(--brand);color:#fff;font-weight:700;text-align:center;padding:8px}.info-icon{color:#42c46d;cursor:pointer;font-size:1.2rem;margin-left:.5rem}.info-icon:hover{opacity:.8}.upload-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999}.upload-modal{background:#fff;padding:25px 40px;border-radius:10px;text-align:center;box-shadow:0 0 20px #0003}.spinner{margin:0 auto 15px;width:40px;height:40px;border:4px solid #d6d6d6;border-top-color:#007bff;border-radius:50%;animation:spin 1s linear infinite}.grid-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;align-items:center;margin-bottom:4px}.col{display:flex;align-items:center}.currency-selector{display:flex;flex-direction:column;max-width:180px;margin-bottom:1rem}.currency-selector label{font-weight:500;margin-bottom:6px;color:#333}.currency-selector select{padding:.55rem .8rem;border-radius:50px;border:1px solid var(--brand);background-color:#f5f7fa;color:#333;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;box-shadow:0 2px 5px #0000001a;appearance:none;background-image:url("data:image/svg+xml,%3Csvg fill='%2300A3B9' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center;background-size:1rem}.currency-selector select:hover{border-color:var(--brand-dark);box-shadow:0 4px 10px rgba(var(--brand-rgb),.2)}.currency-selector select:focus{outline:none;border-color:var(--brand-dark);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.15);background-color:#fff}.styled-field{width:120px;height:15px;padding:6px 12px;border:1px solid #ccc;border-radius:4px;background-color:#fff;min-height:15px;display:flex;align-items:center}.countdown-box{display:inline-block;background:linear-gradient(135deg,#8b0000,#8b0000)!important;color:#fff;padding:6px 12px;border-radius:6px;margin-right:10px}.countdown-text{font-weight:700}.time-remaining-label{color:#e63946!important;font-weight:700}.right-side{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.countdown-box{background:#e63946!important;color:#fff;padding:3px 12px;border-radius:15px;font-size:.9rem;font-weight:600}.button-area{display:inline-flex!important;flex-direction:column!important;align-items:flex-start!important}.table-controls>.button-area{flex:0 0 auto}.countdownreport-box{flex-direction:row;align-items:center;background:#e63946!important;color:#fff;padding:3px 12px;border-radius:15px;font-size:.9rem;font-weight:600;width:fit-content;gap:6px;margin-top:4px}.d-flex.flex-column.align-items-start{gap:10px!important}.sidebar-item{list-style:none}.sidebar-link{display:flex;align-items:center;padding:10px 15px;cursor:pointer;color:inherit}.sidebar-link:hover{background-color:var(--sidebar-item-hover)}.submenu{list-style:none;padding:2px 8px 4px 38px;margin:0}.submenu li{margin-bottom:0}.nav-menu .submenu li a{display:block;padding:5px 10px!important;color:var(--sidebar-fg-muted);text-decoration:none;font-size:.85rem;border-radius:6px;transition:background .2s,color .2s;transform:none!important}.nav-menu .submenu li a:hover{background-color:var(--sidebar-item-hover);color:var(--sidebar-fg)}.nav-menu .submenu li.active a{background-color:var(--sidebar-item-active);color:#fff;font-weight:600}.rotated{transform:rotate(180deg);transition:transform .3s}.termination,.after-termination{background-color:#fff!important;color:#000!important}.sub-tab-header{display:flex;border-bottom:2px solid #e6e6e6;background-color:#fafafa;margin-bottom:15px}.sub-tab-item{flex:1;text-align:center;padding:14px 0;font-weight:500;color:#555;cursor:pointer;transition:all .3s ease;border-bottom:3px solid transparent}.sub-tab-item:hover{background-color:#f3f7ff;color:var(--brand)}.active-sub-tab{color:var(--brand)!important;background-color:#fff;border-bottom:3px solid var(--brand);font-weight:600}.text-danger{display:block;margin-top:4px;font-size:12px}.vega-group-info{background:#fff;border-radius:20px;box-shadow:0 8px 32px rgba(var(--brand-rgb),.08),0 2px 8px #0000000f;padding:2rem 2.2rem;margin-bottom:1.5rem;border:1px solid rgba(var(--brand-rgb),.08)}.vgi-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.2rem;flex-wrap:wrap;margin-bottom:1.6rem;padding-bottom:1.4rem;border-bottom:1px solid #eef2f7}.vgi-title-block{display:flex;align-items:center;gap:1rem}.vgi-avatar{width:72px;height:72px;border-radius:16px;border:1px solid rgba(var(--brand-rgb),.12);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px rgba(var(--brand-rgb),.12);overflow:hidden;padding:0;background:#fff}.vgi-avatar-img{width:100%;height:100%;object-fit:cover;display:block;border-radius:16px}.vgi-avatar-fallback{display:none;width:100%;height:100%;align-items:center;justify-content:center;font-size:1.6rem;font-weight:700;color:var(--brand)}.vgi-title-block h2{font-size:1.5rem;font-weight:700;color:#132b4c;margin:0 0 4px;line-height:1.2}.vgi-desc{font-size:.88rem;color:#7a8fa6;margin:0;max-width:460px}.vgi-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.vgi-details{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.8rem 1.4rem;margin-bottom:1.8rem;padding-bottom:1.4rem;border-bottom:1px solid #eef2f7}.vgi-detail-item{display:flex;flex-direction:column;gap:3px}.vgi-detail-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#a0aec0}.vgi-detail-label i{margin-right:4px;color:var(--brand)}.vgi-detail-value{font-size:.92rem;font-weight:500;color:#2d3748}.vgi-stats,.stats-section{display:flex;flex-direction:row;gap:1rem;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#d1daea transparent}.vgi-stats::-webkit-scrollbar,.stats-section::-webkit-scrollbar{height:4px}.vgi-stats::-webkit-scrollbar-track,.stats-section::-webkit-scrollbar-track{background:transparent}.vgi-stats::-webkit-scrollbar-thumb,.stats-section::-webkit-scrollbar-thumb{background:#d1daea;border-radius:99px}.vgi-stats::-webkit-scrollbar-thumb:hover,.stats-section::-webkit-scrollbar-thumb:hover{background:#b0bcd4}.vgi-stats>.col-md-6,.vgi-stats>.col-md-12,.vgi-stats>[class*=col-],.stats-section>.col-md-6,.stats-section>.col-md-12,.stats-section>[class*=col-]{padding:0;margin:0;flex:1;min-width:180px}.stat-card:nth-child(6n+1),.vgi-stat-card:nth-child(6n+1){border-left-color:var(--brand)}.stat-card:nth-child(6n+2),.vgi-stat-card:nth-child(6n+2){border-left-color:#3b82f6}.stat-card:nth-child(6n+3),.vgi-stat-card:nth-child(6n+3){border-left-color:#f59e0b}.stat-card:nth-child(6n+4),.vgi-stat-card:nth-child(6n+4){border-left-color:#22c55e}.stat-card:nth-child(6n+5),.vgi-stat-card:nth-child(6n+5){border-left-color:#8b5cf6}.stat-card:nth-child(6n+6),.vgi-stat-card:nth-child(6n+6){border-left-color:#ef4444}.vgi-stat-icon{font-size:1.3rem;color:var(--brand);margin-bottom:.5rem}.vgi-stat-number{font-size:1.7rem;font-weight:700;color:#132b4c;line-height:1.1}.vgi-stat-number.text-red{color:#ef4444}.vgi-stat-number.text-green{color:#22c55e}.vgi-stat-number.text-blue{color:#3b82f6}.vgi-stat-number.text-orange{color:#f59e0b}.vgi-stat-number.text-purple{color:#8b5cf6}.vgi-stat-label{font-size:.72rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;display:flex;align-items:center;gap:6px;margin-bottom:2px}.badge-current{font-size:.65rem;font-weight:700;color:#f59e0b;background:#fef3c7;border-radius:4px;padding:1px 6px;letter-spacing:.02em;text-transform:uppercase}.vgi-stat-sub,.stat-card small{font-size:.75rem;color:#89a;line-height:1.8;display:flex;flex-wrap:wrap;gap:6px 14px}.stat-dot{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.stat-dot:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.stat-dot.dot-teal:before{background:var(--brand)}.stat-dot.dot-blue:before{background:#3b82f6}.stat-dot.dot-green:before{background:#22c55e}.stat-dot.dot-orange:before{background:#f59e0b}.stat-dot.dot-red:before{background:#ef4444}.stat-dot.dot-purple:before{background:#8b5cf6}.stat-dot.dot-gray:before{background:#94a3b8}@media (max-width: 1024px){.vgi-details{grid-template-columns:repeat(3,1fr)}.vgi-stats,.stats-section{gap:.8rem}.stat-card,.vgi-stat-card{min-width:160px}}@media (max-width: 768px){.vega-group-info{padding:1rem 1.1rem;border-radius:14px}.vgi-header{flex-direction:column;gap:.9rem}.vgi-title-block h2{font-size:1.2rem}.vgi-desc{font-size:.82rem}.vgi-avatar{width:48px;height:48px;font-size:1.3rem;border-radius:12px}.vgi-actions{width:100%;flex-wrap:wrap;gap:.4rem}.vgi-actions .btn,.vgi-actions .modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .vgi-actions .btn-save,.vgi-actions .modal-backdrop .modal .modal-actions .btn-cancel,.modal-backdrop .modal .modal-actions .vgi-actions .btn-cancel{font-size:.78rem;padding:.4rem .75rem}.vgi-details{grid-template-columns:1fr 1fr;gap:.6rem 1rem}.vgi-detail-label{font-size:.68rem}.vgi-detail-value{font-size:.85rem}.vgi-stats,.stats-section{overflow-x:auto;-webkit-overflow-scrolling:touch;gap:.7rem;padding-bottom:6px}.stat-card,.vgi-stat-card{min-width:155px;flex-shrink:0;padding:1rem 1.1rem}.stat-card h5,.stat-card .vgi-stat-label,.vgi-stat-card h5,.vgi-stat-card .vgi-stat-label{font-size:.68rem}.stat-card p.fs-4,.stat-card .vgi-stat-number,.vgi-stat-card p.fs-4,.vgi-stat-card .vgi-stat-number{font-size:1.4rem!important}.stat-card small,.stat-card .vgi-stat-sub,.vgi-stat-card small,.vgi-stat-card .vgi-stat-sub{font-size:.7rem;gap:4px 8px}.stat-dot{font-size:.7rem}.stat-dot:before{width:6px;height:6px}}@media (max-width: 480px){.vega-group-info{padding:.9rem 1rem}.vgi-details{grid-template-columns:1fr 1fr}.vgi-title-block{gap:.7rem}.stat-card,.vgi-stat-card{min-width:140px;padding:.85rem .9rem}.stat-card p.fs-4,.stat-card .vgi-stat-number,.vgi-stat-card p.fs-4,.vgi-stat-card .vgi-stat-number{font-size:1.25rem!important}}@media (max-width: 360px){.vgi-details{grid-template-columns:1fr}.vgi-actions .btn,.vgi-actions .modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .vgi-actions .btn-save,.vgi-actions .modal-backdrop .modal .modal-actions .btn-cancel,.modal-backdrop .modal .modal-actions .vgi-actions .btn-cancel{width:100%;justify-content:center}.stat-card,.vgi-stat-card{min-width:130px}}.user-card{background:#fff;border-radius:16px;padding:32px 40px;box-shadow:0 12px 32px #00000014;width:100%;margin:0 auto}.user-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.user-header{display:flex!important;align-items:center;gap:12px;margin-bottom:32px;border-bottom:1px solid #e5e7eb;padding-bottom:20px}.avatar{width:64px;height:64px;border-radius:50%;background-color:#132b4c;color:#fff;font-size:26px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-main-info{flex-direction:column!important;justify-content:center!important}.user-main-info h2{margin:0!important;line-height:1.2!important}.role-badge{display:inline-block;margin-top:6px;padding:6px 14px;background:#eef2ff;color:#4338ca;font-size:13px;border-radius:999px}.user-details{display:grid;grid-template-columns:repeat(3,1fr);gap:24px 32px;padding-bottom:20px}.detail-item{display:flex;flex-direction:column}.detail-item.full{grid-column:span 3}.label{font-size:.72rem;font-weight:600;color:#a0aec0;margin-bottom:6px;text-transform:uppercase;letter-spacing:.06em}.label i{margin-right:4px;color:var(--brand)}.value{font-size:.92rem;color:#2d3748;font-weight:500}.value small{color:#6b7280;font-weight:400}.table-container{overflow-x:auto;overflow-y:visible;width:100%}.download-overlay{position:fixed;inset:0;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center}.overlay-content{background:#fff;padding:32px 40px;border-radius:12px;text-align:center;min-width:280px}.spinner{width:48px;height:48px;border:5px solid #ddd;border-top:5px solid #0d6efd;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.employee-profile{max-width:600px;margin:20px auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.profile-title{text-align:center;margin-bottom:20px;color:#333;font-size:24px;font-weight:600}.profile-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:20px;transition:transform .2s}.profile-card:hover{transform:translateY(-5px)}.profile-info .profile-row{display:flex;justify-content:space-between;margin-bottom:10px;font-size:16px}.profile-info .label{font-weight:500;color:#555}.profile-info .value{font-weight:600;color:#111}.profile-additional{margin-top:20px;border-top:1px solid #eee;padding-top:15px;display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.info-item{display:flex;justify-content:space-between}.info-label{font-weight:500;color:#777}.info-value{font-weight:600;color:#222}.user-header{display:flex;align-items:center}.user-header .right-side{margin-left:auto}@media (max-width: 768px){.user-header .right-side{margin-left:0}}.overdue-row{background-color:#fcc;color:#a10000}.contract-overdue td{background-color:#ffe5e5!important;color:#b30000}.required-label:after{content:" *";color:red}.red-line{color:red;font-weight:700}.no-report{background-color:#ffe6e6}.peek-mode .nav-buttons{display:none}app-root>app-vega-ai{display:block;position:fixed;inset:0;width:100vw;height:100vh;z-index:9999}.nav-buttons{display:none}.dashboard-layout{--sidebar-w: 260px}.dashboard-layout.sidebar-collapsed{--sidebar-w: 64px}.fullview-nav{position:fixed;top:50%;transform:translate(-50%,-50%);z-index:50;width:40px;height:40px;border-radius:50%;border:none;background:#fff;box-shadow:0 2px 12px #0000002e;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#374151;font-size:.9rem;transition:all .15s ease}.fullview-nav:hover{background:var(--brand, #3b82f6);color:#fff;box-shadow:0 4px 16px #00000040}.fullview-nav:disabled{opacity:.35;cursor:not-allowed}.fullview-nav:disabled:hover{background:#fff;color:#374151;box-shadow:0 2px 12px #0000002e}.fullview-nav--prev{left:calc(var(--sidebar-w) + 32px)}.fullview-nav--next{left:min(100vw - 32px,var(--sidebar-w) + 32px + 1500px)}.peek-mode .fullview-nav{display:none}.record-counter{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#0000000d;color:#475569;font-size:.78rem;font-weight:500;letter-spacing:.02em;white-space:nowrap}.nav-buttons i{font-size:32px;color:var(--brand);cursor:pointer;transition:color .2s}.nav-buttons i:hover{color:var(--brand)}.no-report-badge{color:#842029;background-color:#f8d7da;border:1px solid #f5c2c7;padding:4px 8px;border-radius:4px;font-weight:600}.report-status-badge{padding:4px 8px;border-radius:4px;font-weight:600;font-size:.85rem;white-space:nowrap}.on-time-badge{color:#0f5132;background-color:#d1e7dd;border:1px solid #badbcc}.late-badge{color:#664d03;background-color:#fff3cd;border:1px solid #ffecb5}:host{display:flex;flex-direction:column;min-height:100%}.user-details{flex:1}.stats-wrapper{display:flex;gap:16px;margin-top:24px}.stat-card,.vgi-stat-card{background:#fff;border-radius:14px;border:1px solid #edf0f5;border-left:4px solid var(--brand);padding:1.2rem 1.4rem;box-shadow:0 2px 10px #0000000d;transition:transform .18s ease,box-shadow .18s ease;display:flex;flex-direction:column;gap:6px}.stat-card:hover,.vgi-stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 22px #00000017}.stat-card.accent-teal,.stat-card.accent-default,.vgi-stat-card.accent-teal,.vgi-stat-card.accent-default{border-left-color:var(--brand)}.stat-card.accent-green,.vgi-stat-card.accent-green{border-left-color:#22c55e}.stat-card.accent-red,.vgi-stat-card.accent-red{border-left-color:#ef4444}.stat-card.accent-blue,.vgi-stat-card.accent-blue{border-left-color:#3b82f6}.stat-card.accent-orange,.vgi-stat-card.accent-orange{border-left-color:#f59e0b}.stat-card.accent-purple,.vgi-stat-card.accent-purple{border-left-color:#8b5cf6}.stat-card.accent-yellow,.vgi-stat-card.accent-yellow{border-left-color:#eab308}.stat-card h5,.vgi-stat-card h5{font-size:.72rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin:0 0 4px}.stat-card p.fs-4,.vgi-stat-card p.fs-4{font-size:1.7rem!important;font-weight:700;color:#132b4c;margin:0 0 4px;line-height:1.1}.stat-card small,.vgi-stat-card small{font-size:.75rem;color:#89a;line-height:1.5}.dashboard-cards{padding:30px}.dashboard-cards h2{margin-bottom:25px;font-weight:600}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.card{background:#fff;border-radius:14px;padding:25px;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 12px #00000014}.card .card-icon{font-size:32px;color:var(--brand);margin-bottom:15px}.card h3{margin:10px 0;font-size:18px;font-weight:600}.card p{font-size:14px;color:#6b7280}.card:hover{transform:translateY(-5px);box-shadow:0 8px 18px #0000001f}.top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.logout-btn{background:#ff4d4f;color:#fff;border:none;padding:10px 14px;border-radius:10px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:8px}.logout-btn:hover{background:#ff2d2f}.dashboard-title{text-transform:uppercase}.title-wrapper{flex-shrink:1}.table-header h3{display:inline-block;margin:0}.modal-category{z-index:2000}.modal-backdrop-category{z-index:1999}.chart-container{width:100%;max-width:230px;height:230px;margin:0 auto}.category-row:hover{background-color:#e9ecef}.category-row i{transition:transform .2s ease}.category-row{transition:background-color .3s ease}.category-row.category-expanded td{background-color:#d1e7dd}.column-header-wrapper{position:relative}.column-header{display:flex;align-items:center;gap:5px;cursor:pointer}.filter-dropdown{position:fixed;background:#fff;border:1px solid #ccc;padding:10px;box-shadow:0 2px 10px #0003;z-index:9999;max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:5px;min-width:200px}.filter-dropdown label{display:flex;align-items:center;gap:5px}.filter-dropdown button{margin-top:5px;align-self:flex-start}.filter-badge{position:absolute;top:10px;right:.5px;width:11px;height:5px;background-color:var(--brand);border-radius:20%}.project-details-container{position:relative}.nav-buttons-inside{position:absolute;top:50%;left:0;right:0;display:flex;justify-content:space-between;padding:0 10px;pointer-events:none}.nav-buttons-inside i{font-size:2rem;color:var(--brand);cursor:pointer;pointer-events:auto;transition:transform .2s}.nav-buttons-inside i:hover{transform:scale(1.2)}.project-link{color:var(--brand);text-decoration:underline;cursor:pointer;font-weight:500}.project-link:hover{color:#007b8a}.custom-dropdown{width:250px;position:relative}.dropdown-header{padding:8px;cursor:pointer;background-color:#f1f1f1;border:1px solid #ccc}.dropdown-body{position:absolute;top:100%;left:0;width:100%;border:1px solid #ccc;background:#fff;max-height:200px;overflow-y:auto;z-index:9999;box-shadow:0 2px 5px #0003}.category{font-weight:700;padding:5px 8px;cursor:pointer;background-color:#eee}.category span{float:right}.process-list div{padding:4px 16px;cursor:pointer}.process-list div:hover{background-color:#ddd}.file-icon{cursor:pointer;color:var(--brand);font-size:18px;transition:.2s ease}.file-icon:hover{transform:scale(1.15);color:var(--brand-dark)}.progress-graph{display:flex;flex-direction:column;align-items:flex-start}.progress-graph .label{margin-bottom:10px;font-weight:600}.chart-container{width:250px}.main-tab{display:inline-block;padding:12px 18px;font-weight:700;font-size:21px;color:var(--brand)}.resizable-col{resize:horizontal;overflow:auto;min-width:180px;max-width:600px}.json-cell{max-width:550px;vertical-align:top}.json-wrapper{display:flex;flex-direction:column;gap:4px}.json-cell pre{white-space:pre-wrap;word-break:break-word;max-height:20px;overflow:auto;background:#f7f7f7;padding:6px;border-radius:6px;font-size:12px}.json-cell pre.expanded{max-height:200px}.json-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.json-modal{background:#fff;padding:1rem;border-radius:5px;width:50%;max-height:80%;display:flex;flex-direction:column}.json-modal-header{display:flex;justify-content:space-between;align-items:center}.json-modal-body{margin-top:1rem;overflow-y:auto;flex:1}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer}.notification-bell{position:relative;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--sidebar-item-active);color:var(--sidebar-fg);font-size:16px;margin-left:auto;flex-shrink:0;transition:background .2s ease,color .2s ease,transform .15s ease;border:1px solid var(--sidebar-border)}.notification-bell:hover{background:var(--sidebar-item-hover);color:var(--sidebar-fg);transform:scale(1.07)}.notification-bell:active{transform:scale(.95)}.notif-badge{position:absolute;top:-6px;right:-6px;background:#ec0707;color:#fff;font-size:10px;padding:2px;border-radius:50%}.notif-panel{width:380px;max-height:480px;background:#fff;border-radius:14px;box-shadow:0 12px 40px #00000024,0 0 0 1px #0000000a;z-index:2000;display:flex;flex-direction:column;animation:userMenuIn .12s ease-out}.notif-panel:before{content:"";position:absolute;bottom:10px;left:-6px;width:12px;height:12px;background:#fff;border-left:1px solid rgba(0,0,0,.08);border-bottom:1px solid rgba(0,0,0,.08);transform:rotate(45deg);z-index:1}.notif-panel__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid #f1f5f9;border-radius:14px 14px 0 0;background:#fff}.notif-panel__header-left{display:flex;align-items:center;gap:8px}.notif-panel__header-icon{font-size:.9rem;color:var(--brand, #132b4c)}.notif-panel__header-title{font-size:.95rem;font-weight:700;color:#0f172a}.notif-panel__badge{font-size:.7rem;font-weight:600;color:#fff;background:var(--brand, #132b4c);padding:2px 10px;border-radius:20px}.notif-panel__list{flex:1;overflow-y:auto;max-height:360px}.notif-panel__list::-webkit-scrollbar{width:4px}.notif-panel__list::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:2px}.notif-panel__item{display:flex;gap:12px;padding:14px 20px;cursor:pointer;transition:background .12s;border-bottom:1px solid #f8fafc}.notif-panel__item:hover{background:#f8fafc}.notif-panel__item:last-child{border-bottom:none}.notif-panel__item--unread{background:#f0f7ff}.notif-panel__item--unread:hover{background:#e8f2ff}.notif-panel__item-icon{width:36px;height:36px;border-radius:10px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notif-panel__item-icon i{font-size:.8rem;color:#64748b}.notif-panel__item--unread .notif-panel__item-icon{background:var(--brand, #132b4c)}.notif-panel__item--unread .notif-panel__item-icon i{color:#fff}.notif-panel__item-body{flex:1;min-width:0}.notif-panel__item-title{font-size:.82rem;font-weight:600;color:#0f172a;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-panel__item-desc{font-size:.78rem;color:#64748b;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notif-panel__item-time{font-size:.7rem;color:#94a3b8;margin-top:4px}.notif-panel__item-time i{margin-right:3px;font-size:.65rem}.notif-panel__empty{padding:40px 20px;text-align:center;color:#94a3b8}.notif-panel__empty i{font-size:2rem;display:block;margin-bottom:10px}.notif-panel__empty p{font-size:.85rem;margin:0}.notif-panel__footer{padding:12px 20px;border-top:1px solid #f1f5f9;text-align:center;border-radius:0 0 14px 14px;background:#fff}.notif-panel__footer a{font-size:.82rem;font-weight:600;color:var(--brand, #132b4c);text-decoration:none;transition:opacity .15s}.notif-panel__footer a i{margin-left:4px;font-size:.7rem}.notif-panel__footer a:hover{opacity:.7}.notif-page{max-width:900px;padding:28px 32px}.notif-page__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px;flex-wrap:wrap}.notif-page__header-left{display:flex;align-items:center;gap:14px}.notif-page__header-icon{font-size:1.4rem;color:var(--brand, #132b4c);background:#f0f4ff;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px}.notif-page__title{font-size:1.3rem;font-weight:700;color:#0f172a;margin:0}.notif-page__subtitle{font-size:.82rem;color:#94a3b8;margin:2px 0 0}.notif-page__search{position:relative;width:260px}.notif-page__search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:.82rem;pointer-events:none}.notif-page__search input{width:100%;padding:9px 12px 9px 36px;border:1px solid #e5e7eb;border-radius:8px;font-size:.85rem;color:#374151;background:#f9fafb;outline:none;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.notif-page__search input:focus{border-color:var(--brand, #132b4c);box-shadow:0 0 0 2px #132b4c14}.notif-page__tabs{display:flex;gap:4px;margin-bottom:16px;background:#f1f5f9;border-radius:10px;padding:4px;width:fit-content}.notif-page__tab{padding:7px 18px;border:none;background:transparent;border-radius:8px;font-size:.82rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:6px}.notif-page__tab:hover{color:#0f172a}.notif-page__tab--active{background:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 3px #0000000f}.notif-page__tab-badge{font-size:.68rem;font-weight:700;background:var(--brand, #132b4c);color:#fff;padding:1px 7px;border-radius:10px}.notif-page__list{display:flex;flex-direction:column;gap:6px}.notif-page__card{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;background:#fff;border:1px solid #f1f5f9;border-radius:12px;cursor:pointer;transition:background .12s,box-shadow .12s}.notif-page__card:hover{background:#f8fafc;box-shadow:0 2px 8px #0000000a}.notif-page__card--unread{background:#f8fbff;border-color:#e0ecff}.notif-page__card--unread:hover{background:#f0f6ff}.notif-page__card-icon{width:40px;height:40px;border-radius:10px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notif-page__card-icon i{font-size:.85rem;color:#64748b}.notif-page__card-icon--unread{background:var(--brand, #132b4c)}.notif-page__card-icon--unread i{color:#fff}.notif-page__card-body{flex:1;min-width:0}.notif-page__card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.notif-page__card-title{font-size:.88rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-page__card-time{font-size:.72rem;color:#94a3b8;white-space:nowrap;flex-shrink:0}.notif-page__card-time i{margin-right:3px}.notif-page__card-desc{font-size:.82rem;color:#64748b;line-height:1.5;margin:0}.notif-page__card-status{display:flex;align-items:center;padding-top:4px}.notif-page__card-dot{width:8px;height:8px;border-radius:50%;background:#e2e8f0;flex-shrink:0}.notif-page__card-dot--unread{background:var(--brand, #132b4c)}.notif-page__empty{padding:60px 20px;text-align:center;color:#94a3b8}.notif-page__empty i{font-size:2.5rem;display:block;margin-bottom:12px}.notif-page__empty p{font-size:.9rem;margin:0}.notif-page__pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px 0}.notif-page__page-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;color:#374151;transition:all .15s}.notif-page__page-btn:hover:not(:disabled){background:#f1f5f9}.notif-page__page-btn:disabled{opacity:.4;cursor:not-allowed}.notif-page__page-info{font-size:.82rem;color:#64748b;font-weight:500}.logs-page{max-width:1100px;padding:28px 32px}.logs-page__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px;flex-wrap:wrap}.logs-page__header-left{display:flex;align-items:center;gap:14px}.logs-page__header-icon{font-size:1.3rem;color:var(--brand, #132b4c);background:#f0f4ff;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px}.logs-page__title{font-size:1.3rem;font-weight:700;color:#0f172a;margin:0}.logs-page__subtitle{font-size:.82rem;color:#94a3b8;margin:2px 0 0}.logs-page__header-right{display:flex;align-items:center;gap:10px}.logs-page__search{position:relative;width:240px}.logs-page__search input{width:100%;padding:9px 12px 9px 36px;border:1px solid #e5e7eb;border-radius:8px;font-size:.85rem;color:#374151;background:#f9fafb;outline:none;box-sizing:border-box;transition:border-color .15s}.logs-page__search input:focus{border-color:var(--brand, #132b4c)}.logs-page__search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:.82rem;pointer-events:none}.logs-page__col-btn{padding:8px 14px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:.82rem;font-weight:500;color:#374151;cursor:pointer;transition:all .15s}.logs-page__col-btn i{margin-right:5px}.logs-page__col-btn:hover{background:#f1f5f9}.logs-page__tabs{display:flex;gap:4px;margin-bottom:16px;background:#f1f5f9;border-radius:10px;padding:4px;width:fit-content}.logs-page__tab{padding:7px 16px;border:none;background:transparent;border-radius:8px;font-size:.82rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:6px}.logs-page__tab:hover{color:#0f172a}.logs-page__tab--active{background:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 3px #0000000f}.logs-page__tab-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.logs-page__list{display:flex;flex-direction:column}.logs-page__entry{display:flex;gap:16px;position:relative}.logs-page__entry-indicator{display:flex;flex-direction:column;align-items:center;padding-top:20px;width:20px;flex-shrink:0}.logs-page__entry-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;z-index:1}.logs-page__entry-line{flex:1;width:2px;background:#e5e7eb;margin-top:4px}.logs-page__entry:last-child .logs-page__entry-line{display:none}.logs-page__entry-content{flex:1;background:#fff;border:1px solid #f1f5f9;border-radius:12px;padding:14px 18px;margin-bottom:8px;transition:box-shadow .12s}.logs-page__entry-content:hover{box-shadow:0 2px 8px #0000000a}.logs-page__entry-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.logs-page__entry-action{font-size:.68rem;font-weight:700;padding:2px 10px;border-radius:6px;letter-spacing:.03em}.logs-page__entry-table{font-size:.78rem;font-weight:600;color:#475569;background:#f1f5f9;padding:2px 8px;border-radius:4px}.logs-page__entry-id{font-size:.78rem;color:var(--brand, #132b4c);font-weight:600;cursor:pointer;text-decoration:none}.logs-page__entry-id:hover{text-decoration:underline}.logs-page__entry-id-plain{font-size:.78rem;color:#94a3b8;font-weight:500}.logs-page__entry-time{font-size:.72rem;color:#94a3b8;margin-left:auto;white-space:nowrap}.logs-page__entry-time i{margin-right:3px}.logs-page__entry-desc{font-size:.84rem;color:#475569;line-height:1.5;margin:0}.logs-page__entry-values{display:flex;gap:8px;margin-top:10px}.logs-page__val-btn{padding:4px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;background:#fff;transition:all .15s}.logs-page__val-btn i{margin-right:4px;font-size:.65rem}.logs-page__val-btn--old{color:#94a3b8}.logs-page__val-btn--old:hover{background:#f8fafc;border-color:#cbd5e1}.logs-page__val-btn--new{color:var(--brand, #132b4c)}.logs-page__val-btn--new:hover{background:#f0f4ff;border-color:var(--brand, #132b4c)}.logs-page__empty{padding:60px 20px;text-align:center;color:#94a3b8}.logs-page__empty i{font-size:2.5rem;display:block;margin-bottom:12px}.logs-page__empty p{font-size:.9rem;margin:0}.logs-page__pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px 0}.logs-page__page-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;color:#374151;transition:all .15s}.logs-page__page-btn:hover:not(:disabled){background:#f1f5f9}.logs-page__page-btn:disabled{opacity:.4;cursor:not-allowed}.logs-page__page-info{font-size:.82rem;color:#64748b;font-weight:500}.logs-modal-overlay{position:fixed;inset:0;background:#0006;z-index:3000;display:flex;align-items:center;justify-content:center;animation:userMenuIn .12s ease-out}.logs-modal{background:#fff;border-radius:14px;box-shadow:0 20px 60px #0003;max-width:600px;width:90%;max-height:70vh;display:flex;flex-direction:column;overflow:hidden}.logs-modal__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f1f5f9}.logs-modal__title{font-size:1rem;font-weight:700;color:#0f172a;margin:0}.logs-modal__close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:#f1f5f9;border-radius:8px;cursor:pointer;color:#64748b;transition:all .15s}.logs-modal__close:hover{background:#e2e8f0;color:#0f172a}.logs-modal__body{padding:20px;overflow-y:auto}.logs-modal__json{font-size:.8rem;font-family:JetBrains Mono,Fira Code,monospace;color:#334155;background:#f8fafc;padding:16px;border-radius:8px;border:1px solid #e5e7eb;margin:0;white-space:pre-wrap;word-break:break-word;line-height:1.6}.profile-page{max-width:860px;margin:0 auto;padding:28px 32px}.profile-page__card{background:#fff;border-radius:16px;border:1px solid #f1f5f9;box-shadow:0 1px 6px #0000000a;overflow:hidden;margin-bottom:20px}.profile-page__cover{height:120px;background:linear-gradient(135deg,var(--brand, #132b4c) 0%,#1e3a5f 100%);position:relative;display:flex;align-items:flex-end;justify-content:center}.profile-page__avatar{width:80px;height:80px;border-radius:50%;background:#fff;color:var(--brand, #132b4c);font-size:2rem;font-weight:700;display:flex;align-items:center;justify-content:center;border:4px solid #fff;box-shadow:0 4px 12px #0000001a;position:absolute;bottom:-40px;cursor:pointer;overflow:hidden}.profile-page__avatar:hover .profile-page__avatar-overlay{opacity:1}.profile-page__avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.profile-page__avatar-overlay{position:absolute;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;border-radius:50%}.profile-page__avatar-overlay i{color:#fff;font-size:1.1rem}.profile-page__photo-remove{position:absolute;bottom:-32px;right:calc(50% - 54px);width:24px;height:24px;border-radius:50%;background:#ef4444;color:#fff;border:2px solid #fff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.6rem;box-shadow:0 2px 6px #00000026;transition:transform .15s}.profile-page__photo-remove:hover{transform:scale(1.1)}.profile-page__identity{text-align:center;padding:48px 20px 20px}.profile-page__name{font-size:1.4rem;font-weight:700;color:#0f172a;margin:0 0 4px}.profile-page__email{font-size:.88rem;color:#94a3b8;margin:0 0 12px}.profile-page__role-badge{display:inline-block;background:#f0f4ff;color:var(--brand, #132b4c);font-size:.78rem;font-weight:600;padding:4px 14px;border-radius:20px}.profile-page__stats{display:flex;justify-content:center;gap:32px;padding:20px 24px 24px;border-top:1px solid #f1f5f9}.profile-page__stat{text-align:center}.profile-page__stat-value{display:block;font-size:1.3rem;font-weight:700;color:#0f172a}.profile-page__stat-label{font-size:.72rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;font-weight:500}.profile-page__details{display:flex;flex-direction:column;gap:16px}.profile-page__section{background:#fff;border-radius:14px;border:1px solid #f1f5f9;box-shadow:0 1px 4px #00000008;padding:24px}.profile-page__section-title{font-size:.92rem;font-weight:700;color:#0f172a;margin:0 0 18px;display:flex;align-items:center;gap:8px}.profile-page__section-title i{color:var(--brand, #132b4c);font-size:.88rem}.profile-page__toggle-btn{margin-left:auto;padding:4px 12px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;font-size:.76rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:5px}.profile-page__toggle-btn:hover{background:#f8fafc;border-color:#cbd5e1}.profile-page__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.profile-page__field{display:flex;flex-direction:column;gap:4px}.profile-page__field-label{font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.profile-page__field-value{font-size:.9rem;font-weight:500;color:#0f172a}.profile-page__hidden-msg{font-size:.84rem;color:#cbd5e1;margin:0}.profile-page__hidden-msg i{margin-right:6px}.profile-page__tabs{display:flex;gap:4px;margin-bottom:16px;background:#f1f5f9;border-radius:10px;padding:4px;width:fit-content}.profile-page__tab{padding:8px 18px;border:none;background:transparent;border-radius:8px;font-size:.82rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:6px}.profile-page__tab i{font-size:.78rem}.profile-page__tab:hover{color:#0f172a}.profile-page__tab--active{background:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 3px #0000000f}.profile-page__leave-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.profile-page__leave-card{display:flex;align-items:center;gap:14px;padding:16px 18px;background:#fafbfc;border:1px solid #f1f5f9;border-radius:12px;transition:box-shadow .12s}.profile-page__leave-card:hover{box-shadow:0 2px 8px #0000000a}.profile-page__leave-card-icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.profile-page__leave-card-value{display:block;font-size:1.2rem;font-weight:700;color:#0f172a}.profile-page__leave-card-label{font-size:.74rem;color:#94a3b8;font-weight:500}.profile-page__field-value--mono{font-family:JetBrains Mono,Fira Code,monospace;font-size:.95rem;font-weight:600}.profile-page__status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}@media (max-width: 640px){.profile-page{padding:16px}.profile-page__grid{grid-template-columns:1fr}.profile-page__stats{flex-wrap:wrap;gap:16px}}.sidebar-brand{display:flex;align-items:center;gap:8px;padding:10px 14px}@media (max-width: 1024px){.sidebar-brand{padding-top:52px}}.sidebar-icon{width:34px;height:34px;object-fit:contain;flex-shrink:0;filter:brightness(0) invert(1)}.brand-logo{width:42px;height:42px;border-radius:10px;background:linear-gradient(135deg,#4f46e5,#06b6d4);display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;box-shadow:0 4px 12px #0003}.brand-text{display:flex;flex-direction:column;line-height:1.1}.brand-company{font-size:.72rem;font-weight:500;color:var(--sidebar-fg);letter-spacing:.03em;margin-top:2px}.brand-title{font-size:20px;font-weight:600;color:var(--sidebar-fg);letter-spacing:.3px}.brand-subtitle{font-size:11px;color:#9ca3af}.cc-users-group{margin-top:15px}.cc-input-wrapper{position:relative;margin-bottom:5px}.cc-input{width:100%;padding:6px 10px;border-radius:4px;border:1px solid #ccc}.cc-search-results{border:1px solid #ccc;border-radius:4px;max-height:150px;overflow-y:auto;margin-top:2px;padding-left:0;list-style:none;background:#fff;box-shadow:0 2px 6px #0000001a}.cc-search-results li{padding:6px 10px;cursor:pointer;transition:background .2s}.cc-search-results li:hover{background:#f0f0f0}.cc-list{display:flex;flex-wrap:wrap;margin-top:5px;gap:5px}.cc-badge{background-color:var(--brand);color:#fff;border-radius:15px;padding:4px 10px;font-size:.85rem;display:flex;align-items:center;gap:5px}.cc-badge i{cursor:pointer;font-size:.9rem;transition:color .2s}.cc-badge i:hover{color:#ff4d4f}.description-col{width:300px;max-width:500px;word-wrap:break-word;white-space:normal}.comments-container{display:flex;flex-direction:column;gap:16px}.comment-item{background:#fff;border-radius:8px;padding:12px 16px;border:1px solid #e5e5e5}.comment-header{display:flex;align-items:center;gap:10px;font-size:14px;margin-bottom:6px}.comment-user{font-weight:600;color:#111}.comment-date{color:#777;font-size:12px}.comment-text{font-size:14px;color:#333;margin-bottom:8px}.comment-meta{display:flex;gap:15px;align-items:center;font-size:13px}.comment-link{color:var(--brand);text-decoration:none}.comment-link:hover{text-decoration:underline}.comment-status{background:#f1f3f5;padding:3px 8px;border-radius:5px;font-size:12px}.checkbox-inline{display:flex!important;align-items:center;flex-direction:row-reverse;gap:8px}.high-importance-badge{color:#dc3545;background-color:#f8d7da;padding:2px 6px;border-radius:4px;font-size:.6em;margin-left:8px}.overdue-task td{background-color:#f8d7da}.priority-badge{padding:3px 8px;border-radius:12px;color:#fff;font-weight:700;font-size:.85rem;display:inline-block;text-align:center}.priority-badge.low{background-color:#7dd680}.priority-badge.medium{background-color:#6da8d8}.priority-badge.high{background-color:#ce9e56}.priority-badge.critical{background-color:#dd655c}.row-has-lines td{background:#f0fbff!important}.row-has-lines:hover td{background:#e1f5fe!important}.row-expanded td{background:#e1f5fe!important;border-bottom:none!important}.lines-count-badge{display:inline-flex;align-items:center;gap:4px;margin-left:6px;padding:2px 8px;background:#e0f7fa;color:var(--brand-dark);border-radius:20px;font-size:.72rem;font-weight:700}.lines-count-badge i{font-size:.62rem}.report-lines-detail-row td{padding:0!important;background:#f0f9ff!important;border-bottom:2px solid var(--brand)!important}.report-lines-detail{padding:14px 20px 18px;border-top:1px solid #bae6fd}.report-lines-detail .lines-detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.report-lines-detail .lines-detail-header .lines-detail-info{display:flex;align-items:center;gap:8px;font-size:.83rem;color:#0369a1}.report-lines-detail .lines-detail-header .lines-detail-info i{font-size:.9rem}.report-lines-detail .lines-detail-header .lines-detail-info span{font-weight:500}.report-lines-detail .lines-detail-header .lines-detail-info .employee-name{color:#0c4a6e;font-weight:700}.report-lines-detail .lines-detail-header .lines-summary{display:flex;gap:8px}.report-lines-detail .lines-detail-header .lines-summary .summary-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;background:#fff;border:1px solid #bae6fd;border-radius:20px;font-size:.75rem;font-weight:600;color:#0369a1}.report-lines-detail .lines-detail-header .lines-summary .summary-chip i{font-size:.7rem}.report-lines-detail .lines-cards{display:flex;flex-wrap:wrap;gap:8px}.report-lines-detail .line-card{display:flex;align-items:flex-start;gap:10px;background:#fff;border:1px solid #e0f2fe;border-left:3px solid var(--brand);border-radius:8px;padding:10px 14px;min-width:200px;flex:1 1 200px;max-width:320px;transition:box-shadow .15s}.report-lines-detail .line-card:hover{box-shadow:0 2px 8px rgba(var(--brand-rgb),.15)}.report-lines-detail .line-card .line-card-num{width:22px;height:22px;background:#e0f7fa;color:var(--brand-dark);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:800;flex-shrink:0}.report-lines-detail .line-card .line-card-body{flex:1}.report-lines-detail .line-card .line-card-body .line-card-task{font-size:.85rem;font-weight:600;color:#1e3a5f;margin-bottom:4px}.report-lines-detail .line-card .line-card-body .line-card-meta{display:flex;gap:10px;font-size:.75rem;color:#64748b}.report-lines-detail .line-card .line-card-body .line-card-meta span{display:flex;align-items:center;gap:3px}.report-lines-detail .line-card .line-card-body .line-card-meta span i{font-size:.68rem;color:var(--brand)}.bulk-report-page{max-width:920px;margin:2rem auto;background:#fff;border-radius:14px;padding:2rem 2.25rem;box-shadow:0 4px 24px #00000012}.bulk-report-page .page-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.75rem;padding-bottom:1rem;border-bottom:2px solid #f0f2f5}.bulk-report-page .page-header h3{margin:0;font-size:1.35rem;font-weight:700;color:#1f2937}.bulk-report-page .page-header .report-date-badge{background:#e0f7fa;color:var(--brand-dark);font-size:.82rem;font-weight:600;padding:3px 10px;border-radius:20px;letter-spacing:.3px}.bulk-report-page .required{color:#e53e3e;margin-left:2px}.bulk-report-page .text-center{text-align:center}.bulk-report-page .top-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.25rem}@media (max-width: 600px){.bulk-report-page .top-fields{grid-template-columns:1fr}}.bulk-report-page .section-title{display:flex;align-items:center;gap:.5rem;margin:1.5rem 0 .75rem}.bulk-report-page .section-title span{font-size:.95rem;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.5px}.bulk-report-page .section-title:after{content:"";flex:1;height:1px;background:#e5e7eb}.bulk-report-page .report-lines-table{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.bulk-report-page .lines-grid{display:grid;grid-template-columns:32px 1fr 110px 100px 44px;gap:10px;align-items:center;padding:10px 14px}.bulk-report-page .col-num{text-align:center;font-size:.78rem;font-weight:600;color:#9ca3af}.bulk-report-page .lines-header{background:#f8fafc;border-bottom:2px solid #e5e7eb;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.bulk-report-page .line-row{border-bottom:1px solid #f3f4f6;padding-top:10px;padding-bottom:10px;transition:background .12s ease}.bulk-report-page .line-row:last-of-type{border-bottom:none}.bulk-report-page .line-row:hover{background:#fafbfc}.bulk-report-page .line-row .line-num{width:24px;height:24px;background:#e0f2fe;color:#0369a1;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;margin:0 auto}.bulk-report-page .line-col .wp-group{display:flex;flex-direction:column;gap:5px}.bulk-report-page .line-col .wp-group .task-pick{font-size:.75rem;padding:4px 8px;border:1px dashed #a5b4fc;border-radius:6px;background:#fafafa;color:var(--brand);cursor:pointer;transition:border-color .2s}.bulk-report-page .line-col .wp-group .task-pick:focus{outline:none;border-color:var(--brand)}.bulk-report-page .line-col input{width:100%;padding:7px 10px;border:1px solid #d1d5db;border-radius:7px;font-size:.85rem;background:#fff;color:#1f2937;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.bulk-report-page .line-col input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12)}.bulk-report-page .line-col input[readonly]{background:#f9fafb;color:#6b7280;cursor:default}.bulk-report-page .line-col input::placeholder{color:#c0c5cc}.bulk-report-page .col-action{display:flex;justify-content:center;align-items:center}.bulk-report-page .btn-remove{width:30px;height:30px;border:none;border-radius:50%;background:#fee2e2;color:#dc2626;font-size:.8rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .1s}.bulk-report-page .btn-remove:hover:not(:disabled){background:#fca5a5;transform:scale(1.1)}.bulk-report-page .btn-remove:disabled{opacity:.3;cursor:not-allowed}.bulk-report-page .total-row{background:#f0fdf4;border-top:2px solid #bbf7d0!important;padding:12px 14px}.bulk-report-page .total-row .total-label{font-size:.85rem;font-weight:800;color:#15803d;letter-spacing:.5px}.bulk-report-page .total-row .total-val{font-size:.9rem;font-weight:700;color:#166534}.bulk-report-page .lines-actions{margin-top:.85rem}.bulk-report-page .btn-add-line{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border:2px dashed var(--brand);border-radius:8px;background:transparent;color:var(--brand-dark);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s}.bulk-report-page .btn-add-line:disabled{border-color:#d1d5db;color:#9ca3af;cursor:not-allowed;opacity:.6}.bulk-report-page .btn-add-line span{font-size:1.1rem;font-weight:700;line-height:1}.bulk-report-page .btn-add-line:hover{background:#e0f7fa;color:#006064;border-color:var(--brand-dark)}.bulk-report-page .salary-section{margin-top:1.75rem;padding:1.1rem 1.4rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;border-left:4px solid var(--brand)}.bulk-report-page .salary-section .salary-title{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#64748b;margin-bottom:.85rem}.bulk-report-page .salary-section .salary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.85rem}.bulk-report-page .salary-section .salary-item label{display:block;font-size:.75rem;font-weight:600;color:#94a3b8;margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}.bulk-report-page .salary-section .salary-item input{width:100%;padding:7px 10px;border:1px solid #e2e8f0;border-radius:7px;background:#fff;font-size:.9rem;font-weight:600;color:#334155;cursor:default;box-sizing:border-box}.bulk-report-page .salary-section .salary-item.highlight input{background:#f0fdf4;border-color:#86efac;color:#166534}.bulk-report-page .form-actions{display:flex;gap:.75rem;margin-top:2rem;padding-top:1.25rem;border-top:1px solid #f0f2f5}.bulk-report-page .btn-submit{padding:10px 28px;background:var(--brand);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .2s,transform .1s;letter-spacing:.3px}.bulk-report-page .btn-submit:hover:not(:disabled){background:var(--brand-dark);transform:translateY(-1px)}.bulk-report-page .btn-submit:disabled{opacity:.65;cursor:not-allowed}.bulk-report-page .btn-anulo{padding:10px 20px;background:#fff;color:#6b7280;border:1.5px solid #d1d5db;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:border-color .2s,color .2s}.bulk-report-page .btn-anulo:hover{border-color:#9ca3af;color:#374151}@media (max-width: 768px){.bulk-report-page{margin:.75rem;padding:1.25rem 1rem;border-radius:10px}.bulk-report-page .page-header{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.bulk-report-page .page-header h3{font-size:1.1rem}.bulk-report-page .top-fields{grid-template-columns:1fr;gap:.75rem}.bulk-report-page .lines-header{display:none}.bulk-report-page .line-row.lines-grid{display:flex!important;flex-wrap:wrap;gap:8px;padding:12px;background:#fafafa;border-radius:8px;border:1px solid #e5e7eb;margin-bottom:8px;align-items:flex-start}.bulk-report-page .line-row.lines-grid .col-num{display:none}.bulk-report-page .line-row.lines-grid .line-col:nth-child(2){flex:0 0 100%;order:1}.bulk-report-page .line-row.lines-grid .line-col:nth-child(2) .wp-group{width:100%}.bulk-report-page .line-row.lines-grid .line-col:nth-child(2) .wp-group select.task-pick{width:100%;font-size:.85rem;padding:8px 10px;border-radius:7px}.bulk-report-page .line-row.lines-grid .line-col:nth-child(2) .wp-group input{width:100%;font-size:.85rem;padding:8px 10px;box-sizing:border-box}.bulk-report-page .line-row.lines-grid .line-col:nth-child(3){flex:1;order:2;min-width:80px}.bulk-report-page .line-row.lines-grid .line-col:nth-child(3):before{content:"Vol.";display:block;font-size:.7rem;color:#94a3b8;font-weight:600;margin-bottom:3px;text-transform:uppercase}.bulk-report-page .line-row.lines-grid .line-col:nth-child(4){flex:1;order:3;min-width:80px}.bulk-report-page .line-row.lines-grid .line-col:nth-child(4):before{content:"Or\eb";display:block;font-size:.7rem;color:#94a3b8;font-weight:600;margin-bottom:3px;text-transform:uppercase}.bulk-report-page .line-row.lines-grid .col-action{flex:0 0 auto;order:4;align-self:flex-end;margin-bottom:2px}.bulk-report-page .total-row.lines-grid{display:grid!important;grid-template-columns:1fr 1fr 40px;padding:10px 12px}.bulk-report-page .total-row.lines-grid .total-label{font-size:.82rem}.bulk-report-page .total-row.lines-grid .total-val{font-size:.85rem}.bulk-report-page .btn-add-line{width:100%;justify-content:center;padding:10px 16px}.bulk-report-page .salary-section{margin-top:1.25rem;padding:.9rem 1rem}.bulk-report-page .salary-section .salary-grid{grid-template-columns:1fr 1fr;gap:.65rem}.bulk-report-page .form-actions{flex-direction:column;gap:.6rem;margin-top:1.5rem}.bulk-report-page .form-actions .btn-submit,.bulk-report-page .form-actions .btn-anulo{width:100%;text-align:center;padding:11px 16px}}@media (max-width: 420px){.bulk-report-page{margin:.5rem;padding:1rem .75rem}.bulk-report-page .salary-section .salary-grid{grid-template-columns:1fr}}.edit-lines-section{margin-top:1rem}.edit-lines-section .edit-lines-title{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--brand);margin-bottom:10px}.edit-lines-section .edit-lines-title i{font-size:14px}.edit-lines-section .edit-lines-table{border:1px solid var(--brand);border-radius:10px;overflow:hidden;background:#fff}.edit-lines-section .edit-lines-grid{display:grid;grid-template-columns:32px 1fr 90px 70px 60px 36px;gap:6px;padding:8px 12px;align-items:center}.edit-lines-section .edit-lines-header{background:#f1f5f9;font-size:.75rem;font-weight:700;text-transform:uppercase;color:#64748b;letter-spacing:.5px;border-bottom:1px solid #e5e7eb}.edit-lines-section .edit-line-row{border-bottom:1px solid #f3f4f6}.edit-lines-section .edit-line-row:last-of-type{border-bottom:none}.edit-lines-section .edit-line-row input[type=text],.edit-lines-section .edit-line-row input[type=number]{width:100%;padding:6px 8px;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;background:#fafafa;transition:border-color .15s;box-sizing:border-box}.edit-lines-section .edit-line-row input[type=text]:focus,.edit-lines-section .edit-line-row input[type=number]:focus{outline:none;border-color:#6366f1;background:#fff}.edit-lines-section .edit-line-row .el-wp-select{width:100%;padding:5px 4px;border:1px solid #d1d5db;border-radius:6px;font-size:.78rem;background:#fafafa;box-sizing:border-box;min-width:0;max-width:100%}.edit-lines-section .edit-line-row .el-wp-select:focus{outline:none;border-color:#6366f1;background:#fff}.edit-lines-section .edit-line-row .el-num{width:24px;height:24px;border-radius:50%;background:#e0e7ff;color:var(--brand);font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center}.edit-lines-section .edit-line-row .el-action{display:flex;justify-content:center}.edit-lines-section .edit-line-row .el-action .btn-remove{width:26px;height:26px;border-radius:50%;border:none;background:#fee2e2;color:#dc2626;font-size:.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.edit-lines-section .edit-line-row .el-action .btn-remove:hover:not(:disabled){background:#fca5a5}.edit-lines-section .edit-line-row .el-action .btn-remove:disabled{opacity:.4;cursor:not-allowed}.edit-lines-section .edit-lines-total{background:#f0fdf4;border-top:2px solid #bbf7d0;font-size:.85rem}.edit-lines-section .edit-lines-total strong{color:#15803d}.edit-lines-section .btn-add-line{margin-top:10px;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:transparent;border:1.5px dashed #6366f1;color:var(--brand);border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.edit-lines-section .btn-add-line:hover:not(:disabled){background:#eef2ff}.edit-lines-section .btn-add-line:disabled{opacity:.45;cursor:not-allowed}.edit-salary-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-top:14px;padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.edit-salary-row .form-group{margin-bottom:0}.edit-salary-row .form-group label{font-size:.72rem;font-weight:700;text-transform:uppercase;color:#64748b;letter-spacing:.4px}.edit-salary-row .form-group input{width:100%;padding:6px 8px;border:1px solid #e2e8f0;border-radius:6px;font-size:.9rem;font-weight:600;color:#1e293b;background:#fff;box-sizing:border-box}.mt-1{margin-top:8px}.perm-page{padding:28px 32px;max-width:100%}.perm-page .perm-header{display:flex;align-items:center;gap:14px;margin-bottom:24px}.perm-page .perm-header:before{content:"\f3ed";font-family:"Font Awesome 5 Free";font-weight:900;font-size:1.3rem;color:var(--brand, #132b4c);background:#f0f4ff;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px}.perm-page .perm-header h2{font-size:1.3rem;font-weight:700;color:#0f172a;margin:0}.perm-page .perm-header .perm-subtitle{font-size:.82rem;color:#94a3b8;margin:2px 0 0}.perm-page .perm-layout{display:flex;gap:20px;align-items:stretch;flex:1;min-height:0;max-height:calc(100vh - 120px)}.perm-page .perm-users-panel{width:280px;flex-shrink:0;background:#fff;border:1px solid #f1f5f9;border-radius:14px;box-shadow:0 1px 4px #0000000a;overflow:hidden;display:flex;flex-direction:column}.perm-page .perm-users-panel .panel-title{padding:16px 18px 12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8}.perm-page .perm-users-panel .user-search{padding:0 14px 12px}.perm-page .perm-users-panel .user-search .search-input{width:100%;padding:9px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:.84rem;background:#f9fafb;box-sizing:border-box;outline:none;transition:border-color .15s}.perm-page .perm-users-panel .user-search .search-input:focus{border-color:var(--brand)}.perm-page .perm-users-panel .user-list{flex:1 1 0;height:0;overflow-y:auto;padding:4px 8px;max-height:none!important;border:none!important}.perm-page .perm-users-panel .user-list::-webkit-scrollbar{width:4px}.perm-page .perm-users-panel .user-list::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:2px}.perm-page .perm-users-panel .user-item{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;border-radius:10px;margin-bottom:2px;transition:all .12s}.perm-page .perm-users-panel .user-item:hover{background:#f8fafc}.perm-page .perm-users-panel .user-item.active{background:var(--brand, #132b4c)}.perm-page .perm-users-panel .user-item.active .user-avatar{background:#fff3}.perm-page .perm-users-panel .user-item.active .user-name{color:#fff}.perm-page .perm-users-panel .user-item .user-avatar{width:34px;height:34px;background:#f1f5f9;color:var(--brand, #132b4c);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;flex-shrink:0}.perm-page .perm-users-panel .user-item .user-name{font-size:.84rem;font-weight:600;color:#0f172a}.perm-page .perm-users-panel .empty-list{padding:24px;text-align:center;color:#94a3b8;font-size:.84rem}.perm-page .perm-matrix-panel{flex:1;min-width:0;min-height:0;background:#fff;border:1px solid #f1f5f9;border-radius:14px;box-shadow:0 1px 4px #0000000a;overflow:hidden;display:flex;flex-direction:column}.perm-page .no-user-selected{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:60px 20px;color:#94a3b8}.perm-page .no-user-selected .no-user-icon{font-size:2.5rem;margin-bottom:12px;opacity:.5}.perm-page .no-user-selected p{font-size:.88rem;text-align:center;margin:0}.perm-page .matrix-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f1f5f9;flex-wrap:wrap;gap:10px}.perm-page .matrix-header .selected-name{font-size:1.05rem;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:8px}.perm-page .matrix-header .selected-name:before{content:"";width:8px;height:8px;border-radius:50%;background:#10b981;flex-shrink:0}.perm-page .matrix-header .matrix-actions{display:flex;gap:8px}.perm-page .matrix-header .btn-reset{padding:8px 16px;border:1px solid #e5e7eb;background:#fff;color:#64748b;border-radius:8px;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s}.perm-page .matrix-header .btn-reset:hover{background:#f8fafc;border-color:#cbd5e1}.perm-page .matrix-header .btn-save{padding:8px 20px;background:var(--brand, #132b4c);color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s}.perm-page .matrix-header .btn-save:hover{box-shadow:0 2px 8px #0000001f}.perm-page .matrix-header .btn-save:disabled{opacity:.5;cursor:default}.perm-page .alert-success{margin:12px 20px;padding:10px 14px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#16a34a;font-size:.84rem}.perm-page .alert-error{margin:12px 20px;padding:10px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.84rem}.perm-page .loading-indicator{padding:30px;text-align:center;color:#94a3b8;font-size:.88rem}.perm-page .matrix-table-wrap{flex:1;overflow-x:auto;overflow-y:auto}.perm-page .matrix-table-wrap::-webkit-scrollbar{width:4px;height:6px}.perm-page .matrix-table-wrap::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:3px}.perm-page .matrix-table-wrap thead th{position:sticky;top:0;z-index:2;background:#fafbfc}.perm-page .matrix-table{width:100%;border-collapse:collapse;font-size:.84rem}.perm-page .matrix-table thead tr{border-bottom:1px solid #e5e7eb}.perm-page .matrix-table th{padding:12px 10px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;text-align:center;white-space:nowrap}.perm-page .matrix-table th.col-page{text-align:left;padding-left:20px;width:180px;color:#64748b}.perm-page .matrix-table th.col-toggle{width:60px}.perm-page .matrix-table th.col-action{width:64px}.perm-page .matrix-table tbody tr{border-bottom:1px solid #f8fafc;transition:background .1s}.perm-page .matrix-table tbody tr:hover{background:#fafbfc}.perm-page .matrix-table tbody tr:last-child{border-bottom:none}.perm-page .matrix-table td{padding:11px 10px;text-align:center}.perm-page .matrix-table td.col-page{text-align:left;padding-left:20px;font-weight:500;color:#334155;font-size:.84rem}.perm-page .matrix-table .perm-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--brand, #132b4c);border-radius:4px}.perm-page .matrix-table .na{color:#e2e8f0;font-size:.8rem}.perm-page .toggle-switch{position:relative;display:inline-block;width:38px;height:22px}.perm-page .toggle-switch input{display:none}.perm-page .toggle-switch .toggle-slider{position:absolute;inset:0;background:#e2e8f0;border-radius:22px;cursor:pointer;transition:background .2s}.perm-page .toggle-switch .toggle-slider:before{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #0000001a}.perm-page .toggle-switch input:checked+.toggle-slider{background:var(--brand, #132b4c)}.perm-page .toggle-switch input:checked+.toggle-slider:before{transform:translate(16px)}@media (max-width: 768px){.perm-page{padding:1rem}.perm-page .perm-layout{flex-direction:column;height:auto}.perm-page .perm-users-panel{width:100%;max-height:300px}}.table-responsive,.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}@media (max-width: 1024px){.table{width:100%}.monthly-timesheet-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}.user-details{grid-template-columns:repeat(2,1fr);gap:16px 20px}.detail-item.full{grid-column:span 2}}@media (max-width: 768px){.projects-header h2,.users-header h2,.report-header h2,.settings-container h2{font-size:1.3rem}.projects-header,.users-header,.report-header{flex-wrap:wrap;gap:8px;margin-bottom:1rem}.projects-container,.users-container,.monthly-reports-container,.daily-reports-container,.change-password-container,.project-details-container,.settings-container,.user-details-container,.monthly-timesheet-container,.monthly-timesheet-detail-container,.tasks-container,.task-details-container,.profile-details-container,.subsidiary-details-container,.comments-container{padding:1rem 1.2rem;border-radius:.8rem}.content{padding:1rem;margin:10px}.table-controls{flex-wrap:wrap;gap:8px}.table-controls input[type=text]{max-width:100%;width:100%}.btn,.modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .btn-cancel{font-size:.75rem;padding:5px 12px;gap:4px}.btn i,.modal-backdrop .modal .modal-actions .btn-save i,.modal-backdrop .modal .modal-actions .btn-cancel i{font-size:.78rem}.actions .btn,.actions .modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .actions .btn-save,.actions .modal-backdrop .modal .modal-actions .btn-cancel,.modal-backdrop .modal .modal-actions .actions .btn-cancel{font-size:.72rem;padding:4px 10px}.table th,.projects-container .table thead th,.users-container .table thead th,.monthly-reports-container .table thead th,.daily-reports-container .table thead th,.change-password-container .table thead th,.project-details-container .table thead th,.user-details-container .table thead th,.monthly-timesheet-container .table thead th,.monthly-timesheet-detail-container .table thead th,.tasks-container .table thead th,.task-details-container .table thead th,.profile-details-container .table thead th,.subsidiary-details-container .table thead th,.comments-container .table thead th,.container .table thead th{font-size:.75rem;padding:.55rem .7rem}.table td,.projects-container .table tbody td,.users-container .table tbody td,.monthly-reports-container .table tbody td,.daily-reports-container .table tbody td,.change-password-container .table tbody td,.project-details-container .table tbody td,.user-details-container .table tbody td,.monthly-timesheet-container .table tbody td,.monthly-timesheet-detail-container .table tbody td,.tasks-container .table tbody td,.task-details-container .table tbody td,.profile-details-container .table tbody td,.subsidiary-details-container .table tbody td,.comments-container .table tbody td,.container .table tbody td{font-size:.78rem;padding:.55rem .7rem}.modal-backdrop .modal{width:92%;padding:1.2rem}.modal{width:92%!important;max-width:100%;padding:1.2rem}.tab-header{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;white-space:nowrap;padding-bottom:2px}.sub-tab-header{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;white-space:nowrap;padding-bottom:4px}.user-details{grid-template-columns:1fr;gap:12px}.detail-item.full{grid-column:span 1}.dashboard-cards{padding:16px}.dashboard-cards h2{margin-bottom:16px;font-size:1.2rem}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.card{padding:16px}.card .card-icon{font-size:24px;margin-bottom:10px}.card h3{font-size:15px;margin:6px 0}.card p{font-size:12px}.json-modal{width:90%;max-height:85%}.vega-group-info{padding:1.2rem}.vega-group-info h2{font-size:1.4rem}.stats-wrapper{flex-direction:column;gap:10px;margin-top:16px}.report-lines-detail{padding:10px 12px 14px}.report-lines-detail .lines-detail-header{flex-direction:column;align-items:flex-start;gap:8px}.report-lines-detail .lines-detail-header .lines-summary{flex-wrap:wrap}.report-lines-detail .lines-cards{flex-direction:column}.report-lines-detail .line-card{max-width:100%;flex:1 1 100%}.bulk-report-modal{width:94%;padding:14px}}@media (max-width: 576px){.projects-header h2,.users-header h2,.report-header h2,.settings-container h2{font-size:1.1rem}.projects-header,.users-header,.report-header{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:.75rem}.projects-container,.users-container,.monthly-reports-container,.daily-reports-container,.change-password-container,.project-details-container,.settings-container,.user-details-container,.monthly-timesheet-container,.monthly-timesheet-detail-container,.tasks-container,.task-details-container,.profile-details-container,.subsidiary-details-container,.comments-container{padding:.85rem 1rem;border-radius:.6rem;margin:.5rem}.content{padding:.75rem;margin:6px}.btn,.modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .btn-cancel{font-size:.7rem;padding:4px 9px;gap:3px}.btn i,.modal-backdrop .modal .modal-actions .btn-save i,.modal-backdrop .modal .modal-actions .btn-cancel i{font-size:.72rem}.actions .btn,.actions .modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .actions .btn-save,.actions .modal-backdrop .modal .modal-actions .btn-cancel,.modal-backdrop .modal .modal-actions .actions .btn-cancel{font-size:.67rem;padding:3px 7px}.table th,.projects-container .table thead th,.users-container .table thead th,.monthly-reports-container .table thead th,.daily-reports-container .table thead th,.change-password-container .table thead th,.project-details-container .table thead th,.user-details-container .table thead th,.monthly-timesheet-container .table thead th,.monthly-timesheet-detail-container .table thead th,.tasks-container .table thead th,.task-details-container .table thead th,.profile-details-container .table thead th,.subsidiary-details-container .table thead th,.comments-container .table thead th,.container .table thead th{font-size:.7rem;padding:.45rem .6rem}.table td,.projects-container .table tbody td,.users-container .table tbody td,.monthly-reports-container .table tbody td,.daily-reports-container .table tbody td,.change-password-container .table tbody td,.project-details-container .table tbody td,.user-details-container .table tbody td,.monthly-timesheet-container .table tbody td,.monthly-timesheet-detail-container .table tbody td,.tasks-container .table tbody td,.task-details-container .table tbody td,.profile-details-container .table tbody td,.subsidiary-details-container .table tbody td,.comments-container .table tbody td,.container .table tbody td{font-size:.72rem;padding:.45rem .6rem}.table-controls{flex-direction:column;align-items:stretch;gap:8px}.table-controls input[type=text]{width:100%}.table-controls .button-area{width:100%;display:flex;flex-wrap:wrap;gap:6px}.table-controls .button-area button,.table-controls .button-area .btn,.table-controls .button-area .modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .table-controls .button-area .btn-save,.table-controls .button-area .modal-backdrop .modal .modal-actions .btn-cancel,.modal-backdrop .modal .modal-actions .table-controls .button-area .btn-cancel{flex:1 1 auto;justify-content:center;min-width:90px}.table-controls .pagination{justify-content:center}.edit-lines-section .edit-lines-grid{grid-template-columns:28px 1fr 70px 55px 50px 30px;gap:4px;padding:6px 8px}.edit-salary-row{grid-template-columns:1fr 1fr;gap:8px;padding:10px}.modal-backdrop .modal{width:96%;padding:1rem}.modal{width:96%!important;padding:1rem}.json-modal{width:97%;padding:.75rem;max-height:90%}}@media (max-width: 480px){.notification-list{max-height:calc(60vh - 95px)}.notification-item{padding:8px 12px}.notif-title{font-size:12px}.notif-desc{font-size:11px}.dashboard-cards{padding:10px}.cards-grid{grid-template-columns:1fr 1fr;gap:8px}.card{padding:12px}}@media (max-width: 420px){.edit-salary-row{grid-template-columns:1fr}}@media (max-width: 360px){.content{padding:.6rem;margin:6px}.projects-container,.users-container,.monthly-reports-container,.daily-reports-container,.change-password-container,.project-details-container,.settings-container,.user-details-container,.monthly-timesheet-container,.monthly-timesheet-detail-container,.tasks-container,.task-details-container,.profile-details-container,.subsidiary-details-container,.comments-container{padding:.65rem .75rem;margin:.4rem}.modal{padding:.9rem}.btn,.modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .btn-cancel{font-size:.72rem;padding:5px 10px}}.welcome-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.welcome-empty .welcome-illustration{width:260px;height:auto;margin-bottom:24px}.welcome-empty .welcome-title{font-size:1.6rem;font-weight:700;color:#1e293b;margin-bottom:10px}.welcome-empty .welcome-subtitle{font-size:1rem;color:#64748b;max-width:400px}.proj-pill-tabs{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.proj-pill-tab{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;border-radius:99px;font-size:.875rem;font-weight:600;cursor:pointer;border:1.5px solid #e5e7eb;background:#fff;color:#6b7280;transition:all .15s ease;white-space:nowrap;-webkit-user-select:none;user-select:none}.proj-pill-tab:hover{border-color:var(--brand);color:var(--brand)}.proj-pill-tab.active{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 2px 8px rgba(var(--brand-rgb),.25)}.proj-pill-tab.active .proj-pill-tab__count{background:#ffffff40;color:#fff}.proj-pill-tab__count{display:inline-block;background:#f1f5f9;color:#6b7280;border-radius:99px;padding:1px 8px;font-size:.72rem;font-weight:600}.actions-menu-wrapper{position:relative}.btn-actions{width:38px;height:38px;border-radius:50%!important;border:none;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;transition:background .15s,box-shadow .15s}.btn-actions:hover{background:var(--brand-hover, var(--brand));box-shadow:0 2px 8px rgba(var(--brand-rgb),.35)}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.actions-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0000001f;min-width:210px;z-index:200;overflow:hidden;animation:dropdownFadeIn .15s ease}.actions-dropdown.dropdown-up{top:auto;bottom:calc(100% + 6px)}.peek-back-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#334155;border:none;border-radius:8px;font-size:.85rem;font-weight:500;color:#fff;cursor:pointer;white-space:nowrap;transition:background .15s}.peek-back-btn:hover{background:#1e293b}.peek-back-btn i{font-size:.8rem}.actions-dropdown--fixed{position:fixed;z-index:9999}.actions-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 16px;border:none;background:none;text-align:left;font-size:.875rem;color:#1e293b;cursor:pointer;transition:background .12s}.actions-item i{width:14px;color:#64748b}.actions-item:hover{background:#f8fafc}.actions-item--danger,.actions-item--danger i{color:#dc2626}.actions-item--danger:hover{background:#fef2f2}.peek-backdrop{position:fixed;inset:0;background:#0f172a73;z-index:1000;animation:peekFadeIn .2s ease}.peek-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:72%;max-width:1000px;height:82vh;background:#fff;z-index:1001;display:flex;flex-direction:column;border-radius:12px;box-shadow:0 24px 60px #00000038;animation:peekScaleIn .2s cubic-bezier(.4,0,.2,1)}.peek-header{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:52px;background:var(--brand);flex-shrink:0;border-radius:12px 12px 0 0}.peek-header__title{color:#fff;font-size:.9rem;font-weight:600;display:flex;align-items:center;gap:8px;opacity:.9}.peek-header__title i{font-size:.85rem}.peek-header__actions{display:flex;align-items:center;gap:8px}.peek-btn{display:inline-flex;align-items:center;gap:6px;border:none;cursor:pointer;font-size:.82rem;font-weight:500;border-radius:6px;padding:6px 12px;transition:all .15s ease}.peek-btn--back{background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3)}.peek-btn--back:hover{background:#ffffff40}.peek-btn--full{background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3)}.peek-btn--full:hover{background:#ffffff40}.peek-btn--refresh{background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3)}.peek-btn--refresh:hover{background:#ffffff40}.peek-btn--close{background:#ffffff1a;color:#fff;width:32px;height:32px;padding:0;justify-content:center;border-radius:50%}.peek-btn--close:hover{background:#ffffff40}.peek-iframe{flex:1;width:100%;border:none}.pane--exit-left{animation:paneExitLeft .4s ease-out forwards}.pane--exit-right{animation:paneExitRight .4s ease-out forwards}.pane--enter-from-right{animation:paneEnterFromRight .4s ease-out}.pane--enter-from-left{animation:paneEnterFromLeft .4s ease-out}@keyframes paneExitLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-10px)}}@keyframes paneExitRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(10px)}}@keyframes paneEnterFromRight{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@keyframes paneEnterFromLeft{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.peek-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:40px;height:40px;border-radius:50%;border:none;background:#fff;box-shadow:0 2px 12px #0000002e;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#374151;font-size:.9rem;transition:all .15s ease}.peek-nav:hover{background:var(--brand, #3b82f6);color:#fff;box-shadow:0 4px 16px #00000040}.peek-nav--prev{left:-20px}.peek-nav--next{right:-20px}.peek-header__counter{font-size:.75rem;opacity:.7;font-weight:400;margin-left:4px}.dashboard-layout.peek-mode .content{margin:0!important;width:100%!important;padding:1rem;box-shadow:none;border-radius:0}.dashboard-layout.peek-mode .table-controls{flex-wrap:nowrap!important}.dashboard-layout.peek-mode .table-controls input[type=text]{width:auto!important;min-width:100px}@keyframes peekFadeIn{0%{opacity:0}to{opacity:1}}@keyframes peekScaleIn{0%{opacity:0;transform:translate(-50%,-48%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (max-width: 900px){.peek-panel{width:96%;height:90vh}}.proj-page{padding:28px 32px;font-family:Inter,Segoe UI,sans-serif}.proj-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.proj-topbar__title{font-size:1.6rem;font-weight:700;color:#0f172a;margin:0}.proj-topbar__right{display:flex;gap:10px}.proj-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;border:none;transition:all .15s ease;white-space:nowrap}.proj-btn i{font-size:.85rem}.proj-btn--primary{background:var(--brand);color:#fff}.proj-btn--primary:hover{background:var(--brand-hover);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--brand-rgb),.3)}.proj-btn--ghost{background:#fff;color:#374151;border:1px solid #e5e7eb}.proj-btn--ghost:hover{background:#f9fafb;border-color:var(--brand);color:var(--brand)}.proj-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.proj-stat-card{background:#fff;border-radius:14px;padding:20px 24px;display:flex;align-items:center;gap:18px;cursor:pointer;border:2px solid transparent;box-shadow:0 1px 4px #0000000f;transition:all .2s ease}.proj-stat-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.proj-stat-card--active{border-color:var(--brand);box-shadow:0 4px 20px rgba(var(--brand-rgb),.15);transform:translateY(-2px)}.proj-stat-card--active .proj-stat-card__num{color:var(--brand)}.proj-stat-card__icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}.proj-stat-card__icon--signed{background:#e0f2fe;color:#0284c7}.proj-stat-card__icon--ongoing{background:#d1fae5;color:#059669}.proj-stat-card__icon--suspended{background:#fef3c7;color:#d97706}.proj-stat-card__body{display:flex;flex-direction:column;gap:2px}.proj-stat-card__num{font-size:1.75rem;font-weight:700;color:#0f172a;line-height:1}.proj-stat-card__label{font-size:.8rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.proj-data-card{overflow:visible}.proj-data-card .proj-table-wrap{overflow-x:auto}.proj-data-card__toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f1f5f9}.proj-search{position:relative;width:188px;flex-shrink:1;min-width:80px}.proj-search__icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#9ca3af;font-size:.85rem;pointer-events:none}.proj-search__input{width:100%;box-sizing:border-box;padding:9px 12px 9px 36px;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;color:#374151;outline:none;transition:border-color .15s ease,box-shadow .15s ease;background:#f9fafb}.proj-search__input:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12);background:#fff}.proj-results-count{font-size:.8rem;color:#9ca3af;font-weight:500}.proj-toolbar-right{display:flex;align-items:center;gap:12px}.col-picker-wrapper{position:relative;overflow:visible}.col-picker-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:1050;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001f;padding:8px 0;min-width:220px;max-height:420px;overflow-y:auto;animation:dropdownFadeIn .15s ease}.col-picker-row{display:flex;align-items:center;justify-content:space-between;padding:6px 14px;gap:10px}.col-picker-row:hover{background:#f8fafc}.col-picker-check{display:flex;align-items:center;gap:8px;font-size:.875rem;color:#374151;cursor:pointer;flex:1;margin:0}.col-picker-check input[type=checkbox]{width:15px;height:15px;accent-color:var(--brand, #2d6a4f);cursor:pointer}.col-picker-drag-handle{cursor:grab;color:#9ca3af;font-size:.75rem;padding:2px 4px;display:flex;align-items:center}.col-picker-drag-handle:active{cursor:grabbing}.col-picker-panel.cdk-drop-list-dragging .col-picker-row:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.col-picker-row.cdk-drag-preview{display:flex;align-items:center;padding:6px 14px;gap:10px;background:#fff;border-radius:6px;box-shadow:0 5px 15px #00000026;font-size:.875rem;color:#374151}.col-picker-row.cdk-drag-placeholder{opacity:.4;background:#f0f4ff;border:1px dashed #94a3b8;border-radius:4px}.col-picker-row.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.proj-table{width:100%;border-collapse:collapse}.proj-table thead tr{background:var(--brand)}.proj-table thead th{color:#fff;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:13px 14px;text-align:left;white-space:nowrap;border:none}.proj-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background .12s ease}.proj-table tbody tr:hover{background:#f0fbfd}.proj-table tbody tr:last-child{border-bottom:none}.proj-cell{padding:12px 14px;font-size:.875rem;color:#374151;border:none;vertical-align:middle;text-align:left}.proj-cell--center{text-align:center}.proj-cell--name{font-weight:500;min-width:150px}.proj-cell--desc{max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#6b7280;font-size:.82rem}.proj-cell--date{white-space:nowrap;font-size:.82rem;color:#6b7280}.proj-deadline--overdue{color:#dc2626!important;font-weight:600}.proj-deadline--soon{color:#d97706!important;font-weight:600}.proj-name-link{color:#0f172a;text-decoration:none;font-weight:600;transition:color .15s ease}.proj-name-link:hover{color:var(--brand)}.proj-link{color:var(--brand);text-decoration:none;font-weight:500;transition:color .15s ease}.proj-link:hover{color:var(--brand-hover);text-decoration:underline}.proj-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:99px;padding:3px 10px;font-size:.75rem;font-weight:600}.proj-badge--emp{background:#e0f2fe;color:#0284c7;min-width:28px}.proj-badge--transfert{background:#d1fae5;color:#059669}.proj-badge--no-transfert{background:#f1f5f9;color:#64748b}.proj-empty{color:#d1d5db}.proj-empty-state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:60px 20px;color:#9ca3af}.proj-empty-state i{font-size:2.5rem}.proj-empty-state p{font-size:.95rem;margin:0}.proj-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;border-top:1px solid #f1f5f9}.proj-page-btn{width:34px;height:34px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;color:#374151;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.proj-page-btn:hover:not([disabled]){border-color:var(--brand);color:var(--brand)}.proj-page-btn[disabled]{opacity:.35;cursor:not-allowed}.proj-page-info{font-size:.85rem;color:#6b7280}@media (max-width: 768px){.proj-page{padding:16px}.proj-stats{grid-template-columns:1fr}.proj-topbar{flex-wrap:wrap;gap:12px}.proj-search{width:100%}}.dsh-page{padding:22px 32px;display:flex;flex-direction:column;gap:18px;background:#f4f6f9;height:calc(100vh - 40px);overflow:hidden;font-family:Inter,Segoe UI,sans-serif}.dsh-header{display:flex;align-items:center;justify-content:space-between;padding:4px 0 12px;gap:16px}.dsh-header__left{display:flex;flex-direction:column;gap:2px}.dsh-header__title{font-size:1.15rem;font-weight:700;color:#0f172a;margin:0}.dsh-header__title span{color:var(--brand)}.dsh-header__date{font-size:.8rem;color:#94a3b8;margin:0}.dsh-header__right{display:flex;align-items:center;gap:10px}.dsh-header__reports-link{display:inline-flex;align-items:center;gap:6px;background:none;color:#64748b;border:1px solid #e2e8f0;border-radius:7px;padding:6px 13px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.dsh-header__reports-link i{font-size:.75rem}.dsh-header__reports-link:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-xlight)}.erp-modal-overlay{position:fixed;inset:0;background:#00000073;z-index:1100;display:flex;align-items:center;justify-content:center;padding:20px}.erp-modal{background:#fff;border-radius:14px;width:100%;max-width:860px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 40px #0000002e;overflow:hidden}.erp-modal__header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #e5e7eb}.erp-modal__header h2{font-size:1.1rem;font-weight:700;color:#1a202c;margin:0;display:flex;align-items:center;gap:8px}.erp-modal__header h2 i{color:var(--brand)}.erp-modal__close{background:none;border:none;font-size:1.1rem;color:#9ca3af;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .2s}.erp-modal__close:hover{background:#f3f4f6;color:#374151}.erp-modal__body{overflow-y:auto;padding:20px 24px;flex:1}.erp-modal__loading,.erp-modal__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#9ca3af;padding:40px 0;font-size:.95rem}.erp-modal__loading i,.erp-modal__empty i{font-size:2rem}.erp-modal__loading p,.erp-modal__empty p{margin:0}.detail-section-title{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b7280;padding:0 0 10px;border-bottom:1px solid #f0f0f0;margin:20px 0 16px;grid-column:1/-1}.detail-section-title i{color:var(--brand);font-size:.85rem}.lead-section{margin-bottom:24px}.lead-section__title{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b7280;padding:0 0 10px;border-bottom:1px solid #f0f0f0;margin-bottom:16px}.lead-section__title i{color:var(--brand);font-size:.85rem}.lead-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}.lead-form-grid .form-group{grid-column:span 2;display:flex!important;flex-direction:column;gap:6px;margin-bottom:0!important;padding:0!important}.lead-form-grid .form-group label{font-size:.8rem;font-weight:600;color:#374151}.lead-form-grid .form-group .form-control,.lead-form-grid .form-group input,.lead-form-grid .form-group select,.lead-form-grid .form-group textarea{width:100%!important;box-sizing:border-box!important}.lead-form-grid .form-group.lead-form-grid--half{grid-column:span 1}.erp-status-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.76rem;font-weight:600}.erp-status-badge--present{background:#dcfce7;color:#15803d}.erp-status-badge--leave{background:#fef9c3;color:#92400e}.bc-customer-modal{max-width:720px;width:100%;max-height:85vh;overflow-y:auto;border-radius:14px;padding:0}.bc-customer-modal .bc-modal-header{display:flex;align-items:center;gap:16px;padding:22px 24px 18px;border-bottom:1px solid #e5e7eb;position:relative}.bc-customer-modal .bc-modal-header h2{margin:0;font-size:1.2rem;font-weight:700;color:#1a202c}.bc-customer-modal .bc-modal-avatar{width:48px;height:48px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:700;flex-shrink:0}.bc-customer-modal .bc-modal-number{font-size:.82rem;color:#6b7280;font-weight:500}.bc-customer-modal .bc-modal-close{margin-left:auto;background:none;border:none;font-size:1.1rem;color:#9ca3af;cursor:pointer;padding:4px 8px;border-radius:6px}.bc-customer-modal .bc-modal-close:hover{background:#f3f4f6;color:#374151}.bc-customer-modal .bc-modal-body{padding:20px 24px;display:flex;flex-direction:column;gap:20px}.bc-customer-modal .bc-section{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.bc-customer-modal .bc-section-title{background:#f9fafb;padding:10px 16px;font-size:.82rem;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;gap:8px}.bc-customer-modal .bc-section-title i{color:var(--brand)}.bc-customer-modal .bc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0}.bc-customer-modal .bc-field{display:flex;flex-direction:column;gap:3px;padding:12px 16px;border-bottom:1px solid #f3f4f6;border-right:1px solid #f3f4f6}.bc-customer-modal .bc-field:nth-child(2n){border-right:none}.bc-customer-modal .bc-field:last-child,.bc-customer-modal .bc-field:nth-last-child(2):nth-child(odd){border-bottom:none}.bc-customer-modal .bc-label{font-size:.74rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em}.bc-customer-modal .bc-value{font-size:.9rem;color:#1a202c;word-break:break-word}.erp-report-status-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.76rem;font-weight:600;white-space:nowrap}.erp-report-status-badge--ok{background:#dcfce7;color:#15803d}.erp-report-status-badge--late{background:#fff7ed;color:#c2410c}.erp-report-status-badge--missing{background:#fee2e2;color:#b91c1c}.erp-row-missing td{color:#9ca3af;font-style:italic}.erp-report-now-btn{display:inline-flex;align-items:center;gap:4px;background:var(--brand);color:#fff;border:none;border-radius:6px;padding:4px 12px;font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s}.erp-report-now-btn:hover{background:var(--brand-hover)}.dsh-kpi-row{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.dsh-kpi{display:flex;align-items:center;gap:11px;background:#fff;border-radius:9px;border:1px solid #eef0f3;padding:11px 15px;cursor:pointer;transition:box-shadow .14s ease,transform .14s ease;text-decoration:none;min-width:0}.dsh-kpi:hover{box-shadow:0 3px 12px #0f172a12;transform:translateY(-1px)}.dsh-kpi__icon{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}.dsh-kpi__icon--projects{background:#eff6ff;color:#3b82f6}.dsh-kpi__icon--users{background:#f0fdf4;color:#22c55e}.dsh-kpi__icon--tasks{background:#fefce8;color:#eab308}.dsh-kpi__icon--contracts{background:#f5f3ff;color:#8b5cf6}.dsh-kpi__body{display:flex;flex-direction:column;flex:1;min-width:0}.dsh-kpi__value{font-size:1.3rem;font-weight:700;color:#0f172a;line-height:1;letter-spacing:-.3px}.dsh-kpi__label{font-size:.72rem;color:#94a3b8;font-weight:500;margin-top:3px;white-space:normal;line-height:1.3}.dsh-kpi__arrow{color:#e9edf2;font-size:.68rem;transition:color .15s}.dsh-kpi:hover .dsh-kpi__arrow{color:var(--brand)}.dsh-workspace{display:grid;grid-template-columns:1fr 340px;gap:18px;align-items:stretch;flex:1;min-height:0;padding-top:6px;border-top:1px solid #f1f5f9}.dsh-panel__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 14px;padding:11px 16px 10px;border-bottom:1px solid #f4f6f8}.dsh-panel__header--sm{padding:10px 14px 9px}.dsh-panel__title{font-size:.82rem;font-weight:600;color:#334155}.dsh-tab-group{display:flex;gap:4px;background:#f8fafc;border:1px solid #e9edf2;border-radius:8px;padding:3px}.dsh-tab{display:flex;align-items:center;gap:5px;padding:4px 12px;border:none;background:none;border-radius:6px;font-size:.78rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .13s}.dsh-tab.active{background:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 3px #00000012}.dsh-tab__count{background:#e9edf2;color:#64748b;font-size:.67rem;font-weight:600;padding:1px 6px;border-radius:20px}.dsh-tab.active .dsh-tab__count{background:var(--brand-light);color:var(--brand)}.dsh-processes{background:#fff;border-radius:9px;border:1px solid #f1f4f7;overflow:hidden}.dsh-processes__toolbar{padding:8px 14px;border-bottom:1px solid #f8fafc;background:#fafbfc}.dsh-tasks-panel{background:#fff;border-radius:14px;border:1px solid #f1f5f9;box-shadow:0 1px 4px #00000008;overflow:hidden;display:flex;flex-direction:column;min-height:0}.dsh-tasks-list{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto}.dsh-tasks-list::-webkit-scrollbar{width:4px}.dsh-tasks-list::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:2px}.dsh-task-header{display:flex;align-items:center;padding:10px 20px;border-bottom:1px solid #e5e7eb;background:#fafbfc}.dsh-task-header__col{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8}.dsh-task-header__col--name{width:200px;min-width:0}.dsh-task-header__col--priority{width:80px;text-align:center}.dsh-task-header__col--due{width:120px}.dsh-task-header__col--company,.dsh-task-header__col--assignee{width:140px}.dsh-task-header__col--status{width:95px;text-align:center}.dsh-task-item{display:flex;align-items:center;padding:12px 20px;cursor:pointer;border-bottom:1px solid #f8fafc;transition:background .12s}.dsh-task-item:hover{background:#fafbfc}.dsh-task-item:last-child{border-bottom:none}.dsh-task-item__name{width:200px;min-width:0;display:flex;align-items:center;gap:10px}.dsh-task-item__priority-bar{width:3px;height:28px;border-radius:2px;flex-shrink:0}.dsh-task-item__title{font-size:.86rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dsh-task-item__priority-col{width:80px;text-align:center}.dsh-task-item__priority-badge{font-size:.7rem;font-weight:600;padding:2px 10px;border-radius:6px;display:inline-block}.dsh-task-item__due{width:120px;font-size:.78rem;color:#475569}.dsh-task-item__due i{margin-right:4px;color:#94a3b8;font-size:.7rem}.dsh-task-item__company,.dsh-task-item__assignee{width:140px;font-size:.78rem;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dsh-task-item__status-col{width:95px;text-align:center}.dsh-task-item__status{font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:20px;white-space:nowrap;display:inline-block}.dsh-task-item__na{color:#cbd5e1;font-size:.78rem}.dsh-panel__view-all{font-size:.78rem;font-weight:600;color:var(--brand, #132b4c);text-decoration:none;display:flex;align-items:center;gap:4px;transition:opacity .15s}.dsh-panel__view-all i{font-size:.68rem}.dsh-panel__view-all:hover{opacity:.7}.dsh-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:36px 20px;color:#cbd5e1;text-align:center}.dsh-empty i{font-size:1.5rem}.dsh-empty p{font-size:.82rem;color:#94a3b8;margin:0}.dsh-sidebar{display:flex;flex-direction:column;gap:14px}.dsh-report-card{background:#fff;border-radius:10px;border:1px solid #eef0f3;padding:16px 18px;transition:border-color .2s}.dsh-report-card--urgent{border-color:#fca5a5;background:#fff9f9}.dsh-report-card--urgent .dsh-report-card__countdown{color:#ef4444}.dsh-report-card__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:10px}.dsh-report-card__label{font-size:.76rem;color:#64748b;font-weight:500;display:flex;align-items:center;gap:6px}.dsh-report-card__label i{font-size:.7rem;color:var(--brand)}.dsh-report-card__btn{background:var(--brand);color:#fff;border:none;border-radius:7px;padding:5px 14px;font-weight:600;font-size:.78rem;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .15s}.dsh-report-card__btn:hover{background:var(--brand-hover);color:#fff}.dsh-report-card__countdown{font-size:1.6rem;font-weight:700;color:#0284c7;letter-spacing:.04em;font-variant-numeric:tabular-nums;line-height:1;margin-bottom:3px}.dsh-report-card__sub{font-size:.71rem;color:#94a3b8}.dsh-quick{background:#fff;border-radius:9px;border:1px solid #f1f4f7;overflow:hidden}.dsh-nav-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;padding:10px}.dsh-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:9px 6px;border-radius:7px;background:#f8fafc;border:1px solid transparent;cursor:pointer;transition:background .12s,border-color .12s;text-align:center}.dsh-nav-item:hover{background:var(--brand-xlight);border-color:rgba(var(--brand-rgb),.18)}.dsh-nav-item__icon{font-size:.95rem;color:var(--brand);opacity:.8}.dsh-nav-item__label{font-size:.66rem;font-weight:600;color:#475569;line-height:1.3}.dsh-empty-full{text-align:center;padding:60px 20px;color:#94a3b8}.dsh-empty-full i{font-size:2rem;color:#cbd5e1;display:block;margin-bottom:14px}.dsh-empty-full h2{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 6px}.dsh-empty-full p{font-size:.85rem;margin:0}.erp-progress-bar{display:flex;align-items:center;gap:8px;min-width:100px}.erp-progress-bar__fill{flex:1;height:5px;border-radius:99px;background:linear-gradient(90deg,var(--brand),#38bdf8);max-width:80px;transition:width .4s ease}.erp-progress-bar__fill--done{background:#22c55e}.erp-progress-bar__label{font-size:.76rem;color:#374151;font-weight:600;white-space:nowrap}@media (max-width: 1200px){.dsh-kpi-row{grid-template-columns:repeat(2,1fr)}.dsh-workspace{grid-template-columns:1fr;border-top:none}}@media (max-width: 640px){.dsh-page{padding:14px}.dsh-kpi-row{grid-template-columns:1fr}.dsh-header{flex-direction:column;align-items:flex-start}.dsh-nav-grid{grid-template-columns:repeat(3,1fr)}}.assets-summary-line{font-size:.8rem;color:#6b7280;padding:6px 0 10px;border-bottom:1px solid #e5e7eb;margin-bottom:0}.assets-group-section{margin-bottom:4px}.assets-group-header{display:flex;align-items:center;gap:8px;background:#f5f5f5;border:1px solid #e5e7eb;border-radius:4px;padding:8px 14px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.85rem;font-weight:600;color:#374151}.assets-group-header i{font-size:.75rem;color:#6b7280;width:12px}.assets-group-header:hover{background:#eee}.assets-group-name{flex:1}.assets-group-count{font-size:.78rem;font-weight:500;color:#6b7280;background:#e5e7eb;border-radius:10px;padding:1px 8px}.assets-group-table{border-top:none}.assets-group-table thead tr th:first-child{border-radius:0}.assets-group-section .table-responsive{border-radius:0 0 4px 4px;border:1px solid #e5e7eb;border-top:none}.assets-group-picker{min-width:150px}.assets-group-option{display:flex;align-items:center;gap:8px;padding:8px 14px;font-size:.85rem;color:#374151;cursor:pointer;border-radius:4px}.assets-group-option i{font-size:.78rem;color:#6b7280;width:14px}.assets-group-option:hover{background:#f3f4f6}.assets-group-option--active{font-weight:600;color:#2563eb}.assets-group-option--active i{color:#2563eb}.assets-sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.assets-sortable-th:hover{background:#f1f5f9}.assets-sort-icon{font-size:.65rem;margin-left:4px;opacity:.35}.assets-sort-icon.fa-sort-up,.assets-sort-icon.fa-sort-down{opacity:1;color:#2563eb}.assets-clickable-row{cursor:pointer}.assets-clickable-row:hover td{background:#f8fafc!important}.assets-filter-chips{display:flex;align-items:center;gap:8px;padding:8px 20px 4px;flex-wrap:wrap}.assets-chip{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;font-weight:500;padding:4px 12px;border-radius:20px;border:1px solid #e5e7eb;background:#f9fafb;color:#374151;cursor:pointer;transition:all .15s}.assets-chip i{font-size:.72rem}.assets-chip:hover{border-color:#9ca3af;background:#f3f4f6}.assets-chip--active{background:#eff6ff;border-color:#2563eb;color:#2563eb}.assets-chip--clear{color:#6b7280;border-color:transparent;background:transparent}.assets-chip--clear:hover{color:#ef4444}.assets-emp-badge{font-size:.78rem;font-weight:500;padding:2px 8px;border-radius:10px}.assets-emp-badge--assigned{background:#d1fae5;color:#065f46}.assets-emp-badge--unassigned{background:#f3f4f6;color:#9ca3af}.assets-page-size{font-size:.8rem;border:1px solid #e5e7eb;border-radius:6px;padding:4px 8px;color:#374151;background:#fff;cursor:pointer;margin-left:8px}.assets-page-size:focus{outline:none;border-color:#2563eb}.assets-detail-overlay{position:fixed;inset:0;background:#0000004d;z-index:1000;display:flex;justify-content:flex-end}.assets-detail-panel{width:420px;max-width:95vw;height:100vh;background:#fff;box-shadow:-4px 0 24px #0000001f;display:flex;flex-direction:column;animation:slideInRight .2s ease}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.assets-detail-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 20px 16px;border-bottom:1px solid #e5e7eb}.assets-detail-title{font-size:1rem;font-weight:700;color:#111827}.assets-detail-subtitle{font-size:.8rem;color:#6b7280;margin-top:2px}.assets-detail-close{background:none;border:none;cursor:pointer;color:#6b7280;font-size:1rem;padding:4px;border-radius:4px}.assets-detail-close:hover{background:#f3f4f6;color:#111827}.assets-detail-body{flex:1;overflow-y:auto;padding:20px}.assets-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px}.assets-detail-label{font-size:.72rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.assets-detail-value{font-size:.88rem;color:#111827;font-weight:500;word-break:break-word}.pd-tabs{display:flex!important;flex-wrap:wrap!important;gap:8px!important;padding-bottom:16px!important;border-bottom:2px solid #e5e7eb!important;margin-bottom:16px!important}.pd-tab{display:inline-flex!important;align-items:center!important;padding:8px 18px!important;border-radius:99px!important;border:1.5px solid #d1d5db!important;cursor:pointer!important;font-weight:600!important;font-size:13px!important;white-space:nowrap!important;text-decoration:none!important;background:#f9fafb!important;color:#4a5675!important;line-height:1.4!important;-webkit-user-select:none!important;user-select:none!important;transition:background .15s,color .15s!important}.pd-tab:hover{background:#e5e7eb!important}.pd-tab.active{background:#2d3748!important;color:#fff!important;border-color:#2d3748!important}.history-timeline{padding:8px 4px 8px 12px;display:flex;flex-direction:column;gap:0}.history-entry{display:flex;align-items:flex-start;gap:16px;position:relative;padding-bottom:28px}.history-entry:before{content:"";position:absolute;left:17px;top:34px;bottom:0;width:2px;background:linear-gradient(to bottom,#e2e8f0,transparent)}.history-entry:last-child{padding-bottom:4px}.history-entry:last-child:before{display:none}.history-dot{flex-shrink:0;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;margin-top:2px;box-shadow:0 2px 6px #0000001f;z-index:1}.history-dot--created{background:#ecfdf5;color:#16a34a;border:2px solid #bbf7d0}.history-dot--updated{background:#eff6ff;color:#2563eb;border:2px solid #bfdbfe}.history-dot--status{background:#fdf4ff;color:#9333ea;border:2px solid #e9d5ff}.history-dot--deleted{background:#fff1f2;color:#e11d48;border:2px solid #fecdd3}.history-dot--archived{background:#fef2f2;color:#b91c1c;border:2px solid #fecaca}.history-card{flex:1;background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.history-card__header{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#f9fafb;border-bottom:1px solid #f0f0f0;flex-wrap:nowrap}.history-card__body{padding:10px 14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.history-badge{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:20px}.history-badge--created{background:#dcfce7;color:#15803d}.history-badge--updated{background:#dbeafe;color:#1d4ed8}.history-badge--status{background:#f3e8ff;color:#7e22ce}.history-badge--deleted,.history-badge--archived{background:#fee2e2;color:#b91c1c}.history-meta{font-size:.8rem;color:#6b7280;display:flex;align-items:center;gap:5px;margin-left:0}.history-meta:last-child{margin-left:auto}.history-meta i{font-size:.75rem}.history-field{font-size:.82rem;font-weight:600;color:#374151;background:#f3f4f6;padding:3px 10px;border-radius:6px}.history-arrow{display:flex;align-items:center;gap:8px;font-size:.83rem}.history-arrow i{color:#9ca3af}.history-old{color:#9ca3af;text-decoration:line-through;font-style:italic}.history-new{color:#111827;font-weight:600}.history-new--archived{color:#b91c1c}.history-desc{font-size:.85rem;color:#374151;font-style:italic}.deal-chat{display:flex;flex-direction:column;height:520px;border-radius:10px;overflow:hidden;background:#f9fafb}.deal-chat__body{flex:1;overflow-y:auto;padding:20px 16px;display:flex;flex-direction:column;gap:16px;scroll-behavior:smooth}.deal-chat__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af;gap:10px;padding:40px 0}.deal-chat__empty i{font-size:2.5rem;opacity:.4}.deal-chat__empty p{font-size:.9rem;margin:0}.deal-chat__row{display:flex;align-items:flex-end;gap:10px}.deal-chat__row--own{flex-direction:row-reverse}.deal-chat__row--own .deal-chat__bubble{background:#2d3748;color:#fff;border-radius:18px 18px 4px}.deal-chat__row--own .deal-chat__time{text-align:right}.deal-chat__row--own .deal-chat__meta{flex-direction:row-reverse}.deal-chat__avatar{width:34px;height:34px;border-radius:50%;background:#e2e8f0;color:#2d3748;font-weight:700;font-size:.85rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;text-transform:uppercase}.deal-chat__avatar--own{background:#2d3748;color:#fff}.deal-chat__bubble-wrap{max-width:65%;display:flex;flex-direction:column;gap:4px}.deal-chat__sender{font-size:.75rem;font-weight:600;color:#6b7280;padding:0 4px}.deal-chat__bubble{background:#fff;border:1px solid #e5e7eb;border-radius:18px 18px 18px 4px;padding:10px 14px;box-shadow:0 1px 2px #0000000f;word-break:break-word}.deal-chat__bubble--deleted{background:#f3f4f6!important;border-color:#e5e7eb!important}.deal-chat__text{font-size:.9rem;line-height:1.5;white-space:pre-wrap}.deal-chat__deleted{font-size:.85rem;color:#9ca3af;font-style:italic;display:flex;align-items:center;gap:6px}.deal-chat__edited-tag{font-size:.7rem;color:#9ca3af;margin-left:6px;font-style:italic}.deal-chat__row--own .deal-chat__edited-tag{color:#fff9}.deal-chat__edited-tag--clickable{cursor:pointer;color:#6b7280;text-decoration:underline dotted}.deal-chat__edited-tag--clickable:hover{color:#2d3748}.deal-chat__row--own .deal-chat__edited-tag--clickable{color:#ffffffa6}.deal-chat__row--own .deal-chat__edited-tag--clickable:hover{color:#fff}.deal-chat__edit-history{margin-top:8px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;font-size:.8rem}.deal-chat__edit-history__title{padding:6px 10px;font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;background:#f3f4f6;border-bottom:1px solid #e5e7eb}.deal-chat__edit-history__item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:7px 10px;border-bottom:1px solid #f3f4f6}.deal-chat__edit-history__item:last-child{border-bottom:none}.deal-chat__edit-history__text{color:#374151;flex:1;white-space:pre-wrap}.deal-chat__edit-history__time{color:#9ca3af;font-size:.7rem;flex-shrink:0}.deal-chat__meta{display:flex;align-items:center;gap:6px;padding:0 4px}.deal-chat__time{font-size:.72rem;color:#9ca3af}.deal-chat__actions{display:flex;gap:4px;opacity:0;transition:opacity .15s}.deal-chat__row:hover .deal-chat__actions{opacity:1}.deal-chat__action-btn{background:none;border:none;padding:3px 5px;cursor:pointer;color:#9ca3af;font-size:.72rem;border-radius:4px;transition:color .15s,background .15s}.deal-chat__action-btn:hover{color:#2d3748;background:#f3f4f6}.deal-chat__action-btn--delete:hover{color:#e11d48;background:#fff1f2}.deal-chat__edit-input{width:100%;border:1px solid #d1d5db;border-radius:8px;padding:8px 10px;font-size:.9rem;resize:none;outline:none;background:#fff}.deal-chat__edit-input:focus{border-color:#2d3748}.deal-chat__edit-actions{display:flex;gap:6px;margin-top:6px}.deal-chat__edit-btn{font-size:.78rem;padding:4px 10px;border-radius:6px;border:none;cursor:pointer;font-weight:600}.deal-chat__edit-btn--save{background:#2d3748;color:#fff}.deal-chat__edit-btn--cancel{background:#f3f4f6;color:#6b7280}.deal-chat__footer{padding:12px 16px;background:#fff;border-top:1px solid #e5e7eb}.deal-chat__input-wrap{display:flex;align-items:flex-end;gap:10px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:12px;padding:8px 12px;transition:border-color .15s}.deal-chat__input-wrap:focus-within{border-color:#2d3748;background:#fff}.deal-chat__input{flex:1;border:none;background:transparent;resize:none;outline:none;font-size:.9rem;line-height:1.5;max-height:120px;overflow-y:auto;color:#111827}.deal-chat__input::placeholder{color:#9ca3af}.chat-mention{background:#dbeafe;color:#1d4ed8;border-radius:4px;padding:1px 5px;font-weight:700}.deal-chat__bubble--own .chat-mention{background:#ffffff4d;color:#fff}.chat-mention-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 4px 16px #0000001a;overflow:hidden;margin-bottom:6px}.chat-mention-dropdown__item{display:flex;align-items:center;gap:10px;padding:8px 14px;cursor:pointer;font-size:.88rem;color:#374151;transition:background .1s}.chat-mention-dropdown__item:hover,.chat-mention-dropdown__item.active{background:#f3f4f6}.chat-mention-dropdown__avatar{width:28px;height:28px;border-radius:50%;background:#2d3748;color:#fff;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;text-transform:uppercase}.deal-chat__attach-btn{background:none;border:none;color:#9ca3af;font-size:1rem;cursor:pointer;padding:4px 6px;border-radius:6px;flex-shrink:0;transition:color .15s}.deal-chat__attach-btn:hover{color:#2d3748}.deal-chat__attach-btn:disabled{opacity:.4;cursor:not-allowed}.chat-attachment-chip{display:flex;align-items:center;gap:8px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:6px 10px;margin-bottom:6px;font-size:.82rem;color:#1d4ed8}.chat-attachment-chip i{font-size:1rem;flex-shrink:0}.chat-attachment-chip__name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-attachment-chip__remove{background:none;border:none;cursor:pointer;color:#93c5fd;font-size:.75rem;padding:2px 4px;border-radius:4px}.chat-attachment-chip__remove:hover{color:#1d4ed8}.chat-upload-progress{font-size:.8rem;color:#6b7280;padding:4px 4px 6px;display:flex;align-items:center;gap:8px}.chat-upload-progress i{color:#2d3748}.chat-bubble-attachment{display:flex;align-items:center;gap:8px;background:#00000014;border-radius:8px;padding:8px 12px;margin-top:6px;text-decoration:none;color:inherit;transition:background .15s}.chat-bubble-attachment:hover{background:#00000024}.chat-bubble-attachment i:first-child{font-size:1.1rem;flex-shrink:0}.chat-bubble-attachment__name{flex:1;font-size:.82rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-bubble-attachment__dl{font-size:.75rem;opacity:.6;flex-shrink:0}.deal-chat__bubble--own .chat-bubble-attachment{background:#ffffff26;color:#fff}.deal-chat__bubble--own .chat-bubble-attachment:hover{background:#ffffff40}.deal-chat__send-btn{background:#2d3748;border:none;color:#fff;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.deal-chat__send-btn:hover{background:#1a202c}.deal-chat__send-btn:disabled{background:#d1d5db;cursor:not-allowed}.deal-chat__send-btn i{font-size:.85rem}.docs-tab{display:flex;flex-direction:column;gap:16px}.docs-header{display:flex;align-items:center;gap:10px}.docs-search-wrap{position:relative;flex:1;min-width:180px}.docs-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#9ca3af;font-size:.8rem}.docs-search-input{width:100%;padding:7px 10px 7px 30px;border:1px solid #e5e7eb;border-radius:8px;font-size:.85rem;outline:none}.docs-search-input:focus{border-color:#2d3748}.docs-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.docs-filter-chip{display:flex;align-items:center;gap:5px;padding:6px 12px;border:1px solid #e5e7eb;border-radius:20px;font-size:.78rem;color:#6b7280;cursor:pointer;background:#fff;transition:all .15s;-webkit-user-select:none;user-select:none}.docs-filter-chip.active{background:#fef3c7;border-color:#fcd34d;color:#92400e}.docs-filter-chip:hover{background:#f3f4f6}.docs-sort-btn{display:flex;align-items:center;gap:5px;padding:6px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:.78rem;color:#6b7280;background:#fff;cursor:pointer;transition:all .15s}.docs-sort-btn.active{border-color:#2d3748;color:#2d3748;font-weight:600}.docs-sort-btn:hover{background:#f3f4f6}.docs-upload-btn{display:flex;align-items:center;gap:6px;padding:7px 16px;background:#2d3748;color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.docs-upload-btn:hover{background:#1a202c}.docs-pinned{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:10px 14px}.docs-pinned__title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#92400e;margin-bottom:8px;display:flex;align-items:center;gap:6px}.docs-pinned__list{display:flex;flex-wrap:wrap;gap:8px}.docs-pinned__item{display:flex;align-items:center;gap:6px;padding:5px 12px;background:#fff;border:1px solid #fde68a;border-radius:20px;font-size:.8rem;color:#374151;text-decoration:none;transition:background .15s}.docs-pinned__item:hover{background:#fef3c7}.docs-pinned__item i{color:#f59e0b;font-size:.85rem}.docs-pinned__name{font-weight:600}.docs-pinned__ver{color:#9ca3af;font-size:.72rem}.docs-subtabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:2px solid #f3f4f6;padding-bottom:0}.docs-subtab{display:flex;align-items:center;gap:5px;padding:6px 14px;border-radius:8px 8px 0 0;font-size:.8rem;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s}.docs-subtab:hover{color:#2d3748;background:#f9fafb}.docs-subtab.active{color:#2d3748;font-weight:700;border-bottom-color:#2d3748;background:#fff}.docs-subtab__count{background:#f3f4f6;color:#6b7280;font-size:.68rem;font-weight:700;padding:1px 6px;border-radius:10px}.active .docs-subtab__count{background:#2d3748;color:#fff}.docs-list{display:flex;flex-direction:column;gap:4px;padding-top:4px}.docs-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 0;color:#9ca3af}.docs-empty i{font-size:2.5rem;opacity:.3}.docs-empty p{font-size:.9rem;margin:0}.docs-row{border:1px solid #e5e7eb;border-radius:10px;background:#fff;transition:box-shadow .15s}.docs-row:hover{box-shadow:0 2px 8px #00000012}.docs-row__main{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;gap:12px}.docs-row__left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.docs-row__icon{font-size:1.4rem;color:#6b7280;flex-shrink:0;width:24px;text-align:center}.docs-row__icon.fa-file-pdf{color:#e11d48}.docs-row__icon.fa-file-word{color:#2563eb}.docs-row__icon.fa-file-excel{color:#16a34a}.docs-row__icon.fa-file-image{color:#d97706}.docs-row__icon.fa-file-archive{color:#7c3aed}.docs-row__info{flex:1;min-width:0}.docs-row__name{font-size:.9rem;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.docs-row__meta{display:flex;align-items:center;gap:6px;margin-top:3px;flex-wrap:wrap}.docs-row__cat-badge{font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.03em}.docs-row__ver{font-size:.75rem;color:#6b7280;font-weight:600}.docs-row__dot{color:#d1d5db;font-size:.75rem}.docs-row__by{font-size:.75rem;color:#6b7280}.docs-row__date{font-size:.75rem;color:#9ca3af}.docs-row__pinned-tag{color:#f59e0b;font-size:.72rem}.docs-row__right{display:flex;align-items:center;gap:8px;flex-shrink:0}.docs-row__versions-btn{display:flex;align-items:center;gap:5px;background:#f3f4f6;border:none;border-radius:6px;padding:5px 10px;font-size:.75rem;color:#374151;cursor:pointer}.docs-row__versions-btn:hover{background:#e5e7eb}.docs-row__view-btn{display:flex;align-items:center;gap:5px;padding:5px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:.78rem;color:#374151;text-decoration:none;background:#fff;transition:all .15s}.docs-row__view-btn:hover{background:#f3f4f6}.docs-row__actions-wrap{position:relative}.docs-row__actions-btn{background:none;border:none;padding:5px 8px;cursor:pointer;color:#9ca3af;border-radius:6px}.docs-row__actions-btn:hover{background:#f3f4f6;color:#374151}.docs-actions-menu{position:absolute;right:0;top:calc(100% + 4px);background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 4px 16px #0000001a;z-index:100;min-width:180px}.docs-actions-menu__item{display:flex;align-items:center;gap:8px;width:100%;padding:9px 14px;font-size:.83rem;color:#374151;background:none;border:none;cursor:pointer;text-decoration:none;transition:background .1s}.docs-actions-menu__item:hover{background:#f3f4f6}.docs-actions-menu__item--danger{color:#e11d48}.docs-actions-menu__item--danger:hover{background:#fff1f2}.docs-actions-menu__item i{width:14px;text-align:center;color:#9ca3af}.docs-actions-menu__divider{height:1px;background:#f3f4f6;margin:2px 0}.docs-versions{border-top:1px solid #f3f4f6;background:#f9fafb;padding:8px 14px;display:flex;flex-direction:column;gap:2px}.docs-version-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:6px;font-size:.8rem}.docs-version-row:hover{background:#f3f4f6}.docs-version-row__label{font-weight:700;color:#374151;width:24px;flex-shrink:0}.docs-version-row__name{flex:1;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.docs-version-row__by,.docs-version-row__date{color:#9ca3af;flex-shrink:0}.docs-version-row__latest{font-size:.68rem;font-weight:700;padding:2px 7px;background:#dcfce7;color:#15803d;border-radius:10px;flex-shrink:0}.docs-version-row__view{color:#6b7280;text-decoration:none;padding:2px 6px;border-radius:4px}.docs-version-row__view:hover{color:#2d3748;background:#e5e7eb}.docs-modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172a73;backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding-top:5vh;overflow-y:auto}.docs-modal{background:#fff;border-radius:14px;width:480px;max-width:95vw;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0003;flex-shrink:0}.docs-modal__header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #e5e7eb}.docs-modal__header h3{margin:0;font-size:1rem;font-weight:700;color:#111827}.docs-modal__close{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:1rem;padding:4px}.docs-modal__close:hover{color:#374151}.docs-modal__body{padding:20px 22px;display:flex;flex-direction:column;gap:16px}.docs-modal__field{display:flex;flex-direction:column;gap:5px}.docs-modal__field label{font-size:.82rem;font-weight:600;color:#374151}.docs-modal__field .req{color:#e11d48}.docs-modal__field input,.docs-modal__field select{padding:8px 10px;border:1px solid #e5e7eb;border-radius:8px;font-size:.88rem;outline:none}.docs-modal__field input:focus,.docs-modal__field select:focus{border-color:#2d3748}.docs-modal__field input.invalid,.docs-modal__field select.invalid{border-color:#e11d48}.docs-modal__field small{color:#e11d48;font-size:.75rem}.docs-modal__toggle label{display:flex;align-items:center;gap:8px;font-size:.83rem;color:#374151;cursor:pointer}.docs-modal__toggle input[type=checkbox]{width:15px;height:15px;cursor:pointer}.docs-modal__footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid #e5e7eb}.docs-modal__btn{padding:8px 20px;border-radius:8px;border:none;font-size:.88rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px}.docs-modal__btn--cancel{background:#f3f4f6;color:#374151}.docs-modal__btn--cancel:hover{background:#e5e7eb}.docs-modal__btn--save{background:#2d3748;color:#fff}.docs-modal__btn--save:hover{background:#1a202c}.docs-dropzone{border:2px dashed #d1d5db;border-radius:10px;padding:28px 20px;text-align:center;cursor:pointer;transition:all .2s;background:#f9fafb}.docs-dropzone.dragging{border-color:#2d3748;background:#f0f4ff}.docs-dropzone.has-file{border-color:#16a34a;background:#f0fdf4}.docs-dropzone:hover{border-color:#9ca3af}.docs-dropzone__icon{font-size:2rem;color:#9ca3af;margin-bottom:8px;display:block}.docs-dropzone__icon--ok{color:#16a34a}.docs-dropzone__label{font-size:.88rem;color:#374151;margin:0 0 4px}.docs-dropzone__label span{color:#2563eb;font-weight:600}.docs-dropzone__hint{font-size:.75rem;color:#9ca3af;margin:0}.docs-cat-picker{display:flex;flex-wrap:wrap;gap:6px}.docs-cat-btn{padding:5px 14px;border:1px solid #e5e7eb;border-radius:20px;font-size:.78rem;background:#fff;color:#6b7280;cursor:pointer;font-weight:600;transition:all .15s}.docs-cat-btn:hover{background:#f3f4f6}.docs-cat-btn.active{border-color:transparent}.rlib-layout{display:flex;min-height:100vh;font-family:Inter,Segoe UI,sans-serif}.rlib-sidebar{width:220px;min-width:220px;background:#1e6e6e;padding:28px 0 32px;display:flex;flex-direction:column}.rlib-sidebar__title{font-size:1.1rem;font-weight:700;color:#ffffff80;padding:0 24px 20px;text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.rlib-sidebar__nav{display:flex;flex-direction:column;gap:2px}.rlib-sidebar__link{display:flex;align-items:center;gap:12px;padding:13px 24px;color:#ffffffd9;font-size:.95rem;font-weight:500;text-decoration:none;transition:background .15s;border-left:3px solid transparent}.rlib-sidebar__link i{width:16px;text-align:center;font-size:.9rem}.rlib-sidebar__link:hover{background:#ffffff1a;color:#fff}.rlib-sidebar__link--active{background:#ffffff26;color:#fff;border-left-color:#fff}.rlib-page{flex:1;padding:16px 36px 32px;font-family:Inter,Segoe UI,sans-serif;box-sizing:border-box}.rlib-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:44px;gap:20px;padding-bottom:4px}.rlib-header__text{display:flex;flex-direction:column;gap:5px}.rlib-header__title{font-size:1.75rem;font-weight:700;color:#0f172a;margin:0;letter-spacing:-.3px;line-height:1.2}.rlib-header__sub{font-size:.875rem;color:#94a3b8;margin:0}.rlib-cta{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--brand);color:#fff;border:none;border-radius:9px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .18s ease;white-space:nowrap;letter-spacing:.01em;box-shadow:0 1px 3px rgba(var(--brand-rgb),.14);align-self:center}.rlib-cta i{font-size:.78rem}.rlib-cta:hover{background:var(--brand-hover);box-shadow:0 3px 12px rgba(var(--brand-rgb),.28);transform:translateY(-1px)}.rlib-cta--sm{padding:7px 15px;font-size:.82rem;box-shadow:none}.rlib-section{margin-bottom:52px}.rlib-section__header{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.rlib-section__title{font-size:.78rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:7px}.rlib-section__title i{font-size:.75rem;color:#94a3b8}.rlib-section__title--secondary i{color:#cbd5e1}.rlib-section__count{background:#f8fafc;color:#94a3b8;font-size:.7rem;font-weight:600;padding:1px 7px;border-radius:20px}.rlib-recent-row{display:flex;gap:12px;flex-wrap:wrap}.rlib-recent-chip{display:flex;align-items:center;gap:10px;padding:9px 14px;background:#fff;border:1px solid #eef0f3;border-radius:9px;cursor:pointer;transition:box-shadow .15s ease,transform .15s ease;min-width:170px;flex:1;max-width:230px}.rlib-recent-chip:hover{box-shadow:0 2px 8px #0f172a0f;transform:translateY(-1px)}.rlib-recent-chip__icon{font-size:.8rem;width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:#f8fafc;border-radius:6px;flex-shrink:0}.rlib-recent-chip__info{display:flex;flex-direction:column;gap:2px;min-width:0}.rlib-recent-chip__name{font-size:.81rem;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rlib-recent-chip__time{font-size:.71rem;color:#b0b8c4}.rlib-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 1100px){.rlib-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.rlib-grid{grid-template-columns:1fr}}.rlib-card{background:#fff;border-radius:12px;border:1px solid #eef0f3;cursor:pointer;transition:box-shadow .14s ease,transform .14s ease;overflow:visible;min-height:160px}.rlib-card:hover{box-shadow:0 6px 22px #0f172a1c;transform:translateY(-1px)}.rlib-card:hover .rlib-card__menu-btn,.rlib-card:hover .rlib-card__star{opacity:1}.rlib-card--starred .rlib-card__star{opacity:1;color:#f59e0b}.rlib-card--shared{background:#fafbfc}.rlib-card--shared:hover{background:#fff}.rlib-card__body{padding:20px 20px 17px;display:flex;flex-direction:column;gap:0}.rlib-card__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.rlib-card__cat-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;opacity:.45}.rlib-card__top-actions{display:flex;align-items:center;gap:1px}.rlib-card__star{background:none;border:none;cursor:pointer;color:#d1d9e0;font-size:.75rem;padding:3px 5px;border-radius:5px;opacity:0;transition:color .15s,background .15s,opacity .15s;line-height:1}.rlib-card__star:hover{color:#f59e0b;background:#fef9ee}.rlib-card__star.active{color:#f59e0b;opacity:1}.rlib-card__menu-wrap{position:relative}.rlib-card__menu-btn{background:none;border:none;color:#b0b8c4;cursor:pointer;padding:3px 6px;border-radius:5px;font-size:.78rem;opacity:0;transition:color .15s,background .15s,opacity .15s;line-height:1}.rlib-card__menu-btn:hover{background:#f1f5f9;color:#475569;opacity:1}.rlib-card__menu{position:absolute;top:calc(100% + 4px);right:0;background:#fff;border-radius:10px;box-shadow:0 8px 28px #0f172a1c,0 0 0 1px #0f172a0d;padding:4px;min-width:170px;z-index:200}.rlib-card__menu-item{display:flex;align-items:center;gap:9px;width:100%;padding:8px 12px;border:none;background:none;color:#374151;font-size:.82rem;font-weight:500;cursor:pointer;border-radius:7px;text-align:left;transition:background .1s}.rlib-card__menu-item i{font-size:.74rem;color:#94a3b8;width:14px;text-align:center}.rlib-card__menu-item:hover{background:#f8fafc}.rlib-card__menu-item--danger,.rlib-card__menu-item--danger i{color:#dc2626}.rlib-card__menu-item--danger:hover{background:#fef2f2}.rlib-card__menu-divider{height:1px;background:#f1f5f9;margin:3px 8px}.rlib-card__name{font-size:.9rem;font-weight:600;color:#0f172a;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:6px}.rlib-card__desc{font-size:.79rem;color:#64748b;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1;margin-bottom:14px}.rlib-card__footer{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid #f8fafc}.rlib-card__badge{font-size:.67rem;font-weight:600;color:#94a3b8;background:#f8fafc;padding:2px 7px;border-radius:20px;text-transform:uppercase;letter-spacing:.03em}.rlib-card__time{font-size:.71rem;color:#b0b8c4;display:flex;align-items:center;gap:4px}.rlib-card__time i{font-size:.64rem}.rlib-empty{background:#fafbfc;border:1.5px dashed #e9edf2;border-radius:12px;padding:48px 24px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.rlib-empty i{font-size:1.75rem;color:#d1d9e0}.rlib-empty p{font-size:.85rem;color:#94a3b8;margin:0}.rlib-empty--sm{padding:32px 24px}.rlib-empty--sm i{font-size:1.3rem}.rlib-cat-picker{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}.rlib-cat-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;border:1px solid #e9edf2;background:#fff;color:#475569;font-size:.77rem;font-weight:500;cursor:pointer;transition:all .13s}.rlib-cat-btn i{font-size:.7rem}.rlib-cat-btn:hover{border-color:#94a3b8;background:#f8fafc}.rlib-cat-btn.active{border-color:var(--brand);background:var(--brand-light);color:var(--brand);font-weight:600}.rlib-page--kanban{display:flex;flex-direction:column;height:100%;overflow:hidden;padding-bottom:0}.content:has(.rlib-page--kanban){overflow:hidden!important}.content:has(app-tasks){overflow:hidden!important}.content:has(app-pipeline){overflow:hidden!important}.content:has(app-tasks-detail){overflow:hidden!important;display:flex;flex-direction:column;padding:0!important;min-height:0}app-tasks-detail{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden!important}app-tasks-detail .task-details-container,app-tasks-detail .task-info{overflow:hidden!important}.atm-modal{position:relative;background:#fff;border-radius:16px;width:96vw;max-width:660px;max-height:92vh;box-shadow:0 24px 64px #00000024,0 4px 16px #0000000f;overflow:hidden;display:flex;flex-direction:column}.atm-accent-bar{height:3px;background:linear-gradient(90deg,#00a3b9,#0090a5,#00b8d0);flex-shrink:0}.atm-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 12px;border-bottom:1px solid #f0f4f8;flex-shrink:0}.atm-header__left{display:flex;align-items:center;gap:8px}.atm-header__icon{width:28px;height:28px;border-radius:7px;background:linear-gradient(135deg,#00a3b9,#0090a5);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.72rem}.atm-header__title{font-size:.95rem;font-weight:700;color:#0f172a}.atm-close{background:none;border:none;cursor:pointer;color:#94a3b8;font-size:.9rem;width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;transition:background .12s,color .12s}.atm-close:hover{background:#f1f5f9;color:#0f172a}.atm-modal>form{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.atm-body{padding:16px 38px 8px 18px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;flex:1;min-height:0}.atm-hero-field{position:relative}.atm-hero-input{width:100%;border:none;border-bottom:2px solid #e2e8f0;border-radius:0;padding:6px 2px 8px;font-size:1.1rem;font-weight:600;color:#0f172a;background:transparent;outline:none;transition:border-color .15s;font-family:inherit}.atm-hero-input::placeholder{color:#c4cdd8;font-weight:500}.atm-hero-input:focus{border-color:#00a3b9}.atm-hero-input--invalid{border-color:#ef4444!important}.atm-row-2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}@media (max-width: 500px){.atm-row-2{grid-template-columns:1fr}}.atm-row-2.atm-row-2--narrow-left{grid-template-columns:.7fr 1fr;gap:0 78px;align-items:start}@media (max-width: 500px){.atm-row-2.atm-row-2--narrow-left{grid-template-columns:1fr}}.atm-row-2.atm-row-2--narrow-left>:nth-child(1){margin-top:21px}.atm-row-2.atm-row-2--narrow-left>:nth-child(2){margin-top:21px;margin-left:19px}.atm-field{display:flex;flex-direction:column;gap:4px}.atm-user-search-wrap{position:relative}.atm-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:.75rem;pointer-events:none}.atm-input--with-icon{padding-left:30px!important}.atm-user-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0000001a;max-height:190px;overflow-y:auto;z-index:200;list-style:none;padding:4px;margin:0}.atm-user-dropdown li{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;cursor:pointer;transition:background .1s}.atm-user-dropdown li:hover{background:#f1f5f9}.atm-dd-avatar{width:30px;height:30px;border-radius:8px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.82rem;flex-shrink:0;text-transform:uppercase}.atm-dd-info{display:flex;flex-direction:column;min-width:0}.atm-dd-name{font-size:.83rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.atm-dd-email{font-size:.71rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.atm-user-selected{display:flex;align-items:center;gap:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:8px 10px}.atm-user-avatar{width:36px;height:36px;border-radius:9px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;flex-shrink:0;text-transform:uppercase}.atm-user-info{display:flex;flex-direction:column;flex:1;min-width:0}.atm-user-name{font-size:.85rem;font-weight:600;color:#0f172a}.atm-user-email{font-size:.72rem;color:#94a3b8}.atm-user-clear{background:transparent;border:none;color:#cbd5e1;cursor:pointer;padding:4px;border-radius:5px;line-height:1;transition:color .12s,background .12s}.atm-user-clear:hover{color:#ef4444;background:#fef2f2}.atm-cc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.atm-cc-chip{display:inline-flex;align-items:center;gap:5px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;padding:3px 8px 3px 4px;font-size:.78rem;color:#475569;font-weight:500}.atm-cc-chip button{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:0;line-height:1;font-size:.68rem}.atm-cc-chip button:hover{color:#ef4444}.atm-cc-chip-avatar{width:20px;height:20px;border-radius:5px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.65rem;text-transform:uppercase;flex-shrink:0}.atm-label{font-size:.74rem;font-weight:700;color:#94a3b8;letter-spacing:.04em;text-transform:uppercase;display:flex;align-items:center;gap:5px}.atm-label i{font-size:.68rem}.atm-required{color:#ef4444}.atm-optional{font-weight:400;color:#c4cdd8;text-transform:none;letter-spacing:0;font-size:.72rem}.atm-input,.atm-select,.atm-textarea{width:100%;background:#f8fafc;border:1.5px solid #e8edf2;border-radius:8px;padding:7px 11px;font-size:.84rem;color:#0f172a;font-family:inherit;outline:none;transition:border-color .15s,background .15s,box-shadow .15s}.atm-input:focus,.atm-select:focus,.atm-textarea:focus{background:#fff;border-color:#00a3b9;box-shadow:0 0 0 3px #00a3b91a}.atm-input--invalid,.atm-select--invalid,.atm-textarea--invalid{border-color:#ef4444!important}.atm-input::placeholder,.atm-select::placeholder,.atm-textarea::placeholder{color:#b8c4cf}.atm-textarea{resize:none;line-height:1.5}.atm-select{cursor:pointer}.atm-priority-group{display:flex;gap:6px}.atm-priority-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;border:1.5px solid #e8edf2;border-radius:8px;padding:6px 4px;font-size:.78rem;font-weight:600;cursor:pointer;background:#f8fafc;color:#94a3b8;transition:all .14s}.atm-priority-btn .atm-priority-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.atm-priority-btn:hover{background:#f1f5f9;color:#64748b}.atm-priority-btn--low.active{background:#f0fdf4;color:#16a34a;border-color:#86efac}.atm-priority-btn--medium.active{background:#fffbeb;color:#d97706;border-color:#fcd34d}.atm-priority-btn--high.active{background:#fff7ed;color:#ea580c;border-color:#fdba74}.atm-priority-btn--critical.active{background:#fef2f2;color:#dc2626;border-color:#fca5a5}.atm-error{font-size:.74rem;color:#ef4444;display:flex;align-items:center;gap:4px}.atm-error i{font-size:.68rem}.atm-file-chip{display:flex;align-items:center;gap:6px;padding:4px 9px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;font-size:.78rem;color:#0369a1}.atm-file-chip span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.atm-file-chip i:first-child{font-size:.68rem;flex-shrink:0}.atm-file-chip__remove{cursor:pointer;color:#7cb8d4;font-size:.65rem;flex-shrink:0}.atm-file-chip__remove:hover{color:#0369a1}.atm-upload-zone{border:1.5px dashed #d1dae3;border-radius:8px;height:62px;display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;color:#b0bcc8;font-size:.8rem;font-weight:500;transition:border-color .14s,color .14s,background .14s}.atm-upload-zone i{font-size:.95rem}.atm-upload-zone:hover{border-color:#00a3b9;color:#00a3b9;background:#f0fafb}.atm-dropzone{border:1.5px dashed #d1dae3;border-radius:10px;padding:18px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;text-align:center;transition:border-color .14s,background .14s}.atm-dropzone__icon{font-size:1.6rem;color:#b0bcc8;margin-bottom:2px}.atm-dropzone__label{font-size:.83rem;color:#6b7280}.atm-dropzone__browse{color:#00a3b9;font-weight:600;text-decoration:underline}.atm-dropzone__hint{font-size:.73rem;color:#b0bcc8}.atm-dropzone:hover,.atm-dropzone--dragging{border-color:#00a3b9;background:#f0fafb}.atm-dropzone:hover .atm-dropzone__icon,.atm-dropzone--dragging .atm-dropzone__icon{color:#00a3b9}.atm-attach-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.atm-attach-card{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;background:#fafafa}.atm-attach-card__top{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f3f4f6;border-bottom:1px solid #e5e7eb}.atm-attach-card__icon{color:#6b7280;font-size:.9rem;flex-shrink:0}.atm-attach-card__filename{flex:1;font-size:.82rem;font-weight:600;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.atm-attach-card__size{font-size:.72rem;color:#9ca3af;flex-shrink:0}.atm-attach-card__remove{background:none;border:none;cursor:pointer;color:#9ca3af;font-size:.78rem;padding:2px 4px}.atm-attach-card__remove:hover{color:#ef4444}.atm-attach-card__fields{padding:10px 12px;display:flex;flex-direction:column;gap:8px}.atm-attach-card__name-input{width:100%;border:1px solid #e5e7eb;border-radius:6px;padding:6px 10px;font-size:.82rem;color:#374151;outline:none;box-sizing:border-box}.atm-attach-card__name-input:focus{border-color:#00a3b9}.atm-attach-card__cats{display:flex;flex-wrap:wrap;gap:5px}.atm-cat-btn{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:20px;padding:3px 10px;font-size:.73rem;font-weight:500;color:#6b7280;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.atm-cat-btn:hover{border-color:#00a3b9;color:#00a3b9}.atm-cat-btn.active{background:#e0f5f8;border-color:#00a3b9;color:#00a3b9;font-weight:700}.atm-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid #f0f4f8;background:#fafbfc;flex-shrink:0}.atm-btn-cancel{background:none;border:1.5px solid #e2e8f0;border-radius:8px;padding:7px 16px;font-size:.83rem;font-weight:600;color:#64748b;cursor:pointer;transition:background .12s,border-color .12s;font-family:inherit}.atm-btn-cancel:hover{background:#f1f5f9;border-color:#cbd5e1}.atm-btn-save{background:linear-gradient(135deg,#00a3b9,#0090a5);border:none;border-radius:8px;padding:7px 20px;font-size:.83rem;font-weight:700;color:#fff;cursor:pointer;display:flex;align-items:center;gap:7px;transition:opacity .12s,box-shadow .12s;font-family:inherit;box-shadow:0 2px 8px #00a3b94d}.atm-btn-save:hover{opacity:.9;box-shadow:0 4px 14px #00a3b966}.atm-btn-save i{font-size:.75rem}app-tasks>.rlib-page,app-pipeline>.rlib-page{display:flex;flex-direction:column;height:100%;overflow:hidden;padding-bottom:0}app-tasks>.rlib-page>.rlib-section:not(.rlib-section--kanban),app-pipeline>.rlib-page>.rlib-section:not(.rlib-section--kanban){flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.rlib-section--kanban{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:0}.tsk-sticky-header{position:sticky;top:0;z-index:100;background:#f4f6f9;padding-bottom:4px;margin-bottom:4px}.tsk-col-picker-inline{margin-top:4px}.tsk-archive-section-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;padding:12px 4px 4px}.tsk-sub-tabs-row{display:flex;align-items:center;gap:2px;padding:4px 0 2px;border-top:1px solid #eef0f3;flex-wrap:wrap}.tsk-sub-tab{display:inline-flex;align-items:center;gap:5px;padding:3px 12px;border:none;background:none;border-radius:6px;font-size:.78rem;font-weight:500;color:#64748b;cursor:pointer;transition:background .13s,color .13s;white-space:nowrap}.tsk-sub-tab:hover{background:#f1f5f9;color:#0f172a}.tsk-sub-tab.active{background:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 4px #00000014}.tsk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:6px;flex-wrap:wrap}.tsk-view-tabs{display:flex;gap:2px;background:#f1f5f9;border-radius:10px;padding:3px}.tsk-view-tab{display:inline-flex;align-items:center;gap:6px;padding:5px 15px;border:none;background:none;border-radius:8px;font-size:.82rem;font-weight:500;color:#64748b;cursor:pointer;transition:background .13s,color .13s,box-shadow .13s;white-space:nowrap}.tsk-view-tab.active{background:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 4px #00000014}.tsk-view-tab__badge{background:#e2e8f0;color:#64748b;font-size:.67rem;font-weight:600;padding:1px 7px;border-radius:20px;line-height:1.6}.tsk-view-tab.active .tsk-view-tab__badge{background:var(--brand-light);color:var(--brand)}.tsk-toolbar__right{display:flex;align-items:center;gap:12px;flex-shrink:1;min-width:0}.tsk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:4px}.tsk-card{background:#fff;border:1px solid #eef0f3;border-radius:12px;display:flex;flex-direction:column;gap:7px;padding:14px 16px 12px;text-decoration:none;color:inherit;min-height:148px;cursor:pointer;transition:box-shadow .14s,transform .14s}.tsk-card:hover{box-shadow:0 6px 22px #0f172a1a;transform:translateY(-1px)}.tsk-card--overdue{border-color:#fca5a5;background:snow}.tsk-card__top{display:flex;align-items:center;gap:6px;min-height:22px}.tsk-card__spacer{flex:1}.tsk-card__action-btn{background:none;border:none;color:#d1d9e0;cursor:pointer;padding:2px 6px;border-radius:5px;font-size:.72rem;flex-shrink:0;opacity:0;transition:color .15s,background .15s,opacity .15s}.tsk-card:hover .tsk-card__action-btn{opacity:1}.tsk-card__action-btn:hover{color:var(--brand);background:var(--brand-xlight)}.tsk-card__title{font-size:.875rem;font-weight:600;color:#1e293b;line-height:1.35}.tsk-card__desc{font-size:.78rem;color:#94a3b8;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1}.tsk-card__meta-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.tsk-card__meta{display:flex;align-items:center;gap:4px;font-size:.72rem;color:#b0b8c4}.tsk-card__meta i{font-size:.62rem}.tsk-card__footer{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding-top:8px;border-top:1px solid #f4f6f8;margin-top:auto}.tsk-card__due{display:flex;align-items:center;gap:4px;font-size:.7rem;color:#b0b8c4}.tsk-card__due i{font-size:.62rem}.tsk-card__due--overdue{color:#ef4444;font-weight:500}.tsk-card__ref{margin-left:auto;display:flex;align-items:center;gap:4px;font-size:.67rem;color:#c8d0da;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px}.tsk-card__ref i{font-size:.6rem}.tsk-priority-badge{font-size:.64rem;font-weight:600;padding:2px 8px;border-radius:20px;letter-spacing:.01em}.tsk-priority-badge--low{background:#dcfce7;color:#15803d}.tsk-priority-badge--medium{background:#fef9c3;color:#a16207}.tsk-priority-badge--high{background:#ffedd5;color:#c2410c}.tsk-priority-badge--critical{background:#fee2e2;color:#b91c1c}.tsk-badge{font-size:.65rem;font-weight:600;padding:2px 9px;border-radius:20px;white-space:nowrap}.tsk-badge--pending{background:#fef3c7;color:#b45309}.tsk-badge--accepted{background:#dbeafe;color:#1d4ed8}.tsk-badge--submitted{background:#ede9fe;color:#6d28d9}.tsk-badge--finished{background:#dcfce7;color:#15803d}.tsk-badge--closed{background:#f1f5f9;color:#64748b}.tsk-badge--rejected{background:#fee2e2;color:#b91c1c}.tsk-badge--created{background:#f0f9ff;color:#0369a1}@media (max-width: 1100px){.tsk-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.tsk-grid{grid-template-columns:1fr}.tsk-toolbar{flex-direction:column;align-items:flex-start}.tsk-view-tabs{width:100%;overflow-x:auto}}.tsk-status-tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:4px}.tsk-status-tab{background:transparent;border:1px solid #e2e8f0;border-radius:20px;padding:4px 13px;font-size:.78rem;color:#64748b;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .14s}.tsk-status-tab:hover{border-color:#94a3b8;color:#374151}.tsk-status-tab.active{background:#0f172a;border-color:#0f172a;color:#fff;font-weight:600}.tsk-status-tab__badge{background:#fff3;border-radius:10px;padding:0 6px;font-size:.72rem;min-width:18px;text-align:center}.tsk-status-tab:not(.active) .tsk-status-tab__badge{background:#f1f5f9;color:#475569}.tsk-view-switcher{display:flex;background:#f1f5f9;border-radius:8px;padding:3px;gap:2px}.tsk-view-switch-btn{background:transparent;border:none;border-radius:6px;padding:4px 12px;font-size:.8rem;color:#64748b;cursor:pointer;display:flex;align-items:center;gap:5px;transition:background .14s,color .14s}.tsk-view-switch-btn:hover{background:#e2e8f0;color:#0f172a}.tsk-view-switch-btn.active{background:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 4px #00000014}.tsk-bulk-bar{display:flex;align-items:center;gap:10px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:8px 14px;margin-bottom:10px}.tsk-bulk-bar__count{font-size:.82rem;font-weight:600;color:#1d4ed8;min-width:90px}.tsk-board-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:auto;padding-bottom:16px}.kb-board{display:flex;gap:14px;flex:1;min-height:0;overflow-x:auto;overflow-y:hidden;padding:0 4px 12px;align-items:stretch}.kb-board::-webkit-scrollbar{height:6px}.kb-board::-webkit-scrollbar-track{background:transparent}.kb-board::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:3px}.kb-col{flex:0 0 300px;width:300px;background:#f8fafc;border-radius:12px;border:2px solid transparent;border-top:3px solid #e2e8f0;display:flex;flex-direction:column;max-height:calc(100vh - 200px);transition:border-color .15s,box-shadow .15s}.kb-col--drag-over{border-color:#94a3b8;box-shadow:0 0 0 3px #94a3b833;background:#f1f5f9}.kb-col__header{display:flex;align-items:center;gap:8px;padding:12px 14px 10px;border-bottom:1px solid #eef0f3;flex-shrink:0}.kb-col__dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.kb-col__name{font-size:.82rem;font-weight:700;color:#0f172a;flex:1;letter-spacing:.02em}.kb-col__title{font-size:.78rem;font-weight:700;color:#0f172a;flex:1;letter-spacing:.02em}.kb-col__count{font-size:.72rem;font-weight:600;color:#64748b;background:#e2e8f0;border-radius:10px;padding:1px 8px;min-width:22px;text-align:center}.kb-col__body{flex:1;min-height:0;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px}.kb-col__body::-webkit-scrollbar{width:4px}.kb-col__body::-webkit-scrollbar-track{background:transparent}.kb-col__body::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:2px}.kb-col__empty{color:#cbd5e1;font-size:.79rem;text-align:center;padding:28px 0;font-style:italic;-webkit-user-select:none;user-select:none}.kb-card{background:#fff;border:1px solid #eef0f3;border-radius:10px;padding:11px 13px 10px;cursor:grab;transition:box-shadow .14s,transform .14s,opacity .14s;-webkit-user-select:none;user-select:none}.kb-card:hover{box-shadow:0 4px 16px #0f172a17;transform:translateY(-1px)}.kb-card:active{cursor:grabbing}.kb-card--dragging{opacity:.45;box-shadow:0 8px 24px #0f172a26}.kb-card--drop-before{border-top:3px solid #6366f1;margin-top:-2px}.kb-card--drop-after{border-bottom:3px solid #6366f1;margin-bottom:-2px}.kb-card--clickable{cursor:pointer!important;pointer-events:auto!important;width:100%;text-align:left;font:inherit;outline:none}.kb-card__title{font-size:.86rem;font-weight:600;color:#0f172a;line-height:1.4;margin-bottom:8px;display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.kb-card__title-right{display:flex;flex-direction:column;align-items:flex-end;gap:3px;flex-shrink:0}.kb-card__city{display:inline-flex;align-items:center;gap:3px;font-size:.68rem;font-weight:500;color:#64748b;white-space:nowrap}.kb-card__city i{font-size:.6rem;color:#94a3b8}.kb-card__kwp{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;font-weight:700;color:#1d6fa4;background:linear-gradient(135deg,#e0f2fe,#bae6fd);border:1px solid #7dd3fc;border-radius:20px;padding:2px 8px;white-space:nowrap;flex-shrink:0;box-shadow:0 1px 3px #38bdf833}.kb-card__kwp i{font-size:.62rem;color:#38bdf8}.kb-card__meta{font-size:.74rem;color:#64748b;display:flex;align-items:center;gap:5px;margin-top:3px}.kb-card__meta i{font-size:.68rem;color:#94a3b8}.kb-card__meta--spread{justify-content:space-between}.tsk-list-fill{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.tsk-list-td--actions{width:70px;text-align:right;padding:6px 10px!important;white-space:nowrap;opacity:0;transition:opacity .12s}tr:hover .tsk-list-td--actions{opacity:1}.tsk-row-action-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px 6px;border-radius:5px;font-size:.75rem;transition:color .12s,background .12s}.tsk-row-action-btn:hover{background:#f1f5f9;color:#475569}.tsk-row-action-btn--danger:hover{background:#fef2f2;color:#ef4444}.tsk-list-wrap{flex:1;min-height:0;border-radius:10px;border:1px solid #eef0f3;overflow:auto}.tsk-list-table{width:100%;border-collapse:collapse;font-size:.84rem}.tsk-list-table thead tr{background:#f1f5f9!important}.tsk-list-th{position:sticky;top:0;z-index:5;background:#f1f5f9!important;padding:9px 12px!important;text-align:left!important;font-size:.75rem!important;font-weight:700!important;color:#334155!important;letter-spacing:.05em!important;text-transform:uppercase!important;white-space:nowrap;border-bottom:2px solid #e2e8f0!important;box-shadow:0 1px #0000000f;resize:horizontal;overflow:hidden}.tsk-list-th--check{width:36px;padding:9px 10px!important;position:sticky;left:0;z-index:7}.tsk-list-th--actions{width:44px}.tsk-col-resize-handle{position:absolute;top:0;right:0;bottom:0;width:5px;cursor:col-resize;-webkit-user-select:none;user-select:none}.tsk-col-resize-handle:hover,.tsk-col-resize-handle:active{background:var(--brand, #2d6a4f);opacity:.4}.rlib-page .tsk-list-th--name,.rlib-page .tsk-list-td--name{min-width:150px}.tsk-list-row{border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .12s}.tsk-list-row:hover{background:#f4f7fb}.tsk-list-row--overdue{background:#fef2f2!important;border-left:3px solid #dc2626}.tsk-list-row--overdue td{color:#991b1b!important}.tsk-list-row--overdue:hover{background:#fee2e2!important}.tsk-list-row--selected{background:#eff6ff!important}.tsk-list-row:last-child{border-bottom:none}.tsk-list-row:hover .tsk-list-td--actions{opacity:1}.tsk-card--overdue,.kb-card--overdue{background:#fef2f2!important;border-left:3px solid #dc2626!important}.tsk-list-td{padding:10px 12px;color:#374151;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tsk-list-td--check{width:36px;padding:10px;cursor:default;position:sticky;left:0;z-index:2;background:inherit}.tsk-list-td--name{position:sticky;left:36px;z-index:2;background:#fff}.tsk-list-td--name:after{content:"";position:absolute;top:0;right:-4px;bottom:0;width:4px;background:linear-gradient(to right,rgba(0,0,0,.06),transparent);pointer-events:none}.tsk-list-td--actions{width:36px;text-align:right;position:sticky;right:0;background:inherit;opacity:0;transition:opacity .1s}.tsk-list-title{font-weight:500;color:#0f172a}.tsk-list-title--link{cursor:pointer}.tsk-list-title--link:hover{color:#6366f1;text-decoration:underline}.tsk-list-overdue-tag{display:inline-block;margin-left:6px;font-size:.68rem;font-weight:600;color:#dc2626;background:#fee2e2;border-radius:4px;padding:1px 5px;vertical-align:middle}.tsk-status-picker{position:relative;display:inline-flex}.tsk-badge--clickable{cursor:pointer}.tsk-badge--clickable:hover{opacity:.82}.tsk-status-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 24px #0f172a1f;z-index:200;min-width:130px;padding:4px;display:flex;flex-direction:column;gap:1px}.tsk-status-option{padding:5px 8px;border-radius:5px;cursor:pointer;transition:background .1s}.tsk-status-option:hover{background:#f1f5f9}.tsk-status-option--active{background:#eff6ff}.tsk-list-tag{display:inline-block;background:#f1f5f9;color:#475569;border-radius:4px;padding:1px 6px;font-size:.73rem;margin-right:3px}.tsk-user-name{color:#334155;border-bottom:1px dashed transparent;transition:border-color .15s,color .15s;cursor:pointer}.tsk-user-name:hover{color:#6366f1;border-bottom-color:#6366f1}.td-overlay{position:fixed;inset:0;background:#0f172a73;backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:tdFadeIn .15s ease}@keyframes tdFadeIn{0%{opacity:0}to{opacity:1}}.td-modal{width:480px;max-width:92vw;max-height:85vh;overflow-y:auto;background:#fff;border-radius:16px;box-shadow:0 24px 64px #0003,0 2px 12px #00000014;animation:tdSlideUp .25s cubic-bezier(.16,1,.3,1)}.td-modal__header{display:flex;align-items:center;gap:14px;padding:20px 24px 16px;border-bottom:1px solid #f1f5f9}.td-modal__header-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1rem;flex-shrink:0}.td-modal__title{font-size:1rem;font-weight:700;color:#0f172a}.td-modal__subtitle{display:flex;align-items:center;margin-top:4px}.td-modal__close{margin-left:auto;width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:#94a3b8;font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.td-modal__close:hover{background:#f1f5f9;color:#0f172a}.td-modal__body{padding:20px 24px;display:flex;flex-direction:column;gap:18px}.td-modal__label{display:block;font-size:.72rem;font-weight:600;color:#64748b;letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px}.td-modal__label i{margin-right:5px;font-size:.68rem;color:#94a3b8}.td-modal__textarea{width:100%;border:1.5px solid #e2e8f0;border-radius:10px;padding:12px 14px;font-size:.87rem;color:#0f172a;resize:vertical;font-family:inherit;transition:border-color .15s}.td-modal__textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.td-modal__textarea::placeholder{color:#cbd5e1}.td-modal__input{width:100%;border:1.5px solid #e2e8f0;border-radius:10px;padding:10px 14px;font-size:.85rem;color:#0f172a;font-family:inherit;transition:border-color .15s}.td-modal__input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.td-modal__input::placeholder{color:#cbd5e1}.td-modal__hint{font-size:.73rem;color:#ef4444;margin-top:6px}.td-modal__files{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.td-modal__file{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:.82rem}.td-modal__file-name{flex:1;color:#0f172a;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.td-modal__file-size{font-size:.72rem;color:#94a3b8}.td-modal__file-remove{cursor:pointer;color:#94a3b8;font-size:.7rem;padding:4px;border-radius:4px;transition:all .15s}.td-modal__file-remove:hover{color:#ef4444;background:#fef2f2}.td-modal__upload{border:2px dashed #e2e8f0;border-radius:10px;padding:20px 16px;text-align:center;cursor:pointer;color:#94a3b8;font-size:.83rem;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:6px}.td-modal__upload i{font-size:1.3rem}.td-modal__upload:hover{border-color:#6366f1;color:#6366f1;background:#faf5ff}.td-modal__footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px 20px;border-top:1px solid #f1f5f9}.td-modal__btn{padding:9px 20px;border-radius:10px;font-size:.84rem;font-weight:600;border:none;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:6px}.td-modal__btn--cancel{background:#f1f5f9;color:#475569}.td-modal__btn--cancel:hover{background:#e2e8f0}.td-modal__btn--submit{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;box-shadow:0 2px 8px #6366f14d}.td-modal__btn--submit:hover{box-shadow:0 4px 16px #6366f166;transform:translateY(-1px)}.td-modal__btn--submit:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}@keyframes tdSlideUp{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.vega-menu{position:relative;display:inline-flex}.vega-menu__btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;border-radius:7px;color:#94a3b8;cursor:pointer;transition:background .12s,color .12s;font-size:.82rem}.vega-menu__btn:hover{background:#f1f5f9;color:#334155}.vega-menu__dropdown{position:fixed;z-index:9999;min-width:168px;background:#fff;border:1px solid #e9edf2;border-radius:10px;box-shadow:0 8px 24px #0f172a1a;padding:5px;animation:vegaMenuIn .1s ease}.vega-menu__item{display:flex;align-items:center;gap:9px;width:100%;padding:7px 11px;border:none;background:transparent;border-radius:7px;font-size:.82rem;color:#374151;text-align:left;cursor:pointer;transition:background .1s}.vega-menu__item i{width:14px;text-align:center;color:#94a3b8}.vega-menu__item:hover{background:#f8fafc}.vega-menu__item--danger,.vega-menu__item--danger i{color:#dc2626}.vega-menu__item--danger:hover{background:#fff5f5}.vega-menu__divider{height:1px;background:#f1f5f9;margin:4px 0}@keyframes vegaMenuIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dsh-alerts-widget{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#fff5f5,#fffbeb,#eff6ff);border:1px solid #fde68a;border-radius:9px;padding:12px 18px;cursor:pointer;transition:box-shadow .14s ease,transform .14s ease}.dsh-alerts-widget:hover{box-shadow:0 3px 12px #0f172a12;transform:translateY(-1px)}.dsh-alerts-widget__header{display:flex;align-items:center;gap:12px}.dsh-alerts-widget__title{font-size:.85rem;font-weight:600;color:#0f172a}.dsh-alerts-widget__title i{color:#f59e0b;margin-right:4px}.dsh-alerts-widget__view-all{font-size:.72rem;color:var(--brand);font-weight:500;white-space:nowrap}.dsh-alerts-widget__view-all i{font-size:.6rem;margin-left:2px}.dsh-alerts-widget__badges{display:flex;gap:8px;flex-wrap:wrap}.dsh-alerts-badge{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:600;padding:4px 10px;border-radius:20px}.dsh-alerts-badge--critical{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.dsh-alerts-badge--warning{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.dsh-alerts-badge--info{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.alerts-page{padding:0;max-width:1200px}.alerts-page__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.alerts-page__title{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0}.alerts-page__title i{color:#f59e0b;margin-right:6px}.alerts-page__subtitle{font-size:.78rem;color:#94a3b8;margin:4px 0 0}.alerts-page__header-right .btn,.alerts-page__header-right .modal-backdrop .modal .modal-actions .btn-save,.modal-backdrop .modal .modal-actions .alerts-page__header-right .btn-save,.alerts-page__header-right .modal-backdrop .modal .modal-actions .btn-cancel,.modal-backdrop .modal .modal-actions .alerts-page__header-right .btn-cancel{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:6px 14px;font-size:.78rem;color:#475569;cursor:pointer;transition:all .15s}.alerts-page__header-right .btn:hover,.alerts-page__header-right .modal-backdrop .modal .modal-actions .btn-save:hover,.modal-backdrop .modal .modal-actions .alerts-page__header-right .btn-save:hover,.alerts-page__header-right .modal-backdrop .modal .modal-actions .btn-cancel:hover,.modal-backdrop .modal .modal-actions .alerts-page__header-right .btn-cancel:hover{border-color:var(--brand);color:var(--brand)}.alerts-page__header-right .btn i,.alerts-page__header-right .modal-backdrop .modal .modal-actions .btn-save i,.modal-backdrop .modal .modal-actions .alerts-page__header-right .btn-save i,.alerts-page__header-right .modal-backdrop .modal .modal-actions .btn-cancel i,.modal-backdrop .modal .modal-actions .alerts-page__header-right .btn-cancel i{margin-right:4px}.alerts-summary-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.alerts-summary-card{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:9px;cursor:pointer;border:2px solid transparent;transition:all .15s ease}.alerts-summary-card i{font-size:1.1rem}.alerts-summary-card__count{font-size:1.4rem;font-weight:700;line-height:1}.alerts-summary-card__label{font-size:.72rem;font-weight:500;opacity:.8}.alerts-summary-card--critical{background:#fef2f2;color:#dc2626}.alerts-summary-card--critical.alerts-summary-card--active{border-color:#dc2626;box-shadow:0 0 0 1px #fecaca}.alerts-summary-card--critical:hover{background:#fee2e2}.alerts-summary-card--warning{background:#fffbeb;color:#d97706}.alerts-summary-card--warning.alerts-summary-card--active{border-color:#d97706;box-shadow:0 0 0 1px #fde68a}.alerts-summary-card--warning:hover{background:#fef3c7}.alerts-summary-card--info{background:#eff6ff;color:#2563eb}.alerts-summary-card--info.alerts-summary-card--active{border-color:#2563eb;box-shadow:0 0 0 1px #bfdbfe}.alerts-summary-card--info:hover{background:#dbeafe}.alerts-summary-card--total{background:#f8fafc;color:#475569}.alerts-summary-card--total.alerts-summary-card--active{border-color:#475569;box-shadow:0 0 0 1px #cbd5e1}.alerts-summary-card--total:hover{background:#f1f5f9}.alerts-toolbar{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.alerts-toolbar__search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:7px;padding:0 12px;flex:1;min-width:200px}.alerts-toolbar__search i{color:#94a3b8;font-size:.82rem}.alerts-toolbar__search input{border:none;outline:none;padding:8px 0;font-size:.82rem;width:100%;background:transparent;color:#0f172a}.alerts-toolbar__search input::placeholder{color:#cbd5e1}.alerts-toolbar__filters select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%2394a3b8'/%3E%3C/svg%3E") no-repeat right 10px center;border:1px solid #e2e8f0;border-radius:7px;padding:8px 30px 8px 12px;font-size:.82rem;color:#0f172a;cursor:pointer;outline:none}.alerts-toolbar__filters select:focus{border-color:var(--brand)}.alerts-loading,.alerts-empty{text-align:center;padding:48px 0;color:#94a3b8;font-size:.88rem}.alerts-loading i,.alerts-empty i{font-size:1.5rem;display:block;margin-bottom:8px}.alerts-empty i{color:#22c55e}.alerts-list{display:flex;flex-direction:column;gap:6px}.alerts-item{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #eef0f3;border-radius:8px;padding:12px 16px;cursor:pointer;transition:all .14s ease}.alerts-item:hover{box-shadow:0 2px 8px #0f172a0f;transform:translateY(-1px)}.alerts-item--critical{border-left:3px solid #dc2626}.alerts-item--critical .alerts-item__icon{color:#dc2626;background:#fef2f2}.alerts-item--warning{border-left:3px solid #f59e0b}.alerts-item--warning .alerts-item__icon{color:#d97706;background:#fffbeb}.alerts-item--info{border-left:3px solid #3b82f6}.alerts-item--info .alerts-item__icon{color:#2563eb;background:#eff6ff}.alerts-item__icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}.alerts-item__body{flex:1;min-width:0}.alerts-item__top{display:flex;align-items:center;gap:8px;margin-bottom:2px}.alerts-item__title{font-size:.85rem;font-weight:600;color:#0f172a}.alerts-item__severity-badge{font-size:.62rem;font-weight:600;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.3px}.alerts-item__severity-badge--critical{background:#fef2f2;color:#dc2626}.alerts-item__severity-badge--warning{background:#fffbeb;color:#d97706}.alerts-item__severity-badge--info{background:#eff6ff;color:#2563eb}.alerts-item__description{font-size:.78rem;color:#64748b;margin:0 0 4px;line-height:1.4}.alerts-item__meta{display:flex;gap:12px;font-size:.7rem;color:#94a3b8}.alerts-item__meta span{display:inline-flex;align-items:center;gap:4px}.alerts-item__action{color:#e2e8f0;font-size:.72rem;transition:color .15s}.alerts-item:hover .alerts-item__action{color:var(--brand)}.alerts-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 0;font-size:.78rem;color:#64748b}.alerts-pagination button{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:6px 10px;cursor:pointer;color:#475569;transition:all .15s}.alerts-pagination button:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.alerts-pagination button:disabled{opacity:.4;cursor:not-allowed}@media (max-width: 768px){.alerts-summary-row{grid-template-columns:repeat(2,1fr)}.alerts-toolbar{flex-direction:column}}@media (max-width: 480px){.alerts-summary-row{grid-template-columns:1fr}.dsh-alerts-widget{flex-direction:column;gap:8px;align-items:flex-start}.dsh-alerts-widget__badges{flex-direction:column}}.ac-counter{font-size:.72rem;color:#94a3b8;font-weight:400;margin-left:8px}.ac-modules-scroll{flex:1;min-height:0;overflow-y:auto;padding:0 16px 16px}.ac-modules{display:flex;flex-direction:column;gap:10px}.ac-module{border:1px solid #eef0f3;border-radius:9px;overflow:hidden;background:#fff}.ac-module__header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;background:#f8fafc;border-bottom:1px solid #eef0f3;transition:background .12s}.ac-module__header:hover{background:#f1f5f9}.ac-module__left{display:flex;align-items:center;gap:10px}.ac-module__left>i:first-child{font-size:.65rem;color:#94a3b8;width:12px}.ac-module__icon{font-size:.88rem;color:var(--brand);width:20px;text-align:center}.ac-module__label{font-size:.85rem;font-weight:600;color:#0f172a}.ac-module__count{font-size:.68rem;color:#94a3b8;background:#f1f5f9;padding:2px 8px;border-radius:10px;font-weight:500}.ac-module__right{display:flex;align-items:center}.ac-rules{padding:4px 0}.ac-rule{display:flex;align-items:center;justify-content:space-between;padding:10px 16px 10px 50px;border-bottom:1px solid #f8fafc;transition:background .12s}.ac-rule:last-child{border-bottom:none}.ac-rule:hover{background:#fafbfc}.ac-rule--disabled{opacity:.5}.ac-rule--disabled .ac-rule__label{text-decoration:line-through;color:#94a3b8}.ac-rule__body{flex:1;min-width:0}.ac-rule__top{display:flex;align-items:center;gap:8px;margin-bottom:2px}.ac-rule__label{font-size:.82rem;font-weight:500;color:#0f172a}.ac-rule__severity{font-size:.58rem;font-weight:700;padding:2px 7px;border-radius:10px;text-transform:uppercase;letter-spacing:.4px}.ac-rule__severity--critical{background:#fef2f2;color:#dc2626}.ac-rule__severity--warning{background:#fffbeb;color:#d97706}.ac-rule__severity--info{background:#eff6ff;color:#2563eb}.ac-rule__desc{font-size:.72rem;color:#94a3b8;margin:0;line-height:1.4}.ac-rule__toggle{flex-shrink:0;margin-left:16px}.perf-tab{padding:24px}.perf-loading{text-align:center;padding:60px 0;color:#94a3b8;font-size:.9rem}.perf-loading i{margin-right:6px}.perf-hero{display:flex;align-items:center;gap:28px;padding:28px 32px;background:#fff;border:1px solid #f1f5f9;border-radius:14px;margin-bottom:24px}.perf-hero__ring{position:relative;width:120px;height:120px;flex-shrink:0}.perf-hero__svg{width:100%;height:100%}.perf-hero__value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;line-height:1}.perf-hero__number{font-size:2rem;font-weight:800;letter-spacing:-1px;display:block}.perf-hero__of{font-size:.72rem;color:#94a3b8;font-weight:500}.perf-hero__title{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0 0 4px}.perf-hero__label{font-size:.88rem;font-weight:600;display:block;margin-bottom:4px}.perf-hero__year{font-size:.75rem;color:#94a3b8;margin:0}.perf-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.perf-card{background:#fff;border:1px solid #f1f5f9;border-radius:12px;padding:16px;transition:box-shadow .14s}.perf-card:hover{box-shadow:0 3px 12px #0f172a0f}.perf-card__header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.perf-card__icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.82rem}.perf-card__label{font-size:.78rem;font-weight:600;color:#475569}.perf-card__score{display:flex;align-items:baseline;gap:3px;margin-bottom:8px}.perf-card__value{font-size:1.5rem;font-weight:800;letter-spacing:-.5px}.perf-card__max{font-size:.78rem;color:#94a3b8;font-weight:500}.perf-card__bar{height:6px;background:#f1f5f9;border-radius:3px;overflow:hidden}.perf-card__bar-fill{height:100%;border-radius:3px;transition:width .6s ease}.perf-charts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}.perf-chart-panel{background:#fff;border:1px solid #f1f5f9;border-radius:12px;padding:18px}.perf-chart-panel__title{font-size:.85rem;font-weight:600;color:#0f172a;margin:0 0 14px}.perf-chart-panel__canvas{height:220px;position:relative}.perf-chart-panel__canvas--bar{height:180px}.perf-details{background:#fff;border:1px solid #f1f5f9;border-radius:12px;padding:20px}.perf-details__title{font-size:.9rem;font-weight:600;color:#0f172a;margin:0 0 16px}.perf-details__title i{color:#94a3b8;margin-right:6px}.perf-details__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.perf-detail-group__title{font-size:.78rem;font-weight:600;color:#475569;margin:0 0 10px}.perf-detail-group__title i{margin-right:5px}.perf-detail-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid #f8fafc;font-size:.75rem}.perf-detail-row:last-child{border-bottom:none}.perf-detail-row span{color:#64748b}.perf-detail-row strong{color:#0f172a;font-weight:600}@media (max-width: 900px){.perf-cards{grid-template-columns:repeat(2,1fr)}.perf-charts{grid-template-columns:1fr}.perf-details__grid{grid-template-columns:repeat(2,1fr)}.perf-hero{flex-direction:column;text-align:center}}@media (max-width: 480px){.perf-cards,.perf-details__grid{grid-template-columns:1fr}}.ref-detail-anim{animation:refDetailIn .2s ease}@keyframes refDetailIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ref-source-picker{position:relative}.ref-source-picker__trigger{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none}.ref-source-picker__placeholder{color:#9ca3af}.ref-source-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 24px #0f172a1f;z-index:200;max-height:280px;overflow-y:auto;padding:4px 0;animation:vegaMenuIn .12s ease}.ref-source-option{position:relative;padding:8px 14px;font-size:.84rem;color:#374151;cursor:pointer;transition:background .1s;display:flex;align-items:center;justify-content:space-between}.ref-source-option:hover{background:#f1f5f9}.ref-source-option--active{background:var(--brand-xlight);color:var(--brand-dark);font-weight:600}.ref-source-option .ref-source-tooltip{display:none;position:absolute;right:-8px;top:50%;transform:translate(100%) translateY(-50%);background:#1f2937;color:#fff;font-size:.72rem;font-weight:400;padding:6px 10px;border-radius:6px;white-space:nowrap;box-shadow:0 4px 12px #00000026;z-index:210;pointer-events:none;line-height:1.3}.ref-source-option:hover .ref-source-tooltip{display:block}.rlib-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.rlib-tabs{display:flex;gap:4px;background:#f3f4f6;border-radius:8px;padding:3px}.rlib-tab{display:flex;align-items:center;gap:6px;padding:7px 14px;border:none;background:none;font-size:.82rem;font-weight:600;color:#6b7280;border-radius:6px;cursor:pointer;transition:all .15s}.rlib-tab:hover{color:#374151;background:#e5e7eb}.rlib-tab.active{background:#fff;color:#1a202c;box-shadow:0 1px 3px #00000014}.rlib-tab__count{background:#e5e7eb;color:#6b7280;font-size:.7rem;padding:1px 7px;border-radius:20px}.active .rlib-tab__count{background:var(--brand, #3b82f6);color:#fff}.rlib-search-bar{display:flex;align-items:center;gap:8px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:6px 12px;flex:1;max-width:300px}.rlib-search-bar i{color:#9ca3af;font-size:.85rem}.rlib-search-bar input{border:none;background:none;outline:none;font-size:.85rem;color:#1a202c;width:100%}.rlib-search-bar input::placeholder{color:#9ca3af}.rlib-filter-select{padding:7px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:.82rem;color:#374151;background:#f9fafb;outline:none;cursor:pointer}.rlib-filter-select:focus{border-color:var(--brand, #3b82f6)}.rlib-header__actions{display:flex;gap:8px;align-items:center}.rlib-cta--outline{background:#fff!important;color:var(--brand, #3b82f6)!important;border:1.5px solid var(--brand, #3b82f6)!important}.rlib-cta--outline:hover{background:#eff6ff!important}.rlib-clone-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid #e5e7eb;background:#fff;border-radius:6px;font-size:.72rem;font-weight:600;color:var(--brand, #3b82f6);cursor:pointer;transition:all .15s}.rlib-clone-btn:hover{background:#eff6ff;border-color:var(--brand, #3b82f6)}.rlib-card--template{border:1px dashed #d1d5db}.rlib-card--template:hover{border-color:var(--brand, #3b82f6)}.rv-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:700}.rv-badge--template{background:#dbeafe;color:#1d4ed8}.rb-page{max-width:900px}.rb-container{padding-bottom:80px}.rb-back-btn{background:none;border:none;font-size:1.1rem;color:#6b7280;cursor:pointer;padding:6px 10px;border-radius:8px;transition:all .15s}.rb-back-btn:hover{background:#f3f4f6;color:#1a202c}.rb-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:60px 0;color:#9ca3af;font-size:.95rem}.rb-loading i{font-size:1.2rem}.rb-stepper{display:flex;align-items:flex-start;gap:0;margin:0 0 28px;padding:16px 0;border-bottom:1px solid #f0f0f0;overflow-x:auto}.rb-stepper__step{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;min-width:80px;position:relative;cursor:default}.rb-stepper__step--clickable{cursor:pointer}.rb-stepper__step--done .rb-stepper__dot{background:var(--brand, #3b82f6);color:#fff;border-color:var(--brand, #3b82f6)}.rb-stepper__step--active .rb-stepper__dot{border-color:var(--brand, #3b82f6);color:var(--brand, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.rb-stepper__step--active .rb-stepper__label{color:var(--brand, #3b82f6);font-weight:700}.rb-stepper__dot{width:30px;height:30px;border-radius:50%;border:2px solid #d1d5db;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#9ca3af;background:#fff;transition:all .2s}.rb-stepper__label{font-size:.72rem;color:#9ca3af;text-align:center;transition:all .15s}.rb-step{animation:rbFadeIn .2s ease}@keyframes rbFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.rb-step__title{font-size:1.05rem;font-weight:700;color:#1a202c;margin:0 0 4px;display:flex;align-items:center;gap:8px}.rb-step__title i{color:var(--brand, #3b82f6)}.rb-step__desc{font-size:.85rem;color:#6b7280;margin:0 0 20px}.rb-source-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.rb-source-card{padding:20px;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s;background:#fff}.rb-source-card:hover{border-color:var(--brand, #3b82f6);background:#fafbff}.rb-source-card--selected{border-color:var(--brand, #3b82f6);background:#eff6ff;box-shadow:0 0 0 3px #3b82f61f}.rb-source-card__icon{font-size:1.5rem;color:var(--brand, #3b82f6);margin-bottom:10px}.rb-source-card__name{font-size:.95rem;font-weight:700;color:#1a202c;margin-bottom:4px}.rb-source-card__desc{font-size:.78rem;color:#6b7280;line-height:1.4}.rb-col-actions{display:flex;gap:12px;margin-bottom:12px}.rb-link-btn{background:none;border:none;color:var(--brand, #3b82f6);font-size:.82rem;font-weight:600;cursor:pointer;padding:0}.rb-link-btn:hover{text-decoration:underline}.rb-col-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px}.rb-col-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .15s}.rb-col-item:hover{border-color:#d1d5db;background:#fafafa}.rb-col-item--selected{border-color:var(--brand, #3b82f6);background:#eff6ff}.rb-col-item input[type=checkbox]{accent-color:var(--brand, #3b82f6);width:16px;height:16px}.rb-col-item__info{display:flex;flex-direction:column;gap:1px}.rb-col-item__name{font-size:.85rem;font-weight:600;color:#1a202c}.rb-col-item__type{font-size:.7rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em}.rb-selected-preview{margin-top:16px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #f0f0f0}.rb-selected-preview h4{font-size:.82rem;font-weight:700;color:#374151;margin:0 0 8px}.rb-selected-tags{display:flex;flex-wrap:wrap;gap:6px}.rb-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#eff6ff;color:var(--brand, #3b82f6);border-radius:20px;font-size:.78rem;font-weight:600}.rb-tag__remove{background:none;border:none;color:inherit;cursor:pointer;font-size:.7rem;padding:0;opacity:.6}.rb-tag__remove:hover{opacity:1}.rb-filter-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.rb-filter-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px;background:#f9fafb;border:1px solid #f0f0f0;border-radius:8px}.rb-filter-and{font-size:.78rem;color:#6b7280;font-weight:600}.rb-select{padding:7px 10px;border:1px solid #e5e7eb;border-radius:6px;font-size:.82rem;color:#1a202c;background:#fff;outline:none;min-width:140px}.rb-select:focus{border-color:var(--brand, #3b82f6)}.rb-select--sm{min-width:100px}.rb-input{padding:7px 10px;border:1px solid #e5e7eb;border-radius:6px;font-size:.82rem;color:#1a202c;background:#fff;outline:none}.rb-input:focus{border-color:var(--brand, #3b82f6)}.rb-input--sm{max-width:130px}.rb-textarea{resize:vertical;min-height:60px;font-family:inherit}.rb-icon-btn{background:none;border:none;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:.85rem;color:#9ca3af;transition:all .15s}.rb-icon-btn:hover{background:#f3f4f6;color:#374151}.rb-icon-btn--danger:hover{background:#fef2f2;color:#dc2626}.rb-add-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px dashed #d1d5db;background:#fff;border-radius:8px;font-size:.82rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .15s}.rb-add-btn:hover{border-color:var(--brand, #3b82f6);color:var(--brand, #3b82f6);background:#fafbff}.rb-form-section{margin-bottom:24px}.rb-form-section__title{font-size:.9rem;font-weight:700;color:#1a202c;margin:0 0 6px}.rb-form-section__desc{font-size:.8rem;color:#9ca3af;margin:0 0 10px}.rb-inline-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rb-toggle-group{display:flex;gap:0}.rb-toggle-btn{padding:7px 14px;border:1px solid #e5e7eb;background:#fff;font-size:.82rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .15s}.rb-toggle-btn:first-child{border-radius:6px 0 0 6px}.rb-toggle-btn:last-child{border-radius:0 6px 6px 0;margin-left:-1px}.rb-toggle-btn.active{background:var(--brand, #3b82f6);border-color:var(--brand, #3b82f6);color:#fff}.rb-agg-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.rb-agg-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px;background:#f9fafb;border:1px solid #f0f0f0;border-radius:8px}.rb-agg-cards{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.rb-agg-card{padding:14px 20px;background:#f0f6ff;border:1px solid #dbeafe;border-radius:10px;min-width:140px;text-align:center}.rb-agg-card__value{font-size:1.4rem;font-weight:800;color:#1a202c}.rb-agg-card__label{font-size:.75rem;font-weight:600;color:#6b7280;margin-top:2px}.rb-groups{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.rb-group-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:#f3f4f6;border-radius:20px;font-size:.8rem;color:#374151}.rb-group-chip strong{font-weight:700}.rb-group-chip__count{color:#9ca3af;font-size:.75rem}.rb-group-chip__aggs{font-size:.72rem;color:#6b7280;border-left:1px solid #d1d5db;padding-left:8px;margin-left:4px}.rb-table-wrap{overflow-x:auto;border:1px solid #e5e7eb;border-radius:10px;background:#fff}.rb-table{width:100%;border-collapse:collapse;font-size:.82rem}.rb-table th{padding:10px 14px;background:#f9fafb;font-weight:700;color:#374151;text-align:left;border-bottom:1px solid #e5e7eb;white-space:nowrap;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.rb-table td{padding:9px 14px;border-bottom:1px solid #f3f4f6;color:#1a202c;white-space:nowrap;max-width:250px;overflow:hidden;text-overflow:ellipsis}.rb-table tbody tr:hover{background:#fafbff}.rb-table tbody tr:last-child td{border-bottom:none}.rb-table__rownum{color:#9ca3af!important;font-size:.75rem!important;width:40px;text-align:center!important}.rb-preview-info{font-size:.78rem;color:#9ca3af;margin-top:8px}.rb-save-form{max-width:500px}.rb-form-group{margin-bottom:16px}.rb-form-group label{display:block;font-size:.82rem;font-weight:600;color:#374151;margin-bottom:6px}.rb-form-group .rb-input,.rb-form-group .rb-textarea{width:100%;box-sizing:border-box}.rb-summary{margin-top:20px;padding:16px;background:#f9fafb;border-radius:10px;border:1px solid #f0f0f0}.rb-summary h4{font-size:.85rem;font-weight:700;color:#1a202c;margin:0 0 10px}.rb-summary__row{display:flex;justify-content:space-between;padding:4px 0;font-size:.82rem;color:#6b7280}.rb-summary__row strong{color:#1a202c}.rb-footer{display:flex;align-items:center;gap:10px;padding:16px 0;margin-top:24px;border-top:1px solid #f0f0f0}.rb-footer__spacer{flex:1}.rb-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s;border:none}.rb-btn--ghost{background:#f3f4f6;color:#374151}.rb-btn--ghost:hover{background:#e5e7eb}.rb-btn--danger{color:#dc2626!important}.rb-btn--danger:hover{background:#fef2f2!important}.rb-btn:disabled{opacity:.5;cursor:not-allowed}.rv-page{max-width:1100px}.rv-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.rv-header__left{display:flex;gap:12px;align-items:flex-start}.rv-header__info{flex:1}.rv-header__top-row{display:flex;align-items:center;gap:10px}.rv-header__source-icon{font-size:1rem;color:var(--brand, #3b82f6)}.rv-header__title{font-size:1.2rem;font-weight:800;color:#1a202c;margin:0}.rv-star-btn{background:none;border:none;font-size:1rem;cursor:pointer;color:#fbbf24;transition:transform .15s}.rv-star-btn:hover{transform:scale(1.15)}.rv-header__desc{font-size:.85rem;color:#6b7280;margin:4px 0 0}.rv-header__meta{display:flex;align-items:center;gap:14px;margin-top:6px;font-size:.78rem;color:#9ca3af}.rv-header__cat{background:#f3f4f6;padding:2px 10px;border-radius:20px;font-weight:600}.rv-header__actions{display:flex;gap:6px;flex-wrap:wrap}.rv-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:14px;flex-wrap:wrap;gap:10px}.rv-pagination__info{font-size:.78rem;color:#9ca3af}.rv-pagination__controls{display:flex;gap:4px}.rv-page-btn{padding:6px 10px;border:1px solid #e5e7eb;background:#fff;border-radius:6px;font-size:.78rem;font-weight:600;color:#374151;cursor:pointer;transition:all .15s;min-width:32px;text-align:center}.rv-page-btn:hover:not(:disabled){background:#f3f4f6}.rv-page-btn.active{background:var(--brand, #3b82f6);color:#fff;border-color:var(--brand, #3b82f6)}.rv-page-btn:disabled{opacity:.4;cursor:not-allowed}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sk-bone{background:linear-gradient(110deg,#e5e7eb 30%,#f3f4f6,#e5e7eb 70%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite;border-radius:4px}
