:root{--vigo-green:#20D98B;--vigo-navy:#101828;--vigo-off:#F7F9F7;--vigo-lime:#C7F36B;--vigo-gray:#667085;--vigo-tint:#E8F8F0;
--bs-body-font-family:'Manrope',system-ui,sans-serif;--bs-body-bg:#F7F9F7;--bs-body-color:#101828;--bs-link-color:#0d7a52;--bs-link-hover-color:#0a5c3e;--bs-border-radius:.7rem}
body{background:var(--vigo-off)}
h1,h2,h3,h4,h5,h6{font-weight:800;letter-spacing:-.01em}
:focus-visible{outline:3px solid var(--vigo-green)!important;outline-offset:2px}
.navbar{background:var(--vigo-navy)!important}
.navbar .nav-link{white-space:nowrap;color:#c9d0d8;font-weight:600;border-radius:.5rem;padding:.45rem .8rem}
.navbar .nav-link:hover{color:#fff}
.navbar .nav-link.active{color:var(--vigo-navy);background:var(--vigo-green)}
.vigo-brand{display:flex;align-items:center;gap:.5rem;font-weight:800;font-size:1.25rem;color:#fff;text-decoration:none;letter-spacing:.02em}
.vigo-brand img{width:32px;height:32px}
.vigo-brand i{width:.45rem;height:.45rem;border-radius:50%;background:var(--vigo-green);margin-left:-.2rem}
.vigo-auth-logo{text-align:center;margin-bottom:1.5rem}
.vigo-auth-logo img{width:56px;height:56px}
.vigo-auth-logo div{font-weight:800;font-size:1.5rem;letter-spacing:.02em;margin-top:.3rem}
.gym-banner{background:var(--vigo-tint);border:1px solid #bfeed7;border-radius:.7rem;padding:.6rem 1rem;margin-bottom:1.25rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;font-size:.95rem}
.btn{font-weight:700;border-radius:.6rem}
.btn-vigo,.btn-primary{background:var(--vigo-green)!important;border-color:var(--vigo-green)!important;color:var(--vigo-navy)!important}
.btn-vigo:hover,.btn-primary:hover{background:#1bc27b!important;border-color:#1bc27b!important}
.btn-dark{background:var(--vigo-navy);border-color:var(--vigo-navy)}
.btn-outline-dark{color:var(--vigo-navy);border-color:var(--vigo-navy)}
.btn-outline-dark:hover{background:var(--vigo-navy);color:#fff}
.card{border:1px solid #e3e9e6;border-radius:1rem}
.table{--bs-table-bg:#fff}
.table thead th{font-size:.82rem;color:var(--vigo-gray);font-weight:700;border-bottom-width:2px}
.form-control:focus,.form-select:focus{border-color:var(--vigo-green);box-shadow:0 0 0 .2rem rgba(32,217,139,.25)}
.badge.bg-success{background:var(--vigo-green)!important;color:var(--vigo-navy)}
.badge.bg-warning{background:var(--vigo-lime)!important;color:var(--vigo-navy)!important}
.page-item.active .page-link{background:var(--vigo-navy);border-color:var(--vigo-navy)}
.page-link{color:var(--vigo-navy)}
