/* Личный кабинет СНТ (Bootstrap SM) */
.snt-lk { max-width: 900px; margin: 0 auto; }
.snt-lk-auth-card { max-width: 420px; }
.snt-lk .form-control:focus {
    border-color: var(--snt-accent, #1d4ed8);
    box-shadow: 0 0 0 .2rem rgba(var(--bs-primary-rgb, 29, 78, 216), .2);
}
.snt-lk-eye { display: block; }
.snt-lk #sntLkMsg[hidden] { display: none !important; }

.snt-lk-card .card-header.crm-entity-card-header {
    background: #fff;
}

/* Табы-кнопки (эталон CRM) */
.snt-lk .crm-entity-card-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    padding: 0.35rem;
    background: var(--bs-tertiary-bg, #f8f9fa);
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: 0.5rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    list-style: none;
    margin: 0;
}

.snt-lk .crm-entity-card-tabs .nav-item {
    margin-bottom: 0;
}

.snt-lk .crm-entity-card-tabs .nav-link {
    margin-bottom: 0;
    border-radius: 0.375rem;
    border: 1px solid rgba(0, 0, 0, 0.08);
    background: #fff;
    color: #495057;
    padding: 0.35rem 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
    cursor: pointer;
}

.snt-lk .crm-entity-card-tabs .nav-link:not(.active):hover {
    background: #e9ecef;
    border-color: rgba(0, 0, 0, 0.12);
    color: var(--bs-primary, var(--snt-accent, #2563eb));
}

.snt-lk .crm-entity-card-tabs .nav-link.active,
.snt-lk .crm-entity-card-tabs .nav-link.active:hover {
    background: var(--bs-primary, var(--snt-accent, #2563eb)) !important;
    color: #fff !important;
    border-color: var(--bs-primary, var(--snt-accent, #2563eb)) !important;
    box-shadow: 0 1px 3px rgba(37, 99, 235, 0.28);
}

.snt-lk-section {
    background: var(--snt-surface, #fff);
    border-radius: 0.5rem;
    padding: 1rem 1.1rem;
    margin-bottom: 0.75rem;
    border: 1px solid #e2e8f0;
}

.snt-lk-section--danger { border-color: #f5c2c7; background: #f8d7da33; }
.snt-lk-section--success { border-color: #badbcc; background: #d1e7dd33; }
.snt-lk-section--info { border-color: #b6d4fe; background: #cfe2ff33; }
.snt-lk-section--neutral { border-color: #dee2e6; background: #f8f9fa; }

.snt-lk-section__title {
    font-size: 0.95rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.snt-lk-finance-tiles .snt-lk-tile {
    border-radius: 0.375rem;
    padding: 0.5rem 0.65rem;
    height: 100%;
}

.snt-lk-actions { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0.75rem 0 0; }

.snt-lk-badge {
    display: inline-block;
    padding: 0.15rem 0.45rem;
    border-radius: 0.35rem;
    font-size: 0.75rem;
    background: #e2e8f0;
    color: #334155;
}
.snt-lk-badge.new { background: #dbeafe; color: #1d4ed8; }
.snt-lk-badge.viewed { background: #e0e7ff; color: #4338ca; }
.snt-lk-badge.in_progress { background: #fef3c7; color: #92400e; }
.snt-lk-badge.done, .snt-lk-badge.closed { background: #dcfce7; color: #166534; }

.snt-lk-muted { color: #64748b; }

.snt-lk-modal {
    position: fixed; inset: 0; background: rgba(15,23,42,.45); display: flex; align-items: center;
    justify-content: center; z-index: 80; padding: 1rem;
}
.snt-lk-modal[hidden] { display: none !important; }
.snt-lk-modal-inner {
    background: #fff; border-radius: 0.75rem; padding: 1.25rem; max-width: 420px; width: 100%;
    position: relative; max-height: 90vh; overflow: auto;
    box-shadow: 0 0.5rem 1.5rem rgba(15,23,42,.18);
}
.snt-lk-modal-close { position: absolute; right: 0.75rem; top: 0.75rem; }
.snt-lk-qr { text-align: center; }
.snt-lk-qr img { max-width: 240px; height: auto; }

/* Превью файлов (как на карточке участка) */
.snt-lk a.glightbox { cursor: zoom-in; }
.snt-lk-file-thumb {
    width: 48px;
    height: 48px;
    object-fit: cover;
    border-radius: 0.25rem;
    border: 1px solid #dee2e6;
}
.upload-preview-table-wrap .upload-preview-th-actions,
.upload-preview-table-wrap .upload-preview-td-actions { width: 1%; white-space: nowrap; }

.snt-lk-meter-item {
    padding: 0.65rem 0;
    border-bottom: 1px solid #e9ecef;
}
.snt-lk-meter-item:last-child { border-bottom: 0; padding-bottom: 0; }

.snt-lk-ticket-toggle {
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--bs-primary, var(--snt-accent, #2563eb));
    font-size: 0.875rem;
}
.snt-lk-ticket-toggle:hover { text-decoration: underline; }

@media (max-width: 640px) {
    .snt-lk { max-width: none; }
    .snt-lk-auth-card { max-width: none; }
}
