/* school_phase.css — المرحلة المدرسية */
:root {
    --sch-primary: #4F46E5;
    --sch-dark:    #3730A3;
    --sch-border:  #E5E7EB;
}

.phase-header {
    background: linear-gradient(135deg, #1E1B4B 0%, var(--sch-dark) 40%, var(--sch-primary) 80%, #818CF8 100%);
    box-shadow: 0 20px 60px rgba(79,70,229,0.28);
}
.back-button:hover { border-color: var(--sch-primary); color: var(--sch-primary) !important; }
.search-input:focus { border-color: var(--sch-primary); box-shadow: 0 0 0 3px rgba(79,70,229,0.1); }
.stats-bar strong   { color: var(--sch-primary); }

/* ======== Options Grid ======== */
.options-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 22px;
    margin-bottom: 50px;
}

/* ======== Option Card ======== */
.option-card {
    background: white;
    border-radius: 20px;
    border: 1.5px solid var(--sch-border);
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05);
    padding: 36px 24px 28px;
    text-decoration: none !important;
    color: #1F2937;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    transition: all 0.35s cubic-bezier(0.4,0,0.2,1);
    position: relative;
    overflow: hidden;
    text-align: center;
}

.option-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--sch-dark), var(--sch-primary));
    transform: scaleX(0);
    transform-origin: right;
    transition: transform 0.35s ease;
}

.option-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 45px rgba(79,70,229,0.12);
    border-color: rgba(79,70,229,0.3);
}
.option-card:hover::before { transform: scaleX(1); transform-origin: left; }

.option-card.coming-soon {
    opacity: 0.65;
    cursor: not-allowed;
}
.option-card.coming-soon:hover { transform: none; box-shadow: none; }

.card-icon {
    width: 78px; height: 78px;
    border-radius: 22px;
    display: flex; align-items: center; justify-content: center;
    font-size: 32px;
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.option-card:hover .card-icon { transform: scale(1.1) rotate(-5deg); }

/* Icon Colors */
.ic-green  { background: linear-gradient(135deg, #DCFCE7, #F0FDF4); color: #15803D; }
.ic-blue   { background: linear-gradient(135deg, #DBEAFE, #EFF6FF); color: #1D4ED8; }
.ic-orange { background: linear-gradient(135deg, #FFEDD5, #FFF7ED); color: #C2410C; }
.ic-purple { background: linear-gradient(135deg, #F3E8FF, #FAF5FF); color: #7C3AED; }
.ic-indigo { background: linear-gradient(135deg, #E0E7FF, #EEF2FF); color: #4F46E5; }
.ic-amber  { background: linear-gradient(135deg, #FEF3C7, #FFFBEB); color: #D97706; }

.card-title {
    font-weight: 800;
    font-size: 17px;
    color: #1F2937;
    line-height: 1.3;
}

.card-desc {
    font-size: 13px;
    color: #6B7280;
    line-height: 1.6;
    margin: 0;
}

.card-cta {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    font-weight: 700;
    color: var(--sch-primary);
    opacity: 0;
    transform: translateY(4px);
    transition: all 0.3s ease;
}
.option-card:hover .card-cta { opacity: 1; transform: translateY(0); }

.badge-soon {
    position: absolute;
    top: 14px; left: 14px;
    background: linear-gradient(135deg, #7C3AED, #A78BFA);
    color: white;
    padding: 4px 12px;
    border-radius: 50px;
    font-size: 11px;
    font-weight: 700;
}
