@import url('https://fonts.googleapis.com/css2?family=Onest:wght@400;500;600;700;800&family=Golos+Text:wght@400;500;600;700&display=swap');

/* ============================================================
   DOOMM TRACK · ГЛОБАЛЬНАЯ ТЕМА (theme.css)
   Подключается ПОСЛЕДНИМ — переопределяет облик всего кабинета.
   Шрифты: Onest (заголовки/UI) + Golos Text (текст).
   Палитра: синий #1E56E6 основной, тёмно-синий #0E2A57 структура,
            зелёный #15A66B — статусы «успех/завершено».
   Логику и классы НЕ трогает — только визуальный слой.
   ============================================================ */

:root {
    --primary-color: #1E56E6;
    --secondary-color: #0E2A57;
    --accent-color: #3D8BFF;
    --dark-color: #101B2E;
    --success-color: #15A66B;
    --warning-color: #E8A33D;
    --danger-color: #E5484D;
    --border-radius: 12px;
    --box-shadow: 0 8px 28px -16px rgba(20, 40, 80, .28);

    /* токены темы */
    --stk-ink: #101B2E;
    --stk-ink-2: #5A6B82;
    --stk-line: #E9EDF4;
    --stk-surface: #FFFFFF;
    --stk-canvas: #EEF1F6;
    --stk-primary-soft: #EAF1FF;
    --stk-success-soft: #E7F4EE;
    --stk-font: 'Golos Text', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --stk-display: 'Onest', 'Golos Text', sans-serif;
}

