:root{--fgcv:#0b4f8a;--fgcv-dark:#083a66}
body{background:#f4f6f9;min-height:100vh;display:flex;flex-direction:column}
main{flex:1}
.app-nav{background:linear-gradient(90deg,var(--fgcv-dark),var(--fgcv))}
.app-nav .navbar-brand{font-weight:700}
.app-nav .navbar-brand img{background:#fff;border-radius:4px;padding:2px 4px}
.btn-primary{--bs-btn-bg:var(--fgcv);--bs-btn-border-color:var(--fgcv);--bs-btn-hover-bg:var(--fgcv-dark);--bs-btn-hover-border-color:var(--fgcv-dark)}
.card{border:0;box-shadow:0 1px 4px #0002}
.course-card .card-header{background:var(--fgcv);color:#fff}
.app-footer{border-top:1px solid #dde3ea;background:#fff}
.dropzone.fte-dropzone{min-height:70px;padding:10px;border:2px dashed #9db4cc;border-radius:.5rem;background:#fff}
.dropzone.fte-dropzone .dz-message{margin:.6rem 0}
.login-bg{position:fixed;inset:0;z-index:-1;background:#f3f6fa url(/assets/img/login-bg.svg) center bottom/cover no-repeat}
.login-card{background:#fff;border:1px solid #dbe3ee;border-radius:.9rem;box-shadow:0 6px 24px #0b4f8a1f}
.login-card h1{color:var(--fgcv)}
.admin-grid{background:#fff;border-radius:.5rem;box-shadow:0 1px 4px #0002;padding:1rem}
