@import"https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400;1,600&display=swap";@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Medium.ttf) format("truetype");font-weight:500;font-style:normal}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-Bold.ttf) format("truetype");font-weight:700;font-style:normal}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #324266;--primary-dark: #232d46;--primary-light: #6478a3;--secondary: #4a5c84;--cta: #10B981;--cta-dark: #059669;--bg: #FFFFFF;--bg-white: #FFFFFF;--bg-card: #FFFFFF;--surface: #F8FAFC;--border: #E2E8F0;--border-muted: #F1F5F9;--text: #1E293B;--text-muted: #475569;--text-light: #64748B;--danger: #EF4444;--warning: #F59E0B;--info: #324266;--success: #10B981;--shadow-sm: 0 1px 3px rgba(50,66,102,.06);--shadow: 0 4px 12px rgba(50,66,102,.08);--shadow-lg: 0 8px 24px rgba(50,66,102,.12);--radius: 8px;--radius-lg: 12px;--sidebar-w: 260px;--sidebar-collapsed-w: 72px;--header-h: 64px;--transition: .2s ease;--font-heading: "Montserrat", sans-serif;--font-body: "Montserrat", sans-serif;--font-text: "Montserrat", sans-serif}html{font-size:16px;scroll-behavior:smooth}body{font-family:Montserrat,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.3;color:var(--text)}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.1rem}p{font-family:var(--font-body);color:var(--text-muted);line-height:1.75}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-dark)}button{cursor:pointer;font-family:var(--font-body);border:none;outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.app-shell{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-w);background:#324266;border-right:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:40;transition:width .25s cubic-bezier(.4,0,.2,1),transform .25s ease,box-shadow .25s ease;overflow-y:auto;overflow-x:hidden;color:#fff}.sidebar.collapsed{width:var(--sidebar-collapsed-w)}.sidebar.collapsed.hover-expanded{width:var(--sidebar-w);box-shadow:8px 0 28px #00000047}.sidebar-pin-btn{background:transparent;border:none;color:#fff9;padding:6px;border-radius:var(--radius);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.sidebar-pin-btn:hover{background:#ffffff1f;color:#fff}.sidebar-pin-btn.active{color:#10b981;background:#10b9812e}.sidebar-logo{padding:16px 14px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:10px}.sidebar-logo-icon{width:36px;height:36px;border-radius:var(--radius);background:#ffffff26;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-logo-icon svg{color:#fff;width:20px;height:20px}.sidebar-logo-text{font-family:var(--font-heading);font-size:1.15rem;font-weight:700;color:#fff;line-height:1.2}.sidebar-logo-sub{font-size:.7rem;color:#ffffffa6;font-family:var(--font-body)}.sidebar-section{padding:8px 12px;margin-top:4px}.sidebar-section-label{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ffffff73;padding:8px 8px 4px}.sidebar.collapsed:not(.hover-expanded) .sidebar-logo{padding:12px 8px}.sidebar.collapsed:not(.hover-expanded) .sidebar-section-label{display:none}.sidebar.collapsed:not(.hover-expanded) .sidebar-section{padding:4px 0;margin-top:0}.sidebar.collapsed:not(.hover-expanded) .nav-item{width:44px;height:44px;margin:4px auto;padding:0;border-radius:10px;display:flex;align-items:center;justify-content:center;position:relative;transition:all .18s cubic-bezier(.4,0,.2,1)}.sidebar.collapsed:not(.hover-expanded) .nav-item svg{width:20px;height:20px;margin:0;transition:transform .18s ease,color .18s ease}.sidebar.collapsed:not(.hover-expanded) .nav-item:hover svg{transform:scale(1.12)}.sidebar.collapsed:not(.hover-expanded) .nav-item span{display:none}.sidebar.collapsed:not(.hover-expanded) .nav-item .badge{position:absolute;top:4px;right:4px;font-size:.6rem;padding:1px 5px;min-width:16px;height:16px;line-height:14px;box-shadow:0 0 0 2px #324266}.sidebar.collapsed:not(.hover-expanded) .nav-item:hover:after{content:attr(data-tooltip);position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:14px;background:#1e293b;color:#fff;padding:7px 14px;border-radius:8px;font-size:.8rem;font-weight:600;letter-spacing:.01em;white-space:nowrap;pointer-events:none;box-shadow:0 10px 25px -5px #0006,0 8px 10px -6px #0003;z-index:99;border:1px solid rgba(255,255,255,.1);animation:tooltipFadeIn .15s ease-out forwards}.sidebar.collapsed:not(.hover-expanded) .nav-item:hover:before{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:8px;border-width:5px 6px 5px 0;border-style:solid;border-color:transparent #1E293B transparent transparent;pointer-events:none;z-index:99}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-50%) translate(-4px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius);cursor:pointer;transition:background var(--transition),color var(--transition);color:#ffffffd1;font-size:.875rem;font-weight:500;text-decoration:none;margin-bottom:2px}.nav-item svg{width:18px;height:18px;flex-shrink:0;color:#ffffffd9}.nav-item:hover{background:#ffffff1a;color:#fff}.nav-item:hover svg{color:#fff}.nav-item.active{background:#ffffff29;color:#fff;font-weight:600}.nav-item.active svg{color:#fff}.nav-item .badge{margin-left:auto;background:#f59e0b;color:#1e293b;font-size:.68rem;font-weight:700;border-radius:999px;padding:1px 6px;min-width:18px;text-align:center}.sidebar-user{margin-top:auto;padding:16px 14px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:10px;cursor:pointer;background:#0000001f}.sidebar-user-avatar{width:34px;height:34px;border-radius:50%;background:#fff3;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0;border:1px solid rgba(255,255,255,.3)}.sidebar-user-name{font-size:.8rem;font-weight:600;color:#fff}.sidebar-user-role{font-size:.7rem;color:#ffffffa6}.main-content{margin-left:var(--sidebar-w);flex:1;min-height:100vh;display:flex;flex-direction:column;background:#f8fafc;transition:margin-left .25s cubic-bezier(.4,0,.2,1)}.main-content.sidebar-collapsed{margin-left:var(--sidebar-collapsed-w)}.topbar{height:var(--header-h);background:#324266;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;padding:0 28px;gap:16px;position:sticky;top:0;z-index:30;color:#fff}.topbar-search{flex:1;max-width:460px;position:relative}.topbar-search svg{color:#64748b}.topbar-search .form-control{background:#fff;border:1px solid rgba(255,255,255,.4);color:#0f172a;box-shadow:0 1px 3px #0000001a;font-weight:500}.topbar-search .form-control::placeholder{color:#64748b}.topbar-search .form-control:focus{background:#fff;border-color:#3b82f6;color:#0f172a;box-shadow:0 0 0 3px #3b82f640}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.user-dropdown-wrapper{position:relative}.topbar-user-profile{display:flex;align-items:center;gap:10px;padding:4px 8px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .15s ease;color:#fff;text-align:left}.topbar-user-profile:hover,.topbar-user-profile.active{background:rgba(255,255,255,0.08);border:none}.topbar-user-avatar{width:32px;height:32px;border-radius:50%;background:#fff3;color:#fff;font-weight:700;font-size:.8rem;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.3)}.topbar-user-info{display:flex;flex-direction:column}.topbar-user-name{font-size:.825rem;font-weight:600;color:#fff;line-height:1.2}.topbar-user-role{font-size:.7rem;color:#ffffffa6;line-height:1.2}.dropdown-arrow{color:#ffffffb3;transition:transform .2s ease;margin-left:2px}.dropdown-arrow.open{transform:rotate(180deg)}.user-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;width:260px;background:#fff;border-radius:12px;box-shadow:0 10px 25px -5px rgba(0,0,0,0.12),0 8px 10px -6px rgba(0,0,0,0.08);padding:14px;z-index:100;animation:dropdownSlideIn .18s cubic-bezier(.16,1,.3,1);border:1px solid #E2E8F0}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.dropdown-user-header{padding:0 0 16px}.dropdown-user-fullname{font-size:.95rem;font-weight:600;color:#334155;line-height:1.35;letter-spacing:-.01em}.dropdown-user-sub{font-size:.72rem;color:var(--muted-color);margin-top:2px;line-height:1.2}.dropdown-menu-list{display:flex;flex-direction:column}.dropdown-divider{height:1px;background:#e2e8f0;margin:10px 0 6px}.dropdown-item{display:flex;align-items:center;gap:14px;width:100%;padding:10px 4px;font-size:.925rem;font-weight:500;color:#475569;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .12s ease;text-align:left}.dropdown-item-icon{color:#64748b;transition:color .12s ease;flex-shrink:0}.dropdown-item:hover{color:#0f172a;background:#f8fafc}.dropdown-item:hover .dropdown-item-icon{color:#3b82f6}.dropdown-item.logout-item{color:#dc2626}.dropdown-item.logout-item:hover{background:#fef2f2}.topbar-actions .btn-ghost{color:#ffffffd9}.topbar-actions .btn-ghost:hover{background:#ffffff1f;color:#fff}.topbar-user-badge .badge-primary{background:#ffffff29;color:#fff;border:1px solid rgba(255,255,255,.2)}.mobile-menu-btn{display:none;padding:6px;color:#fff!important}.mobile-menu-btn svg{color:#fff!important;stroke:#fff!important;stroke-width:2.2px}@media (max-width: 700px){.mobile-menu-btn{display:inline-flex}.topbar-search{max-width:100%}}.page-content{padding:24px 32px;flex:1;width:100%;box-sizing:border-box}.card{background:var(--bg-white);border:1px solid var(--border-muted);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .15s ease}.card-header{padding:18px 22px;border-bottom:1px solid var(--border-muted);display:flex;align-items:center;justify-content:space-between;gap:12px}.card-title{font-family:var(--font-heading);font-size:1.05rem;font-weight:700;color:var(--text)}.card-body{padding:20px 22px}.card-footer{padding:14px 22px;border-top:1px solid var(--border-muted)}.stat-card{background:#fff;border:1px solid #E2E8F0;border-radius:10px;padding:16px 18px;box-shadow:0 1px 2px #0f172a0a;cursor:default;transition:all .18s ease;position:relative}.stat-card:hover{border-color:#94a3b8;box-shadow:0 4px 14px #32426614;transform:translateY(-1px)}.stat-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.stat-card-title{font-size:.775rem;font-weight:600;color:#64748b;line-height:1.3}.stat-card-icon-clean{display:none!important}.stat-card-value{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;color:#0f172a;line-height:1.1;letter-spacing:-.02em}.stat-card-footer{margin-top:10px;padding-top:8px;border-top:1px dashed #F1F5F9;display:flex;align-items:center;justify-content:space-between;font-size:.725rem;color:#94a3b8;font-weight:500}.custom-select-wrapper{position:relative;display:flex;align-items:center;background:#fff;border:1px solid #CBD5E1;border-radius:var(--radius);padding:0 10px;height:34px;box-shadow:0 1px 2px #0000000a}.custom-select-wrapper .select-icon{color:#64748b;margin-right:6px;flex-shrink:0}.custom-dashboard-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:none;outline:none;font-size:.825rem;font-weight:600;color:#334155;cursor:pointer;padding-right:18px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right center}.year-pill-group{display:flex;align-items:center;background:#f1f5f9;padding:3px;border-radius:8px;border:1px solid #E2E8F0}.year-pill{padding:3px 10px;font-size:.75rem;font-weight:600;color:#64748b;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.year-pill:hover{color:#1e293b}.year-pill.active{background:#fff;color:#4f46e5;box-shadow:0 1px 3px #0000001a}.stat-card-delta.down{color:var(--danger)}.btn{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border-radius:var(--radius);font-size:.875rem;font-weight:600;cursor:pointer;transition:background var(--transition),color var(--transition),box-shadow var(--transition);border:1px solid transparent;text-decoration:none;white-space:nowrap}.btn svg{width:16px;height:16px}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);box-shadow:var(--shadow-sm)}.btn-cta{background:var(--cta);color:#fff}.btn-cta:hover{background:var(--cta-dark)}.btn-outline{background:transparent;color:var(--primary);border-color:var(--primary)}.btn-outline:hover{background:var(--surface)}.btn-ghost{background:transparent;color:var(--text-muted)}.btn-ghost:hover{background:var(--surface);color:var(--text)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626}.btn-sm{padding:6px 12px;font-size:.8rem}.btn-lg{padding:12px 24px;font-size:1rem}.btn:disabled{opacity:.55;cursor:not-allowed}.form-group{margin-bottom:16px}.form-label{display:block;font-size:.825rem;font-weight:600;color:var(--text);margin-bottom:6px}.form-label .required{color:var(--danger);margin-left:2px}.form-control{width:100%;padding:9px 12px;border:1px solid var(--border-muted);border-radius:var(--radius);font-size:.875rem;color:var(--text);background:var(--bg-white);font-family:var(--font-body);transition:border-color var(--transition),box-shadow var(--transition);outline:none}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6366f11f}.form-control::placeholder{color:var(--text-light)}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 10px center;background-size:16px;padding-right:36px}.form-hint{font-size:.75rem;color:var(--text-light);margin-top:4px}.form-error{font-size:.75rem;color:var(--danger);margin-top:4px}.table-wrapper{overflow-x:auto;overflow-y:auto;max-height:calc(100vh - 270px);border-radius:var(--radius-lg);border:1px solid var(--border-muted)}table{width:100%;border-collapse:collapse;font-size:.875rem}thead{background:var(--surface)}th{padding:12px 16px;text-align:left;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-muted);white-space:nowrap}td{padding:13px 16px;border-bottom:1px solid var(--border-muted);color:var(--text);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--bg)}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.03em}.badge-primary{background:var(--surface);color:var(--primary)}.badge-success{background:#d1fae5;color:#065f46}.badge-warning{background:#fef3c7;color:#92400e}.badge-danger{background:#fee2e2;color:#991b1b}.badge-info{background:#dbeafe;color:#1e40af}.badge-neutral{background:var(--border-muted);color:var(--text-muted)}.badge-q1{background:#d1fae5;color:#065f46}.badge-q2{background:#dbeafe;color:#1e40af}.badge-q3{background:#fef3c7;color:#92400e}.badge-q4{background:#fee2e2;color:#991b1b}.progress-bar{height:8px;background:var(--border-muted);border-radius:999px;overflow:hidden}.progress-fill{height:100%;border-radius:999px;transition:width .5s ease}.progress-fill.primary{background:var(--primary)}.progress-fill.cta{background:var(--cta)}.progress-fill.warning{background:var(--warning)}.progress-fill.danger{background:var(--danger)}.tabs{display:flex;gap:4px;border-bottom:2px solid var(--border-muted);margin-bottom:20px}.tab-btn{padding:10px 16px;font-size:.875rem;font-weight:500;color:var(--text-muted);cursor:pointer;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color var(--transition),border-color var(--transition);white-space:nowrap}.tab-btn:hover{color:var(--primary)}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.step-list{display:flex;flex-direction:column;gap:0}.step-item{display:flex;gap:14px;position:relative}.step-item:not(:last-child):before{content:"";position:absolute;left:15px;top:32px;bottom:-8px;width:2px;background:var(--border-muted)}.step-dot{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;border:2px solid}.step-dot.done{background:var(--cta);border-color:var(--cta);color:#fff}.step-dot.active{background:var(--primary);border-color:var(--primary);color:#fff}.step-dot.pending{background:var(--bg-white);border-color:var(--border-muted);color:var(--text-light)}.step-body{padding-bottom:20px;flex:1;padding-top:4px}.step-title{font-size:.875rem;font-weight:600;color:var(--text)}.step-desc{font-size:.8rem;color:var(--text-light);margin-top:2px}.search-bar{position:relative}.search-bar svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-light);width:16px;height:16px}.search-bar input{padding-left:34px}.kanban-board{display:flex;gap:16px;overflow-x:auto;padding-bottom:8px}.kanban-col{min-width:240px;flex-shrink:0}.kanban-col-header{padding:10px 14px;border-radius:var(--radius) var(--radius) 0 0;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;justify-content:space-between}.kanban-col-body{background:var(--bg);border:1px solid var(--border-muted);border-top:none;border-radius:0 0 var(--radius) var(--radius);padding:10px;display:flex;flex-direction:column;gap:8px;min-height:100px}.kanban-card{background:var(--bg-white);border:1px solid var(--border-muted);border-radius:var(--radius);padding:12px;cursor:pointer;transition:box-shadow var(--transition)}.kanban-card:hover{box-shadow:var(--shadow)}.phd-checklist{display:flex;flex-direction:column;gap:10px}.phd-check-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius);border:1px solid var(--border-muted);background:var(--bg-white)}.phd-check-item.done{border-color:#a7f3d0;background:#f0fdf4}.phd-check-item.pending{border-color:var(--border-muted)}.phd-check-item.fail{border-color:#fecaca;background:#fff5f5}.phd-check-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.phd-check-icon.done{background:var(--cta);color:#fff}.phd-check-icon.pending{background:var(--border-muted);color:var(--text-light)}.phd-check-icon.fail{background:var(--danger);color:#fff}.phd-check-icon svg{width:14px;height:14px}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}@media (max-width: 1200px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 700px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.page-content{padding:16px}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-muted{color:var(--text-light)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.w-full{width:100%}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state{text-align:center;padding:48px 24px;color:var(--text-light)}.empty-state svg{width:48px;height:48px;margin:0 auto 12px;opacity:.4;display:block}.empty-state h3{font-size:1rem;font-weight:600;color:var(--text-muted);margin-bottom:4px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.modal{background:var(--bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:540px;max-height:90vh;overflow-y:auto;animation:modal-in .2s ease}@keyframes modal-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.modal-header{padding:20px 24px 16px;border-bottom:1px solid var(--border-muted);display:flex;align-items:center;justify-content:space-between}.modal-body{padding:20px 24px}.modal-footer{padding:16px 24px;border-top:1px solid var(--border-muted);display:flex;gap:10px;justify-content:flex-end}.notif-btn{position:relative}.notif-dot{position:absolute;top:3px;right:3px;width:8px;height:8px;border-radius:50%;background:#f59e0b;border:1.5px solid #324266}.login-wrapper{min-height:100vh;background:#f1f5f9;display:flex;align-items:center;justify-content:center;padding:24px}.login-container{width:100%;max-width:960px;background:#fff;border-radius:var(--radius-lg);border:1px solid #CBD5E1;box-shadow:0 20px 45px #232d461f;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}@media (max-width: 768px){.login-container{grid-template-columns:1fr;max-width:480px}.login-brand{display:none}}.login-brand{background:#324266;color:#fff;padding:40px 36px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;position:relative;background-image:radial-gradient(circle at 50% 30%,rgba(255,255,255,.08) 0%,transparent 70%)}.login-brand-main{display:flex;flex-direction:column;align-items:center;gap:12px}.login-logo-large{width:84px;height:84px;object-fit:contain;margin-bottom:8px}.login-brand-title-lg{font-family:var(--font-heading);font-size:1.8rem;font-weight:700;color:#fff}.login-brand-tagline{font-size:.875rem;color:#ffffffb3}.login-form-panel{padding:40px 36px;display:flex;flex-direction:column;justify-content:center;background:#fff}.login-form-header{margin-bottom:24px}.login-form-header h3{font-size:1.5rem;color:#1e293b;font-family:var(--font-heading);font-weight:700}.login-form-header p{font-size:.85rem;color:var(--text-light);margin-top:4px}.login-tab-switcher{display:flex;background:#e2e8f0;padding:4px;border-radius:var(--radius);gap:4px;margin-bottom:24px;border:1px solid #CBD5E1}.login-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;font-size:.825rem;font-weight:600;color:var(--text-muted);background:transparent;border-radius:6px;transition:all .15s ease;border:none;cursor:pointer}.login-tab.active{background:#fff;color:#324266;box-shadow:0 2px 6px #00000014;font-weight:700}.input-icon-wrapper{position:relative}.input-icon-wrapper .input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-light)}.input-icon-wrapper .form-control{padding-left:38px;border:1px solid #CBD5E1}.input-icon-wrapper .form-control:focus{border-color:#324266;box-shadow:0 0 0 3px #32426626}.ecp-auth-box{text-align:center;padding:24px 16px;background:var(--surface);border-radius:var(--radius-lg);border:1px dashed var(--border)}.ecp-status-icon{width:56px;height:56px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;box-shadow:var(--shadow-sm)}.ecp-auth-box h4{font-size:1rem;font-weight:700;color:var(--text);margin-bottom:6px}.ecp-auth-box p{font-size:.8rem;color:var(--text-light);line-height:1.5}.chart-container{height:240px;width:100%}.page-header{margin-bottom:24px}.page-header h1{font-size:1.6rem}.page-header p{font-size:.875rem;color:var(--text-muted);margin-top:4px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-muted);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--primary-light)}.divider{height:1px;background:var(--border-muted);margin:16px 0}.info-row{display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-bottom:1px solid var(--border-muted)}.info-row:last-child{border-bottom:none}.info-label{font-size:.8rem;color:var(--text-light);min-width:160px;flex-shrink:0}.info-value{font-size:.875rem;color:var(--text);font-weight:500}.notif-dropdown-wrapper{position:relative}.notif-dropdown-menu{position:absolute;top:calc(100% + 10px);right:0;width:320px;background:#fff;border-radius:20px;box-shadow:0 14px 40px #00000029,0 4px 12px #0000000f;padding:16px;z-index:100;animation:dropdownSlideIn .18s cubic-bezier(.16,1,.3,1);border:1px solid rgba(0,0,0,.04)}.notif-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:0 4px 4px}.notif-header-title{font-size:1.05rem;font-weight:700;color:#1e293b}.notif-close-btn{background:transparent;border:none;color:#64748b;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .12s ease}.notif-close-btn:hover{background:#f1f5f9;color:#0f172a}.notif-divider{height:1px;background:#e2e8f0;margin:10px 0 14px}.notif-list{display:flex;flex-direction:column;gap:10px;max-height:340px;overflow-y:auto;padding-right:2px}.notif-empty{padding:20px;text-align:center;color:#94a3b8;font-size:.85rem}.notif-item{display:flex;align-items:flex-start;gap:12px;background:#fff;border:1px solid #E2E8F0;border-radius:14px;padding:12px;transition:border-color .15s ease,box-shadow .15s ease}.notif-item:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000a}.notif-item-avatar{width:36px;height:36px;border-radius:50%;background:#e2e8f0;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.notif-item-avatar img{width:100%;height:100%;object-fit:cover}.notif-item-body{flex:1;min-width:0}.notif-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:2px}.notif-item-title{font-size:.85rem;font-weight:600;color:#1e293b;line-height:1.3}.notif-item-delete{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:2px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .12s ease}.notif-item-delete:hover{color:#ef4444}.notif-item-text{font-size:.825rem;color:#64748b;margin-bottom:4px;line-height:1.3}.notif-item-meta{font-size:.72rem;color:#94a3b8}.notif-dropdown-footer{margin-top:14px}.notif-hide-all-btn{width:100%;padding:10px;background:#fff;border:1px solid #E2E8F0;border-radius:12px;font-size:.85rem;font-weight:600;color:#334155;cursor:pointer;transition:all .15s ease}.notif-hide-all-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a}
/* Enhanced Notification Animations */

