/* ============================================================
   Правая колонка анкеты репетитора: связаться и формат занятий.
   Разметка — theme/dist-tutor/tpl/page/user/profile.tpl.

   Палитра общая с home.css (--dt-accent, --dt-font).
   У портала html{font-size:62.5%} → 1rem = 10px, поэтому здесь пиксели.
   Отдельный файл, а не style.css: тот собирается из style.less,
   правка .css руками разошлась бы с исходником.
   ============================================================ */

.dt-aside {
    float: right;
    width: 300px;
    margin: -12px 0 20px 20px;
    font-family: var(--dt-font, 'Google Sans', Arial, Helvetica, sans-serif);
    color: #334155;
}
.dt-aside * { box-sizing: border-box; }

/* Слева колонка блоков 202px, справа наша 300px + отступ 20px */
body:has(.dt-aside) .profile_body {
    width: calc(100% - 212px - 320px);
}

.dt-aside__card {
    margin: 0 0 16px;
    padding: 20px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 40px -32px rgba(15, 23, 42, .38);
}
.dt-aside__card:last-child { margin-bottom: 0; }

/* ---------- кнопка ---------- */

.dt-aside .dt-aside__cta {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 14px 18px;
    border: 1px solid transparent;
    border-radius: 14px;
    background: var(--dt-accent, #2563eb);
    background-image: linear-gradient(90deg, #3b82f6, #2f74ee 40%, #2563eb 72%, #1d4ed8);
    background-size: 220% 100%;
    background-position: 0% 50%;
    box-shadow: 0 14px 30px -20px rgba(37, 99, 235, .8);
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.25;
    color: #fff;
    text-align: center;
    text-shadow: none;
    cursor: pointer;
    transition: background-position .52s cubic-bezier(.22, 1, .36, 1), transform .18s ease;
}
.dt-aside .dt-aside__cta:hover,
.dt-aside .dt-aside__cta:focus {
    background-position: 100% 50%;
    color: #fff;
    text-decoration: none;
}
.dt-aside .dt-aside__cta:active { transform: scale(.99); }
.dt-aside .dt-aside__cta span { color: inherit; font: inherit; }

.dt-aside__note {
    margin: 12px 0 0;
    font-size: 13px;
    line-height: 1.45;
    color: #64748b;
}

/* Кнопка переехала сюда — в левом блоке она больше не нужна */
body:has(.dt-aside) .sideBlocks .btn-sendrequest { display: none; }

/* ---------- формат занятий ---------- */

.dt-aside .dt-aside__title {
    margin: 0 0 14px;
    padding: 0;
    font-family: inherit;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.25;
    color: #0f172a;
}

.dt-aside .dt-aside__list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.dt-aside .dt-aside__item {
    display: grid;
    grid-template-columns: 10px 1fr;
    gap: 4px 10px;
    align-items: center;
    margin: 0;
    padding: 10px 0;
    border-top: 1px solid #f1f5f9;
    list-style: none;
}
.dt-aside .dt-aside__item:first-child { border-top: 0; padding-top: 0; }
.dt-aside .dt-aside__item:last-child { padding-bottom: 0; }

.dt-aside__dot {
    width: 10px;
    height: 10px;
    margin: 0;
    border-radius: 9999px;
    background: #94a3b8;
}
.dt-aside__dot--online     { background: #22c55e; }
.dt-aside__dot--tutorhome  { background: #f59e0b; }
.dt-aside__dot--clienthome { background: #6366f1; }

.dt-aside__name {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
    color: #0f172a;
}
.dt-aside__price {
    grid-column: 2;
    font-size: 13px;
    line-height: 1.35;
    color: #64748b;
}

.dt-aside__free {
    margin: 14px 0 0;
    padding: 8px 12px;
    border-radius: 12px;
    background: #ecfdf5;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
    color: #047857;
}

.dt-aside .dt-aside__more {
    display: inline-block;
    margin: 14px 0 0;
    font-size: 13px;
    font-weight: 600;
    color: var(--dt-accent, #2563eb);
    text-decoration: none;
}
.dt-aside .dt-aside__more:hover { text-decoration: underline; }

/* ---------- узкие экраны ---------- */

@media (max-width: 1100px) {
    .dt-aside { width: 260px; }
    body:has(.dt-aside) .profile_body { width: calc(100% - 212px - 280px); }
}

@media (max-width: 900px) {
    .dt-aside {
        float: none;
        width: 100%;
        margin: 0 0 20px;
    }
    body:has(.dt-aside) .profile_body { width: 100%; }
}
