:root { --navy:#0b1d3a; --lime:#9bd400; }
.navbar.bg-primary { background-color: var(--navy) !important; }
.btn-primary { background-color: var(--navy); border-color: var(--navy); }
.btn-success { background-color: var(--lime); border-color: var(--lime); color:#0b1d3a; }
.btn-outline-success { color: var(--lime); border-color: var(--lime); }
.btn-outline-success:hover { background-color: var(--lime); color:#0b1d3a; }
a, .nav-link:hover { color: var(--lime) !important; }
.stat-card { border-left: 6px solid var(--lime); }

/* Profile photo block hover/edit UI */
.photo-block { position: relative; border:1px dashed #ced4da; background:#f8f9fa; border-radius:8px; min-height:260px; display:flex; align-items:center; justify-content:center; overflow:hidden; cursor:pointer; }
.photo-block img { width:100%; height:100%; object-fit:cover; display:block; }
.photo-block .photo-overlay { position:absolute; inset:0; background:rgba(11,29,58,0.55); color:#fff; display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity .2s; font-weight:600; text-align:center; padding:10px; }
.photo-block:hover .photo-overlay { opacity:1; }
.photo-placeholder { color:#6c757d; }

.card {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    margin-bottom: 16px;
}

.card-body {
    padding: 16px;
}

.alert {
    padding: 12px 14px;
    border-radius: 6px;
    margin-bottom: 16px;
}

.alert-error {
    background: #fde8e8;
    color: #8a1f1f;
    border: 1px solid #f5b5b5;
}

.alert-success {
    background: #e8f7ea;
    color: #1f6b33;
    border: 1px solid #b9e2c3;
}

.btn {
    display: inline-block;
    padding: 8px 14px;
    border: 1px solid #bbb;
    border-radius: 6px;
    background: #f5f5f5;
    color: #222;
    text-decoration: none;
    cursor: pointer;
}

.btn-primary {
    background: #1f5fbf;
    color: #fff;
    border-color: #1f5fbf;
}

.btn-danger {
    background: #b42318;
    color: #fff;
    border-color: #b42318;
}

.table {
    width: 100%;
    border-collapse: collapse;
}

.table th,
.table td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: left;
}

input[type="text"],
input[type="number"],
input[type="date"],
input[type="time"],
select,
textarea {
    width: 100%;
    padding: 8px;
    border: 1px solid #bbb;
    border-radius: 4px;
    box-sizing: border-box;
}