/* ── Base ─────────────────────────────────────────── */
body {
    background-color: #f4f6f9;
    font-family: "Segoe UI", system-ui, -apple-system, sans-serif;
}

/* ── Navbar ──────────────────────────────────────── */
.navbar {
    box-shadow: 0 2px 8px rgba(0, 0, 0, .08);
}
.navbar-brand i {
    margin-right: 4px;
}

/* ── Stat Cards (Dashboard) ──────────────────────── */
.stat-card {
    transition: transform .15s, box-shadow .15s;
    border-radius: 12px;
}
.stat-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, .1);
}
.stat-icon {
    font-size: 2rem;
    margin-bottom: .5rem;
}

/* ── Project Cards ───────────────────────────────── */
.project-card {
    border-radius: 10px;
    transition: transform .15s, box-shadow .15s;
}
.project-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, .1);
}

/* ── Schedule Table ──────────────────────────────── */
.schedule-table {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
}
.schedule-table th {
    vertical-align: middle;
}
.schedule-cell {
    min-width: 180px;
    vertical-align: top;
    padding: .75rem;
}
.time-cell {
    background-color: #f8f9fa;
    white-space: nowrap;
}
.assign-btn {
    border-style: dashed;
}

/* ── Review Form ─────────────────────────────────── */
.form-label .bi {
    margin-right: 4px;
}
textarea.form-control {
    resize: vertical;
}

/* ── Badge sizes ─────────────────────────────────── */
.badge-sm {
    font-size: .7rem;
    padding: .25em .5em;
}

/* ── Misc ────────────────────────────────────────── */
.card-header {
    border-bottom: 1px solid #e9ecef;
}
.table-hover tbody tr:hover {
    background-color: #f0f4ff;
}
a {
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}
