.travel-plan-container { padding: 0.75rem 0 0 0; // max-width: 1200px; margin: 0 auto; // .form-row { // margin-bottom: 24px; // max-width: 300px; // } .form-row { // display: flex; // gap: 16px; margin-bottom: 16px; //align-items: start; // mat-form-field { // flex: 1; // } } .usa-entries { width: 300px; } .country-selection-container { display: flex; gap: 24px; margin-bottom: 12px; @media (max-width: 768px) { flex-direction: column; } } .available-countries, .selected-countries { flex: 1; border: 1px solid #e0e0e0; border-radius: 4px; padding: 16px; overflow: hidden; h3 { margin: 0 0 16px 0; font-size: 0.875rem; font-weight: 500; } mat-selection-list { height: 150px; overflow-y: auto; padding: 0; mat-list-item { .empty-message { font-style: italic; } } } } .controls { display: flex; flex-direction: column; gap: 16px; width: 150px; padding: 16px; .action-buttons { display: flex; flex-direction: column; gap: 8px; button { width: 100%; display: flex; // gap: 8px; align-items: center; } mat-icon { margin: 0; } button.icon-end { flex-direction: row-reverse; } } } .selected-countries { display: flex; flex-direction: column; gap: 16px; .visit-countries, .transit-countries { flex: 1; } } .form-actions { display: flex; justify-content: flex-end; padding-top: 12px; border-top: 1px solid #e0e0e0; justify-content: space-between; .totals-section { display: flex; gap: 24px; font-size: 0.875rem; .total-item { display: flex; gap: 8px; align-items: center; .total-value { font-weight: 500; } } } } } @media (max-width: 768px) { .travel-container { .form-row { flex-direction: column; gap: 8px; mat-form-field { width: 100%; } } } }