@keyframes notifPulse {
0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); }
70% { transform: scale(1.1); box-shadow: 0 0 0 6px rgba(239, 68, 68, 0); }
100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); }
}
.notif-dot {
position: absolute;
top: 4px;
right: 4px;
width: 9px;
height: 9px;
background-color: #EF4444;
border-radius: 50%;
border: 1.5px solid #FFFFFF;
animation: notifPulse 2s infinite ease-in-out;
}
.notif-item {
transition: background-color 0.15s ease, transform 0.15s ease;
border-radius: 8px;
}
.notif-item:hover {
background-color: #F1F5F9 !important;
transform: translateX(3px);
}
/* ========================================================

Admin Panel Executive Styling Overhauls
======================================================== */
.admin-card-header {
background: linear-gradient(135deg, #1E293B 0%, #0F172A 100%);
border: 1px solid rgba(255, 255, 255, 0.1);
box-shadow: 0 10px 30px -5px rgba(15, 23, 42, 0.3);
}
.admin-tab-btn {

display: inline-flex;
align-items: center;
gap: 8px;
padding: 10px 18px;
font-size: 0.875rem;
font-weight: 600;
border-radius: 8px;
transition: all 0.18s ease;
color: #64748B;
background: transparent;
border: none;
cursor: pointer;
}
.admin-tab-btn:hover {

color: #1E293B;
background: #F1F5F9;
}
.admin-tab-btn.active {

color: #2563EB;
background: #EFF6FF;
box-shadow: 0 1px 3px rgba(37, 99, 235, 0.12);
}
.admin-search-wrapper {

background: #FFFFFF;
border: 1px solid #E2E8F0;
border-radius: 10px;
padding: 12px 16px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}
.admin-user-table {

border-collapse: separate;
border-spacing: 0;
width: 100%;
}
.admin-user-table th {

background: #F8FAFC;
color: #475569;
font-weight: 700;
font-size: 0.75rem;
text-transform: uppercase;
letter-spacing: 0.06em;
padding: 12px 16px;
border-bottom: 2px solid #E2E8F0;
}
.admin-user-table td {

padding: 14px 16px;
border-bottom: 1px solid #F1F5F9;
vertical-align: middle;
}
.admin-user-table tr:hover td {

background: #F8FAFC;
}
.role-badge-select {

border-radius: 6px;
font-size: 0.8rem;
font-weight: 600;
padding: 6px 12px;
border: 1px solid #CBD5E1;
background-color: #FFFFFF;
color: #1E293B;
cursor: pointer;
outline: none;
transition: all 0.15s ease;
}
.role-badge-select:focus {

border-color: #2563EB;
box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}
.audit-table th {

background: #F8FAFC;
font-weight: 700;
font-size: 0.75rem;
color: #475569;
text-transform: uppercase;
padding: 10px 14px;
border-bottom: 2px solid #E2E8F0;
}
.audit-table td {

padding: 10px 14px;
border-bottom: 1px solid #F1F5F9;
font-size: 0.8rem;
}
/* ========================================================
Shakarim Science 2026 — Master UI Polish & Alignment Overhaul
======================================================== */
:root {

--primary: #1E293B;
--primary-dark: #0F172A;
--primary-brand: #0284C7;
--accent: #0D9488;
--bg-main: #F8FAFC;
--card-bg: #FFFFFF;
--border-light: #E2E8F0;
--border-subtle: #F1F5F9;
--text-main: #0F172A;
--text-secondary: #475569;
--text-muted: #64748B;
--radius-sm: 6px;
--radius-md: 10px;
--radius-lg: 14px;
--radius-xl: 18px;
}
body {

background-color: #F8FAFC !important;
color: #0F172A !important;
font-feature-settings: 'cv02', 'cv03', 'cv04', 'cv11';
}
/* --- Container & Layout Alignments --- */

.page-content {
padding: 20px 28px !important;
max-width: 100% !important;
margin: 0 !important;
width: 100% !important;
box-sizing: border-box !important;
}
@media (max-width: 768px) {

.page-content {
padding: 16px 12px !important;
}
}
/* --- Global Clean Cards --- */

.card {
background: #FFFFFF !important;
border: 1px solid #E2E8F0 !important;
border-radius: 12px !important;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.02) !important;
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
overflow: hidden;
}
.card:hover {

border-color: #CBD5E1 !important;
box-shadow: 0 4px 12px rgba(15, 23, 42, 0.06) !important;
}
.card-header {

padding: 16px 20px !important;
border-bottom: 1px solid #F1F5F9 !important;
background: #FFFFFF !important;
display: flex;
align-items: center;
justify-content: space-between;
}
.card-body {

padding: 20px !important;
}
.card-footer {

padding: 14px 20px !important;
border-top: 1px solid #F1F5F9 !important;
background: #FAFAFA !important;
}
/* --- Stat Cards Polish --- */

