// ============================================================================= // Request Detail Styles (SCSS) // ============================================================================= // Стили для страницы детального просмотра заявления // ============================================================================= // ПЕРЕМЕННЫЕ // ============================================================================= $req-detail-icon-size: 48px; $req-detail-icon-size-mobile: 40px; $req-detail-padding: 1rem 1.25rem; $req-detail-padding-mobile: 0.75rem 1rem; $req-info-label-width: 140px; // ============================================================================= // ЗАГОЛОВОК КАРТОЧКИ // ============================================================================= .request-detail-card .req-detail-header { padding: $req-detail-padding; border-bottom: 1px solid var(--bs-border-color); background: var(--bs-body-bg); } .request-detail-card .req-detail-row { display: flex; align-items: flex-start; gap: 1rem; } .request-detail-card .req-detail-icon { flex-shrink: 0; .card-icon { width: $req-detail-icon-size; height: $req-detail-icon-size; display: flex; align-items: center; justify-content: center; background: var(--bs-tertiary-bg); border-radius: 0.5rem; font-size: 1.5rem; } } .request-detail-card .req-detail-content { flex: 1; min-width: 0; h1 { font-size: 1.25rem; font-weight: 600; margin: 0; line-height: 1.3; } } .request-detail-card .req-detail-actions { display: flex; gap: 0.5rem; flex-shrink: 0; } // ============================================================================= // ИНФОРМАЦИОННЫЕ БЛОКИ // ============================================================================= .req-info-block { display: flex; padding: 0.75rem 0; border-bottom: 1px solid color-mix(in srgb, var(--bs-border-color), transparent 50%); &:last-child { border-bottom: none; padding-bottom: 0; } &:first-child { padding-top: 0; } } .req-info-label { flex: 0 0 $req-info-label-width; font-size: 0.875rem; color: var(--bs-secondary-color); font-weight: 500; } .req-info-value { flex: 1; min-width: 0; font-size: 0.9375rem; } .req-comment-text { padding: 0.75rem 1rem; background: var(--bs-tertiary-bg); border-radius: 0.375rem; line-height: 1.5; } // ============================================================================= // СЕКЦИЯ КОММЕНТАРИЕВ // ============================================================================= #comments-section { position: sticky; top: 1rem; display: flex; flex-direction: column; max-height: 80vh; overflow: visible; .card-header { background: var(--bs-body-bg); padding: 0.75rem 1rem; font-size: 0.9375rem; } .card-body { flex: 1; min-height: 100px; overflow-y: auto; overflow-x: visible; } .list-group-item { padding: 0.75rem 1rem; border-left: 0; border-right: 0; &:first-child { border-top: 0; } } .card-footer { padding: 0.75rem 1rem; position: relative; z-index: 100; overflow: visible; flex-shrink: 0; border-top: 1px solid var(--bs-border-color); .message-field { background: var(--bs-tertiary-bg); } } .dropdown { position: static; } .dropdown-menu { z-index: 2000 !important; position: fixed !important; max-height: 350px; overflow-y: auto; width: auto !important; min-width: 300px; } } // ============================================================================= // АДАПТИВНОСТЬ: ПЛАНШЕТЫ // ============================================================================= @media (max-width: 992px) { .request-detail-card .req-detail-row { flex-wrap: wrap; } .request-detail-card .req-detail-content { flex: 1 1 calc(100% - 64px); } .request-detail-card .req-detail-actions { width: 100%; margin-top: 0.75rem; } #comments-section { position: static; } .req-info-block { flex-direction: column; gap: 0.25rem; } .req-info-label { flex: none; font-size: 0.75rem; } } // ============================================================================= // АДАПТИВНОСТЬ: МОБИЛЬНЫЕ // ============================================================================= @media (max-width: 576px) { .request-detail-card .req-detail-header { padding: $req-detail-padding-mobile; } .request-detail-card .req-detail-icon .card-icon { width: $req-detail-icon-size-mobile; height: $req-detail-icon-size-mobile; font-size: 1.25rem; } .request-detail-card .req-detail-content h1 { font-size: 1.1rem; } .request-detail-card .req-detail-actions { flex-direction: column; .btn { width: 100%; } } }