/* Run Settlement / fine-detail polish, 2026-10-19.
   Screen presentation only. No visibility, layout order, scroll containment,
   semantic status colors, statement/export surfaces or business logic changes. */
@media screen {
  /* Clear hierarchy without making every label and button equally heavy. */
  #admin .admin-content > section > .section-title:first-child h2,
  #admin #branches-pane > .section-title h2 {
    font-weight: 700 !important;
    line-height: 1.35 !important;
    letter-spacing: -.035em !important;
  }
  #admin .admin-content > section > .section-title:first-child p {
    color: #607187 !important;
    font-size: 12px !important;
    line-height: 1.75 !important;
    font-weight: 400 !important;
  }
  #admin .admin-content label {
    font-weight: 650 !important;
    line-height: 1.6;
    letter-spacing: -.012em;
  }
  #admin .admin-content :is(.event-panel-heading, .referral-card-heading,
    .referral-progress-heading, .branch-pane-heading, .admin-notice-form-heading) :is(h3, h4) {
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
  }
  #admin .admin-content :is(.mission-payout-form, .mission-rule-form,
    .referral-rule-form, .referral-link-form) label > small {
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1.7 !important;
  }
  #admin .admin-content .message {
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.75 !important;
  }

  /* Preserve each action's existing role color and all disabled styling. */
  #admin .admin-content .primary {
    font-weight: 700 !important;
    letter-spacing: -.015em;
    transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease !important;
  }
  #admin .admin-content .primary:not(:disabled) { box-shadow: 0 2px 5px #163a6014 !important; }
  #admin .admin-content .primary:not(:disabled):hover {
    transform: none !important;
    box-shadow: 0 3px 8px #163a601c !important;
  }
  #admin .admin-content .rider-action {
    font-size: 11px !important;
    font-weight: 650 !important;
    letter-spacing: -.01em;
    box-shadow: none !important;
    transition: background-color .15s ease, border-color .15s ease !important;
  }
  #admin .admin-content .rider-action:not(:disabled):hover { transform: none !important; }

  /* Native text controls retain size/validation; checkboxes/radios/files do not
     receive these text-field rules. Inputs used by sticky money tables keep
     their existing width, height and numeric alignment. */
  #admin .admin-content :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]), select, textarea):not(:disabled) {
    border-color: #ccd8e5 !important;
    border-radius: 9px !important;
    box-shadow: 0 1px 2px #18334f04 !important;
    font-weight: 600 !important;
    transition: border-color .15s ease, box-shadow .15s ease !important;
  }
  #admin .admin-content :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]), select, textarea):not(:disabled):hover {
    border-color: #9eb3ca !important;
  }
  #admin .admin-content :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]), select, textarea):not(:disabled):focus {
    border-color: #4b78a5 !important;
    box-shadow: 0 0 0 3px #416f9e16 !important;
  }
  #admin .admin-content :is(input, textarea)::placeholder {
    color: #64758a !important;
    font-weight: 400 !important;
  }
  #admin .admin-content input[type="file"]:not(:disabled)::file-selector-button {
    margin-right: 12px;
    padding: 8px 12px;
    border: 1px solid #d6e1ec;
    border-radius: 7px;
    background: #eef3f8;
    color: #284c70;
    font: inherit;
    font-size: 12px;
    font-weight: 650;
    cursor: pointer;
  }

  /* Same selected-state language, without changing authoritative tab state. */
  #admin .admin-content :is(.manual-upload-tabs, .settlement-history-view-switch,
    .partner-mission-tabs, .referral-workspace-tabs, .branch-workspace-tabs) {
    padding: 5px;
    border-color: #e1e7ef !important;
    background: #f3f6fa !important;
    border-radius: 10px !important;
    box-shadow: none !important;
  }
  #admin .admin-content :is(.manual-upload-tabs, .settlement-history-view-switch,
    .partner-mission-tabs, .referral-workspace-tabs, .branch-workspace-tabs) > button {
    font-weight: 650 !important;
    letter-spacing: -.015em;
    border-radius: 7px !important;
    box-shadow: none !important;
  }
  #admin .admin-content :is(.manual-upload-tabs, .settlement-history-view-switch,
    .partner-mission-tabs, .referral-workspace-tabs, .branch-workspace-tabs)
    > button:is(.active, .is-active, [aria-selected="true"]) {
    background: #fff !important;
    border-color: #c9d7e6 !important;
    color: #244e79 !important;
    box-shadow: 0 1px 3px #183b6010 !important;
  }
  #admin #raw-settlement-automation :is(.raw-automation-navigation,
    .raw-automation-settings-tabs, .raw-automation-tabs) > button {
    font-weight: 650 !important;
    letter-spacing: -.015em;
    box-shadow: none !important;
  }
  #admin #raw-settlement-automation .raw-automation-navigation > button[aria-pressed="true"] {
    background: #244769 !important;
    color: #fff !important;
    border-color: #244769 !important;
  }

  /* Four genuine edit dialogs, not statement detail/export or install sheets.
     Existing backdrop visibility, focus handling and scrolling stay intact. */
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal) .password-modal {
    border: 1px solid #dce4ed !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 24px 80px #0c223d30 !important;
  }
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal) .modal-heading {
    padding-bottom: 19px;
    margin-bottom: 20px;
    border-bottom: 1px solid #e5ebf2;
  }
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal) .modal-heading h2 {
    color: #1a3551;
    font-size: 21px;
    font-weight: 700;
    letter-spacing: -.035em;
    line-height: 1.4;
  }
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal) .modal-heading p {
    color: #60738b;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.75;
  }
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal) .modal-close {
    min-width: 38px;
    min-height: 38px;
    border: 1px solid #dce5ef;
    border-radius: 9px;
    background: #f7f9fc;
    color: #4b6580;
    box-shadow: none;
  }
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal) label {
    color: #405974;
    font-size: 12px;
    font-weight: 650;
    line-height: 1.65;
  }
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal) label > small {
    font-size: 11px;
    font-weight: 400;
    line-height: 1.65;
  }
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal)
    :is(input:not([type="hidden"]), select, textarea):not(:disabled) {
    border-color: #ccd8e5 !important;
    border-radius: 9px !important;
    background: #fff;
    color: #213c58;
    font-size: 14px;
    font-weight: 500;
  }
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal) .primary:not(:disabled) {
    border: 1px solid #285580 !important;
    border-radius: 9px !important;
    background: #285580 !important;
    color: #fff !important;
    font-size: 13px;
    font-weight: 700;
    box-shadow: 0 2px 5px #183b6018 !important;
    transform: none !important;
  }
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal) .message {
    font-size: 12px;
    line-height: 1.75;
  }

  /* Login and rider settings: no settlement-summary/detail/report selectors. */
  #login .login-card h2 { font-weight: 700 !important; letter-spacing: -.04em !important; }
  #login .login-card .card-description { color: #60738b; line-height: 1.8; }
  #login .login-card label { font-weight: 650; }
  #login .login-card .privacy-note { color: #687a90; line-height: 1.7; }
  #rider :is(.bank-settings, .settlement-settings, .inquiry-settings) label {
    font-weight: 650 !important;
    line-height: 1.65;
  }
  #login .login-card :is(input, select):not(:disabled),
  #rider :is(.bank-settings, .settlement-settings, .inquiry-settings) :is(input, select, textarea):not(:disabled) {
    border-color: #ccd8e5 !important;
    border-radius: 9px !important;
    box-shadow: none;
    font-weight: 500;
  }
  #rider :is(.bank-settings, .settlement-settings, .inquiry-settings) .primary:not(:disabled) {
    background: #285580 !important;
    color: #fff !important;
    border-color: #285580 !important;
    border-radius: 9px !important;
    font-weight: 700;
    box-shadow: 0 2px 5px #183b6014 !important;
    transform: none !important;
  }
  #admin .admin-content :is(button, summary, select, input, textarea):focus-visible,
  #login .login-card :is(button, input, select):focus-visible,
  #rider :is(.bank-settings, .settlement-settings, .inquiry-settings) :is(button, input, select, textarea):focus-visible,
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal) :is(button, input, select, textarea):focus-visible {
    outline: 2px solid #4674a4 !important;
    outline-offset: 3px;
  }
  #admin #raw-settlement-automation .raw-automation-workbar :is(button, input, select, textarea):focus-visible {
    outline-color: #a9cdff !important;
  }
}