.stat-card {
background: #FFFFFF !important;
border: 1px solid #E2E8F0 !important;
border-radius: 14px !important;
padding: 18px 22px !important;
box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
transition: all 0.2s ease !important;
display: flex !important;
flex-direction: column !important;
justify-content: space-between !important;
position: relative !important;
}
.stat-card:hover {

border-color: #CBD5E1 !important;
box-shadow: 0 6px 20px rgba(50, 66, 102, 0.08) !important;
transform: translateY(-2px) !important;
}
.stat-card-top {

display: flex !important;
align-items: center !important;
justify-content: space-between !important;
margin-bottom: 6px !important;
}
.stat-card-title {

font-size: 0.775rem !important;
font-weight: 700 !important;
color: #64748B !important;
text-transform: uppercase !important;
letter-spacing: 0.04em !important;
}
.stat-card-icon-clean {

display: flex !important;
align-items: center !important;
justify-content: center !important;
width: 40px !important;
height: 40px !important;
border-radius: 10px !important;
flex-shrink: 0 !important;
}
.stat-card-value {

font-size: 1.75rem !important;
font-weight: 800 !important;
color: #0F172A !important;
line-height: 1.2 !important;
margin-top: 2px !important;
letter-spacing: -0.02em !important;
}
.stat-card-subtitle {

font-size: 0.75rem !important;
color: #64748B !important;
margin-top: 6px !important;
font-weight: 500 !important;
}
.search-input-field {

padding-left: 42px !important;
padding-right: 36px !important;
height: 42px !important;
border: 1px solid #CBD5E1 !important;
border-radius: 10px !important;
font-size: 0.875rem !important;
color: #0F172A !important;
background-color: #FFFFFF !important;
width: 100% !important;
outline: none !important;
box-shadow: 0 1px 2px rgba(0,0,0,0.03) !important;
}
.search-input-field:focus {
border-color: #2563EB !important;
box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15) !important;
}
/* --- Form Controls & Inputs Perfection --- */

