/* ============================================================
   ADMIN PANEL — STYLED TO MATCH PUBLIC SIDE
   ============================================================ */
.login-box {
    width: min(100%, 520px);
    margin: 60px auto;
}

.section-title {
    font-size: clamp(1.6rem, 2.5vw, 2rem);
    text-align: center;
    margin-bottom: 20px;
}

.input-field {
    margin: 10px 0 16px;
}

.button {
    width: auto;
    min-width: 180px;
}

form .button,
.login-box .button {
    width: 100%;
}

.admin-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 18px;
    margin-top: 24px;
}

.admin-card {
    display: block;
    padding: 22px;
    text-align: center;
    color: #fff;
    text-decoration: none;
    font-size: 1.05rem;
}

.admin-card:hover {
    transform: translateY(-4px);
}

.msg {
    font-size: 15px;
}

.schedule-columns-2 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.schedule-column,
.content-box,
.admin-note,
.finder-modal-card,
.glass-panel {
    background: rgba(0,0,0,0.46);
    border-radius: 18px;
}

.friends-grid-admin {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.drag-over {
    outline: 3px dashed #4ff;
    border-radius: 14px;
}

@media (max-width: 900px) {
    .schedule-columns-2,
    .friends-grid-admin {
        grid-template-columns: 1fr;
    }
}
