:root{--brand-900:#102a43;--brand-800:#163a5f;--brand-700:#1f4f7a;--primary:#087e8b;--primary-dark:#05616b;--accent:#e7a743;--surface:#fff;--canvas:#f4f7f8;--text:#1c2b39;--muted:#627383;--border:#dce5e9;--shadow:0 8px 24px rgba(16,42,67,.08)}
*{box-sizing:border-box}body{background:var(--canvas);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:.925rem}.btn{font-weight:600;border-radius:.45rem;padding:.5rem .9rem;transition:all .18s ease}.btn-primary{background:var(--primary);border-color:var(--primary)}.btn-primary:hover,.btn-primary:focus{background:var(--primary-dark);border-color:var(--primary-dark);box-shadow:0 0 0 .2rem rgba(8,126,139,.16)}.btn-outline-primary{color:var(--primary);border-color:#9bced3}.btn-outline-primary:hover{background:var(--primary);border-color:var(--primary)}.form-control,.form-select{border-color:#ccd9df;border-radius:.45rem;padding:.55rem .75rem}.form-control:focus,.form-select:focus{border-color:#55abb4;box-shadow:0 0 0 .2rem rgba(8,126,139,.12)}.card{border-radius:.8rem!important}.shadow-sm{box-shadow:var(--shadow)!important}.table{margin-bottom:0}.table thead th{background:#eef5f6;border-bottom:0;color:#486170;font-size:.72rem;font-weight:750;letter-spacing:.055em;text-transform:uppercase;padding:1rem}.table td{border-color:#e7eef0;padding:1rem;vertical-align:middle}.table-hover tbody tr:hover{background:#f5fbfb}.badge{font-weight:650;padding:.42em .65em}.alert{border:0;border-radius:.6rem;box-shadow:0 4px 14px rgba(16,42,67,.05)}
.login-page{min-height:100vh;background:radial-gradient(circle at 15% 12%,#247887 0,transparent 31%),linear-gradient(135deg,#0d253b 0%,#153c59 52%,#0c2f3f 100%);position:relative;overflow:hidden}.login-page:before,.login-page:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.13);border-radius:50%}.login-page:before{width:500px;height:500px;right:-190px;bottom:-230px}.login-page:after{width:300px;height:300px;left:-160px;bottom:5%}.login-card{max-width:440px;border:0;border-radius:1rem;position:relative;z-index:1;box-shadow:0 22px 60px rgba(0,0,0,.25)!important}.login-card .card-body{padding:2.75rem!important}.login-card h1{color:var(--brand-900);letter-spacing:-.025em}.login-card h1:before{content:"";display:block;width:42px;height:5px;background:var(--accent);border-radius:5px;margin:0 auto 1.25rem}.login-card .btn-primary{height:46px}.login-card code{background:#edf5f5;color:var(--primary-dark);padding:.12rem .3rem;border-radius:.2rem}
.app-shell{min-height:100vh;display:flex}.sidebar{width:262px;min-height:100vh;background:linear-gradient(180deg,var(--brand-900),#0b2134)!important;padding:1.5rem 1rem!important;box-shadow:4px 0 15px rgba(16,42,67,.08)}.sidebar .navbar-brand{font-size:1.05rem;letter-spacing:.01em;padding:.4rem .75rem;margin-bottom:2.1rem!important}.sidebar .navbar-brand:before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--accent);margin-right:.55rem}.sidebar .nav-link{color:#d1e0e9!important;border-radius:.45rem;padding:.68rem .8rem;margin-bottom:.15rem;transition:all .18s ease}.sidebar .nav-link:hover{color:#fff!important;background:rgba(255,255,255,.09);transform:translateX(2px)}.sidebar .nav-link.text-secondary{color:#7894a7!important;letter-spacing:.08em;font-size:.68rem;font-weight:700}.content{flex:1;padding:2.25rem;min-width:0}.content h1{font-weight:720;letter-spacing:-.02em;color:var(--brand-900)}.topbar{background:#fff;border:1px solid var(--border)!important;border-radius:.8rem!important;box-shadow:0 3px 10px rgba(16,42,67,.04)}.topbar h1{color:var(--brand-900)}
.modal-content{border:0;border-radius:.85rem;box-shadow:0 18px 45px rgba(16,42,67,.22)}.modal-header{border-bottom:1px solid var(--border);padding:1.15rem 1.4rem}.modal-footer{border-top:1px solid var(--border);padding:1rem 1.4rem}.modal-title{font-weight:700;color:var(--brand-900)}.modal-body{padding:1.4rem}.form-label{font-size:.81rem;font-weight:700;color:#486170;margin-bottom:.35rem}.page-link{color:var(--primary)}
.brand-mark,.mobile-mark{display:inline-grid;place-items:center;flex:0 0 auto;width:32px;height:32px;border-radius:9px;background:linear-gradient(135deg,#0d9ba6,#4ac1bd);color:#fff;font-size:.7rem;font-weight:800;letter-spacing:-.04em}.sidebar .navbar-brand{display:flex!important;gap:.7rem;align-items:center}.sidebar .navbar-brand:before{display:none}.sidebar .navbar-brand small{display:block;color:#83a2b5;font-size:.61rem;font-weight:500;letter-spacing:.07em;margin-top:.18rem;text-transform:uppercase}.sidebar .nav-link i{display:inline-block;width:1.3rem;color:#7cc8cb;font-style:normal;font-size:1rem}.sidebar-bottom{border-top:1px solid rgba(255,255,255,.09);bottom:1.25rem;color:#96afbe;font-size:.73rem;left:1rem;padding-top:1rem;position:absolute;right:1rem}.sidebar-live{background:#38d39f;border-radius:50%;box-shadow:0 0 0 3px rgba(56,211,159,.13);display:inline-block;height:7px;margin-right:.45rem;width:7px}
.login-page{background:#f6f8f8;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(460px,.85fr);min-height:100vh;overflow:hidden}.login-page:before,.login-page:after{display:none}.login-brand-panel{background:radial-gradient(circle at 20% 15%,rgba(39,157,160,.75),transparent 31%),linear-gradient(145deg,#0b243b 0%,#123b54 58%,#087e8b 140%);color:#fff;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:3.3rem 9.5vw 2.6rem;position:relative}.login-brand-panel:after{border:1px solid rgba(255,255,255,.12);border-radius:50%;content:"";height:580px;position:absolute;right:-280px;top:14%;width:580px}.login-brand-panel:before{border:1px solid rgba(255,255,255,.08);border-radius:50%;content:"";height:340px;position:absolute;left:-190px;bottom:-150px;width:340px}.brand-content,.brand-footer{position:relative;z-index:1}.login-logo{align-items:center;color:#fff;display:flex;gap:.75rem;text-decoration:none;width:max-content}.login-logo img{background:#fff;border-radius:.7rem;height:53px;object-fit:contain;padding:.2rem;width:53px}.login-logo b{display:block;font-size:1.15rem;letter-spacing:-.02em}.login-logo small{color:#b7d7dc;display:block;font-size:.65rem;letter-spacing:.06em;margin-top:.16rem;text-transform:uppercase}.brand-copy{margin-top:19vh;max-width:570px}.eyebrow-light{color:#8ed9d5;font-size:.69rem;font-weight:800;letter-spacing:.14em}.brand-copy h1{font-size:clamp(2.2rem,3.3vw,3.5rem);font-weight:730;letter-spacing:-.055em;line-height:1.08;margin:1rem 0}.brand-copy h1 em{color:#f4c66d;font-style:normal}.brand-copy p{color:#d1e7e8;font-size:1rem;line-height:1.7;max-width:480px}.brand-highlights{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.4rem}.brand-highlights>div{align-items:center;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.1);border-radius:.65rem;display:flex;gap:.6rem;padding:.7rem .8rem}.highlight-icon{color:#f5c870;font-weight:800}.brand-highlights b,.brand-highlights small{display:block}.brand-highlights b{font-size:.76rem}.brand-highlights small{color:#b9d6d9;font-size:.66rem;margin-top:.12rem}.brand-footer{color:#a9c9cf;display:flex;font-size:.72rem;justify-content:space-between}.footer-live i{background:#44daa5;border-radius:50%;display:inline-block;height:6px;margin-right:.35rem;width:6px}.login-form-panel{align-items:center;background:#fff;display:flex;justify-content:center;min-height:100vh;padding:2.5rem}.login-form-wrap{max-width:390px;width:100%}.login-heading{margin-bottom:2rem}.eyebrow{color:var(--primary);font-size:.69rem;font-weight:800;letter-spacing:.13em}.login-heading h2{color:var(--brand-900);font-size:2rem;font-weight:740;letter-spacing:-.045em;margin:.6rem 0}.login-heading p{color:var(--muted);font-size:.9rem}.login-form-wrap .form-control{font-size:.92rem;padding:.72rem .8rem}.login-form-wrap .input-group .form-control{border-right:0}.btn-show{background:#fff;border-color:#ccd9df;border-left:0;color:var(--primary);font-size:.78rem;font-weight:700}.btn-show:hover{background:#fff;color:var(--primary-dark)}.login-meta{color:#7b8b97;font-size:.72rem;margin:1rem 0 1.5rem}.secure-dot{background:#39bd86;border-radius:50%;display:inline-block;height:6px;margin-right:.28rem;width:6px}.login-submit{height:50px}.login-submit span{font-size:1.2rem;margin-left:.4rem}.demo-credentials{align-items:center;border-top:1px solid #e5edef;color:#778895;display:flex;flex-wrap:wrap;font-size:.7rem;gap:.3rem;margin-top:2rem;padding-top:1rem}.demo-credentials span{width:100%}.demo-credentials code{background:#eef6f6;border-radius:.25rem;color:var(--primary-dark);padding:.17rem .3rem}.mobile-login-logo{display:none}
.hero-panel{min-height:250px;overflow:hidden;position:relative;border-radius:1rem;padding:2.3rem 2.6rem;background:linear-gradient(110deg,#12334a 0%,#164f65 57%,#11858b 130%);color:#fff;box-shadow:0 12px 30px rgba(16,42,67,.16)}.hero-panel:after{content:"";position:absolute;width:450px;height:450px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-150px;top:-150px}.hero-panel>div:first-child{position:relative;z-index:2}.hero-label,.section-kicker{color:#7fcfce;font-size:.69rem;font-weight:800;letter-spacing:.12em}.hero-panel h2{font-size:2rem;font-weight:740;letter-spacing:-.045em;line-height:1.13;margin:.7rem 0}.hero-panel h2 em{color:#f7c76e;font-style:normal}.hero-panel p{color:#d5e8e9;max-width:480px}.hero-panel .btn{border-radius:.5rem;color:var(--brand-900);margin-top:.25rem}.hero-panel .btn span{color:var(--primary);font-size:1.1rem;margin-left:.4rem}.hero-orbit{position:absolute;right:8.5%;top:50%;transform:translateY(-50%);width:120px;height:120px;border:1px solid rgba(255,255,255,.35);border-radius:50%;z-index:1}.orbit-core{position:absolute;inset:27px;display:grid;place-items:center;border-radius:50%;background:#f7c76e;color:#163a5f;font-size:1rem;font-weight:800;box-shadow:0 0 0 12px rgba(247,199,110,.08)}.dot{position:absolute;width:10px;height:10px;border-radius:50%;background:#7fcfce;box-shadow:0 0 0 5px rgba(127,207,206,.13)}.dot-one{top:5px;left:21px}.dot-two{right:-5px;bottom:27px;background:#f7c76e}.dot-three{left:1px;bottom:19px;background:#fff}
.metric-card{height:100%;background:#fff;border:1px solid var(--border);border-radius:.8rem;box-shadow:0 3px 10px rgba(16,42,67,.035);display:flex;align-items:center;gap:1rem;padding:1.25rem}.metric-card span,.metric-card small{color:var(--muted);display:block;font-size:.75rem}.metric-card span{font-weight:700;text-transform:uppercase;letter-spacing:.06em}.metric-card strong{color:var(--brand-900);display:block;font-size:1.7rem;line-height:1.2;margin:.15rem 0}.metric-card strong.metric-text{font-size:1.35rem}.metric-icon{height:43px;width:43px;border-radius:.65rem;display:grid;place-items:center;font-weight:800}.metric-icon.teal{background:#dcf5f4;color:#087e8b}.metric-icon.blue{background:#e4edf8;color:#2768a1}.metric-icon.amber{background:#fff4dc;color:#b87911}.metric-icon.green{background:#e1f7eb;color:#168352}.badge-soft{background:#edf7f6;border-radius:20px;color:#087e8b;font-size:.7rem;font-weight:700;padding:.35rem .65rem}.workflow{border-top:1px solid #e9eff1}.workflow-step{align-items:center;border-bottom:1px solid #e9eff1;display:flex;gap:1rem;padding:1rem 0}.workflow-step:last-child{border-bottom:0}.workflow-step b{color:#87a4b2;font-size:.75rem}.workflow-step div{flex:1}.workflow-step strong,.workflow-step span{display:block}.workflow-step span{color:var(--muted);font-size:.79rem;margin-top:.16rem}.workflow-step a{color:var(--primary);font-size:.78rem;font-weight:700;text-decoration:none}.admin-card{align-items:center;background:#f3f8f9;border-radius:.7rem;display:flex;gap:.7rem;padding:.8rem}.avatar{background:var(--brand-800);border-radius:50%;color:white;display:grid;place-items:center;font-weight:750;height:38px;width:38px}.admin-card div:nth-child(2){flex:1;font-size:.83rem}.admin-card span{display:block;color:var(--muted);font-size:.72rem;margin-top:.1rem}.status-dot{height:8px;width:8px;border-radius:50%;background:#38b779!important;box-shadow:0 0 0 3px #d9f5e7}.mobile-mark{display:none}
.project-table th[data-sort]{cursor:pointer;user-select:none}.project-table th[data-sort] i{color:#9aadb6;font-size:.75rem;font-style:normal;margin-left:.15rem}.project-table th[data-sort].sorted{color:var(--primary)}.project-table th[data-sort].sorted i{color:var(--primary)}.project-code{background:#eef5f6;border-radius:.3rem;color:#24576a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.73rem;font-weight:700;padding:.3rem .45rem;white-space:nowrap}.project-badge{border-radius:20px;display:inline-block;font-size:.69rem;font-weight:700;padding:.35rem .55rem;white-space:nowrap}.project-badge.low,.project-badge.planning{background:#e9f4f5;color:#087080}.project-badge.medium,.project-badge.progress{background:#fff4d9;color:#996514}.project-badge.high,.project-badge.hold{background:#fff0df;color:#b36310}.project-badge.critical,.project-badge.cancel{background:#fde8e7;color:#b5312d}.project-badge.complete{background:#e5f6ed;color:#18784d}.view-project-head{align-items:center;border-bottom:1px solid #e7eef0;display:flex;flex-wrap:wrap;gap:.55rem;padding-bottom:1rem}.view-project-head .project-code{margin-right:auto}.modal-body label{color:#6b7f8c;display:block;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.modal-body p{color:var(--text);font-size:.9rem;margin:.25rem 0 0}.view-description{background:#f5f8f9;border-radius:.5rem;line-height:1.6;padding:.8rem}
@media(max-width:767px){.app-shell{display:block}.sidebar{position:relative;width:100%;min-height:auto;padding:1rem!important}.sidebar .navbar-brand{margin-bottom:1rem!important}.sidebar nav{display:flex!important;flex-wrap:wrap;gap:.25rem!important}.sidebar .nav-link{padding:.45rem .65rem}.sidebar .nav-link.text-secondary{width:100%;margin-top:.4rem!important}.sidebar-bottom{display:none}.content{padding:1.25rem}.hero-panel{padding:1.8rem;min-height:270px}.hero-panel h2{font-size:1.6rem}.hero-orbit{opacity:.45;right:-15px;transform:scale(.78) translateY(-60%)}.mobile-mark{display:grid}.login-page{display:block;background:#fff}.login-brand-panel{display:none}.login-form-panel{min-height:100vh;padding:1.5rem}.mobile-login-logo{align-items:center;color:var(--brand-900);display:flex;gap:.55rem;font-size:1rem;margin-bottom:2.7rem}.mobile-login-logo img{height:38px;width:38px;object-fit:contain}.login-heading h2{font-size:1.75rem}.login-meta{font-size:.67rem}}

.password-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.85fr);min-height:100vh}.password-hero{background:radial-gradient(circle at 14% 14%,rgba(37,153,182,.48),transparent 30%),linear-gradient(145deg,#071d36,#0c3152 57%,#076e80);color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:3.25rem 8vw 2.5rem;position:relative}.password-hero:after{border:1px solid rgba(255,255,255,.14);border-radius:50%;content:"";height:520px;position:absolute;right:-270px;top:12%;width:520px}.password-brand{align-items:center;display:flex;gap:.7rem;position:relative;z-index:1}.brand-mark{align-items:center;background:linear-gradient(135deg,#1e79d8,#11a8b5);border-radius:.65rem;display:flex;font-size:.78rem;font-weight:800;height:42px;justify-content:center;width:42px}.password-brand strong,.password-brand small{display:block}.password-brand strong{font-size:1.08rem}.password-brand small{color:#9fcdd4;font-size:.64rem;letter-spacing:.08em;margin-top:.12rem;text-transform:uppercase}.password-hero-copy{max-width:510px;position:relative;z-index:1}.password-hero-copy h1{font-size:clamp(2.4rem,3.6vw,3.7rem);font-weight:750;letter-spacing:-.055em;line-height:1.08;margin:1rem 0}.password-hero-copy h1 em{color:#f5c970;font-style:normal}.password-hero-copy p{color:#c8e4e8;font-size:1rem;line-height:1.7}.password-security-points{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.password-security-points span{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);border-radius:99px;font-size:.78rem;padding:.55rem .8rem}.password-security-points i{color:#f4c66d;margin-right:.25rem}.password-brand-footer{color:#a5c8d1;position:relative;z-index:1}.password-form-panel{align-items:center;background:#fff;display:flex;justify-content:center;padding:2.5rem}.password-form-wrap{max-width:410px;width:100%}.password-title{margin-bottom:1.5rem}.password-title h2{color:var(--brand-900);font-size:2rem;font-weight:750;letter-spacing:-.045em;margin:.5rem 0}.password-title p{color:var(--muted);font-size:.9rem;margin:0}.account-update-card{align-items:center;background:#f3f8fc;border:1px solid #dfebf2;border-radius:.85rem;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:.8rem}.account-avatar{align-items:center;background:linear-gradient(135deg,#1268bf,#16a1ad);border-radius:50%;color:#fff;display:flex;font-weight:800;height:39px;justify-content:center;width:39px}.account-update-card small,.account-update-card strong,.account-update-card span{display:block}.account-update-card small{color:#6f8494;font-size:.67rem}.account-update-card strong{color:#163754;font-size:.84rem}.account-update-card span{color:#708797;font-size:.72rem;margin-top:.1rem}.password-input .input-group-text{background:#f7fafc;border-color:#ccd9e4;color:#1c72bd}.password-input .form-control{border-left:0;border-right:0}.password-input .form-control:focus{box-shadow:none}.password-input:focus-within{box-shadow:0 0 0 .22rem rgba(20,103,193,.13);border-radius:.375rem}.password-toggle{border-color:#ccd9e4;border-left:0;color:#3a78ae}.password-toggle:hover{background:#f7fafc;color:#155b9d}.password-rules{display:flex;flex-wrap:wrap;gap:.35rem .45rem;margin-top:.7rem}.password-rules span{background:#f3f5f7;border-radius:99px;color:#788896;font-size:.65rem;padding:.22rem .45rem}.password-rules span.valid{background:#e2f6ed;color:#138654}.password-submit{height:48px}.password-help{color:#748694;font-size:.73rem;margin:1.15rem 0 0;text-align:center}.password-help i{color:#1b76bd;margin-right:.2rem}@media(max-width:850px){.password-page{display:block}.password-hero{display:none}.password-form-panel{min-height:100vh;padding:1.5rem}}

.password-saas-page{align-items:center;background:radial-gradient(circle at 15% 10%,#e8f0ff,transparent 28%),radial-gradient(circle at 85% 90%,#e8fbf5,transparent 29%),linear-gradient(135deg,#f8faff,#eef3fb);display:flex;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;justify-content:center;min-height:100vh;padding:2rem;animation:passwordFade .42s ease-out}.password-saas-card{background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);border-radius:16px;box-shadow:0 24px 70px rgba(30,64,175,.13),0 3px 12px rgba(15,23,42,.06);max-width:500px;padding:2.4rem;width:100%;backdrop-filter:blur(18px)}.password-security-illustration{align-items:center;background:linear-gradient(145deg,#e7f0ff,#dcecff);border-radius:18px;color:#2563eb;display:flex;font-size:2.2rem;height:76px;justify-content:center;margin:0 auto 1.25rem;width:76px;box-shadow:inset 0 1px 1px rgba(255,255,255,.9)}.password-saas-header{text-align:center}.password-saas-header h1{color:#172554;font-size:32px;font-weight:760;letter-spacing:-.045em;line-height:1.15;margin:0 0 .7rem}.password-saas-header p{color:#64748b;font-size:14px;line-height:1.55;margin:0 auto 1.55rem;max-width:375px}.password-account-row{align-items:center;background:rgba(248,250,252,.82);border:1px solid #e6edf5;border-radius:12px;display:flex;gap:.75rem;margin-bottom:1.4rem;padding:.7rem .8rem}.password-account-avatar{align-items:center;background:linear-gradient(135deg,#2563eb,#0ea5b7);border-radius:50%;color:#fff;display:flex;font-size:.88rem;font-weight:800;height:39px;justify-content:center;width:39px}.password-account-row strong,.password-account-row span{display:block}.password-account-row strong{color:#27364e;font-size:14px}.password-account-row span{color:#718096;font-size:12px;margin-top:.1rem}.password-field>label{color:#334155;font-size:14px;font-weight:650;margin:0 0 .42rem}.password-field .input-group{transition:transform .2s ease}.password-field .input-group:focus-within{transform:translateY(-1px)}.password-field .input-group-text{background:#f8fafc;border-color:#d7e0eb;color:#2563eb;padding:0 .82rem}.password-field .form-control{border-left:0;border-right:0;font-size:16px;padding:.72rem .2rem}.password-field .form-control:focus{box-shadow:none}.password-field .input-group:focus-within{box-shadow:0 0 0 .22rem rgba(37,99,235,.14);border-radius:.375rem}.password-eye{background:#f8fafc;border-color:#d7e0eb;border-left:0;color:#6b7d94;padding:0 .85rem}.password-eye:hover{background:#f1f5f9;color:#2563eb}.password-strength-wrap{font-size:12px;margin-top:.8rem}.password-strength-wrap>div:first-child{color:#718096;margin-bottom:.35rem}.password-strength-wrap strong{font-weight:700}.progress{background:#e8edf3;height:6px}.progress-bar{transition:width .3s ease,background-color .3s ease}.strength-weak{color:#dc2626!important;background-color:#dc2626!important}.strength-fair{color:#f59e0b!important;background-color:#f59e0b!important}.strength-good{color:#2563eb!important;background-color:#2563eb!important}.strength-strong{color:#16a34a!important;background-color:#16a34a!important}.password-checklist{display:grid;grid-template-columns:1fr 1fr;gap:.4rem .7rem;list-style:none;margin:.85rem 0 0;padding:0}.password-checklist li{color:#7b8798;font-size:12px;transition:color .2s ease}.password-checklist li i{font-size:.78rem;margin-right:.22rem}.password-checklist li.is-valid{color:#16803e}.password-match{font-size:12px;min-height:18px;margin-top:.4rem}.password-match.match{color:#16a34a}.password-match.mismatch{color:#dc2626}.password-update-button{background:#2563eb;border-color:#2563eb;border-radius:9px;color:#fff;font-size:16px;font-weight:700;min-height:48px;overflow:hidden;position:relative;transition:transform .18s ease,box-shadow .18s ease}.password-update-button:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8;box-shadow:0 8px 18px rgba(37,99,235,.26);color:#fff;transform:translateY(-1px)}.password-update-button:active:not(:disabled):after{background:rgba(255,255,255,.25);border-radius:50%;content:"";height:160px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:160px}.password-update-button:disabled{background:#aabbd5;border-color:#aabbd5;cursor:not-allowed}.password-cancel{color:#64748b;display:block;font-size:14px;font-weight:600;margin-top:1rem;text-align:center;text-decoration:none}.password-cancel:hover{color:#2563eb;text-decoration:underline}.password-success-state{padding:.65rem 0 .2rem;text-align:center}.password-success-state.show{animation:passwordSuccess .45s ease-out}.password-success-icon{align-items:center;background:#dcfce7;border-radius:50%;color:#16a34a;display:flex;font-size:2.15rem;height:82px;justify-content:center;margin:0 auto 1.35rem;width:82px}.password-success-icon i{animation:passwordCheck .5s .15s both}.password-success-state h2{color:#173b2a;font-size:28px;font-weight:750;letter-spacing:-.04em}.password-success-state p{color:#64748b;font-size:14px;margin: .7rem 0 1.8rem}@keyframes passwordFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes passwordSuccess{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes passwordCheck{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@media(max-width:575px){.password-saas-page{padding:1rem}.password-saas-card{border-radius:14px;padding:1.7rem 1.25rem}.password-saas-header h1{font-size:28px}.password-checklist{grid-template-columns:1fr}.password-security-illustration{height:68px;width:68px}}
.password-login-message{margin-bottom:.8rem!important}.password-redirect-note{color:#718096;display:block;font-size:12px;margin-top:1rem}

/* Account recovery: intentionally independent of the regular two-column login layout. */
.forgot-page{align-items:center;background:linear-gradient(rgba(11,35,57,.66),rgba(11,35,57,.77)),url('../images/project-management-background.png') center/cover;display:flex;justify-content:center;min-height:100vh;padding:2rem;position:relative}.forgot-page:before{background:radial-gradient(circle,rgba(67,202,213,.22) 0,rgba(67,202,213,0) 65%);content:"";height:520px;left:calc(50% - 560px);position:absolute;top:calc(50% - 280px);width:520px}.forgot-card{background:rgba(255,255,255,.98);border:1px solid rgba(255,255,255,.65);border-radius:20px;box-shadow:0 28px 80px rgba(0,0,0,.34);max-width:470px;padding:2.25rem 2.5rem 1.65rem;position:relative;width:100%;z-index:1}.forgot-brand{align-items:center;color:#153650;display:flex;font-size:.71rem;font-weight:800;gap:.55rem;justify-content:center;letter-spacing:.08em;margin-bottom:1.6rem;text-transform:uppercase}.forgot-brand img{border-radius:50%;height:48px;object-fit:contain;width:48px}.forgot-icon{align-items:center;background:linear-gradient(135deg,#e4f7f8,#dceafa);border-radius:16px;color:#087e8b;display:flex;font-size:1.7rem;height:62px;justify-content:center;margin:0 auto 1rem;width:62px}.forgot-eyebrow{color:#087e8b;font-size:.68rem;font-weight:800;letter-spacing:.14em;margin-bottom:.55rem}.forgot-card h1{color:#12334a;font-size:2rem;font-weight:760;letter-spacing:-.04em}.forgot-copy{color:#65768a;font-size:.9rem;line-height:1.6;margin:0 auto;max-width:360px}.forgot-card .form-label{color:#29455c;font-size:.82rem;font-weight:700}.forgot-card .input-group-text{background:#f6fafb;border-color:#cddbe4;color:#087e8b}.forgot-card .form-control{border-left:0;font-size:.95rem;height:48px}.forgot-card .form-control:focus{box-shadow:0 0 0 .2rem rgba(8,126,139,.14)}.forgot-hint{color:#7b8b99;font-size:.73rem;margin:.55rem 0 1.35rem}.forgot-hint i{color:#087e8b}.forgot-submit{background:#087e8b;border-color:#087e8b;border-radius:.6rem;color:#fff;font-weight:700;height:50px;transition:.2s ease}.forgot-submit:hover{background:#05616b;border-color:#05616b;box-shadow:0 8px 18px rgba(8,126,139,.25);color:#fff;transform:translateY(-1px)}.forgot-submit:disabled{opacity:.8;transform:none}.forgot-card .alert{border-radius:.65rem;font-size:.82rem;line-height:1.45;margin-bottom:1.25rem}.forgot-back{color:#087e8b;display:block;font-size:.84rem;font-weight:650;margin:1.3rem auto 0;text-align:center;text-decoration:none}.forgot-back:hover{text-decoration:underline}.forgot-footer{border-top:1px solid #e6edf2;color:#81909a;font-size:.7rem;margin-top:1.5rem;padding-top:1rem;text-align:center}.forgot-footer span{padding:0 .3rem}@media(max-width:575px){.forgot-page{padding:1rem}.forgot-card{border-radius:16px;padding:1.75rem 1.35rem 1.35rem}.forgot-card h1{font-size:1.7rem}.forgot-brand{margin-bottom:1.25rem}}
.reset-page{align-items:center;background:linear-gradient(rgba(11,35,57,.66),rgba(11,35,57,.77)),url('../images/project-management-background.png') center/cover;display:flex;justify-content:center;min-height:100vh;padding:2rem;position:relative}.reset-page:before{background:radial-gradient(circle,rgba(53,133,255,.24),transparent 66%);content:"";height:560px;position:absolute;right:calc(50% - 560px);top:calc(50% - 280px);width:560px}.reset-card{background:rgba(255,255,255,.98);border:1px solid rgba(255,255,255,.7);border-radius:20px;box-shadow:0 28px 80px rgba(0,0,0,.34);max-width:500px;padding:2.25rem 2.5rem 1.65rem;position:relative;width:100%;z-index:1}.reset-card h1{color:#12334a;font-size:2rem;font-weight:760;letter-spacing:-.04em}.reset-icon{align-items:center;background:linear-gradient(135deg,#e5f0ff,#e2f8f5);border-radius:18px;color:#1966c9;display:flex;font-size:1.75rem;height:66px;justify-content:center;margin:0 auto 1rem;width:66px}.reset-copy{color:#65768a;font-size:.9rem;line-height:1.6;margin:0 auto;max-width:370px}.reset-input-group .input-group-text{background:#f6fafb;border-color:#cddbe4;color:#1966c9}.reset-input-group .form-control{border-left:0;border-right:0;font-size:.95rem;height:48px}.reset-input-group .form-control:focus{box-shadow:none}.reset-input-group:focus-within{border-radius:.45rem;box-shadow:0 0 0 .22rem rgba(37,99,235,.15)}.reset-toggle{background:#fff;border-color:#cddbe4;color:#52708a}.reset-toggle:hover{background:#f8fafc;color:#1966c9}.reset-strength{height:6px;margin-top:.5rem}.reset-strength .progress-bar{transition:width .25s ease}.reset-strength-text{color:#718096;font-size:.73rem;margin-top:.55rem}.reset-checklist{background:#f7fafc;border:1px solid #e2eaf0;border-radius:.75rem;color:#718096;display:grid;font-size:.75rem;gap:.38rem;padding:.8rem 1rem}.reset-checklist div{align-items:center;display:flex;gap:.45rem}.reset-checklist .met{color:#16955e;font-weight:650}.reset-match{font-size:.75rem;margin-top:.55rem;min-height:18px}.reset-match.valid{color:#16955e}.reset-match.invalid{color:#dc3545}.reset-submit{background:#2563eb;border-color:#2563eb;border-radius:.6rem;color:#fff;font-weight:700;height:50px}.reset-submit:hover{background:#1d4ed8;border-color:#1d4ed8;box-shadow:0 8px 18px rgba(37,99,235,.25);color:#fff}.reset-submit:disabled{opacity:.55}.reset-success{text-align:center}.reset-success-icon{align-items:center;background:#e7f8ee;border-radius:50%;color:#16a34a;display:flex;font-size:2.3rem;height:78px;justify-content:center;margin:0 auto 1.2rem;width:78px}.reset-success p{color:#65768a;font-size:.9rem;line-height:1.6;margin:0 auto 1.5rem;max-width:330px}@media(max-width:575px){.reset-page{padding:1rem}.reset-card{border-radius:16px;padding:1.75rem 1.35rem 1.35rem}.reset-card h1{font-size:1.7rem}}
.task-work-log-section{border-top:1px solid #e5edf5;padding-top:1.25rem}.work-log-summary>div>div{background:#f7faff;border:1px solid #e0eaf6;border-radius:.6rem;padding:.75rem .85rem}.work-log-summary span,.work-log-summary strong{display:block}.work-log-summary span{color:#6d8092;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.work-log-summary strong{color:#183c62;font-size:1.05rem;margin-top:.2rem}.work-log-summary .is-over{background:#fff5f5;border-color:#fecaca}.work-log-summary .is-over strong{color:#b91c1c}.work-log-over{color:#dc2626;font-size:.62rem;margin-left:.25rem}.task-work-log-section .table{font-size:.82rem}
#assignmentWorkLogsBody .work-log-summary>div>div{border-width:1px 1px 1px 4px;box-shadow:0 5px 14px rgba(16,37,74,.06);min-height:72px}
#assignmentWorkLogsBody .work-log-summary>div:nth-child(1)>div{background:#eef5ff;border-color:#bfdbfe;border-left-color:#2563eb}
#assignmentWorkLogsBody .work-log-summary>div:nth-child(2)>div{background:#ecfdf5;border-color:#bbf7d0;border-left-color:#16a34a}
#assignmentWorkLogsBody .work-log-summary>div:nth-child(3)>div{background:#f5f3ff;border-color:#ddd6fe;border-left-color:#7c3aed}
#assignmentWorkLogsBody .work-log-summary>div:nth-child(4)>div{background:#fff7ed;border-color:#fed7aa;border-left-color:#ea580c}
.my-task-log-tiles>div>div{border:0;box-shadow:0 6px 16px rgba(23,43,77,.1);min-height:86px}.my-task-log-tiles .summary-blue{background:linear-gradient(135deg,#e7f0ff,#cfe1ff)}.my-task-log-tiles .summary-green{background:linear-gradient(135deg,#e5f8ef,#c7efdd)}.my-task-log-tiles .summary-purple{background:linear-gradient(135deg,#f0e8ff,#dfceff)}.my-task-log-tiles .summary-orange{background:linear-gradient(135deg,#fff2dc,#ffe0ad)}.my-task-log-tiles .summary-pink{background:linear-gradient(135deg,#ffe9f1,#ffd0df)}.my-task-log-tiles span{color:#53657c}.my-task-log-tiles strong{color:#172b4d}

/* Enterprise application design system */
:root{--pm-navy:#0f2742;--pm-blue:#1769e0;--pm-blue-dark:#0d55bd;--pm-sky:#eaf2ff;--pm-canvas:#f6f8fc;--pm-line:#e4e9f2;--pm-text:#172b4d;--pm-muted:#6b778c;--pm-radius:12px;--pm-shadow:0 8px 24px rgba(23,43,77,.07)}
body{background:var(--pm-canvas);color:var(--pm-text);font-size:.9rem;letter-spacing:.002em}.app-shell{background:var(--pm-canvas)}.content{padding:2rem 2.5rem 3rem}.content>div>section.card,.content>section.card{border:1px solid var(--pm-line)!important;border-radius:var(--pm-radius)!important;box-shadow:var(--pm-shadow)!important}.content h1{font-size:1.7rem;font-weight:750;letter-spacing:-.035em}.section-kicker{color:#4c87db;font-size:.66rem}.text-muted{color:var(--pm-muted)!important}
.required-indicator{color:#dc3545;font:inherit;font-weight:700}
.sidebar{background:#102a43!important;box-shadow:none;flex:0 0 272px;padding:1.25rem 1rem!important;position:relative}.sidebar-brand{align-items:center;display:flex;justify-content:space-between;margin:.25rem .5rem 1.8rem}.sidebar-brand a{align-items:center;color:#fff;display:flex;font-size:1rem;font-weight:750;gap:.7rem;text-decoration:none}.sidebar-brand small{color:#92a5bd;display:block;font-size:.61rem;font-weight:600;letter-spacing:.08em;margin-top:.15rem;text-transform:uppercase}.brand-mark{background:linear-gradient(135deg,#3d9bff,#1769e0);border-radius:10px;box-shadow:0 8px 18px rgba(17,102,220,.28);height:36px;width:36px}.sidebar-toggle{background:rgba(255,255,255,.1);border:0;border-radius:8px;color:#fff;font-size:1.2rem;padding:.32rem .55rem}.sidebar .nav-link{align-items:center;border-radius:8px;color:#bdcad9!important;display:flex;font-size:.84rem;font-weight:550;gap:.62rem;margin:.14rem 0;padding:.66rem .75rem}.sidebar .nav-link i{color:#9bb2cc;font-size:1rem;width:1rem}.sidebar .nav-link:hover{background:rgba(255,255,255,.075);color:#fff!important;transform:none}.sidebar .nav-link.active{background:linear-gradient(90deg,rgba(38,115,223,.35),rgba(38,115,223,.16));box-shadow:inset 3px 0 #5da0ff;color:#fff!important}.sidebar .nav-link.active i{color:#80b9ff}.nav-section{color:#7991aa;font-size:.62rem;font-weight:750;letter-spacing:.1em;margin:1.3rem .75rem .45rem;text-transform:uppercase}.sidebar-bottom{bottom:1rem;left:1.5rem;right:1.5rem}.sign-out{align-items:center;background:#fff;border:1px solid #dce4f0;border-radius:8px;color:#40526b;display:flex;font-size:.78rem;font-weight:650;gap:.4rem;padding:.48rem .7rem;position:fixed;right:2rem;text-decoration:none;top:1.25rem;z-index:1040}.sign-out:hover{background:#fff4f4;border-color:#f0c7c7;color:#c23b3b}
.btn{border-radius:8px;font-size:.84rem;font-weight:650;padding:.53rem .9rem}.btn-primary{background:var(--pm-blue);border-color:var(--pm-blue);box-shadow:0 3px 8px rgba(23,105,224,.18)}.btn-primary:hover,.btn-primary:focus{background:var(--pm-blue-dark);border-color:var(--pm-blue-dark)}.btn-outline-primary{border-color:#9ec2fa;color:var(--pm-blue)}.btn-outline-primary:hover{background:var(--pm-blue);border-color:var(--pm-blue)}.btn-outline-danger{border-color:#f0b9bd;color:#c73e4a}.btn-outline-success{border-color:#9ed8bf;color:#177b4d}.btn-light{border:1px solid var(--pm-line);background:#fff}.btn-sm{border-radius:7px;font-size:.76rem;padding:.37rem .64rem}
.form-control,.form-select{background:#fff;border-color:#d8e0ec;border-radius:8px;font-size:.87rem;min-height:40px;padding:.55rem .75rem}.form-control:focus,.form-select:focus{border-color:#75abf6;box-shadow:0 0 0 .22rem rgba(23,105,224,.12)}.form-label{color:#43536a;font-size:.75rem;font-weight:700}.form-text{color:#8190a5;font-size:.7rem}.was-validated .form-control:invalid,.was-validated .form-select:invalid{border-color:#db5560}.invalid-feedback{font-size:.74rem}.modal-content{border:1px solid var(--pm-line);border-radius:14px;box-shadow:0 20px 55px rgba(23,43,77,.2)}.modal-header{background:#fbfcff;border-radius:14px 14px 0 0;padding:1.2rem 1.4rem}.modal-footer{background:#fbfcff;border-radius:0 0 14px 14px}.modal-body{padding:1.5rem}.modal-body .row.g-3{row-gap:1.2rem!important}
.table-responsive{border:1px solid var(--pm-line);border-radius:10px}.project-table{font-size:.84rem}.table thead th{background:#f4f7fc;border-bottom:1px solid var(--pm-line);color:#64748b;font-size:.67rem;letter-spacing:.075em;padding:.9rem 1rem;position:sticky;top:0;z-index:2}.table td{border-color:#edf0f5;padding:.9rem 1rem}.table-hover tbody tr{transition:background .16s ease}.table-hover tbody tr:hover{background:#f7faff}.project-code{background:#edf4ff;color:#3468ae}.alert{border-left:4px solid;border-radius:9px;font-size:.84rem;padding:.85rem 1rem}.alert-success{border-left-color:#20a464}.alert-danger{border-left-color:#d9555e}.badge,.project-badge{border-radius:999px;font-weight:700}.project-badge{padding:.36rem .62rem}.card{border-radius:var(--pm-radius)!important}.shadow-sm{box-shadow:var(--pm-shadow)!important}
.project-table td:last-child{min-width:190px;white-space:nowrap}.project-table td:last-child .btn{display:inline-block;margin:0 .08rem}.project-table td:last-child .btn+.btn{margin-left:.18rem}
.form-select{appearance:none;background-color:#fff!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%231769e0' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='m3 6 5 5 5-5'/%3E%3C/svg%3E")!important;background-position:right .8rem center!important;background-repeat:no-repeat!important;background-size:16px 16px!important;cursor:pointer!important;padding-right:2.5rem!important}.form-select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%230d55bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m3 6 5 5 5-5'/%3E%3C/svg%3E")!important}.form-select:disabled{background-color:#f5f7fb!important;cursor:not-allowed!important;opacity:.8}
#previous,#next{background:#edf4ff;border-color:#a9c9fa;color:#1769e0;font-weight:700;transition:all .18s ease}#previous:hover:not(:disabled),#next:hover:not(:disabled){background:#1769e0;border-color:#1769e0;box-shadow:0 4px 10px rgba(23,105,224,.2);color:#fff;transform:translateY(-1px)}#previous:disabled,#next:disabled{background:#f2f4f8;border-color:#dde3ec;color:#9ba8b8;opacity:1}
.employee-date-picker,.app-date-picker{height:1px!important;opacity:0!important;position:absolute!important;pointer-events:none!important;width:1px!important}
.dashboard-page{max-width:1500px}.dashboard-header{border-bottom:1px solid var(--pm-line);margin-bottom:1.5rem;padding:0 0 1.2rem}.dashboard-welcome{background:linear-gradient(120deg,#153a70,#1769e0);border-radius:14px;box-shadow:0 12px 28px rgba(23,105,224,.18)}.dash-stat,.dash-panel{border-color:var(--pm-line);border-radius:12px;box-shadow:var(--pm-shadow)}.dash-stat{transition:transform .18s ease,box-shadow .18s ease}.dash-stat:hover{box-shadow:0 12px 26px rgba(23,43,77,.11);transform:translateY(-2px)}.dash-stat i{background:#ebf2ff;color:#1769e0}.dash-panel h2{color:var(--pm-text)}.dash-action a{color:var(--pm-blue)}.dash-action-icon{background:#ebf2ff;color:var(--pm-blue)}
 .overview-bars{display:grid;gap:1rem;margin-top:1.5rem}.overview-bars>div{align-items:center;display:grid;gap:.8rem;grid-template-columns:92px 1fr 28px}.overview-bars span{color:#5e6c84;font-size:.78rem;font-weight:650}.overview-bars b{background:linear-gradient(90deg,#1769e0,#6ba9ff);border-radius:999px;height:10px;min-width:8px;position:relative}.overview-bars b:after{background:#e8effa;border-radius:999px;content:"";height:10px;left:0;position:absolute;top:0;width:100%;z-index:-1}.overview-bars strong{color:var(--pm-text);font-size:.8rem;text-align:right}
@media(max-width:767px){.content{padding:1.25rem 1rem 2rem}.sidebar{min-height:auto;width:100%;padding:.9rem!important}.sidebar-brand{margin:0 .2rem}.sidebar .nav{padding-top:.7rem}.sidebar-bottom{display:none}.sign-out{right:1rem;top:1rem}.sign-out span{display:none}.sign-out i{font-size:1rem}.content h1{font-size:1.45rem}.table-responsive{border-radius:8px}.dashboard-header{padding-right:3rem}.modal-dialog{margin:.6rem}.dashboard-welcome{padding:1.5rem}}

/* Readability scale: keep the enterprise layout, but use comfortable 16px body text. */
body{font-size:1rem}.content h1{font-size:1.9rem}.sidebar .nav-link{font-size:.94rem}.sidebar .navbar-brand,.sidebar-brand a{font-size:1.1rem}.sidebar .nav-link.text-secondary,.nav-section{font-size:.71rem}.btn{font-size:.92rem}.btn-sm{font-size:.82rem}.form-control,.form-select{font-size:.96rem;min-height:44px}.form-label{font-size:.84rem}.form-text,.invalid-feedback{font-size:.78rem}.table{font-size:.94rem}.project-table{font-size:.92rem}.table thead th{font-size:.74rem;padding:1rem}.table td{padding:1rem}.alert{font-size:.92rem}.badge,.project-badge{font-size:.78rem}.text-muted,small{font-size:.84rem}.modal-title{font-size:1.2rem}.modal-body label{font-size:.76rem}.modal-body p{font-size:.98rem}.sign-out{font-size:.86rem}.sidebar-bottom{font-size:.8rem}@media(max-width:767px){body{font-size:.96rem}.content h1{font-size:1.65rem}.table{font-size:.9rem}.table thead th{font-size:.7rem}.sidebar .nav-link{font-size:.9rem}.form-control,.form-select{font-size:.94rem}}

/* Searchable dropdowns (Select2): match the existing Bootstrap form controls. */
.select2-container{width:100%!important}.select2-container--default .select2-selection--single{background:#fff;border:1px solid #d8e0ec;border-radius:8px;height:44px}.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--pm-text);font-size:.96rem;line-height:42px;padding-left:.75rem;padding-right:2.4rem}.select2-container--default .select2-selection--single .select2-selection__placeholder{color:#6b778c}.select2-container--default .select2-selection--single .select2-selection__arrow{height:42px;right:.55rem}.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#1769e0 transparent transparent;border-width:6px 5px 0}.select2-container--default.select2-container--focus .select2-selection--single,.select2-container--default.select2-container--open .select2-selection--single{border-color:#75abf6;box-shadow:0 0 0 .22rem rgba(23,105,224,.12)}.select2-dropdown{border:1px solid #cdd9e8;border-radius:8px;box-shadow:0 12px 24px rgba(23,43,77,.14);overflow:hidden}.select2-search--dropdown{padding:.55rem}.select2-search--dropdown .select2-search__field{border:1px solid #bcd1f1;border-radius:6px;font-size:.9rem;min-height:36px;outline:0;padding:.35rem .55rem}.select2-results__option{font-size:.92rem;padding:.55rem .75rem}.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#1769e0}.select2-container--default .select2-selection--single .select2-selection__clear{color:#73829a;font-size:1.1rem;margin-right:1.5rem}.select2-container--default.select2-container--disabled .select2-selection--single{background:#f5f7fb;color:#73829a}

/* Azure DevOps + Jira theme refresh: presentation only; no application behaviour changes. */
:root{--pm-navy:#172b4d;--pm-blue:#0052cc;--pm-blue-dark:#0747a6;--pm-sky:#deebff;--pm-canvas:#f7f8fa;--pm-line:#dfe1e6;--pm-text:#172b4d;--pm-muted:#5e6c84;--pm-radius:8px;--pm-shadow:0 1px 3px rgba(9,30,66,.16),0 0 1px rgba(9,30,66,.31)}
body,.app-shell{background:var(--pm-canvas)}.content{padding:2rem 2.5rem 3.25rem}.content h1{color:#172b4d;font-weight:700}.content>div>section.card,.content>section.card,.card{box-shadow:var(--pm-shadow)!important}.sidebar{background:linear-gradient(180deg,#172b4d 0%,#0f1f38 100%)!important;flex-basis:264px}.sidebar-brand{border-bottom:1px solid rgba(255,255,255,.12);margin:.1rem .5rem 1.2rem;padding:0 0 1.15rem}.brand-mark{background:#0052cc;border-radius:7px;box-shadow:0 3px 8px rgba(0,82,204,.42)}.sidebar .nav-link{border-radius:6px;color:#c7d1df!important;font-weight:600;margin:.12rem 0}.sidebar .nav-link i{color:#a9bed7}.sidebar .nav-link:hover{background:rgba(9,30,66,.58)}.sidebar .nav-link.active{background:#0747a6;box-shadow:inset 3px 0 #79b8ff}.sidebar .nav-link.active i{color:#fff}.nav-section{color:#8fa5c2;font-size:.65rem;margin-top:1.45rem}.sidebar-bottom{color:#a8bad1}.sign-out{box-shadow:0 1px 2px rgba(9,30,66,.15);color:#42526e}.sign-out:hover{background:#ffebe6;border-color:#ffbdad;color:#bf2600}
.btn-primary{background:#0052cc;border-color:#0052cc;box-shadow:0 1px 3px rgba(9,30,66,.25)}.btn-primary:hover,.btn-primary:focus{background:#0747a6;border-color:#0747a6;box-shadow:0 3px 8px rgba(9,30,66,.24)}.btn-outline-primary{border-color:#4c9aff;color:#0052cc}.btn-outline-primary:hover{background:#0052cc;border-color:#0052cc}.btn-outline-danger{border-color:#ffbdad;color:#bf2600}.btn-outline-danger:hover{background:#de350b;border-color:#de350b}.btn-light{color:#42526e}.btn-light:hover{background:#ebecf0}.form-control,.form-select{border-color:#dfe1e6;border-radius:5px;color:#172b4d}.form-control:hover,.form-select:hover{border-color:#b3bac5}.form-control:focus,.form-select:focus{border-color:#4c9aff;box-shadow:0 0 0 2px #b3d4ff}.modal-content{border-color:#dfe1e6;border-radius:10px;box-shadow:0 12px 30px rgba(9,30,66,.28)}.modal-header,.modal-footer{background:#fafbfc}.table-responsive{border-color:#dfe1e6;border-radius:7px}.table thead th{background:#f4f5f7;color:#42526e}.table td{border-color:#ebecf0}.table-hover tbody tr:hover{background:#f1f8ff}.project-code{background:#deebff;color:#0747a6}.alert{border-left-width:3px;box-shadow:none}.badge,.project-badge{border-radius:4px}.badge-soft{background:#deebff;color:#0747a6}
.dashboard-welcome{background:linear-gradient(115deg,#172b4d 0%,#0747a6 100%)!important;box-shadow:0 8px 20px rgba(9,30,66,.22)!important}.dashboard-welcome small{color:#b3d4ff!important}.dashboard-welcome p{color:#dfe9fb!important}.dash-stat,.dash-panel{border-color:#dfe1e6!important;box-shadow:var(--pm-shadow)!important}.dash-stat i,.dash-action-icon{background:#deebff!important;color:#0052cc!important}.dash-panel h2,.employee-next h2{color:#172b4d!important}.dash-action a{color:#0052cc!important}.overview-bars b{background:linear-gradient(90deg,#0052cc,#4c9aff)!important}.overview-bars b:after{background:#dfe1e6!important}.pending-work-card .table th{background:#f4f5f7!important}
.select2-container--default .select2-selection--single{border-color:#dfe1e6;border-radius:5px}.select2-container--default .select2-selection--single .select2-selection__arrow b{border-top-color:#0052cc}.select2-container--default.select2-container--focus .select2-selection--single,.select2-container--default.select2-container--open .select2-selection--single{border-color:#4c9aff;box-shadow:0 0 0 2px #b3d4ff}.select2-dropdown{border-color:#b3bac5;border-radius:6px;box-shadow:0 6px 16px rgba(9,30,66,.24)}.select2-search--dropdown .select2-search__field{border-color:#4c9aff;border-radius:4px}.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#0052cc}
@media(max-width:767px){.content{padding:1.25rem 1rem 2.5rem}.sidebar{flex-basis:auto}.sidebar-brand{margin-bottom:.7rem;padding-bottom:.7rem}}

/* Jira-style workspace navigation. Links and role permissions remain unchanged. */
.sidebar{padding:.95rem .8rem!important}.sidebar-brand{align-items:flex-start;background:linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.1);border-radius:10px;margin:.15rem .2rem 1rem;padding:.85rem .75rem}.sidebar-brand a{align-items:center;min-width:0}.sidebar-brand a>span:last-child{line-height:1.18;overflow:hidden;text-overflow:ellipsis}.sidebar-brand small{color:#aebfd5;letter-spacing:.1em;margin-top:.28rem}.brand-mark{border-radius:8px;flex:0 0 36px}.sidebar-navigation{padding:.05rem .2rem 4.6rem}.nav-section{align-items:center;color:#94a9c3;display:flex;font-size:.62rem;gap:.45rem;margin:1.25rem .55rem .45rem;padding:0;text-transform:uppercase}.nav-section:after{background:rgba(174,195,218,.22);content:"";flex:1;height:1px}.sidebar .nav-link{border:1px solid transparent;border-radius:7px;min-height:42px;padding:.62rem .7rem;position:relative}.sidebar .nav-link i{align-items:center;background:rgba(255,255,255,.055);border-radius:6px;color:#b8c9dc;display:inline-flex;height:27px;justify-content:center;margin-left:-.12rem;width:27px}.sidebar .nav-link:hover{background:rgba(255,255,255,.085);border-color:rgba(255,255,255,.055)}.sidebar .nav-link:hover i{background:rgba(76,154,255,.2);color:#dceaff}.sidebar .nav-link.active{background:linear-gradient(90deg,#0753b8 0%,#064595 100%);border-color:rgba(135,186,255,.28);box-shadow:0 6px 14px rgba(0,0,0,.16),inset 3px 0 #9cc9ff}.sidebar .nav-link.active i{background:rgba(255,255,255,.17);color:#fff}.sidebar-bottom{align-items:center;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:8px;display:flex;left:1rem;padding:.62rem .7rem;right:1rem}.sidebar-live{flex:0 0 auto}.sidebar-toggle{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.12);border-radius:7px;line-height:1;padding:.38rem .55rem}
@media(max-width:767px){.sidebar-brand{margin:.1rem .1rem .6rem}.sidebar-navigation{padding-bottom:.3rem}.sidebar .nav-link{display:inline-flex;margin:.12rem 0}.nav-section{width:100%}}

/* User-selectable themes. Preference is stored locally in the browser. */
.theme-switcher{align-items:center;background:#fff;border:1px solid #dfe1e6;border-radius:8px;box-shadow:0 1px 2px rgba(9,30,66,.15);display:flex;gap:.3rem;height:36px;padding:0 .25rem 0 .55rem;position:fixed;right:8.3rem;top:1.25rem;z-index:1040}.theme-switcher i{color:#0052cc;font-size:.9rem}.theme-select{appearance:none;background:#fff;border:0;border-radius:5px;color:#42526e;cursor:pointer;font-size:.77rem;font-weight:650;height:30px;outline:0;padding:0 1.35rem 0 .1rem}.theme-switcher:after{color:#60758f;content:"⌄";font-size:.9rem;pointer-events:none;position:absolute;right:.45rem;top:.38rem}.theme-select:focus{box-shadow:0 0 0 2px #b3d4ff}
body[data-theme="midnight"]{--pm-navy:#111827;--pm-blue:#2563eb;--pm-blue-dark:#1d4ed8;--pm-sky:#dbeafe;--pm-canvas:#111827;--pm-line:#334155;--pm-text:#e5edf8;--pm-muted:#aebed3;--pm-shadow:0 10px 30px rgba(0,0,0,.28);background:#111827;color:#e5edf8}body[data-theme="midnight"] .app-shell,body[data-theme="midnight"] .content{background:#111827}body[data-theme="midnight"] .content h1,body[data-theme="midnight"] .dash-panel h2,body[data-theme="midnight"] .employee-next h2{color:#e5edf8!important}body[data-theme="midnight"] .content>div>section.card,body[data-theme="midnight"] .content>section.card,body[data-theme="midnight"] .card,body[data-theme="midnight"] .dash-stat,body[data-theme="midnight"] .dash-panel,body[data-theme="midnight"] .employee-next{background:#1e293b!important;border-color:#334155!important;color:#e5edf8}body[data-theme="midnight"] .dash-stat strong,body[data-theme="midnight"] .dash-action strong,body[data-theme="midnight"] .account-row strong{color:#f8fafc}body[data-theme="midnight"] .dash-stat span,body[data-theme="midnight"] .dash-panel>p,body[data-theme="midnight"] .dash-action span,body[data-theme="midnight"] .account-row span,body[data-theme="midnight"] .text-muted{color:#aebed3!important}body[data-theme="midnight"] .table-responsive{border-color:#334155}body[data-theme="midnight"] .table{color:#e5edf8}body[data-theme="midnight"] .table thead th{background:#26364c;color:#cbd8e8;border-color:#3a4a61}body[data-theme="midnight"] .table td{border-color:#334155}body[data-theme="midnight"] .table-hover tbody tr:hover{background:#26364c}body[data-theme="midnight"] .form-control,body[data-theme="midnight"] .form-select,body[data-theme="midnight"] .select2-container--default .select2-selection--single{background:#1e293b!important;border-color:#475569;color:#e5edf8}body[data-theme="midnight"] .select2-container--default .select2-selection--single .select2-selection__rendered{color:#e5edf8}body[data-theme="midnight"] .modal-content,body[data-theme="midnight"] .modal-header,body[data-theme="midnight"] .modal-footer{background:#1e293b;color:#e5edf8;border-color:#334155}body[data-theme="midnight"] .modal-title,body[data-theme="midnight"] .modal-body p{color:#e5edf8}body[data-theme="midnight"] .theme-switcher,body[data-theme="midnight"] .theme-select,body[data-theme="midnight"] .sign-out{background:#1e293b;border-color:#475569;color:#d9e5f3}body[data-theme="midnight"] .theme-switcher i{color:#93c5fd}
body[data-theme="light"]{--pm-navy:#183153;--pm-blue:#0f766e;--pm-blue-dark:#0f5f59;--pm-sky:#e5f6f3;--pm-canvas:#f6f8f9;--pm-line:#d7e1e4;--pm-text:#203747;--pm-muted:#627783}body[data-theme="light"] .sidebar{background:linear-gradient(180deg,#183153,#10293b)!important}body[data-theme="light"] .brand-mark,body[data-theme="light"] .btn-primary{background:#0f766e;border-color:#0f766e}body[data-theme="light"] .btn-primary:hover,body[data-theme="light"] .btn-primary:focus{background:#0f5f59;border-color:#0f5f59}body[data-theme="light"] .sidebar .nav-link.active{background:linear-gradient(90deg,#0f766e,#0b5f5a);box-shadow:inset 3px 0 #82d8ca}body[data-theme="light"] .sidebar .nav-link.active i{background:rgba(255,255,255,.16)}body[data-theme="light"] .dash-stat i,body[data-theme="light"] .dash-action-icon,body[data-theme="light"] .badge-soft{background:#e5f6f3!important;color:#0f766e!important}body[data-theme="light"] .dashboard-welcome{background:linear-gradient(115deg,#183153,#0f766e)!important}body[data-theme="light"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#0f766e}
body[data-theme="ocean"]{--pm-navy:#073b4c;--pm-blue:#0077b6;--pm-blue-dark:#005f8f;--pm-sky:#e0f4fb;--pm-canvas:#f5fafc;--pm-line:#d3e5ec;--pm-text:#14354a;--pm-muted:#5d7785}body[data-theme="ocean"] .sidebar{background:linear-gradient(180deg,#073b4c,#032d3d)!important}body[data-theme="ocean"] .brand-mark,body[data-theme="ocean"] .btn-primary{background:#0077b6;border-color:#0077b6}body[data-theme="ocean"] .btn-primary:hover,body[data-theme="ocean"] .btn-primary:focus{background:#005f8f;border-color:#005f8f}body[data-theme="ocean"] .sidebar .nav-link.active{background:linear-gradient(90deg,#0077b6,#00669d);box-shadow:inset 3px 0 #85d6f5}body[data-theme="ocean"] .dash-stat i,body[data-theme="ocean"] .dash-action-icon,body[data-theme="ocean"] .badge-soft{background:#e0f4fb!important;color:#0077b6!important}body[data-theme="ocean"] .dashboard-welcome{background:linear-gradient(115deg,#073b4c,#0077b6)!important}body[data-theme="ocean"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#0077b6}
body[data-theme="violet"]{--pm-navy:#312e55;--pm-blue:#6d4aff;--pm-blue-dark:#5534d8;--pm-sky:#eeeaff;--pm-canvas:#f8f7fc;--pm-line:#e3e0f0;--pm-text:#2d294d;--pm-muted:#6d6884}body[data-theme="violet"] .sidebar{background:linear-gradient(180deg,#312e55,#252344)!important}body[data-theme="violet"] .brand-mark,body[data-theme="violet"] .btn-primary{background:#6d4aff;border-color:#6d4aff}body[data-theme="violet"] .btn-primary:hover,body[data-theme="violet"] .btn-primary:focus{background:#5534d8;border-color:#5534d8}body[data-theme="violet"] .sidebar .nav-link.active{background:linear-gradient(90deg,#6244de,#4e35bd);box-shadow:inset 3px 0 #b9aaff}body[data-theme="violet"] .dash-stat i,body[data-theme="violet"] .dash-action-icon,body[data-theme="violet"] .badge-soft{background:#eeeaff!important;color:#6244de!important}body[data-theme="violet"] .dashboard-welcome{background:linear-gradient(115deg,#312e55,#6d4aff)!important}body[data-theme="violet"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#6d4aff}
body[data-theme="slate"]{--pm-navy:#263238;--pm-blue:#455a64;--pm-blue-dark:#37474f;--pm-sky:#edf1f2;--pm-canvas:#f7f8f8;--pm-line:#dbe1e3;--pm-text:#263238;--pm-muted:#627278}body[data-theme="slate"] .sidebar{background:linear-gradient(180deg,#263238,#1b2529)!important}body[data-theme="slate"] .brand-mark,body[data-theme="slate"] .btn-primary{background:#455a64;border-color:#455a64}body[data-theme="slate"] .btn-primary:hover,body[data-theme="slate"] .btn-primary:focus{background:#37474f;border-color:#37474f}body[data-theme="slate"] .sidebar .nav-link.active{background:linear-gradient(90deg,#455a64,#37474f);box-shadow:inset 3px 0 #b0bec5}body[data-theme="slate"] .dash-stat i,body[data-theme="slate"] .dash-action-icon,body[data-theme="slate"] .badge-soft{background:#edf1f2!important;color:#455a64!important}body[data-theme="slate"] .dashboard-welcome{background:linear-gradient(115deg,#263238,#455a64)!important}body[data-theme="slate"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#455a64}
body[data-theme="colorful"]{--pm-navy:#392d75;--pm-blue:#7c3aed;--pm-blue-dark:#6d28d9;--pm-sky:#f0eaff;--pm-canvas:#fbfaff;--pm-line:#e9e2f4;--pm-text:#332b55;--pm-muted:#71688d}body[data-theme="colorful"] .sidebar{background:linear-gradient(180deg,#392d75 0%,#5c2e89 48%,#a04785 100%)!important}body[data-theme="colorful"] .brand-mark{background:linear-gradient(135deg,#ff8a4c,#f43f7f);border-color:transparent;box-shadow:0 5px 12px rgba(244,63,127,.38)}body[data-theme="colorful"] .btn-primary{background:linear-gradient(135deg,#7c3aed,#db2777);border:0;box-shadow:0 4px 10px rgba(124,58,237,.25)}body[data-theme="colorful"] .btn-primary:hover,body[data-theme="colorful"] .btn-primary:focus{background:linear-gradient(135deg,#6d28d9,#be185d);border:0}body[data-theme="colorful"] .sidebar .nav-link.active{background:linear-gradient(90deg,rgba(255,137,76,.92),rgba(244,63,127,.93));box-shadow:inset 3px 0 #ffe08a,0 5px 12px rgba(42,17,82,.2)}body[data-theme="colorful"] .sidebar .nav-link:hover{background:rgba(255,255,255,.14)}body[data-theme="colorful"] .sidebar .nav-link i{color:#f5dfff}body[data-theme="colorful"] .dash-stat:nth-child(4n+1) i,body[data-theme="colorful"] .dash-action:nth-of-type(4n+1) .dash-action-icon{background:#efe4ff!important;color:#7c3aed!important}body[data-theme="colorful"] .dash-stat:nth-child(4n+2) i,body[data-theme="colorful"] .dash-action:nth-of-type(4n+2) .dash-action-icon{background:#ffe6ef!important;color:#db2777!important}body[data-theme="colorful"] .dash-stat:nth-child(4n+3) i,body[data-theme="colorful"] .dash-action:nth-of-type(4n+3) .dash-action-icon{background:#fff0d8!important;color:#d97706!important}body[data-theme="colorful"] .dash-stat:nth-child(4n) i,body[data-theme="colorful"] .dash-action:nth-of-type(4n) .dash-action-icon{background:#dff8f1!important;color:#0f9f78!important}body[data-theme="colorful"] .dashboard-welcome{background:linear-gradient(115deg,#4c2c85 0%,#7c3aed 48%,#db2777 100%)!important}body[data-theme="colorful"] .badge-soft{background:#f0eaff!important;color:#7c3aed!important}body[data-theme="colorful"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#7c3aed}
body[data-theme="sunset"]{--pm-navy:#6b2140;--pm-blue:#e85d04;--pm-blue-dark:#c2410c;--pm-sky:#ffedd5;--pm-canvas:#fffaf7;--pm-line:#f5dcc9;--pm-text:#56213a;--pm-muted:#8a6570}body[data-theme="sunset"] .sidebar{background:linear-gradient(180deg,#6b2140 0%,#a53943 45%,#e85d04 100%)!important}body[data-theme="sunset"] .brand-mark,body[data-theme="sunset"] .btn-primary{background:linear-gradient(135deg,#f97316,#ef4444);border-color:transparent}body[data-theme="sunset"] .btn-primary:hover,body[data-theme="sunset"] .btn-primary:focus{background:linear-gradient(135deg,#ea580c,#dc2626);border-color:transparent}body[data-theme="sunset"] .sidebar .nav-link.active{background:linear-gradient(90deg,#f97316,#ef4444);box-shadow:inset 3px 0 #fde68a}body[data-theme="sunset"] .dash-stat i,body[data-theme="sunset"] .dash-action-icon,body[data-theme="sunset"] .badge-soft{background:#ffedd5!important;color:#e85d04!important}body[data-theme="sunset"] .dashboard-welcome{background:linear-gradient(115deg,#6b2140,#b83b46,#f97316)!important}body[data-theme="sunset"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#e85d04}
body[data-theme="tropical"]{--pm-navy:#075b5e;--pm-blue:#009b8f;--pm-blue-dark:#007c73;--pm-sky:#d9f8ef;--pm-canvas:#f5fffb;--pm-line:#cfebe3;--pm-text:#164a4d;--pm-muted:#608085}body[data-theme="tropical"] .sidebar{background:linear-gradient(180deg,#075b5e 0%,#008f82 48%,#21b785 100%)!important}body[data-theme="tropical"] .brand-mark,body[data-theme="tropical"] .btn-primary{background:linear-gradient(135deg,#00a896,#7bd389);border-color:transparent}body[data-theme="tropical"] .btn-primary:hover,body[data-theme="tropical"] .btn-primary:focus{background:linear-gradient(135deg,#008f82,#49ad70);border-color:transparent}body[data-theme="tropical"] .sidebar .nav-link.active{background:linear-gradient(90deg,#00a896,#45c486);box-shadow:inset 3px 0 #ecfccb}body[data-theme="tropical"] .dash-stat i,body[data-theme="tropical"] .dash-action-icon,body[data-theme="tropical"] .badge-soft{background:#d9f8ef!important;color:#009b8f!important}body[data-theme="tropical"] .dashboard-welcome{background:linear-gradient(115deg,#075b5e,#009b8f,#7bd389)!important}body[data-theme="tropical"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#009b8f}
body[data-theme="candy"]{--pm-navy:#44336d;--pm-blue:#e83e8c;--pm-blue-dark:#c72b72;--pm-sky:#ffe7f2;--pm-canvas:#fff8fc;--pm-line:#f0dce8;--pm-text:#493257;--pm-muted:#806b8a}body[data-theme="candy"] .sidebar{background:linear-gradient(180deg,#44336d 0%,#814a99 48%,#e83e8c 100%)!important}body[data-theme="candy"] .brand-mark,body[data-theme="candy"] .btn-primary{background:linear-gradient(135deg,#e83e8c,#ff8fab);border-color:transparent}body[data-theme="candy"] .btn-primary:hover,body[data-theme="candy"] .btn-primary:focus{background:linear-gradient(135deg,#c72b72,#ef6f96);border-color:transparent}body[data-theme="candy"] .sidebar .nav-link.active{background:linear-gradient(90deg,#e83e8c,#ff8fab);box-shadow:inset 3px 0 #fef08a}body[data-theme="candy"] .dash-stat i,body[data-theme="candy"] .dash-action-icon,body[data-theme="candy"] .badge-soft{background:#ffe7f2!important;color:#e83e8c!important}body[data-theme="candy"] .dashboard-welcome{background:linear-gradient(115deg,#44336d,#a44da1,#e83e8c)!important}body[data-theme="candy"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#e83e8c}
body[data-theme="aurora"]{--pm-navy:#102f50;--pm-blue:#1b6ae8;--pm-blue-dark:#1456bd;--pm-sky:#e5f4ff;--pm-canvas:#f5f9ff;--pm-line:#d7e5f2;--pm-text:#153453;--pm-muted:#637b94;--pm-shadow:0 10px 28px rgba(13,57,99,.11)}body[data-theme="aurora"] .sidebar{background:linear-gradient(180deg,#102f50 0%,#174e75 48%,#146e87 100%)!important}body[data-theme="aurora"] .brand-mark,body[data-theme="aurora"] .btn-primary{background:linear-gradient(135deg,#1b6ae8,#14a8b6);border-color:transparent;box-shadow:0 5px 12px rgba(27,106,232,.24)}body[data-theme="aurora"] .btn-primary:hover,body[data-theme="aurora"] .btn-primary:focus{background:linear-gradient(135deg,#1456bd,#0d8894);border-color:transparent}body[data-theme="aurora"] .sidebar .nav-link.active{background:linear-gradient(90deg,#1b6ae8,#168fa9);box-shadow:inset 3px 0 #8de6ed,0 5px 12px rgba(5,26,54,.22)}body[data-theme="aurora"] .sidebar .nav-link i{color:#9edfeb}body[data-theme="aurora"] .dash-stat i,body[data-theme="aurora"] .dash-action-icon,body[data-theme="aurora"] .badge-soft{background:#e5f4ff!important;color:#1677c8!important}body[data-theme="aurora"] .dashboard-welcome{background:linear-gradient(115deg,#102f50,#1b6ae8 52%,#14a8b6)!important}body[data-theme="aurora"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#1b6ae8}
/* System configuration */
.configuration-page{margin:0 auto;max-width:1120px}.configuration-page .card{border:1px solid var(--pm-line)!important}.configuration-icon{align-items:center;background:var(--pm-sky);border-radius:10px;color:var(--pm-blue);display:inline-flex;flex:0 0 42px;font-size:1.15rem;height:42px;justify-content:center;width:42px}.configuration-page h2{color:var(--pm-text);font-weight:700}.configuration-page .input-group .form-control{border-right:0}.configuration-page .input-group .btn{border-color:#dfe1e6;border-left:0}.configuration-page .input-group:focus-within{border-radius:5px;box-shadow:0 0 0 2px #b3d4ff}.configuration-page .input-group:focus-within .form-control,.configuration-page .input-group:focus-within .btn{border-color:#4c9aff;box-shadow:none}
.serial-column{color:#5e6c84;font-variant-numeric:tabular-nums;text-align:center;width:68px}
.timesheet-date-shortfall{background:#fff1f2;border:1px solid #fecdd3;border-radius:8px;color:#b42336;padding:.45rem .75rem}.timesheet-date-shortfall #selectedDate{color:#b42336}.timesheet-work-date-shortfall{background:#fff1f2;border:1px solid #fecdd3;border-radius:5px;color:#b42336;font-weight:750;padding:.28rem .45rem;white-space:nowrap}
.timesheet-summary-tile{height:100%;min-height:74px;border:1px solid #d9e2ef;border-left:4px solid #2f80ed;border-radius:7px;background:#f6f9fd;padding:.7rem .85rem}.timesheet-summary-tile span{display:block;color:#64748b;font-size:.69rem;font-weight:700;text-transform:uppercase}.timesheet-summary-tile strong{display:block;margin-top:.2rem;color:#102a4c;font-size:1.15rem}.timesheet-summary-tile.summary-logged{border-left-color:#14966f;background:#f0faf6}.timesheet-summary-tile.summary-missing{border-left-color:#cf5361;background:#fff5f6}.timesheet-summary-tile.summary-target{border-left-color:#c58a10;background:#fff9ed}.timesheet-summary-tile.summary-actual{border-left-color:#7c55c7;background:#f8f4ff}.timesheet-table-wrap{max-height:58vh;overflow:auto}.timesheet-table{min-width:1320px;table-layout:fixed;margin-bottom:0}.timesheet-table th,.timesheet-table td{padding:.68rem .75rem;vertical-align:middle}.timesheet-table thead th{top:0;z-index:4;white-space:nowrap}.timesheet-table .sticky-col{position:sticky;z-index:3;background:#fff}.timesheet-table thead .sticky-col{z-index:6;background:#f4f7fc}.timesheet-table .sticky-col-1{left:0}.timesheet-table .sticky-col-2{left:190px;box-shadow:5px 0 7px -7px #64748b}.timesheet-table tbody tr:hover .sticky-col{background:#f7faff}.timesheet-table tbody tr.timesheet-shortfall-row>td,.timesheet-table tbody tr.timesheet-shortfall-row>.sticky-col{background:#fff0f1}.timesheet-clamp{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;line-height:1.35;max-height:4.05em;overflow-wrap:anywhere}.timesheet-status{display:inline-block;max-width:150px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.timesheet-actual{display:inline-block;border-radius:5px;background:#eaf8f2;color:#087a55;font-weight:750;padding:.3rem .45rem;white-space:nowrap}.timesheet-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.timesheet-detail-item{border-bottom:1px solid #e7ecf3;padding-bottom:.65rem}.timesheet-detail-item.full{grid-column:1/-1}.timesheet-detail-item span{display:block;color:#64748b;font-size:.7rem;font-weight:700;text-transform:uppercase}.timesheet-detail-item strong,.timesheet-detail-item p{display:block;margin:.25rem 0 0;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:767.98px){.timesheet-detail-grid{grid-template-columns:1fr}.timesheet-table-wrap{max-height:65vh}}

/* Role permission matrix */
.permission-guide{background:var(--pm-sky,#eef5ff);border:1px solid var(--pm-line,#dfe1e6);border-radius:8px;color:var(--pm-muted,#5e6c84);display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;margin:1rem 0;padding:.7rem .9rem;font-size:.78rem}.permission-guide b{color:var(--pm-text,#172b4d)}.permission-table th:not(:first-child):not(:nth-child(2)){min-width:76px}.permission-table td:not(:first-child):not(:nth-child(2)){text-align:center}.permission-table .form-check-input{cursor:pointer;float:none;margin:0}.permission-group{background:#f1f3f6;border-radius:99px;color:#5e6c84;display:inline-block;font-size:.68rem;font-weight:700;padding:.28rem .55rem}.permission-na{color:#97a7ba;display:inline-block;font-size:1rem;line-height:1}

/* Compact workspace navigation: preserves links while providing a larger work area. */
.sidebar-collapse-button{align-items:center;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);border-radius:7px;color:#c5d4e7;cursor:pointer;font-size:.71rem;font-weight:650;gap:.5rem;margin:.1rem .2rem .7rem;padding:.48rem .65rem;text-align:left;width:calc(100% - .4rem)}.sidebar-collapse-button:hover{background:rgba(255,255,255,.11);color:#fff}.sidebar-collapse-button i{font-size:.95rem}.sidebar-collapse-button span{white-space:nowrap}
@media(min-width:768px){body.sidebar-collapsed .sidebar{flex-basis:82px;padding-left:.65rem!important;padding-right:.65rem!important}body.sidebar-collapsed .sidebar-brand{justify-content:center;padding:.75rem .35rem}body.sidebar-collapsed .sidebar-brand a>span:last-child,body.sidebar-collapsed .sidebar-collapse-button span,body.sidebar-collapsed .nav-section,body.sidebar-collapsed .sidebar-bottom{display:none}body.sidebar-collapsed .sidebar-collapse-button{justify-content:center;margin:.1rem 0 .7rem;width:100%}body.sidebar-collapsed .sidebar-navigation{padding-left:0;padding-right:0}body.sidebar-collapsed .sidebar .nav-link{font-size:0;justify-content:center;margin:.2rem 0;padding:.56rem .3rem}body.sidebar-collapsed .sidebar .nav-link i{font-size:1rem;margin:0}body.sidebar-collapsed .sidebar .nav-link:after{background:#172b4d;border:1px solid rgba(255,255,255,.13);border-radius:6px;box-shadow:0 5px 12px rgba(0,0,0,.2);color:#fff;content:attr(data-label);font-size:.76rem;font-weight:650;left:72px;opacity:0;padding:.5rem .7rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%) translateX(-5px);transition:opacity .14s ease,transform .14s ease;visibility:hidden;white-space:nowrap;z-index:1100}body.sidebar-collapsed .sidebar .nav-link:hover:after{opacity:1;transform:translateY(-50%) translateX(0);visibility:visible}}
@media(max-width:767px){.theme-switcher{right:4.7rem;top:1rem}.theme-select{font-size:.72rem}.sign-out{right:1rem}}
/* Keep global theme/sign-out controls clear of page-level Add actions. */
@media(min-width:768px){
  .app-shell>.content>.d-flex:first-child{padding-right:19rem}
  .dashboard-header{padding-right:19rem!important}
}

/* Shared authenticated header controls: theme, current user, and sign out. */
.header-actions{align-items:center;display:flex;gap:.45rem;position:fixed;right:2rem;top:1.25rem;z-index:1040}.header-actions .theme-switcher{position:relative;right:auto;top:auto}.header-actions .sign-out{position:static;right:auto;top:auto}.user-session{align-items:center;background:#fff;border:1px solid #dfe1e6;border-radius:8px;box-shadow:0 1px 2px rgba(9,30,66,.15);color:#42526e;display:flex;font-size:.82rem;font-weight:650;gap:.42rem;max-width:190px;min-height:36px;padding:.45rem .7rem}.user-session i{color:#0052cc;font-size:1rem}.user-session span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body[data-theme="midnight"] .user-session{background:#1e293b;border-color:#475569;color:#d9e5f3}body[data-theme="midnight"] .user-session i{color:#93c5fd}
.header-actions a.user-session{text-decoration:none}.header-actions a.user-session:hover,.header-actions a.user-session:focus-visible,.header-actions a.user-session.active{border-color:#8db8f3;color:#0747a6;outline:none}body[data-theme="midnight"] .header-actions a.user-session:hover,body[data-theme="midnight"] .header-actions a.user-session:focus-visible,body[data-theme="midnight"] .header-actions a.user-session.active{color:#bfdbfe}
@media(min-width:768px){.app-shell>.content>.d-flex:first-child{padding-right:31rem}.dashboard-header{padding-right:31rem!important}}
@media(max-width:767px){.header-actions{gap:.3rem;right:1rem;top:1rem}.header-actions .theme-switcher{right:auto;top:auto}.user-session{max-width:96px;min-height:36px;padding:.42rem .52rem}.user-session span{font-size:.76rem}.header-actions .sign-out{right:auto;top:auto}}

/* Soft violet accents to mirror the Project Management login background. */
body[data-theme="aurora"]{--pm-canvas:#f8f6ff;--pm-sky:#eeeaff;--pm-line:#e4def2}
body[data-theme="aurora"] .content{background:radial-gradient(circle at 88% 4%,rgba(167,139,250,.13),transparent 26%),var(--pm-canvas)}
body[data-theme="aurora"] .dash-stat i,body[data-theme="aurora"] .dash-action-icon,body[data-theme="aurora"] .badge-soft{background:#eeeaff!important;color:#6d4aff!important}

/* Shared, non-blocking feedback for completed actions. */
.pm-alert-modal{z-index:1085}.pm-alert-modal .modal-dialog{max-width:390px}.pm-alert-modal .modal-content{border:1px solid #cfe2ff;border-radius:8px;box-shadow:0 15px 35px rgba(16,42,67,.24);overflow:hidden}.pm-alert-modal .modal-header{align-items:center;background:#f5f9ff;border-bottom:1px solid #dce8f5;padding:.6rem .85rem}.pm-alert-modal .modal-title{align-items:center;color:#165fae;display:flex;font-size:.88rem!important;font-weight:700;gap:.45rem}.pm-alert-modal .modal-title i{font-size:1rem}.pm-alert-modal .modal-body{color:#20384e;font-size:.9rem;min-height:74px;padding:1.05rem 1rem}.pm-alert-modal .modal-footer{background:#f9fbfd;border-top:1px solid #e0eaf3;padding:.55rem .9rem}.pm-alert-modal .pm-alert-action{font-size:.82rem;min-width:78px}.pm-alert-success .modal-content{border-color:#b9dfca}.pm-alert-success .modal-header{background:#effaf3;border-bottom-color:#c8ead5}.pm-alert-success .modal-title{color:#198754}.pm-alert-danger .modal-content{border-color:#f1bec4}.pm-alert-danger .modal-header{background:#fff3f4;border-bottom-color:#f3c9ce}.pm-alert-danger .modal-title{color:#dc3545}.pm-alert-warning .modal-content{border-color:#f6d99c}.pm-alert-warning .modal-header{background:#fff9eb;border-bottom-color:#f5dfa9}.pm-alert-warning .modal-title{color:#b77909}.pm-alert-modal .btn-close{background-size:.7em;opacity:.65}.pm-confirm-modal .modal-content{border:0;border-radius:16px;box-shadow:0 22px 55px rgba(16,42,67,.25)}.pm-confirm-icon{align-items:center;background:#fff4df;border-radius:50%;color:#d97706;display:flex;font-size:1.45rem;height:52px;justify-content:center;margin:0 auto 1rem;width:52px}.pm-confirm-modal h5{color:#17324d;font-weight:750}.pm-confirm-modal .btn{min-width:98px}@media(max-width:767px){.pm-alert-modal .modal-dialog{margin:1rem;max-width:none}}

.work-log-delete-confirm{align-items:center;background:rgba(15,23,42,.42);bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:8}.work-log-delete-card{background:#fff;border-radius:14px;box-shadow:0 18px 45px rgba(15,23,42,.24);max-width:330px;padding:1.45rem;text-align:center;width:calc(100% - 2rem)}.work-log-delete-card>i{background:#fff4df;border-radius:50%;color:#d97706;display:inline-flex;font-size:1.4rem;margin-bottom:.7rem;padding:.7rem}.work-log-delete-card h3{color:#17324d;font-size:1.1rem;font-weight:750;margin:0 0 .35rem}.work-log-delete-card p{color:#64748b;font-size:.86rem;margin:0 0 1.1rem}.work-log-delete-card>div{display:flex;gap:.55rem;justify-content:center}

/* Shared sidebar interaction polish: fast, subtle feedback without changing navigation behaviour. */
.sidebar{transition:flex-basis .2s ease,padding .2s ease}.sidebar-brand,.sidebar-collapse-button{transition:margin .18s ease,padding .18s ease,background-color .16s ease,color .16s ease}.sidebar .nav-link{isolation:isolate;overflow:hidden;position:relative;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.sidebar .nav-link::before{background:linear-gradient(90deg,rgba(125,184,255,.16),rgba(125,184,255,.025));border-radius:inherit;content:"";inset:0;opacity:0;position:absolute;transform:scaleX(.96);transform-origin:left center;transition:opacity .16s ease,transform .18s ease;z-index:0}.sidebar .nav-link i,.sidebar .nav-link span{position:relative;transition:color .16s ease,transform .16s ease;z-index:1}.sidebar .nav-link:hover{transform:translateX(2px)}.sidebar .nav-link:hover::before,.sidebar .nav-link.active::before{opacity:1;transform:scaleX(1)}.sidebar .nav-link:hover i{color:#d8ecff;transform:scale(1.08)}.sidebar .nav-link.active{transform:translateX(1px);animation:sidebar-active-in .22s ease-out}.sidebar .nav-link.active i{transform:scale(1.05)}.sidebar-navigation.collapsing{overflow:hidden;transition:height .2s ease}.sidebar-toggle{transition:background-color .16s ease,color .16s ease,transform .16s ease}.sidebar-toggle:hover{transform:scale(1.04)}@keyframes sidebar-active-in{from{opacity:.84;transform:translateX(-3px)}to{opacity:1;transform:translateX(1px)}}@media(prefers-reduced-motion:reduce){.sidebar,.sidebar-brand,.sidebar-collapse-button,.sidebar .nav-link,.sidebar .nav-link::before,.sidebar .nav-link i,.sidebar .nav-link span,.sidebar-navigation.collapsing,.sidebar-toggle{animation:none!important;transition:none!important}}

/* Premium enterprise SaaS visual layer. Presentation only; workflows and permissions are unchanged. */
:root{--pm-navy:#0b1830;--pm-blue:#1769e0;--pm-blue-dark:#0e55bd;--pm-cyan:#11a7b8;--pm-canvas:#f4f7fb;--pm-surface:#fff;--pm-line:#dfe7f1;--pm-text:#15243b;--pm-muted:#687991;--pm-radius:14px;--pm-shadow:0 8px 24px rgba(15,35,65,.065)}
body{background:var(--pm-canvas);color:var(--pm-text);font-size:.875rem}.content{background:radial-gradient(circle at 92% 2%,rgba(23,105,224,.075),transparent 24%),var(--pm-canvas);padding:2rem 2.25rem}.content h1{color:var(--pm-text);font-size:1.7rem;font-weight:760;letter-spacing:-.035em}.content>div{animation:premium-page-in .28s ease-out}
.sidebar{background:linear-gradient(180deg,#0b1830 0%,#102641 58%,#0a1d32 100%)!important;box-shadow:8px 0 28px rgba(7,19,38,.12);flex-basis:272px}.sidebar-brand{background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.025));border-color:rgba(151,188,232,.14);box-shadow:inset 0 1px rgba(255,255,255,.04)}.sidebar-brand a{letter-spacing:-.015em}.brand-mark{background:linear-gradient(135deg,#287ff0,#12a7ba);box-shadow:0 7px 18px rgba(17,122,221,.3)}.nav-section{color:#8298b5;letter-spacing:.13em}.sidebar .nav-link{border-radius:9px;color:#bdcadb!important;font-weight:570;margin:.16rem 0}.sidebar .nav-link i{background:rgba(143,178,218,.08);color:#aac0d9}.sidebar .nav-link:hover{background:rgba(123,169,222,.1);border-color:rgba(158,193,232,.1)}.sidebar .nav-link.active{background:linear-gradient(90deg,rgba(28,103,214,.92),rgba(14,83,174,.78));border-color:rgba(127,183,255,.28);box-shadow:0 7px 18px rgba(2,17,40,.24),inset 3px 0 #5ee0ed}.sidebar .nav-link.active i{background:rgba(255,255,255,.16)}.sidebar-collapse-button,.sidebar-bottom{backdrop-filter:blur(10px)}
.header-actions{background:rgba(244,247,251,.76);border:1px solid rgba(219,228,240,.75);border-radius:11px;box-shadow:0 8px 24px rgba(24,45,76,.08);padding:.28rem;backdrop-filter:blur(14px)}.theme-switcher,.user-session,.sign-out{box-shadow:none}.theme-switcher,.user-session{border-color:#dbe5f0}.sign-out{border-color:#dbe5f0}.user-session{color:#30445f}.header-actions .sign-out:hover{transform:translateY(-1px)}
.card,.dash-panel,.dash-stat,.analysis-filters{background:rgba(255,255,255,.97);border:1px solid var(--pm-line)!important;border-radius:var(--pm-radius)!important;box-shadow:var(--pm-shadow)!important}.card,.dash-panel,.dash-stat{transition:box-shadow .18s ease,transform .18s ease}.card:hover,.dash-panel:hover{box-shadow:0 13px 32px rgba(15,35,65,.095)!important}.dash-stat:hover{box-shadow:0 14px 30px rgba(15,35,65,.11)!important;transform:translateY(-2px)}
.table-responsive{border-radius:10px}.table thead th{background:#f3f6fa;color:#52647c;font-size:.68rem;letter-spacing:.075em;padding:.85rem 1rem}.table td{border-color:#e8edf4;padding:.88rem 1rem}.table-hover tbody tr{transition:background-color .14s ease}.table-hover tbody tr:hover{background:#f7faff}.form-label{color:#53657b;font-size:.72rem;letter-spacing:.035em;text-transform:uppercase}.form-control,.form-select,.select2-container--default .select2-selection--single,.select2-container--default .select2-selection--multiple{border-color:#d8e2ee!important;border-radius:8px!important}.form-control:focus,.form-select:focus{border-color:#63a1ee!important;box-shadow:0 0 0 3px rgba(23,105,224,.11)!important}.btn{border-radius:8px;font-size:.82rem;transition:box-shadow .16s ease,transform .16s ease,background-color .16s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:#1769e0;border-color:#1769e0;box-shadow:0 5px 12px rgba(23,105,224,.18)}.modal-content{border:1px solid rgba(215,226,239,.9);border-radius:15px;box-shadow:0 24px 65px rgba(9,27,55,.24)}.modal-header{background:linear-gradient(180deg,#fff,#fbfdff)}
@keyframes premium-page-in{from{opacity:.6;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:991px){.content{padding:1.5rem}.header-actions{background:transparent;border:0;box-shadow:none;padding:0;backdrop-filter:none}}@media(max-width:767px){.content{padding:1rem}.sidebar{box-shadow:0 8px 24px rgba(7,19,38,.16)}.card:hover,.dash-panel:hover,.dash-stat:hover,.btn:hover{transform:none}.header-actions .theme-switcher{display:none}}@media(prefers-reduced-motion:reduce){.content>div{animation:none}.card,.dash-panel,.dash-stat,.btn{transition:none}}

/* Expandable groups retain the existing dark sidebar appearance. */
.sidebar .nav-section-toggle{align-items:center;background:transparent;border:0;color:#9db2cd;cursor:pointer;display:flex;font-family:inherit;font-size:.72rem;font-weight:800;justify-content:space-between;letter-spacing:.12em;line-height:1.4;min-height:34px;padding:.25rem 0;width:calc(100% - 1.1rem)}
.sidebar .nav-section-toggle span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar .nav-section-toggle:after{display:none}
.sidebar .nav-section-toggle i{color:#9dbbe0;font-size:.82rem;transition:color .16s ease,transform .16s ease}
.sidebar .nav-section-toggle .group-icon{color:#75a9d8;font-size:.9rem;margin-right:.5rem;width:18px}
.sidebar .nav-section-toggle .group-toggle-icon{margin-left:auto}
.sidebar .nav-section-toggle:hover,.sidebar .nav-section-toggle:focus-visible{color:#cbdcf1;outline:0}
.sidebar .nav-section-toggle:hover i,.sidebar .nav-section-toggle:focus-visible i{color:#63d3ed}
.sidebar .sidebar-menu-group.is-collapsed{display:none}
.sidebar .sidebar-menu-group .nav-link{font-size:.9rem}
@media(min-width:768px){body.sidebar-collapsed .sidebar .nav-section-toggle{display:none}body.sidebar-collapsed .sidebar .sidebar-menu-group{display:block!important}}
@media(prefers-reduced-motion:reduce){.sidebar .nav-section-toggle i{transition:none}}

/* Sidebar hierarchy: prominent section controls with nested navigation items. */
.sidebar .nav-section-toggle{
  background:rgba(127,169,218,.075);
  border:1px solid rgba(155,190,229,.08);
  border-radius:7px;
  color:#d1deee;
  font-size:.75rem;
  font-weight:850;
  letter-spacing:.115em;
  margin:1.35rem .35rem .48rem;
  min-height:40px;
  padding:.52rem .62rem;
  width:calc(100% - .7rem);
}
.sidebar-navigation>.nav-section-toggle:first-child{margin-top:.55rem}
.sidebar .nav-section-toggle .group-icon{
  color:#79b5ec;
  font-size:.92rem;
  margin-right:.42rem;
  width:19px;
}
.sidebar .nav-section-toggle .group-toggle-icon{color:#9eb9d8;font-size:.78rem}
.sidebar .nav-section-toggle:hover,.sidebar .nav-section-toggle:focus-visible{
  background:rgba(127,169,218,.12);
  border-color:rgba(155,190,229,.15);
  color:#fff;
}
.sidebar .sidebar-menu-group{
  border-left:1px solid rgba(149,181,218,.16);
  margin-left:1.05rem;
  padding-left:.48rem;
}
.sidebar .sidebar-menu-group .nav-link{
  color:#bdcadb!important;
  font-size:.88rem;
  font-weight:560;
  margin:.12rem 0;
  min-height:40px;
  padding:.56rem .62rem;
}
.sidebar .sidebar-menu-group .nav-link i{
  font-size:.9rem;
  height:25px;
  width:25px;
}
.sidebar .sidebar-menu-group .nav-link:hover{color:#fff!important}
.sidebar .sidebar-menu-group .nav-link.active{font-weight:700}
@media(max-width:767px){
  .sidebar .nav-section-toggle{margin-top:.8rem}
  .sidebar .sidebar-menu-group{margin-left:.85rem;width:calc(100% - .85rem)}
  .sidebar .sidebar-menu-group .nav-link{display:flex;width:100%}
}

/* Dashboard colour tiles. */
#adminTaskAnalysis .dash-stat{
  border:0;
  box-shadow:0 10px 22px rgba(38,48,83,.14);
}
#adminTaskAnalysis .dash-stat:before{display:none}
#adminTaskAnalysis .dash-stat-projects{--card-accent:#b66a00;--card-soft:#ffad2f;background:linear-gradient(135deg,#ffb238,#ff9f1a)}
#adminTaskAnalysis .dash-stat-tasks{--card-accent:#b20c69;--card-soft:#ff3aa8;background:linear-gradient(135deg,#ff3ca6,#ed238b)}
#adminTaskAnalysis .dash-stat-assignments{--card-accent:#312d88;--card-soft:#5650bd;background:linear-gradient(135deg,#5a55bd,#403a9d)}
#adminTaskAnalysis .dash-stat-team{--card-accent:#006f75;--card-soft:#10c6c4;background:linear-gradient(135deg,#12c8c5,#08aaa9)}
#adminTaskAnalysis .dash-stat small,
#adminTaskAnalysis .dash-stat strong,
#adminTaskAnalysis .dash-stat span{color:#fff}
#adminTaskAnalysis .dash-stat small{opacity:.88}
#adminTaskAnalysis .dash-stat span{opacity:.82}
#adminTaskAnalysis .dash-stat i{
  background:rgba(20,24,55,.24);
  color:#fff;
}
#adminTaskAnalysis .dash-stat:hover{
  box-shadow:0 16px 30px rgba(38,48,83,.2);
  filter:saturate(1.04);
}
/* Higher-contrast dashboard chart typography. */
#adminTaskAnalysis .dash-panel h2{
  color:#142b50!important;
  font-size:1.12rem;
  font-weight:800;
}
#adminTaskAnalysis .dash-panel>p{
  color:#607493!important;
  font-size:.86rem;
}
#adminTaskAnalysis .analysis-bar-row>span,
#adminTaskAnalysis .analysis-bar-button>span{
  color:#344d73!important;
  font-size:.88rem;
  font-weight:600;
}
#adminTaskAnalysis .analysis-bar-row strong{
  color:#172b4d!important;
  font-size:.84rem;
  font-weight:750;
}
#adminTaskAnalysis .analysis-trend text{
  fill:#405775;
  font-size:13px;
  font-weight:600;
}
@media(max-width:767px){
  #adminTaskAnalysis .analysis-bar-row>span,
  #adminTaskAnalysis .analysis-bar-button>span{font-size:.82rem}
}

/* Keep column labels consistently prominent across all application tables. */
table thead th{
  font-weight:800!important;
}

/* Daily Timesheet sticky columns account for the generated S.No. column. */
.timesheet-table{width:2214px;min-width:2214px}
.timesheet-table.timesheet-admin-table{width:1394px;min-width:1394px}
.timesheet-table.timesheet-overview-table{width:100%;min-width:0;table-layout:auto}
.timesheet-table .serial-column{position:sticky;left:0;z-index:5;width:62px;min-width:62px;background:#fff}
.timesheet-table thead .serial-column{z-index:7;background:#f4f7fc}
.timesheet-table .sticky-col-1{left:62px}
.timesheet-table .sticky-col-2{left:252px}
.timesheet-table .sticky-col-3{left:442px;box-shadow:5px 0 7px -7px #64748b}
.timesheet-table .sticky-col-2.admin-project{left:182px}
.content .timesheet-table thead th.sticky-col.grid-sortable{position:sticky}
.timesheet-table tbody .sticky-col-2 .timesheet-clamp,
.timesheet-table tbody .sticky-col-2.admin-project strong{background:#e8f2ff;border:1px solid #b9d5ff;border-radius:4px;color:#0755a5;display:inline-block;font-weight:700;line-height:1.35;max-width:100%;padding:.25rem .45rem;white-space:normal}
.project-log-group{border:1px solid #dbe5f0;border-radius:10px;overflow:hidden}.project-log-heading{align-items:center;background:#eef5ff;display:flex;justify-content:space-between;gap:1rem;padding:.8rem 1rem}.project-log-heading>div{display:flex;align-items:center;gap:.65rem}.project-log-total{background:#dff7ec;border-radius:6px;color:#087a55;font-weight:800;padding:.35rem .6rem;white-space:nowrap}.project-log-table{min-width:950px}.project-log-table th{white-space:nowrap}.project-log-table td{vertical-align:top}.project-checkbox-dropdown .select2-results__option--selectable:before{border:1px solid #9cacc0;border-radius:3px;content:'';display:inline-block;height:15px;margin-right:.55rem;vertical-align:-2px;width:15px}.project-checkbox-dropdown .select2-results__option--selected:before{background:#1769e0;border-color:#1769e0;box-shadow:inset 0 0 0 3px #fff}
.timesheet-table .timesheet-status{box-sizing:border-box;display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.timesheet-table td{min-width:0}
.timesheet-table tbody tr:hover .serial-column,.timesheet-table tbody tr:hover .sticky-col-3{background:#f7faff}
.timesheet-table tbody tr.timesheet-shortfall-row>.serial-column{background:#fff0f1}
.task-action{align-items:center;display:inline-flex;height:32px;justify-content:center;margin:0 .08rem;padding:0;width:32px}
.content table th.grid-sortable{cursor:pointer;position:relative;padding-right:1.7rem}.content table th.grid-sortable::after{content:'↕';font-size:.8em;opacity:.55;position:absolute;right:.55rem;top:50%;transform:translateY(-50%)}.content table th.grid-sortable[aria-sort="ascending"]::after{content:'↑';opacity:1}.content table th.grid-sortable[aria-sort="descending"]::after{content:'↓';opacity:1}.content table th.grid-sortable:focus-visible{outline:2px solid #4c9aff;outline-offset:-2px}

/* Consistent, readable column labels across screens and modal tables. */
body table thead th {
  color: #1e3a8a !important;
}
body table thead th abbr,
body table thead th[data-sort] i,
body table thead th.grid-sortable::after {
  color: inherit;
}

/* Reserve space for server-sorted header arrows so they cannot wrap below labels.
   Header positioning remains controlled by the existing sticky-table styles. */
body .table thead th[data-sort]{padding-right:1.7rem}
body .table thead th[data-sort]>i{position:absolute;right:.55rem;top:50%;transform:translateY(-50%);margin:0;line-height:1;white-space:nowrap}

/* Additional workspace palettes. */
body[data-theme="forest"]{--pm-navy:#163c2c;--pm-blue:#166534;--pm-blue-dark:#14532d;--pm-sky:#eaf5ed;--pm-canvas:#f7faf7;--pm-line:#dfe5eb;--pm-text:#243247;--pm-muted:#64748b}
body[data-theme="forest"] .sidebar{background:linear-gradient(180deg,#163c2c,#14532d)!important}
body[data-theme="forest"] .brand-mark,body[data-theme="forest"] .btn-primary{background:#166534;border-color:#166534}
body[data-theme="forest"] .btn-primary:hover,body[data-theme="forest"] .btn-primary:focus{background:#14532d;border-color:#14532d}
body[data-theme="forest"] .sidebar .nav-link.active{background:#166534;color:#fff;box-shadow:inset 3px 0 #eaf5ed}
body[data-theme="forest"] .sidebar .nav-link i{color:#eaf5ed}
body[data-theme="forest"] .dash-stat i,body[data-theme="forest"] .dash-action-icon,body[data-theme="forest"] .badge-soft{background:#eaf5ed!important;color:#14532d!important}
body[data-theme="forest"] .dashboard-welcome{background:linear-gradient(115deg,#163c2c,#166534)!important}
body[data-theme="forest"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#166534}
body[data-theme="ruby"]{--pm-navy:#492339;--pm-blue:#9f1239;--pm-blue-dark:#881337;--pm-sky:#fff0f3;--pm-canvas:#fff9fa;--pm-line:#dfe5eb;--pm-text:#243247;--pm-muted:#64748b}
body[data-theme="ruby"] .sidebar{background:linear-gradient(180deg,#492339,#881337)!important}
body[data-theme="ruby"] .brand-mark,body[data-theme="ruby"] .btn-primary{background:#9f1239;border-color:#9f1239}
body[data-theme="ruby"] .btn-primary:hover,body[data-theme="ruby"] .btn-primary:focus{background:#881337;border-color:#881337}
body[data-theme="ruby"] .sidebar .nav-link.active{background:#9f1239;color:#fff;box-shadow:inset 3px 0 #fff0f3}
body[data-theme="ruby"] .sidebar .nav-link i{color:#fff0f3}
body[data-theme="ruby"] .dash-stat i,body[data-theme="ruby"] .dash-action-icon,body[data-theme="ruby"] .badge-soft{background:#fff0f3!important;color:#881337!important}
body[data-theme="ruby"] .dashboard-welcome{background:linear-gradient(115deg,#492339,#9f1239)!important}
body[data-theme="ruby"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#9f1239}
body[data-theme="coffee"]{--pm-navy:#3e3028;--pm-blue:#854d0e;--pm-blue-dark:#713f12;--pm-sky:#faf1e3;--pm-canvas:#fcfaf6;--pm-line:#dfe5eb;--pm-text:#243247;--pm-muted:#64748b}
body[data-theme="coffee"] .sidebar{background:linear-gradient(180deg,#3e3028,#713f12)!important}
body[data-theme="coffee"] .brand-mark,body[data-theme="coffee"] .btn-primary{background:#854d0e;border-color:#854d0e}
body[data-theme="coffee"] .btn-primary:hover,body[data-theme="coffee"] .btn-primary:focus{background:#713f12;border-color:#713f12}
body[data-theme="coffee"] .sidebar .nav-link.active{background:#854d0e;color:#fff;box-shadow:inset 3px 0 #faf1e3}
body[data-theme="coffee"] .sidebar .nav-link i{color:#faf1e3}
body[data-theme="coffee"] .dash-stat i,body[data-theme="coffee"] .dash-action-icon,body[data-theme="coffee"] .badge-soft{background:#faf1e3!important;color:#713f12!important}
body[data-theme="coffee"] .dashboard-welcome{background:linear-gradient(115deg,#3e3028,#854d0e)!important}
body[data-theme="coffee"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#854d0e}
body[data-theme="indigo"]{--pm-navy:#282650;--pm-blue:#4338ca;--pm-blue-dark:#3730a3;--pm-sky:#eeefff;--pm-canvas:#f8f9ff;--pm-line:#dfe5eb;--pm-text:#243247;--pm-muted:#64748b}
body[data-theme="indigo"] .sidebar{background:linear-gradient(180deg,#282650,#3730a3)!important}
body[data-theme="indigo"] .brand-mark,body[data-theme="indigo"] .btn-primary{background:#4338ca;border-color:#4338ca}
body[data-theme="indigo"] .btn-primary:hover,body[data-theme="indigo"] .btn-primary:focus{background:#3730a3;border-color:#3730a3}
body[data-theme="indigo"] .sidebar .nav-link.active{background:#4338ca;color:#fff;box-shadow:inset 3px 0 #eeefff}
body[data-theme="indigo"] .sidebar .nav-link i{color:#eeefff}
body[data-theme="indigo"] .dash-stat i,body[data-theme="indigo"] .dash-action-icon,body[data-theme="indigo"] .badge-soft{background:#eeefff!important;color:#3730a3!important}
body[data-theme="indigo"] .dashboard-welcome{background:linear-gradient(115deg,#282650,#4338ca)!important}
body[data-theme="indigo"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#4338ca}
body[data-theme="graphite"]{--pm-navy:#27313b;--pm-blue:#475569;--pm-blue-dark:#334155;--pm-sky:#eef2f6;--pm-canvas:#f8fafc;--pm-line:#dfe5eb;--pm-text:#243247;--pm-muted:#64748b}
body[data-theme="graphite"] .sidebar{background:linear-gradient(180deg,#27313b,#334155)!important}
body[data-theme="graphite"] .brand-mark,body[data-theme="graphite"] .btn-primary{background:#475569;border-color:#475569}
body[data-theme="graphite"] .btn-primary:hover,body[data-theme="graphite"] .btn-primary:focus{background:#334155;border-color:#334155}
body[data-theme="graphite"] .sidebar .nav-link.active{background:#475569;color:#fff;box-shadow:inset 3px 0 #eef2f6}
body[data-theme="graphite"] .sidebar .nav-link i{color:#eef2f6}
body[data-theme="graphite"] .dash-stat i,body[data-theme="graphite"] .dash-action-icon,body[data-theme="graphite"] .badge-soft{background:#eef2f6!important;color:#334155!important}
body[data-theme="graphite"] .dashboard-welcome{background:linear-gradient(115deg,#27313b,#475569)!important}
body[data-theme="graphite"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#475569}

.timesheet-table.timesheet-consolidated{width:100%;min-width:0;table-layout:fixed}
.timesheet-consolidated-row{cursor:pointer}
.timesheet-consolidated-row:focus{outline:2px solid #2f80ed;outline-offset:-2px}
.timesheet-date-detail{border:1px solid #d9e2ef;border-radius:8px;margin-bottom:1rem;overflow:hidden}
.timesheet-date-detail-heading{align-items:center;background:#eaf2fb;border-bottom:1px solid #d2deeb;display:flex;justify-content:space-between;padding:.75rem 1rem}
.timesheet-date-detail-heading span{color:#64748b;font-size:.8rem}
.timesheet-detail-table{font-size:.82rem;min-width:1500px}
.timesheet-detail-table th{background:#f4f7fc;color:#31506f;font-size:.72rem;text-transform:uppercase;white-space:nowrap}
.timesheet-preserve-text{white-space:pre-wrap;overflow-wrap:anywhere}

.timesheet-detail-table.task-detail th:nth-child(-n+5),
.timesheet-detail-table.task-detail td:nth-child(-n+5){position:sticky;z-index:2;background:#fff}
.timesheet-detail-table.task-detail thead th:nth-child(-n+5){z-index:4;background:#f4f7fc}
.timesheet-detail-table.task-detail th:nth-child(1),.timesheet-detail-table.task-detail td:nth-child(1){left:0;width:64px;min-width:64px}
.timesheet-detail-table.task-detail th:nth-child(2),.timesheet-detail-table.task-detail td:nth-child(2){left:64px;width:180px;min-width:180px}
.timesheet-detail-table.task-detail th:nth-child(3),.timesheet-detail-table.task-detail td:nth-child(3){left:244px;width:150px;min-width:150px}
.timesheet-detail-table.task-detail th:nth-child(4),.timesheet-detail-table.task-detail td:nth-child(4){left:394px;width:140px;min-width:140px}
.timesheet-detail-table.task-detail th:nth-child(5),.timesheet-detail-table.task-detail td:nth-child(5){left:534px;width:170px;min-width:170px;box-shadow:6px 0 8px -8px #475569}
.timesheet-detail-table.task-detail tbody tr:hover td:nth-child(-n+5){background:#f7faff}

.timesheet-detail-scroll{max-height:calc(100vh - 360px);overflow:auto}

.timesheet-task-description{color:#075fd4;text-decoration:none}
.timesheet-task-description:hover strong{text-decoration:underline}
.timesheet-task-description-modal{z-index:1070}
.timesheet-task-description-meta,.timesheet-task-description-content{border-bottom:1px solid #e7ecf3;padding:.25rem 0 .85rem}
.timesheet-task-description-content{border:0;margin-top:1rem}
.timesheet-task-description-meta span,.timesheet-task-description-content span{color:#64748b;display:block;font-size:.72rem;font-weight:700;text-transform:uppercase}
.timesheet-task-description-meta strong{display:block;margin-top:.3rem}
.timesheet-task-description-content p{background:#f6f8fb;border-radius:7px;margin:.4rem 0 0;padding:1rem;white-space:pre-wrap;overflow-wrap:anywhere}