.form-control, input[type="search"], input[type="password"], input[type="email"], input[type="number"], select, textarea {
height: 38px;
border: 1px solid #CBD5E1 !important;
border-radius: 8px !important;
padding: 0 12px;
font-size: 0.875rem !important;
color: #0F172A !important;
background-color: #FFFFFF !important;
transition: all 0.15s ease-in-out !important;
outline: none !important;
}
.search-bar, .input-icon-wrapper {
position: relative !important;
}
.search-bar svg, .input-icon-wrapper svg, .search-bar .input-icon, .input-icon-wrapper .input-icon {
position: absolute !important;
left: 14px !important;
top: 50% !important;
transform: translateY(-50%) !important;
color: #94A3B8 !important;
pointer-events: none !important;
z-index: 5 !important;
}
.search-bar input, .input-icon-wrapper input, .search-bar .form-control, .input-icon-wrapper .form-control {
padding-left: 42px !important;
}
textarea {

height: auto !important;
padding: 10px 12px !important;
}
.form-control:focus, input:focus, select:focus, textarea:focus {

border-color: #0284C7 !important;
box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15) !important;
}
.form-label {

font-size: 0.825rem !important;
font-weight: 600 !important;
color: #334155 !important;
margin-bottom: 6px !important;
display: block;
}
/* --- Tables & Lists Polish --- */

