/* Медиа-партнёрство v2 — тёмный стиль: чёрный фон, крупные карточки, фиолетовый акцент */

.media-shell { background: #0a0a0e; padding: 36px 16px 70px; }
.media-page { max-width: 880px; margin: 0 auto; color: #fff; font-size: 15px; }
.media-page h1 { margin: 0 0 22px; font-size: 30px; font-weight: 800; letter-spacing: .2px; }
.media-page h3 { margin: 0 0 14px; font-size: 18px; font-weight: 700; }
.media-h2 { margin: 30px 0 14px; font-size: 21px; font-weight: 800; }
.media-page a { color: #a08bff; }
.media-page p { margin: 0 0 10px; }

/* Карточки */
.media-card { background: #15151b; border: 1px solid #24242e; border-radius: 20px; padding: 22px 24px; margin-bottom: 16px; }
.media-list { margin: 10px 0 0; padding-left: 20px; }
.media-list li { margin-bottom: 7px; }

/* Плашка «Запрещено» */
.media-banned { background: linear-gradient(180deg, #1e0f11, #160b0d); border: 1px solid #4d1f21; border-radius: 20px; padding: 20px 24px; margin-bottom: 26px; }
.media-banned__title { display: flex; align-items: center; gap: 10px; font-weight: 800; font-size: 17px; letter-spacing: .6px; }
.media-banned ul { margin: 12px 0 0; padding: 0; list-style: none; }
.media-banned li { position: relative; padding-left: 18px; margin: 8px 0; color: #eed7d7; font-size: 14px; }
.media-banned li::before { content: ''; position: absolute; left: 0; top: 7px; width: 7px; height: 7px; border-radius: 50%; background: #ef5350; }

/* Карточка площадки/канала */
.media-ch { display: flex; gap: 16px; align-items: center; background: #15151b; border: 1px solid #24242e; border-radius: 20px; padding: 18px 20px; margin-bottom: 12px; }
.media-ch__icon { width: 62px; height: 62px; border-radius: 16px; display: flex; align-items: center; justify-content: center; flex: none; font-weight: 800; color: #fff; }
.media-ch__icon svg { width: 30px; height: 30px; }
.media-ch__icon--yt { background: #e62117; }
.media-ch__icon--tg { background: #229ed9; }
.media-ch__icon--tt { background: #010101; border: 1px solid #2e2e3a; }
.media-ch__icon--vk { background: #07f; font-size: 17px; }
.media-ch__icon--tw { background: #7c3aed; }
.media-ch__icon--web { background: #26262f; font-size: 22px; }
.media-ch__body { min-width: 0; }
.media-ch__name { font-weight: 800; font-size: 17px; overflow-wrap: anywhere; }
.media-ch__url { color: #8b8b98; font-size: 13px; text-decoration: none; display: inline-block; margin: 2px 0 8px; overflow-wrap: anywhere; }
.media-ch__url:hover { color: #a08bff; }

/* Пилюли-статусы */
.media-pill { display: inline-block; padding: 4px 12px; border-radius: 999px; font-size: 12px; font-weight: 700; white-space: nowrap; }
.media-pill--green { background: rgba(34, 197, 94, .14); color: #4ade80; }
.media-pill--amber { background: rgba(245, 180, 60, .14); color: #fbbf24; }
.media-pill--red { background: rgba(240, 82, 82, .14); color: #f87171; }
.media-pill--violet { background: rgba(124, 92, 255, .16); color: #b3a1ff; }
/* Старые имена бейджей — те же стили */
.media-badge { display: inline-block; padding: 4px 12px; border-radius: 999px; font-size: 12px; font-weight: 700; white-space: nowrap; }
.media-badge--green { background: rgba(34, 197, 94, .14); color: #4ade80; }
.media-badge--amber { background: rgba(245, 180, 60, .14); color: #fbbf24; }
.media-badge--red { background: rgba(240, 82, 82, .14); color: #f87171; }
.media-badge--blue { background: rgba(124, 92, 255, .16); color: #b3a1ff; }

/* Большие денежные карточки */
.media-stats2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 14px; }
.media-money { background: #15151b; border: 1px solid #24242e; border-radius: 20px; padding: 28px 20px; text-align: center; }
.media-money b { display: block; font-size: 30px; font-weight: 800; letter-spacing: .5px; }
.media-money span { display: block; color: #8b8b98; font-size: 13px; margin-top: 7px; }
.media-money--green b { color: #4ade80; }

/* Мелкие стат-карточки */
.media-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; }
.media-stat { background: #15151b; border: 1px solid #24242e; border-radius: 16px; padding: 16px 18px; min-width: 0; }
.media-stat b { display: block; font-size: 19px; font-weight: 800; overflow-wrap: anywhere; }
.media-stat span { color: #8b8b98; font-size: 12.5px; }
.media-stat--domain b { font-size: 15px; line-height: 1.35; padding-top: 3px; }

/* Вкладки-пилюли */
.media-tabs { display: flex; flex-wrap: wrap; gap: 10px 16px; margin-bottom: 26px; align-items: center; justify-content: space-between; }
.media-tabs__links { display: flex; flex-wrap: wrap; gap: 8px; }
.media-tabs__right { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.media-tabs a { padding: 9px 16px; border-radius: 999px; background: #15151b; border: 1px solid #24242e; color: #b9b9c7; text-decoration: none; font-size: 14px; font-weight: 600; transition: background .15s ease, color .15s ease; }
.media-tabs a:hover { background: #1d1d26; color: #fff; }
.media-tabs a.active { background: linear-gradient(135deg, #6d4aff, #5b2eec); border-color: transparent; color: #fff; }
.media-tabs__exit { color: #6d6d7a !important; }

/* Баланс + «Вывести» в навигации кабинета (видны на всех страницах).
   Глобальные стили сайта делают ссылки flex-колонками — перекрываем жёстко. */
.media-tabs a.media-tabs__balance {
    display: inline-flex !important; flex-direction: row !important;
    align-items: center; gap: 10px; flex-wrap: nowrap; white-space: nowrap; flex: none;
    background: #15151b !important; border: 1px solid rgba(74, 222, 128, .35) !important;
    padding: 5px 6px 5px 14px !important; line-height: 1;
}
.media-tabs a.media-tabs__balance span,
.media-tabs a.media-tabs__balance b { display: inline-block !important; width: auto !important; }
.media-tabs a.media-tabs__balance span { color: #4ade80; font-weight: 800; }
.media-tabs a.media-tabs__balance b { background: linear-gradient(135deg, #6d4aff, #5b2eec); color: #fff; border-radius: 999px; padding: 7px 13px; font-size: 13px; line-height: 1; }
.media-tabs a.media-tabs__balance:hover { background: #1d1d26 !important; }

/* Таблицы */
.media-table-wrap { overflow-x: auto; }
.media-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.media-table th, .media-table td { padding: 11px 12px; border-bottom: 1px solid #22222c; text-align: left; vertical-align: top; }
.media-table tr:last-child td { border-bottom: 0; }
.media-table th { color: #8b8b98; font-weight: 600; font-size: 12.5px; text-transform: uppercase; letter-spacing: .4px; }
.media-break { overflow-wrap: anywhere; }
.media-table th.is-me, .media-table td.is-me { background: rgba(124, 92, 255, .12); color: #cfc3ff; }
.media-table th.is-me { color: #b3a1ff; }

/* Формы */
.media-form label { display: block; margin: 14px 0 7px; font-size: 14px; color: #b9b9c7; font-weight: 600; }
.media-form input[type=text], .media-form input[type=number], .media-form textarea, .media-form select {
    width: 100%; background: #0f0f14; border: 1px solid #2a2a35;
    border-radius: 12px; padding: 12px 14px; color: #fff; font: inherit;
    transition: border-color .15s ease;
}
.media-form select { appearance: none; cursor: pointer; }
.media-form select option { background: #15151b; color: #fff; }
.media-form input:focus, .media-form textarea:focus, .media-form select:focus { outline: none; border-color: #6d4aff; }
.media-form textarea { min-height: 110px; resize: vertical; }
.media-form ::placeholder { color: #55555f; }

.media-domain-input { display: flex; align-items: center; gap: 10px; }
.media-domain-input input { flex: 1; }
.media-domain-input .suffix { color: #8b8b98; white-space: nowrap; font-weight: 600; }

/* Кнопки */
.media-btn { display: inline-block; margin-top: 14px; background: #232331; color: #fff; border: 1px solid #2e2e3c; border-radius: 12px; padding: 11px 20px; font: inherit; font-weight: 600; cursor: pointer; text-decoration: none; transition: background .15s ease; }
.media-btn:hover { background: #2b2b3b; }
.media-btn:disabled { opacity: .4; cursor: not-allowed; }
.media-btn--primary { background: linear-gradient(135deg, #6d4aff, #5b2eec); border-color: transparent; }
.media-btn--primary:hover { background: linear-gradient(135deg, #7b5bff, #6a3ff5); }
.media-btn--ghost { background: transparent; }
.media-btn--ghost:hover { background: #1d1d26; }
.media-btn--danger { background: rgba(240, 82, 82, .14); border-color: rgba(240, 82, 82, .3); color: #f87171; }
.media-btn--danger:hover { background: rgba(240, 82, 82, .24); }
.media-btn--sm { padding: 7px 14px; font-size: 13px; margin-top: 0; border-radius: 10px; }

/* Большая CTA во всю ширину */
.media-cta { display: block; width: 100%; text-align: center; background: linear-gradient(135deg, #6d4aff, #5b2eec); color: #fff !important; border: 0; border-radius: 999px; padding: 17px 22px; font: inherit; font-size: 16px; font-weight: 700; cursor: pointer; text-decoration: none; margin: 24px 0 8px; box-shadow: 0 12px 32px rgba(101, 66, 255, .35); transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease; }
.media-cta:hover { transform: translateY(-1px); box-shadow: 0 16px 38px rgba(101, 66, 255, .45); }
.media-cta:disabled { opacity: .35; cursor: not-allowed; transform: none; box-shadow: none; }

/* Флеши и уведомления */
.media-flash { border-radius: 14px; padding: 13px 16px; margin-bottom: 16px; font-size: 14px; font-weight: 600; }
.media-flash--ok { background: rgba(34, 197, 94, .12); color: #4ade80; border: 1px solid rgba(34, 197, 94, .25); }
.media-flash--error { background: rgba(240, 82, 82, .1); color: #f87171; border: 1px solid rgba(240, 82, 82, .25); }

.media-muted { color: #8b8b98; }
.media-desc { background: #0f0f14; border: 1px dashed #3a3a4a; border-radius: 12px; padding: 14px 16px; font-weight: 700; letter-spacing: .3px; overflow-wrap: anywhere; color: #cfc3ff; }

/* Подтверждение канала кодом */
.media-verify { border-color: rgba(245, 180, 60, .45); background: linear-gradient(180deg, rgba(245, 180, 60, .06), rgba(21, 21, 27, 0)); }
.media-verify__code { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 14px 0; }
.media-verify__value { font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-size: 26px; font-weight: 800; letter-spacing: 2px; color: #fbbf24; background: #0f0f14; border: 1px dashed #4d3a1a; border-radius: 12px; padding: 10px 18px; }
.media-verify__steps { margin: 12px 0 0; padding-left: 20px; color: #cfcfd6; }
.media-verify__steps li { margin: 6px 0; }
.media-verify__time { margin-top: 14px; font-weight: 600; color: #eaddb0; }
.media-verify-inline { margin-top: 10px; }
.media-verify-inline .media-verify__code { margin: 6px 0 0; }
.media-verify-inline .media-verify__value { font-size: 20px; padding: 7px 14px; }
.media-notice { border-left: 3px solid #6d4aff; padding: 10px 14px; margin: 8px 0; background: #101018; border-radius: 0 12px 12px 0; font-size: 14px; }
.media-notice.unread { border-left-color: #fbbf24; }
.media-tier-table td:first-child { white-space: nowrap; font-weight: 700; }

/* Пагинация (ik-pager из ideas.css переопределяем под тёмный стиль внутри media) */
.media-page .ik-pager { display: flex; gap: 6px; margin-top: 14px; }
.media-page .ik-pager__btn { display: inline-flex; align-items: center; justify-content: center; min-width: 34px; height: 34px; padding: 0 10px; border-radius: 10px; background: #15151b; border: 1px solid #24242e; color: #b9b9c7; text-decoration: none; font-size: 13px; }
.media-page .ik-pager__btn.is-active { background: linear-gradient(135deg, #6d4aff, #5b2eec); border-color: transparent; color: #fff; }
.media-page .ik-pager__btn.is-disabled { opacity: .35; }
.media-page .ik-pager__dots { color: #55555f; align-self: center; }

/* Публичная страница партнёра */
.media-pub__head { display: flex; gap: 20px; align-items: center; }
.media-pub__avatar { border-radius: 18px; flex: none; image-rendering: pixelated; }
.media-pub__badges { display: flex; gap: 8px; flex-wrap: wrap; }
.media-pub__domain { text-align: center; padding: 30px 24px; }
.media-pub__ip { font-size: 28px; font-weight: 800; letter-spacing: .5px; margin-top: 8px; overflow-wrap: anywhere; color: #b3a1ff; }
@media (max-width: 640px) {
    .media-pub__head { flex-direction: column; text-align: center; }
    .media-pub__ip { font-size: 21px; }
}

/* Шаги онбординга */
.media-steps { display: flex; gap: 8px; margin-bottom: 22px; flex-wrap: wrap; }
.media-step { padding: 8px 16px; border-radius: 999px; background: #15151b; border: 1px solid #24242e; color: #6d6d7a; font-size: 13.5px; font-weight: 700; }
.media-step--active { background: linear-gradient(135deg, #6d4aff, #5b2eec); border-color: transparent; color: #fff; }
.media-step--done { color: #4ade80; border-color: rgba(34, 197, 94, .3); }

/* Живая проверка домена */
.media-domain-status { min-height: 22px; margin-top: 9px; font-size: 13.5px; font-weight: 600; }
.media-domain-status.is-ok { color: #4ade80; }
.media-domain-status.is-bad { color: #f87171; }
.media-domain-status.is-wait { color: #8b8b98; }

/* Прогресс к следующему уровню */
.media-progress { margin-top: 14px; }
.media-progress__bar { height: 10px; border-radius: 999px; background: #0f0f14; border: 1px solid #24242e; overflow: hidden; }
.media-progress__fill { height: 100%; border-radius: 999px; background: linear-gradient(90deg, #6d4aff, #a78bfa); transition: width .3s ease; }
.media-progress__label { display: flex; justify-content: space-between; margin-top: 7px; font-size: 13px; color: #8b8b98; }

/* Заблокированная вкладка (Ресурсы до нужного уровня) */
.media-tabs a.media-tabs__locked { opacity: .55; }

/* Карточки уровней */
.media-lvl__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 4px; }
.media-lvl__head h3 { margin: 0; }
.media-lvl__pills { display: flex; gap: 8px; flex-wrap: wrap; }
.media-lvl--current { border-color: #6d4aff; box-shadow: 0 0 0 1px #6d4aff, 0 10px 30px rgba(101, 66, 255, .15); }
.media-lvl--done { opacity: .75; }

/* Список бонусов уровня */
.media-perks { margin: 8px 0 0; padding: 0; list-style: none; }
.media-perks li { position: relative; padding-left: 20px; margin: 7px 0; }
.media-perks li::before { content: '✦'; position: absolute; left: 0; color: #a78bfa; }

/* Строка добавления канала («плюс») */
.media-add { border: 1px dashed #2e2e3a; border-radius: 999px; padding: 4px 6px 4px 18px; display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.media-add input { flex: 1; background: transparent; border: 0; color: #fff; font: inherit; padding: 10px 0; min-width: 0; }
.media-add input:focus { outline: none; }
.media-add ::placeholder { color: #55555f; }
.media-add button { flex: none; }

/* Чек-лист новичка */
.media-check { display: flex; flex-direction: column; gap: 6px; margin-top: 6px; }
.media-check__item { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 12px; background: #101018; color: #b9b9c7 !important; text-decoration: none; font-weight: 600; }
.media-check__item:hover { background: #191922; }
.media-check__mark { width: 24px; height: 24px; border-radius: 50%; border: 2px solid #3a3a4a; display: flex; align-items: center; justify-content: center; font-size: 13px; flex: none; }
.media-check__item.is-done { color: #6d6d7a !important; text-decoration: line-through; }
.media-check__item.is-done .media-check__mark { border-color: #22c55e; background: rgba(34, 197, 94, .15); color: #4ade80; }

/* Превью ролика */
.media-vthumb { width: 104px; height: 58px; object-fit: cover; border-radius: 10px; flex: none; border: 1px solid #24242e; }

/* Контакт поддержки */
.media-support { font-weight: 600; }
.media-support a { color: #7cc0ff; }

/* Ползунок калькулятора */
#media-calc input[type=range] { width: 100%; accent-color: #6d4aff; height: 28px; cursor: pointer; }

/* Баннер бонуса за регистрацию */
.media-bonus { display: flex; align-items: center; gap: 14px; background: linear-gradient(135deg, rgba(109, 74, 255, .16), rgba(74, 222, 128, .1)); border: 1px solid rgba(109, 74, 255, .45); border-radius: 16px; padding: 15px 18px; margin-bottom: 18px; font-weight: 600; }
.media-bonus__icon { font-size: 26px; flex: none; }
.media-bonus b { color: #4ade80; }

@media (max-width: 640px) {
    .media-shell { padding: 24px 12px 50px; }
    .media-page h1 { font-size: 23px; }
    .media-stats2 { grid-template-columns: 1fr; }
    .media-money b { font-size: 26px; }
    .media-tabs a.media-tabs__balance { margin-left: 0; }
    .media-ch__icon { width: 52px; height: 52px; border-radius: 14px; }
}