/* ── База ─────────────────────────────────────────────── */
body {
    font-family: var(--stk-font) !important;
    background-color: var(--stk-canvas) !important;
    background-image: none !important;
    color: var(--stk-ink);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5,
.section-title, .section-title2,
.object-title, .object-container h2, .object-container h3,
.db-company-title, .profile-section-title,
.welcome-message, .notice-title {
    font-family: var(--stk-display) !important;
    letter-spacing: -0.01em;
}

a { transition: color .15s ease; }

/* Контейнер страницы — мягче и воздушнее */

@media (max-width: 768px) {
    .container { border-radius: 0 !important; box-shadow: none !important; }
}

/* ── Кнопки ───────────────────────────────────────────── */
.btn {
    font-family: var(--stk-font) !important;
    border-radius: 11px !important;
    font-weight: 600 !important;
    transition: transform .12s ease, box-shadow .15s ease, background .15s ease !important;
}

.btn-success { background: linear-gradient(135deg, #15A66B, #2BB87C) !important; color: #fff !important; }
.btn-info    { background: #2E6BD6 !important; color: #fff !important; }
.btn-save    { background: #1E56E6 !important; }
.btn-send    { background: #1E56E6 !important; }
.btn-dashboard { background: linear-gradient(135deg, #1E56E6, #2E6BF0) !important; border-radius: 11px !important; }
.btn-dashboard:hover { background: #1746C8 !important; }

/* ── Шапка ────────────────────────────────────────────── */
header { box-shadow: 0 2px 14px -6px rgba(20, 40, 80, .14) !important; }

.user-balance { border: 1px solid #DCE3EF !important; border-radius: 12px !important; }
.user-balance i { color: #1E56E6 !important; }
.user-bonus-balance {
    background: var(--stk-success-soft) !important;
    color: #138A5A !important;
}
.user-bonus-balance i { color: #138A5A !important; }

.user-status { background: #F4F7FB !important; border-radius: 12px !important; }
.user-status.client  { border: 2px solid #15A66B !important; }
.user-status.company { border: 2px solid #0E2A57 !important; }
.user-status.partner { border: 2px solid #E8A33D !important; }

.profile-link:hover, .logout-link:hover { color: #1E56E6 !important; }
.calculator-link:hover { background-color: #0E2A57 !important; color: #fff !important; }

/* ── Подменю и хлебные крошки ─────────────────────────── */
.subnav { border-radius: 0 !important; }
.subnav-item { border-radius: 11px !important; font-weight: 500; }
.subnav-item:hover { background: rgba(30, 86, 230, .10) !important; color: #1E56E6 !important; }
.subnav-item:hover i { color: #1E56E6; }

.breadcrumbs a { color: #1E56E6 !important; }
.breadcrumbs a:hover { color: #0E2A57 !important; }

/* ── Карточки объектов ────────────────────────────────── */
.object-card {
    border-radius: 18px !important;
    box-shadow: 0 10px 30px -18px rgba(20, 40, 80, .32) !important;
    border: 1px solid var(--stk-line) !important;
}
.object-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 40px -18px rgba(20, 40, 80, .38) !important;
}
.object-title a { color: #16213A !important; }
.object-title a:hover { color: #1E56E6 !important; }

/* фото-бейджи (площадь/этажи/стоимость) */
.photo-stat {
    border-radius: 9px !important;
    box-shadow: 0 4px 12px rgba(13, 30, 55, .18) !important;
    font-weight: 600;
}

/* ── Прогресс-бары ────────────────────────────────────── */
.progress-container, .progress-bar-wrapper {
    background: #EAEEF4 !important;
    border-radius: 7px !important;
    overflow: hidden;
}
.progress-bar {
    background: linear-gradient(90deg, #1E56E6, #3D8BFF) !important;
    border-radius: 7px !important;
}
.section-progress-container { background: #EAEEF4 !important; border-radius: 7px !important; }
.section-progress-bar { background: linear-gradient(90deg, #1E56E6, #3D8BFF) !important; }

/* ── Табы дашборда ────────────────────────────────────── */
.db-tab-btn.active,
.obj-type-tab.active,
.company-section-tab.active {
    background: #1E56E6 !important;
    border-color: #1E56E6 !important;
    box-shadow: 0 6px 16px -8px rgba(30, 86, 230, .55) !important;
}
.db-tab-btn, .obj-type-tab, .company-section-tab { font-family: var(--stk-font) !important; }

/* ── Шапка-карточка клиента/компании ──────────────────── */
.db-company-header {
    border-radius: 18px !important;
    border: 1px solid var(--stk-line) !important;
    box-shadow: 0 10px 30px -20px rgba(20, 40, 80, .28) !important;
}
.db-company-title { color: #0E2A57 !important; }
.db-quick-row:hover { background: #F4F7FB !important; }

/* ── Код клиента ──────────────────────────────────────── */
.client-code {
    background: linear-gradient(135deg, #0E2A57, #1E56E6) !important;
    color: #fff !important;
    border-radius: 12px !important;
    letter-spacing: 1px;
}

/* ── Профиль-секции ───────────────────────────────────── */
.profile-card, .profile-section {
    border-radius: 16px !important;
    border: 1px solid var(--stk-line) !important;
    box-shadow: 0 6px 22px -16px rgba(20, 40, 80, .22) !important;
}
.profile-section-title { color: #0E2A57 !important; }
.profile-section-title i { color: #1E56E6 !important; }

/* ── Уведомления / алерты ─────────────────────────────── */
.alert { border-radius: 12px !important; }
.alert-success { background: var(--stk-success-soft) !important; border: 1px solid #C8EBDB !important; color: #138A5A !important; }
.alert-warning { background: #FFF6E3 !important; border: 1px solid #F6E2B0 !important; color: #9A6B12 !important; }
.alert-error   { background: #FDECEC !important; border: 1px solid #F6C9C9 !important; color: #C0322F !important; }

/* ── Информер биржи / кнопки-ссылки ───────────────────── */
.exch-notif-go { background: #1E56E6 !important; border-radius: 9px !important; }
.exch-notif-go:hover { background: #1746C8 !important; }

/* ── Тулбар «Вид» ─────────────────────────────────────── */
.view-toggle-btn { border-radius: 9px !important; }
.view-toggle-btn.active {
    color: #fff !important;
    background: #1E56E6 !important;
    border-color: #1E56E6 !important;
}

/* ════════════════════════════════════════════════════════
   ДАШБОРД КЛИЕНТА/КОМПАНИИ — углублённый редизайн
   (классы реальной разметки dashboard_client.php)
   ════════════════════════════════════════════════════════ */

/* Шапка-карточка профиля */
.db-company-header {
    padding: 22px 24px !important;
}
.db-company-title i.fa-user-circle {
    color: #fff !important;
    background: linear-gradient(135deg, #3D7BF5, #1E56E6);
    width: 38px; height: 38px; border-radius: 11px;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 17px !important;
    box-shadow: 0 8px 16px -8px rgba(30,86,230,.7);
}
.db-quick-icon { border-radius: 11px !important; }

/* Заголовки секций */
.section-title2 {
    font-family: var(--stk-display) !important;
    font-weight: 800 !important;
    font-size: 20px !important;
    color: #101B2E !important;
    letter-spacing: -0.01em;
}
.section-title2 i { color: #1E56E6 !important; }
.object-type-title {
    font-family: var(--stk-display) !important;
    font-weight: 700 !important;
    color: #2A3A57 !important;
    border-bottom: 1px solid var(--stk-line) !important;
}

/* Карточки объектов — крупнее и воздушнее */
.object-card {
    border-radius: 18px !important;
    overflow: hidden !important;
    border: 1px solid var(--stk-line) !important;
    box-shadow: 0 10px 30px -18px rgba(20,40,80,.30) !important;
    transition: transform .15s ease, box-shadow .2s ease !important;
}
.object-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 44px -20px rgba(20,40,80,.40) !important;
}
.objects-grid.single-view .object-card { border-radius: 18px !important; }
.objects-grid.single-view .object-photo { border-radius: 0 !important; }
.objects-grid.single-view .object-content { padding: 18px 20px !important; }
.objects-grid.single-view .object-title {
    font-family: var(--stk-display) !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}
.objects-grid.double-view .object-title,
.objects-grid.triple-view .object-title {
    font-family: var(--stk-display) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
}
.object-title a { color: #16213A !important; }
.object-title a:hover { color: #1E56E6 !important; }

/* Прогресс на карточке */
.object-progress .progress-container { height: 7px !important; border-radius: 5px !important; background: #EAEEF4 !important; }
.object-progress .progress-bar { border-radius: 5px !important; background: linear-gradient(90deg,#1E56E6,#3D8BFF) !important; }
.progress-text { color: #5A6B82 !important; font-weight: 500 !important; }

/* Фото-бейджи */
.photo-stat {
    border-radius: 9px !important;
    font-weight: 600 !important;
    box-shadow: 0 4px 12px rgba(13,30,55,.20) !important;
}

/* Кнопки правки/удаления на карточке */
.btn-edit, .btn-delete { border-radius: 9px !important; transition: background .15s, color .15s !important; }
.btn-edit:hover { background: var(--stk-primary-soft) !important; color: #1E56E6 !important; }
.btn-delete:hover { background: #FDECEC !important; color: #C0322F !important; }

/* Пустое состояние */
.empty-state {
    border-radius: 18px !important;
    border: 1px dashed #CBD4E1 !important;
    background: #fff !important;
}
.empty-state .empty-icon i { color: #B6C2D4 !important; }
.empty-text { font-family: var(--stk-display) !important; color: #3A4A63 !important; }

/* Сетка «Управление» */
.actions-grid .btn-primary { justify-content: flex-start; }

/* Информер биржи — мягче */
.exch-notif-row { border-radius: 18px !important; }

/* ── Виджет баллов → тёмно-синяя карточка с золотым акцентом ── */
.ldw-card {
    background: linear-gradient(135deg, #13315F, #1C4488) !important;
    border: none !important;
    border-radius: 20px !important;
    box-shadow: 0 16px 34px -18px rgba(15,40,90,.6) !important;
    color: #fff !important;
}
.ldw-batt-body { border-color: rgba(255,255,255,.55) !important; background: rgba(255,255,255,.12) !important; }
.ldw-batt-nub { background: rgba(255,255,255,.55) !important; }
.ldw-batt-fill { background: linear-gradient(90deg, #FFC53D, #FFB000) !important; }
.ldw-batt-label { color: #0E2A57 !important; }
.ldw-spark { color: #FFC53D !important; }
.ldw-pts-num { color: #fff !important; }
.ldw-pts-label { color: #A9C2E8 !important; }
.ldw-pts-rub { color: #FFD873 !important; background: rgba(255,197,61,.16) !important; }
.ldw-level-next { color: #8FA8CC !important; }
.ldw-level-bar { background: rgba(255,255,255,.16) !important; }
.ldw-next-task { background: rgba(255,255,255,.09) !important; }
.ldw-nt-title { color: #fff !important; }
.ldw-nt-desc { color: #A9C2E8 !important; }
.ldw-nt-pts { color: #5FE0A0 !important; }
.ldw-all-btn { background: rgba(255,255,255,.14) !important; color: #fff !important; }
.ldw-all-btn:hover { background: rgba(255,255,255,.24) !important; }
.ldw-spend-btn { background: #FFC53D !important; color: #3A2A00 !important; }
.ldw-spend-btn:hover { background: #FFB000 !important; }

/* Напоминание-дисклеймер */
.db-disclaimer { background: var(--stk-primary-soft) !important; border-color: #C8DAFB !important; color: #1E56E6 !important; border-radius: 12px !important; }

/* ── Бейджи режима стройки на карточке ────────────────── */
/* «С компанией» — зелёный; «Строю сам» — синий (уже близко к макету) */

/* ── Футер ────────────────────────────────────────────── */
.landing-footer { background-color: #2e3d55 !important }
.landing-footer::before {
    background: linear-gradient(90deg, #1E56E6, #3D8BFF) !important;
}
.landing-footer-column h3::after { background-color: #3D8BFF !important; }
.landing-footer-column ul li a:hover { color: #fff !important; }

/* ════════════════════════════════════════════════════════
   СТРАНИЦА ОБЪЕКТА — углублённый редизайн
   (object.php · style-object.css · style-stage-item.css ·
    style-approval-additions.css)
   ════════════════════════════════════════════════════════ */

/* Заголовок объекта */
.object-container > .object-header h2 {
    font-family: var(--stk-display) !important;
    font-weight: 800 !important;
    font-size: 26px !important;
    color: #101B2E !important;
    letter-spacing: -0.01em;
}

/* Главное фото */
.object-photo2 { border-radius: 18px !important; }
.object-photo2 img { border-radius: 18px !important; border: 1px solid var(--stk-line) !important; }

/* Инфо-блоки (галерея / тип / стоимость) → чистые белые карточки.
   Бьём !important style-object.css более высокой специфичностью. */
.object-container .gradient-info-block {
    background: #fff !important;
    border: 1px solid var(--stk-line) !important;
    border-radius: 18px !important;
    box-shadow: 0 8px 24px -16px rgba(20,40,80,.24) !important;
    color: #2A3A57 !important;
}
.object-container .gradient-info-block:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 34px -18px rgba(20,40,80,.32) !important;
}
.object-container .cost-block {
    background: #fff !important;
}
.object-container .gradient-info-block h4,
.object-container .gradient-info-block h4 i {
    color: #16213A !important;
    font-family: var(--stk-display) !important;
    font-weight: 700 !important;
}
.object-container .gradient-info-block h4 i { color: #1E56E6 !important; }
.object-container .gradient-info-block a { color: #1E56E6 !important; }
.object-container .gradient-info-block .building-type-value,
.object-container .gradient-info-block strong { color: #16213A !important; }

/* Фото-бейджи на главном фото */
.object-container .photo-stat {
    border-radius: 9px !important;
    font-weight: 600 !important;
    box-shadow: 0 4px 12px rgba(13,30,55,.20) !important;
}

/* Карта общего прогресса */
.progress-header-big {
    background: #fff !important;
    border: 1px solid var(--stk-line) !important;
    border-radius: 18px !important;
    box-shadow: 0 8px 24px -16px rgba(20,40,80,.22) !important;
    padding: 20px 22px 14px !important;
}
.progress-title { font-family: var(--stk-display) !important; font-weight: 700 !important; font-size: 15px !important; color: #16213A !important; }
.progress-title2 { font-size: 14px !important; color: #5A6B82 !important; font-weight: 500 !important; }
.progress-header-big .progress-container { height: 30px !important; border-radius: 8px !important; }
.progress-header-big .progress-bar { border-radius: 8px !important; }
.progress-header-big .progress-text { font-size: 12px !important; }

/* Главный прогресс-бар: лаймовая заливка + двухцветный текст внутри (#4) */
.progress-header-big .progress-bar {
    background: linear-gradient(90deg, #a3c600, #9da900) !important;
}
.progress-header-big .progress-container { position: relative !important; overflow: hidden !important; }
.progress-header-big .progress-text {
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
    width: 100% !important; height: 100% !important; margin: 0 !important;
    transform: none !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    text-shadow: none !important;
}
/* нижний слой — чёрный, виден на незаполненном (белом) фоне */
.progress-header-big .progress-text--track { color: #1a1a1a !important; z-index: 1 !important; }
/* верхний слой — белый, обрезан по ширине заливки, виден поверх заливки */
.progress-header-big .progress-text--fill {
    color: #ffffff !important;
    z-index: 2 !important;
    pointer-events: none !important;
    -webkit-clip-path: inset(0 calc(100% - var(--pb-fill, 0%)) 0 0) !important;
    clip-path: inset(0 calc(100% - var(--pb-fill, 0%)) 0 0) !important;
}
.sections-progress { background: #F4F7FB !important; border: 1px solid var(--stk-line) !important; border-radius: 12px !important; }
.section-progress-toggle { font-family: var(--stk-display) !important; }
.section-progress-container { height: 12px !important; border-radius: 6px !important; }
/* Панель этапов — сетка во всю ширину под баром */
.sections-progress[style*="block"] {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    gap: 14px 18px !important;
}
.sections-progress .section-progress-item { margin-bottom: 0 !important; }
.sections-progress .section-name { font-size: 13px !important; color: #2A3A57 !important; font-weight: 600 !important; }
.sections-progress .section-progress-bar { background: linear-gradient(90deg, #415078, #528de5) !important }

/* ── Этапы строительства ── */
.section {
    border-left: 4px solid #CBD4E1 !important;
    border-radius: 0 16px 16px 0 !important;
    box-shadow: 0 6px 20px -14px rgba(20,40,80,.25) !important;
    border-top: 1px solid var(--stk-line);
    border-right: 1px solid var(--stk-line);
    border-bottom: 1px solid var(--stk-line);
}
.section-header {
    background: #fff !important;
    border-radius: 0 16px 0 0 !important;
    border-bottom: 1px solid var(--stk-line) !important;
}
.section-title { font-family: var(--stk-display) !important; font-weight: 700 !important; color: #16213A !important; }

.stage-item { border-radius: 12px !important; }
.stage-item:hover { border-color: #B8C6DC !important; box-shadow: 0 4px 14px -8px rgba(20,40,80,.22) !important; }
.stage-header { border-radius: 12px 12px 0 0 !important; }
.stage-header:hover { background: #F2F6FD !important; }

/* Номер этапа → синий */
.stage-row--title::before {
    background: var(--stk-primary-soft) !important;
    color: #1E56E6 !important;
}
/* Чекбокс этапа → зелёный с белой галочкой */
.stage-row--title input[type="checkbox"] { accent-color: #4c9e0e !important; }
.stage-row--title input[type="checkbox"]:disabled { opacity: 1 !important; }

/* Кнопки этапов: правка/повтор/сохранение → синий */
.btn-resubmit, .edit-save-btn, .stage-modal-send, .rework-upload-btn {
    background: #1E56E6 !important;
    color: #fff !important;
}
.btn-resubmit:hover, .edit-save-btn:hover, .stage-modal-send:hover, .rework-upload-btn:hover {
    background: #1746C8 !important;
}
/* Принять / завершить → фирменный зелёный */
.btn-accept { background: #15A66B !important; color: #fff !important; border-color: #15A66B !important; }
.btn-accept:hover { background: #128F5C !important; opacity: 1 !important; }

/* Фокус полей → синий (был лайм/индиго) */
.deadline-input:focus, .stage-date-input:focus, .edit-field-input:focus,
.stage-modal-input:focus, .client-comment-input:focus {
    border-color: #1E56E6 !important;
    box-shadow: 0 0 0 3px rgba(30,86,230,.12) !important;
    color: #16213A !important;
}
.stage-date-save-btn { background: #1E56E6 !important; }
.stage-date-save-btn:hover { background: #1746C8 !important; }
.rework-file-label:hover { border-color: #1E56E6 !important; color: #1E56E6 !important; }

/* Заголовок «острова» → синий градиент (был оливковый) */
.island { border-radius: 14px !important; border-color: var(--stk-line) !important; }
.island-header {
    background: linear-gradient(135deg, #164d69, #004685) !important;
    border-bottom: none !important;
    border-radius: 14px 14px 0 0 !important;
}
.island-header h4, .island-header h4 i { color: #fff !important; font-family: var(--stk-display) !important; }
.close-island { color: rgba(255,255,255,.8) !important; }
.close-island:hover { color: #fff !important; background: rgba(255,255,255,.18) !important; }

/* ── Блок согласования ── */
.approval-party {
    border-radius: 16px !important;
    border: 1px solid var(--stk-line) !important;
    background: #fff !important;
    min-width: 150px !important;
}
.approval-party span { font-family: var(--stk-display) !important; font-weight: 700 !important; color: #16213A !important; }
.party-done { border-color: #BDE7D2 !important; background: var(--stk-success-soft) !important; }
.btn-approve, .btn-approve--large {
    background: #8caa2b !important; color: #fff !important; border-color: #15A66B !important;
    border-radius: 13px !important; font-weight: 700 !important;
}
.btn-approve:hover { opacity: 1 !important; background: #799421 !important; }
.btn-complete {
    background: #1E56E6 !important; color: #fff !important; border-color: #1E56E6 !important;
    border-radius: 13px !important; font-weight: 700 !important;
}
.btn-complete:hover { opacity: 1 !important; background: #1746C8 !important; }
.btn-homecare { border-radius: 13px !important; }

/* Лайм-акценты доработки → синий */
.client-action-block { border-color: #BFD3FB !important; }
.client-action-hint { background: var(--stk-primary-soft) !important; color: #34507F !important; border-radius: 10px !important; }
@keyframes pulse-border {
    0%, 100% { border-color: #BFD3FB; box-shadow: none; }
    50%      { border-color: #1E56E6; box-shadow: 0 0 0 4px rgba(30,86,230,.18); }
}

/* Кнопка «показать все фото» */
.btn-show-all {
    background: var(--stk-primary-soft) !important;
    color: #1E56E6 !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
}
.btn-show-all:hover { background: #DCE8FC !important; }

/* ════════════════════════════════════════════════════════
   ДАШБОРД КОМПАНИИ — гармонизация под синюю систему
   (dashboard_company.php — аналитика, публикация, профиль)
   ════════════════════════════════════════════════════════ */

/* Секции профиля компании */
.user-profile-container.horizontal-layout .profile-section {
    border-radius: 16px !important;
    border: 1px solid var(--stk-line) !important;
    box-shadow: 0 6px 22px -16px rgba(20,40,80,.22) !important;
}
.profile-section-title { font-family: var(--stk-display) !important; color: #0E2A57 !important; }
.profile-section-title i { color: #1E56E6 !important; }
.profile-item i { color: #8595AC !important; }
.media-stats { border-left-color: #1E56E6 !important; border-radius: 8px !important; }
.media-stats i, .file-stat-item i.fa-file-image { color: #1E56E6 !important; }

/* Блок публикации */
.publish-section { border-radius: 16px !important; border: 1px solid var(--stk-line) !important; }
.publish-title { font-family: var(--stk-display) !important; color: #0E2A57 !important; }
.publish-title:hover { color: #1E56E6 !important; }
.status-badge.published { background: var(--stk-success-soft) !important; color: #138A5A !important; border-color: #C8EBDB !important; }
input:checked + .toggle-slider { background-color: #15A66B !important; }
.profile-link i, .tariff-link, .deleted-link { color: #1E56E6 !important; }
.profile-link a { color: #1E56E6 !important; }

/* Верхние информеры */
.top-notice-btn { border-radius: 12px !important; }
.top-notice-btn:hover { border-color: #BFD3FB !important; box-shadow: 0 6px 18px -10px rgba(30,86,230,.3) !important; }

/* ── Аналитика: фиолетовый → синий ── */
.analytics-section { border-radius: 18px !important; border: 1px solid var(--stk-line) !important; }
.analytics-title { font-family: var(--stk-display) !important; color: #101B2E !important; }
.analytics-plan-badge,
.btn-upgrade,
.ag-overlay-btn { background: linear-gradient(135deg, #1E56E6, #2E6BF0) !important; }
.analytics-kpi { border-radius: 12px !important; }
.analytics-kpi:hover { box-shadow: 0 6px 16px -8px rgba(30,86,230,.3) !important; }
.analytics-kpi-value { font-family: var(--stk-display) !important; }
.analytics-card { border-radius: 12px !important; }
.premium-lock { background: linear-gradient(135deg, #EFF4FF, #F4F8FF) !important; border-color: #BFD3FB !important; }
.premium-lock-title { color: #1746C8 !important; }
.premium-feature-tag { background: var(--stk-primary-soft) !important; color: #1746C8 !important; }
.ag-overlay-icon { background: #1E56E6 !important; box-shadow: 0 4px 16px rgba(30,86,230,.3) !important; }
.ag-overlay-plans strong { color: #1E56E6 !important; }

/* Заголовок раздела */
.object-type-title { font-family: var(--stk-display) !important; color: #2A3A57 !important; }


/* ════════════════════════════════════════════════════════
   МОБИЛЬНЫЙ GUARD — против горизонтального вылета
   ════════════════════════════════════════════════════════ */
html, body { max-width: 100%; }
body { overflow-x: hidden; }
* { box-sizing: border-box; }

@media (max-width: 768px) {
    /* профиль клиента — одна колонка вместо minmax(300px) */
    .user-profile-container.horizontal-layout {
        grid-template-columns: 1fr !important;
    }
    .container { padding-left: 7px !important; padding-right: 7px !important; }
    /* карточки и медиа не шире экрана */
    .object-card, .profile-section, .db-company-header,
    .gradient-info-block, .progress-header-big, .section, .ldw-card {
        max-width: 100% !important;
    }
    img { max-width: 100%; height: auto; }
    /* «Найти»-чипы в этапах переносятся, не растягивая строку */
    .find-executor-wrap { width: 100%; }
    .find-executor-btn { max-width: 100%; }
    /* код клиента не вылезает */
    .client-code { word-break: break-all; }
}


/* ════════════════════════════════════════════════════════
   ДАШБОРД КОМПАНИИ — вкладки + доводка карточки объекта
   ════════════════════════════════════════════════════════ */

/* ── Фикс бага вкладки: была синяя заливка + синий текст (не читалось).
      Возвращаем задуманный вид — светло-голубой фон, синий текст, подчёркивание ── */
.db-tab-btn.active {
    background: #EAF1FF !important;
    color: #1E56E6 !important;
    border-color: transparent !important;
    border-bottom: 2.5px solid #1E56E6 !important;
    box-shadow: none !important;
    border-radius: 8px 8px 0 0 !important;
}
.db-tab-btn { font-family: var(--stk-font) !important; }
.db-tab-btn.active:hover { background: #DCE8FC !important; color: #1E56E6 !important; }

/* ── Карточка объекта: равная высота + блок клиента прижат к низу ── */
.objects-grid.double-view .object-card,
.objects-grid.triple-view .object-card {
    display: flex !important;
    flex-direction: column !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    border: 1px solid var(--stk-line) !important;
    box-shadow: 0 10px 30px -18px rgba(20,40,80,.30) !important;
    transition: transform .15s ease, box-shadow .2s ease !important;
}
.objects-grid.double-view .object-card:hover,
.objects-grid.triple-view .object-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 44px -20px rgba(20,40,80,.40) !important;
}
.objects-grid.double-view .object-content,
.objects-grid.triple-view .object-content {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 16px 18px 18px !important;
    min-width: 0;
}
.objects-grid.double-view .object-header,
.objects-grid.triple-view .object-header {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 10px;
    margin-bottom: 12px !important;
}
.objects-grid.double-view .object-title,
.objects-grid.triple-view .object-title {
    font-family: var(--stk-display) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    margin: 0 !important;
}
.objects-grid.double-view .object-title a,
.objects-grid.triple-view .object-title a { color: #16213A !important; }
.objects-grid.double-view .object-progress,
.objects-grid.triple-view .object-progress { margin: 2px 0 12px !important; }

/* блок «Клиент» прижимается к низу карточки → выравнивание у всех карт */
.objects-grid .clients-section { margin-top: auto !important; padding-top: 12px !important; }

/* ── Кнопки правки/удаления в шапке карточки ── */
.red_block { display: flex !important; gap: 6px !important; flex-shrink: 0; }
.red_block .btn-edit, .red_block .btn-delete, .red_block .btn-delete.disabled {
    width: 30px; height: 30px; border-radius: 9px !important;
    display: inline-flex; align-items: center; justify-content: center;
    background: #F4F7FB !important; color: #5A6B82 !important;
    transition: background .15s, color .15s;
}
.red_block .btn-edit:hover { background: var(--stk-primary-soft) !important; color: #1E56E6 !important; }
.red_block .btn-delete:hover { background: #FDECEC !important; color: #C0322F !important; }
.red_block .btn-delete.disabled i { color: #15A66B !important; }

/* ── Бейдж файлов: убираем цветной левый бордер-акцент → чистый чип ── */
.media-stats {
    border-left: none !important;
    background: #F4F7FB !important;
    border: 1px solid var(--stk-line) !important;
    border-radius: 9px !important;
    padding: 6px 10px !important;
    color: #5A6B82 !important;
    margin: 2px 0 0 !important;
}
.media-stats i { color: #1E56E6 !important; }
.media-count { color: #2A3A57 !important; font-weight: 600 !important; }

/* ── Тёмный блок клиента: гармонизируем под нашу навигацию, без лев. бордера ── */
.client-details {
    background: linear-gradient(135deg, #13315F, #1C4488) !important;
    border-left: none !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 20px -12px rgba(15,40,90,.45) !important;
    padding: 13px 15px !important;
}
.client-title { color: #5A6B82 !important; font-weight: 600 !important; }
.client-summary { color: #2A3A57 !important; font-weight: 600 !important; }

/* ── Заглушка «Нет фото»: спокойнее и в тон системе ── */
.object-photo-placeholder {
    background: linear-gradient(135deg, #EEF2F8, #E3E9F2) !important;
}
.object-photo-placeholder::before { color: #B6C2D4 !important; }
.object-photo-placeholder::after {
    color: #9AA9BF !important;
    font-weight: 500 !important;
    background: transparent !important;
}

/* фото-бейджи (площадь/этажи/цена) поверх фото */
.photo-stats-overlay .photo-stat {
    border-radius: 9px !important;
    box-shadow: 0 4px 12px rgba(13,30,55,.18) !important;
    font-weight: 600 !important;
}

/* единая высота фото в сетке → верх карточек совпадает */
.objects-grid.double-view .object-photo,
.objects-grid.triple-view .object-photo {
    height: 230px !important;
    overflow: hidden;
    position: relative;
}
.objects-grid.double-view .object-photo img,
.objects-grid.triple-view .object-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block;
}