.table-wrapper {
background: #FFFFFF !important;
border: 1px solid #E2E8F0 !important;
border-radius: 12px !important;
overflow: hidden !important;
box-shadow: 0 1px 3px rgba(0,0,0,0.02) !important;
}
table {

width: 100% !important;
border-collapse: separate !important;
border-spacing: 0 !important;
}
table thead th {

background: #F8FAFC !important;
color: #475569 !important;
font-size: 0.75rem !important;
font-weight: 700 !important;
text-transform: uppercase !important;
letter-spacing: 0.05em !important;
padding: 12px 16px !important;
border-bottom: 2px solid #E2E8F0 !important;
white-space: nowrap !important;
}
table tbody td {

padding: 13px 16px !important;
border-bottom: 1px solid #F1F5F9 !important;
color: #1E293B !important;
font-size: 0.875rem !important;
vertical-align: middle !important;
}
table tbody tr:last-child td {

border-bottom: none !important;
}
table tbody tr:hover td {

background-color: #F8FAFC !important;
}
/* --- Buttons Polish --- */

.btn {
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
gap: 8px !important;
height: 38px !important;
padding: 0 16px !important;
font-size: 0.875rem !important;
font-weight: 600 !important;
border-radius: 8px !important;
transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1) !important;
border: 1px solid transparent !important;
cursor: pointer !important;
text-decoration: none !important;
line-height: 1 !important;
}
.btn-sm {

height: 32px !important;
padding: 0 12px !important;
font-size: 0.8rem !important;
border-radius: 6px !important;
}
.btn-primary {

background-color: #0284C7 !important;
color: #FFFFFF !important;
border-color: #0284C7 !important;
}
.btn-primary:hover {

background-color: #0369A1 !important;
border-color: #0369A1 !important;
box-shadow: 0 2px 8px rgba(2, 132, 199, 0.25) !important;
}
.btn-secondary {

background-color: #F1F5F9 !important;
color: #334155 !important;
border-color: #CBD5E1 !important;
}
.btn-secondary:hover {

background-color: #E2E8F0 !important;
color: #0F172A !important;
}
.btn-outline {

background-color: transparent !important;
border-color: #CBD5E1 !important;
color: #334155 !important;
}
.btn-outline:hover {

background-color: #F8FAFC !important;
border-color: #94A3B8 !important;
color: #0F172A !important;
}
.btn-ghost {

background-color: transparent !important;
color: #64748B !important;
}
.btn-ghost:hover {

background-color: #F1F5F9 !important;
color: #0F172A !important;
}
/* --- Badges & Status Chips --- */

