.plan-mobile {
    display: none;
}

.plan-desktop {
    display: block;
}

@media (max-width: 800px) {
    .page-index .plan-desktop {
        display: none;
    }

    .page-index .plan-mobile {
        display: block;
    }

    .page-index .main-content {
        padding: 14px 14px 98px;
    }

    .page-index .page-head {
        margin-bottom: 14px;
    }

    .page-index .page-head p {
        margin-bottom: 0;
    }

    .plan-mobile__shell {
        display: flex;
        flex-direction: column;
        gap: 14px;
    }

    .plan-mobile__top {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
    }

    .plan-mobile__eyebrow {
        font-size: 11px;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: #60a5fa;
        margin-bottom: 4px;
    }

    .plan-mobile__title {
        margin: 0;
        font-size: 28px;
        line-height: 1.05;
    }

    .plan-mobile__nav {
        display: flex;
        gap: 8px;
    }

    .plan-mobile__arrow {
        width: 46px;
        height: 46px;
        border-radius: 14px;
        background: #111827;
        border: 1px solid rgba(255,255,255,0.08);
        display: flex;
        align-items: center;
        justify-content: center;
        color: #e8eef7;
        flex: 0 0 auto;
    }

    .plan-mobile__arrow svg {
        width: 22px;
        height: 22px;
        fill: currentColor;
    }

    .plan-mobile__days {
        display: grid;
        grid-template-columns: repeat(7, minmax(0, 1fr));
        gap: 6px;
    }

    .plan-mobile__day-pill {
        min-height: 38px;
        border-radius: 12px;
        background: rgba(255,255,255,0.04);
        border: 1px solid rgba(255,255,255,0.06);
        display: flex;
        align-items: center;
        justify-content: center;
        color: #9ca3af;
        font-size: 12px;
        font-weight: 700;
    }

    .plan-mobile__day-pill.is-active {
        background: linear-gradient(135deg, #2563eb, #1d4ed8);
        border-color: transparent;
        color: #fff;
        box-shadow: 0 10px 24px rgba(37,99,235,0.28);
    }

    .plan-mobile__card {
        background: #111827;
        border: 1px solid rgba(255,255,255,0.08);
        border-radius: 20px;
        padding: 14px;
    }

    .plan-mobile__list {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .plan-mobile__lesson {
        display: grid;
        grid-template-columns: 64px 1fr;
        gap: 12px;
        align-items: start;
        padding: 12px;
        border-radius: 16px;
        background: rgba(255,255,255,0.04);
        border: 1px solid rgba(255,255,255,0.05);
    }

    .plan-mobile__lesson--current {
        background: rgba(37,99,235,0.16);
        border-color: rgba(37,99,235,0.35);
    }

    .plan-mobile__lesson-time {
        display: flex;
        flex-direction: column;
        gap: 4px;
        padding-top: 2px;
    }

    .plan-mobile__lesson-time strong {
        font-size: 16px;
        line-height: 1;
        color: #bfdbfe;
    }

    .plan-mobile__lesson-time span {
        font-size: 12px;
        color: #94a3b8;
    }

    .plan-mobile__lesson-body {
        min-width: 0;
    }

    .plan-mobile__lesson-title {
        display: flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 6px;
    }

    .plan-mobile__lesson-title strong {
        display: block;
        min-width: 0;
        font-size: 15px;
        line-height: 1.2;
    }

    .plan-mobile__lesson-meta,
    .plan-mobile__lesson-submeta {
        color: #9ca3af;
        font-size: 13px;
        line-height: 1.25;
    }

    .plan-mobile__lesson-submeta {
        margin-top: 4px;
    }

    .plan-mobile__lesson-note {
        margin-top: 8px;
        color: #dbe4f0;
        font-size: 13px;
        line-height: 1.35;
    }

    .plan-mobile__empty {
        min-height: 180px;
        border-radius: 16px;
        background: rgba(255,255,255,0.03);
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        color: #9ca3af;
        padding: 20px;
    }
}