body{font-family:'Inter',sans-serif;background:#f4f7fb;color:#17212f}
.sidebar-toggle{display:none;background:none;border:none;color:#0b6bcb;font-size:1.5rem;cursor:pointer;margin:1rem 0 0 1rem;padding:0}
.sidebar{min-height:100vh;background:linear-gradient(180deg,#0f172a,#13294b);color:#fff;display:flex;flex-direction:column;transition:left 0.3s ease}

/* nav links */
.nav-link{color:rgba(255,255,255,.72);border-radius:10px;padding:.6rem .85rem;text-decoration:none;display:flex;align-items:center;gap:10px;font-size:.9rem;position:relative;transition:all .15s ease}
.nav-link:hover{background:rgba(255,255,255,.08);color:#fff}
.nav-link.active{background:rgba(11,107,203,.25);color:#fff;font-weight:600}
.nav-link.active::before{content:'';position:absolute;left:0;top:4px;bottom:4px;width:3px;background:#0b6bcb;border-radius:0 3px 3px 0}

.nav-icon{font-size:.7rem;opacity:.6;width:18px;text-align:center;flex-shrink:0}
.nav-link.active .nav-icon{opacity:1}

.sidebar-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.3);padding:.5rem .85rem .3rem;margin-top:.25rem}

.sidebar-user{padding-top:.75rem;border-top:1px solid rgba(255,255,255,.08)}
.sidebar-avatar{width:32px;height:32px;border-radius:50%;background:#0b6bcb;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}

.glass,.card-ui{background:rgba(255,255,255,.93);border:1px solid #dfe7f0;border-radius:22px;box-shadow:0 18px 35px rgba(15,23,42,.06);padding:1.5rem}
.kpi{border-radius:22px;background:#fff;border:1px solid #dfe7f0;box-shadow:0 14px 34px rgba(15,23,42,.05)}
.form-control,.form-select{border-radius:14px;min-height:48px}
.form-check-input{border-color:#475569;border-width:2px;cursor:pointer}
textarea.form-control{min-height:100px}
.btn,.badge{border-radius:14px}
.resume-link{font-size:.875rem;text-decoration:none}
.timeline-item{border-left:2px solid #dce7f4;padding-left:1rem;margin-left:.4rem;position:relative}
.timeline-item::before{content:'';position:absolute;left:-7px;top:.35rem;width:12px;height:12px;background:#0b6bcb;border-radius:50%}
.table-responsive{overflow-x:auto}

.fixed-toggle{position:fixed;top:1rem;left:1rem;z-index:1060;background:#fff;border:1px solid #dfe7f0;border-radius:8px;width:45px;height:45px;box-shadow:0 4px 12px rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;margin:0}
body.sidebar-collapsed .fixed-toggle.d-none{display:flex !important}
body.sidebar-collapsed .sidebar{display:none !important}
body.sidebar-collapsed main{flex:0 0 100%;max-width:100%;padding-left:4rem !important}

@media (max-width:991.98px){
    .sidebar-toggle{display:block}
    .sidebar{position:fixed;top:0;left:-100%;width:280px;height:100vh;z-index:1050;box-shadow:2px 0 8px rgba(0,0,0,0.15)}
    .sidebar.show{left:0}
    .sidebar-header{display:flex !important}
    body.sidebar-collapsed .fixed-toggle.d-none{display:none !important}
}
@media (min-width:992px){
    .sidebar{position:relative;left:0}
    .sidebar-header{display:flex !important}
    .sidebar .fs-4.mb-4{display:none !important}
}
.sidebar-header{border-bottom:1px solid rgba(255,255,255,.1);padding:1rem;margin-bottom:0;display:none}
.sidebar-header h5{color:#fff;font-weight:bold;font-size:1.25rem;margin:0}
.btn-close{filter:invert(1);padding:.5rem}