.badge {
display: inline-flex !important;
align-items: center !important;
gap: 4px !important;
padding: 3px 10px !important;
border-radius: 9999px !important;
font-size: 0.75rem !important;
font-weight: 700 !important;
letter-spacing: 0.02em !important;
line-height: 1.4 !important;
white-space: nowrap !important;
}
/* --- Modals Perfection --- */

.modal-overlay {
background: rgba(15, 23, 42, 0.65) !important;
backdrop-filter: blur(4px) !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
z-index: 999 !important;
padding: 20px !important;
}
.modal {

background: #FFFFFF !important;
border-radius: 16px !important;
box-shadow: 0 25px 50px -12px rgba(15, 23, 42, 0.25) !important;
border: 1px solid #E2E8F0 !important;
max-width: 640px !important;
width: 100% !important;
max-height: 90vh !important;
overflow-y: auto !important;
}
.modal-header {

padding: 18px 24px !important;
border-bottom: 1px solid #F1F5F9 !important;
display: flex !important;
align-items: center !important;
justify-content: space-between !important;
}
.modal-title {

font-size: 1.15rem !important;
font-weight: 700 !important;
color: #0F172A !important;
}
.modal-body {

padding: 24px !important;
}
.modal-footer {

padding: 16px 24px !important;
border-top: 1px solid #F1F5F9 !important;
background: #F8FAFC !important;
border-radius: 0 0 16px 16px !important;
display: flex !important;
align-items: center !important;
justify-content: flex-end !important;
gap: 12px !important;
}
/* --- Document Paper Simulation --- */

