body { background: #f3f6fb; }
.app-navbar { background: linear-gradient(90deg, #0d47a1, #1565c0); }
.navbar-brand { letter-spacing: .2px; }
.hero-home { background: linear-gradient(135deg, #0d47a1, #1976d2); color: #fff; }
.card-action { border: 0; transition: transform .15s ease, box-shadow .15s ease; color: #182235; }
.card-action:hover { transform: translateY(-3px); box-shadow: 0 .75rem 1.5rem rgba(0,0,0,.12)!important; }
.icon-circle { width: 54px; height: 54px; border-radius: 16px; display: flex; align-items: center; justify-content: center; background: #e8f1ff; font-size: 26px; }
.status-panel { box-shadow: inset 0 0 0 1px rgba(0,0,0,.05); }
video, canvas { min-height: 260px; object-fit: cover; }
.table td, .table th { vertical-align: middle; }
.face-thumb { height: 180px; object-fit: cover; background: #eee; }
#videoFace, #canvasFace { min-height: 220px; object-fit: cover; }
