/* Mobile layout overrides; desktop styles keep their existing dimensions. */
.budget-history-mobile { display: none; }
@media (max-width: 760px), (max-width: 900px) and (max-height: 500px) {
  html, body, #app { min-width: 0; max-width: 100%; }
  body > div[id^="el-popper-container-"] { top: 0; left: 0; width: 100%; height: 100%; }
  body { margin: 0; font-family: var(--el-font-family, system-ui, sans-serif); font-size: 14px; }
  .shell[data-v-a080d75a] { flex-direction: column; min-height: 100dvh; }
  .aside[data-v-a080d75a] { width: 100% !important; height: auto; flex: none; border-right: 0; border-bottom: 1px solid var(--el-border-color-light); }
  .brand-block[data-v-a080d75a] { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 8px; padding: 6px 10px; }
  .brand-logo[data-v-a080d75a] { width: auto; max-width: 92px; max-height: 26px; }
  .brand-name[data-v-a080d75a] { margin: 0; font-size: 14px; }
  .team-brand[data-v-a080d75a] { min-height: 22px; margin: 0; gap: 4px; }
  .team-logo[data-v-a080d75a] { width: 24px; height: 18px; }
  .aside[data-v-a080d75a] .el-menu.el-menu--vertical { display: flex; flex-direction: row; flex-wrap: nowrap; width: 100%; overflow-x: auto; overflow-y: hidden; border: 0; white-space: nowrap; overscroll-behavior-x: contain; }
  .aside[data-v-a080d75a] .el-menu-item { flex: none; min-width: max-content; height: 44px; line-height: 44px; padding: 0 12px; }
  .shell[data-v-a080d75a] > .el-container.is-vertical { width: 100%; min-width: 0; }
  .header[data-v-a080d75a] { min-height: 44px; height: auto; padding: 2px 10px; gap: 8px; flex-wrap: wrap; justify-content: flex-start; }
  .username[data-v-a080d75a] { flex: 1; min-width: 0; }
  .header[data-v-a080d75a] .el-button { min-height: 36px; }
  .shell[data-v-a080d75a] .el-main { width: 100%; min-width: 0; padding: 10px; box-sizing: border-box; }
  .el-main > *, .page, .dashboard-page { min-width: 0; max-width: 100%; box-sizing: border-box; }
  .el-main h1 { margin: 0 0 6px; font-size: 21px; line-height: 1.3; white-space: normal; }
  .el-main h2 { font-size: 18px; }
  .el-main .el-card { margin-top: 10px; }
  .el-main .el-card__header, .el-main .el-card__body { padding: 12px; }
  .toolbar, .dashboard-toolbar, .heading { gap: 8px; margin-bottom: 12px; }
  .toolbar p, .dashboard-toolbar p { margin: 4px 0 0; font-size: 12px; }
  .toolbar-actions, .season-filter { flex: none !important; min-width: 0 !important; gap: 8px; }
  .season-select { flex: none !important; min-width: 0 !important; width: 100% !important; max-width: 100% !important; }
  .toolbar-actions[data-v-dd67641d] { display: grid; grid-template-columns: minmax(0, 1fr) auto; width: 100%; align-items: center; }
  .summary-grid, .money-grid, .kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; margin-bottom: 10px; }
  .summary-grid > .el-card, .money-grid > .el-card, .kpi-grid > .el-card { margin-top: 0; min-width: 0; }
  .summary-grid .el-card__body, .money-grid .el-card__body, .kpi-grid .el-card__body { padding: 10px; }
  .summary-grid span, .metric-label { font-size: 12px; line-height: 1.5; }
  .summary-grid strong, .metric-value, .kpi-value { margin-top: 4px !important; font-size: 18px !important; line-height: 1.35; overflow-wrap: anywhere; }
  .summary-grid > .el-card:first-child:has(.budget-adjustment-history) { grid-column: 1 / -1; }
  .summary-grid > .el-card:first-child .el-card__body:has(.budget-adjustment-history) { position: relative; padding-right: 104px; }
  .summary-grid > .el-card:first-child .budget-adjustment-history { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); }
  .editor[data-v-dd67641d] { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; min-width: 180px; gap: 6px; }
  .editor .el-input[data-v-dd67641d] { flex: none !important; min-width: 0 !important; width: 100%; }
  .editor[data-v-dd67641d] > .el-input:nth-child(2) { grid-column: 1 / -1; grid-row: 2; }
  .editor[data-v-dd67641d] > .el-button { grid-column: 2; grid-row: 1; margin: 0; }
  .chart[data-v-ccc19fed] { height: 210px; }
  .empty-chart[data-v-ccc19fed] { height: 96px; }
  .team-summary { gap: 6px 12px !important; font-size: 13px; margin-bottom: 10px !important; }
  .team-editor, .create, .edit, .filters, .actions { min-width: 0; max-width: 100%; flex-wrap: wrap; gap: 8px; }
  .create { display: grid !important; grid-template-columns: minmax(0, 1fr); }
  .create > .el-input { width: 100% !important; min-width: 0 !important; max-width: 100% !important; }
  .filters { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .filters .el-input, .filters .el-select { width: 100% !important; max-width: 100% !important; min-width: 0; }
  .el-form-item { margin-bottom: 14px; }
  .el-form-item__label { font-size: 13px; }
  .el-input__inner, .el-textarea__inner { font-size: 16px; }
  .el-input, .el-select, .el-date-editor, .el-textarea { max-width: 100%; box-sizing: border-box; }
  .el-input__wrapper, .el-select__wrapper { min-height: 36px; }
  .el-empty { padding: 16px 0; }
  .el-empty__image { width: 72px !important; }
  .el-empty__description { margin-top: 8px; }
  .el-table { max-width: 100%; font-size: 13px; }
  .el-table .el-table__cell { padding: 6px 0; }
  .el-table .cell { padding: 0 6px; }
  .hrt-attachment-thumbnail { width: 52px !important; height: 60px !important; padding: 3px !important; }
  .el-main .el-descriptions__table { table-layout: fixed; width: 100%; }
  .el-descriptions__cell { padding: 8px !important; word-break: break-word; }
  .el-descriptions__label.el-descriptions__cell { width: auto !important; }
  .pagination-controls, .el-pagination { max-width: 100%; flex-wrap: wrap; gap: 4px; }
  .el-pagination .el-pager { display: none; }
  .el-overlay-dialog { padding: 8px; box-sizing: border-box; }
  .el-dialog { width: min(640px, calc(100vw - 16px)) !important; max-width: 100%; max-height: calc(100dvh - 16px); margin: 0 auto !important; padding: 12px; display: flex; flex-direction: column; box-sizing: border-box; }
  .el-dialog__header { flex: none; margin-right: 0; padding: 0 32px 10px 0; }
  .el-dialog__title { font-size: 17px; line-height: 1.4; overflow-wrap: anywhere; }
  .el-dialog__headerbtn { top: 0; right: 0; width: 36px; height: 36px; }
  .el-dialog__body { min-height: 0; overflow: auto; overscroll-behavior: contain; }
  .el-dialog__footer { flex: none; padding: 10px 0 0; }
  .el-dialog iframe { height: min(62dvh, 560px) !important; }
  .el-dialog img { max-height: 62dvh !important; }
  .el-message-box { width: min(440px, calc(100vw - 24px)) !important; max-width: 100%; padding: 12px; box-sizing: border-box; }
  .el-message-box__title { font-size: 17px; }
  .el-message-box__message { overflow-wrap: anywhere; }
  .el-popper { max-width: calc(100vw - 16px) !important; box-sizing: border-box; }
  .el-popper:has(.el-date-picker) { max-height: calc(100dvh - 24px); overflow: auto; }
  .register-page, .login, .login-page, .onboarding { padding: 12px !important; min-height: 100dvh; box-sizing: border-box; }
  .onboarding { grid-template-columns: minmax(0, 1fr); justify-items: center; }
  .onboarding > .el-card { width: min(440px, 100%) !important; min-width: 0; }
  .register-card, .onboarding > .el-card, .login > .el-card, .login-page > .el-card { max-width: 100%; box-sizing: border-box; }
  .budget-history-table { display: none; }
  .budget-history-mobile { display: grid; gap: 10px; }
  .budget-history-item { padding: 10px; border: 1px solid var(--el-border-color-light); border-radius: 6px; }
  .budget-history-item header { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 4px 8px; font-size: 13px; }
  .budget-history-item time { color: var(--el-text-color-secondary); font-size: 12px; }
  .budget-history-amounts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin: 8px 0; }
  .budget-history-amounts span { display: block; font-size: 12px; color: var(--el-text-color-secondary); }
  .budget-history-amounts strong { display: block; font-size: 13px; font-weight: 600; overflow-wrap: anywhere; }
  .budget-history-reason { margin: 6px 0; white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.5; }
  .budget-history-actor { margin: 4px 0 0; color: var(--el-text-color-secondary); font-size: 12px; overflow-wrap: anywhere; }
}