.official-paper-preview {
background: #FFFFFF !important;
border: 1px solid #CBD5E1 !important;
box-shadow: 0 8px 30px rgba(0,0,0,0.08) !important;
border-radius: 8px !important;
padding: 36px 40px !important;
color: #000000 !important;
line-height: 1.5 !important;
font-family: 'Times New Roman', Times, serif, 'Montserrat', sans-serif !important;
}
/* --- Scrollbar Polish --- */

::-webkit-scrollbar {
width: 7px;
height: 7px;
}
::-webkit-scrollbar-track {
background: #F1F5F9;
}
::-webkit-scrollbar-thumb {
background: #CBD5E1;
border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
background: #94A3B8;
}

/* ========================================================
   Modern Soft Rounded Design System (Non-Destructive)
   ======================================================== */
.card, .stat-card, .table-wrapper {
  border-radius: 14px !important;
  border: 1px solid #E2E8F0 !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.stat-card:hover, .card:hover {
  border-color: #CBD5E1 !important;
  box-shadow: 0 6px 20px rgba(45, 62, 99, 0.08) !important;
}

.btn {
  border-radius: 10px !important;
  font-weight: 600 !important;
  transition: all 0.18s ease !important;
}

.btn-primary {
  background: #2D3E63 !important;
  border-color: #2D3E63 !important;
  color: #FFFFFF !important;
}