@media screen and (max-width: 760px) {
  #login .login-card :is(input, select),
  #rider :is(.bank-settings, .settlement-settings, .inquiry-settings) :is(input, select, textarea),
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal)
    :is(input:not([type="hidden"]), select, textarea) { font-size: 16px !important; }
  :is(#password-modal, #rider-edit-modal, #rider-note-modal, #payment-rider-note-modal) .modal-heading h2 { font-size: 20px; }
}

@media screen and (prefers-reduced-motion: reduce) {
  #admin .admin-content :is(.primary, .rider-action, input, select, textarea) { transition: none !important; }
}

/* Auth connection status: presentation only; private workspaces remain hidden until authorized. */
#admin-auth-loading[hidden] { display: none !important; }
#admin-auth-loading:not([hidden]) {
  display: flex;
  align-items: center;
  gap: 16px;
  box-sizing: border-box;
  width: 100%;
  max-width: 480px;
  margin: clamp(28px, 7vh, 72px) auto;
  padding: 20px;
  border: 1px solid #dae3ed;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 28px #1a35500a;
}
#admin-auth-loading .admin-connection-brand {
  display: flex;
  flex: 0 0 90px;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 8px 10px;
  box-sizing: border-box;
  border-radius: 10px;
  background: #172f4b;
}
#admin-auth-loading .admin-connection-brand img { display: block; width: 70px; height: auto; }
#admin-auth-loading .admin-connection-copy { min-width: 0; flex: 1; }
#admin-auth-loading .admin-connection-copy h2 {
  margin: 0;
  color: #1b3550;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.55;
  letter-spacing: -.035em;
}
#admin-auth-loading .admin-connection-copy p {
  margin: 4px 0 0;
  color: #65778d;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.65;
  word-break: keep-all;
  overflow-wrap: anywhere;
}
#admin-auth-loading .admin-connection-indicator { display: flex; flex: 0 0 auto; gap: 4px; }
#admin-auth-loading .admin-connection-indicator i {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #355d84;
}
#admin-auth-loading .admin-connection-indicator i:nth-child(2) { opacity: .55; }
#admin-auth-loading .admin-connection-indicator i:nth-child(3) { opacity: .25; }
@media screen and (max-width: 480px) {
  #admin-auth-loading:not([hidden]) { gap: 12px; padding: 16px; border-radius: 14px; }
  #admin-auth-loading .admin-connection-brand { flex-basis: 76px; padding-inline: 8px; }
  #admin-auth-loading .admin-connection-brand img { width: 60px; }
  #admin-auth-loading .admin-connection-indicator { display: none; }
}
@media print { #admin-auth-loading { display: none !important; } }
