/* Buscar Registry – phone and tablet layout on top of the Django admin */
.brand-short { display: none; }
.quick-nav { display: none; }

/* Wide tables never push the page sideways: they scroll inside their box */
.tscroll, #changelist .results, .inline-group .tabular { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.rpt .tscroll table { min-width: 560px; }

@media (max-width: 767px) {
  /* header */
  #header { padding: 10px 14px; gap: 6px; }
  #site-name { font-size: 1.15rem; }
  .brand-long { display: none; }
  .brand-short { display: inline; }
  #user-tools { font-size: 0.66rem; line-height: 1.4; margin: 0; }
  .theme-toggle { display: none; }   /* follows the phone's light/dark setting */
  .quick-nav { display: flex; gap: 6px; overflow-x: auto; width: 100%; padding: 6px 0 2px; scrollbar-width: none; }
  .quick-nav a { flex: 0 0 auto; color: #fff; background: rgba(255,255,255,.15); padding: 7px 12px; border-radius: 16px; font-size: 0.8rem; white-space: nowrap; }
  .breadcrumbs { padding: 8px 14px; font-size: 0.75rem; }
  #content { padding: 12px 10px; }
  #content h1 { font-size: 1.15rem; }

  /* comfortable tap targets */
  input[type=text], input[type=email], input[type=number], input[type=password], input[type=date],
  input[type=search], select, textarea { font-size: 16px !important; min-height: 40px; } /* 16px stops iOS zoom */
  .button, input[type=submit], button { min-height: 40px; }
  .object-tools { float: none; margin: 0 0 12px; display: flex; flex-wrap: wrap; gap: 6px; padding: 0; }
  .object-tools li { margin: 0; display: block; }
  .object-tools a { display: inline-block; padding: 9px 12px !important; border-radius: 16px; font-size: 0.72rem; line-height: 1.2; }
  .object-tools a.addlink { padding-right: 28px !important; background-position: right 9px center; }
  #changelist #toolbar form > div { display: flex; align-items: center; gap: 6px; }
  #changelist #toolbar #searchbar { flex: 1 1 auto; width: auto !important; min-width: 0; }
  #changelist #toolbar input[type=submit] { flex: 0 0 auto; }
  #user-tools { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; justify-content: center; }
  #user-tools form, #user-tools button { display: inline; margin: 0; padding: 0 !important; min-height: 0; }
  #user-tools #logout-form button { font-size: 0.7rem; text-decoration: underline; }

  /* lists: keep the important columns, hide the rest (still in CSV/Excel export) */
  .model-shareholder #result_list .column-drs_id, .model-shareholder #result_list .field-drs_id,
  .model-shareholder #result_list .column-email, .model-shareholder #result_list .field-email,
  .model-shareholder #result_list .column-tax_id_masked, .model-shareholder #result_list .field-tax_id_masked,
  .model-shareholder #result_list .column-doc_count, .model-shareholder #result_list .field-doc_count,
  .model-shareholder #result_list .column-kind, .model-shareholder #result_list .field-kind,
  .model-shareholder #result_list .column-pct, .model-shareholder #result_list .field-pct,
  .model-payment #result_list .column-method, .model-payment #result_list .field-method,
  .model-payment #result_list .column-order, .model-payment #result_list .field-order,
  .model-payment #result_list .column-statement_file, .model-payment #result_list .field-statement_file,
  .model-certificate #result_list .column-series, .model-certificate #result_list .field-series,
  .model-certificate #result_list .column-book_entry, .model-certificate #result_list .field-book_entry,
  .model-certificate #result_list .column-report, .model-certificate #result_list .field-report,
  .model-document #result_list .column-kind, .model-document #result_list .field-kind,
  .model-document #result_list .column-doc_date, .model-document #result_list .field-doc_date,
  .model-treasuryorder #result_list .column-price_per_share, .model-treasuryorder #result_list .field-price_per_share,
  .model-treasuryorder #result_list .column-received, .model-treasuryorder #result_list .field-received,
  .model-treasuryorder #result_list .column-certificate_number, .model-treasuryorder #result_list .field-certificate_number,
  .model-treasuryorder #result_list .column-purpose, .model-treasuryorder #result_list .field-purpose
  { display: none; }
  #result_list td, #result_list th { padding: 9px 6px; font-size: 0.82rem; }
  #result_list th a, #result_list td a { word-break: break-word; }
  #changelist .actions { flex-wrap: wrap; gap: 6px; }

  /* filters panel goes under the list and is collapsible on the changelist */
  #changelist-filter { position: static; width: auto; margin: 12px 0 0; }

  /* edit forms: one column, labels above fields */
  .form-row, .aligned .form-row { padding: 10px 4px; }
  .aligned label { float: none; display: block; width: auto; padding: 0 0 4px; }
  .aligned .help, .aligned div.help, form .aligned p.help { margin-left: 0 !important; padding-left: 0 !important; }
  .aligned input, .aligned textarea, .aligned select { max-width: 100% !important; box-sizing: border-box; }
  .aligned .vTextField, .aligned textarea, .aligned select, .aligned input[type=email], .aligned input[type=number] { width: 100% !important; }
  .aligned .form-row > div, .aligned .flex-container { width: auto !important; max-width: 100%; min-width: 0; box-sizing: border-box; }
  .form-row { box-sizing: border-box; }
  .selector { flex-direction: column; }
  .submit-row { flex-direction: column; gap: 8px; }
  .submit-row input, .submit-row a { width: 100%; box-sizing: border-box; text-align: center; margin: 0 !important; }
  fieldset.module h2, .inline-group h2 { font-size: 0.85rem; }

  /* related tables on a shareholder page scroll sideways instead of squashing */
  .inline-group .tabular table { min-width: 620px; }

  /* home page and reports */
  .dashboard #content-related { display: none; }   /* 'Recent actions' – not needed on a phone */
  .colMS #content-main, .dashboard #content-main { margin-right: 0; width: auto; float: none; }
  .dashboard #content { width: auto; }
  .dashboard .reports-box table { width: 100%; table-layout: fixed; }
  .dashboard .reports-box th, .dashboard .reports-box td { display: block; width: auto; white-space: normal !important; box-sizing: border-box; }
  .dashboard .reports-box td { color: var(--body-quiet-color); font-size: 0.8rem; padding-top: 0; }
  .dashboard .app-holders th, .dashboard .app-auth th { width: 100%; }
  .rpt-nav { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; padding-bottom: 4px; }
  .rpt-nav a { flex: 0 0 auto; margin: 0 !important; padding: 7px 12px; border: 1px solid var(--hairline-color); border-radius: 16px; font-size: 0.8rem; white-space: nowrap; }
  .rpt-filters { flex-direction: column; align-items: stretch !important; margin-top: 8px; }
  details.filter-box > summary { display: list-item !important; cursor: pointer; padding: 10px 12px; background: var(--darkened-bg); border-radius: 6px; font-weight: 600; }
  .rpt-filters label { width: 100%; }
  .rpt-filters input, .rpt-filters select { width: 100% !important; box-sizing: border-box; }
  .rpt td, .rpt th { font-size: 0.82rem; padding: 8px 6px; }
  .rpt h2 { font-size: 1rem; }
}