.btn-primary:hover {
  background: #1E293B !important;
  border-color: #1E293B !important;
}

.form-control, input, select, textarea {
  border-radius: 10px !important;
  border: 1px solid #CBD5E1 !important;
}

.form-control:focus, input:focus, select:focus, textarea:focus {
  border-color: #2563EB !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15) !important;
}

.badge {
  border-radius: 9999px !important;
  padding: 3px 10px !important;
}

.modal {
  border-radius: 18px !important;
  border: 1px solid #E2E8F0 !important;
  box-shadow: 0 20px 45px rgba(15, 23, 42, 0.2) !important;
}

.nav-item {
  border-radius: 10px !important;
}

.topbar-user-profile {
  border-radius: 9999px !important;
}

.user-dropdown-menu, .notif-dropdown-menu {
  border-radius: 16px !important;
}


/* --- High-End Grant Full Window Modal --- */
.grant-modal-overlay {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(15, 23, 42, 0.72) !important;
  backdrop-filter: blur(5px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 9999 !important;
  padding: 20px !important;
  animation: grantFadeIn 0.18s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

@keyframes grantFadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes grantModalIn {
  from {
    opacity: 0;
    transform: scale(0.97) translateY(10px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

.grant-full-modal {
  background: #FFFFFF !important;
  border-radius: 16px !important;
  box-shadow: 0 25px 60px -15px rgba(15, 23, 42, 0.4), 0 0 0 1px rgba(15, 23, 42, 0.08) !important;
  border: 1px solid #CBD5E1 !important;
  width: 95vw !important;
  max-width: 1400px !important;
  height: 90vh !important;
  max-height: 90vh !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  animation: grantModalIn 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.grant-modal-header {
  padding: 20px 28px !important;
  background: #F8FAFC !important;
  border-bottom: 1px solid #E2E8F0 !important;
  flex-shrink: 0 !important;
}

.grant-modal-body {
  padding: 24px 28px !important;
  overflow-y: auto !important;
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}

.grant-modal-footer {
  padding: 14px 28px !important;
  background: #F8FAFC !important;
  border-top: 1px solid #E2E8F0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-shrink: 0 !important;
}

.grant-tab-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 12px 20px !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: #64748B !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 3px solid transparent !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  margin-bottom: -2px !important;
  transition: all 0.15s ease !important;
}

.grant-tab-item:hover {
  color: #1E293B !important;
  background: rgba(241, 245, 249, 0.75) !important;
  border-radius: 6px 6px 0 0 !important;
}

.grant-tab-item.active {
  font-weight: 700 !important;
  color: #2D3E63 !important;
  border-bottom: 3px solid #2D3E63 !important;
}
