/* 用途：後台全頁面共用ATAS深色／綠紫主題，保留原排版與操作契約。
   執行：由admin/base_site.html於各頁樣式之後載入。
   注意：僅.atas-admin-ui且排除已確認登入登出；不隱藏欄位、警告、權限或停用狀態。 */
body.atas-admin-ui:not(.atas-login) {
  --atas-surface: #1a1a1a;
  --atas-raised: #252525;
  --atas-neon: #37ff8b;
  --atas-stroke: rgba(255, 255, 255, .7);
  --atas-field-bg: #20242b;
  --atas-field-edge: #606b7b;
  --atas-field-ink: #eef2f8;
  --atas-field-muted: #b8c3d4;
  --atas-focus: #82b8ff;
  --atas-focus-ring: rgba(130, 184, 255, .26);
  --atas-field-font-size: 14px;
  --body-bg: #101114;
  --body-fg: #e8e8ed;
  --body-quiet-color: #aaaab4;
  --body-medium-color: #c3c3cc;
  --body-loud-color: #fff;
  --primary: #252525;
  --secondary: #1a1a1a;
  --primary-fg: #fff;
  --accent: #8ef7bb;
  --header-color: #dddde5;
  --header-branding-color: #fff;
  --header-bg: #171717;
  --header-link-color: #eeeef3;
  --breadcrumbs-bg: #1c1d20;
  --breadcrumbs-fg: #aaaab4;
  --breadcrumbs-link-fg: #8ef7bb;
  --link-fg: #8ef7bb;
  --link-hover-color: #37ff8b;
  --link-selected-fg: #b0ffd0;
  --hairline-color: #33353a;
  --border-color: #41434a;
  --darkened-bg: #202124;
  --selected-bg: #292d31;
  --selected-row: #203b2b;
  --button-bg: #252525;
  --button-hover-bg: #080808;
  --button-fg: #fff;
  --default-button-bg: #23402f;
  --default-button-hover-bg: #2e563d;
  --close-button-bg: #37393e;
  --close-button-hover-bg: #484b52;
  --error-fg: #ffb7c3;
  --message-success-bg: #193b27;
  --message-warning-bg: #4a3618;
  --message-error-bg: #45242c;
  --delete-button-bg: #a72940;
  --delete-button-hover-bg: #c1324c;
  --payment-banner: #1a1a1a;
  --payment-banner-edge: #00dd77;
  --payment-accent: #8ef7bb;
  --payment-accent-dark: #23402f;
  --payment-accent-light: #193b27;
  color-scheme: dark;
  background: var(--body-bg);
  color: var(--body-fg);
  font-family: system-ui, "Microsoft JhengHei", sans-serif;
}
/* 用途：既有主題切換仍可選明亮模式，不更改或保存使用者設定。 */
html[data-theme="light"] body.atas-admin-ui:not(.atas-login) {
  --atas-surface: #fff;
  --atas-raised: #edf1ef;
  --atas-neon: #087e43;
  --atas-stroke: rgba(27, 37, 32, .7);
  --atas-field-bg: #fff;
  --atas-field-edge: #b8c3d1;
  --atas-field-ink: #0e1116;
  --atas-field-muted: #536174;
  --atas-focus: #2367ca;
  --atas-focus-ring: rgba(46, 125, 239, .22);
  --body-bg: #f3f5f4;
  --body-fg: #253329;
  --body-quiet-color: #54655b;
  --body-medium-color: #43524a;
  --body-loud-color: #17251d;
  --primary: #e4ece7;
  --secondary: #edf1ef;
  --primary-fg: #203c2b;
  --accent: #245736;
  --header-bg: #fff;
  --header-color: #314c3c;
  --header-branding-color: #203c2b;
  --header-link-color: #245736;
  --breadcrumbs-bg: #e9efeb;
  --breadcrumbs-fg: #54655b;
  --breadcrumbs-link-fg: #076b39;
  --link-fg: #087e43;
  --link-hover-color: #06562e;
  --link-selected-fg: #06562e;
  --hairline-color: #d7dfd9;
  --border-color: #bdcbbf;
  --darkened-bg: #edf1ef;
  --selected-bg: #e1e9e3;
  --selected-row: #e0f3e7;
  --error-fg: #a11630;
  --message-success-bg: #dff3e6;
  --message-warning-bg: #fff0ca;
  --message-error-bg: #ffe4e9;
  --button-bg: #e5eee8;
  --button-fg: #203c2b;
  --button-hover-bg: #d6e5dc;
  --default-button-bg: #23402f;
  --default-button-hover-bg: #2e563d;
  --payment-accent: #087e43;
  --payment-banner: #203c2b;
  --payment-accent-light: #e0f3e7;
  color-scheme: light;
}
body.atas-admin-ui:not(.atas-login) #header {
  border-top: 2px solid transparent;
  border-image: linear-gradient(163deg, #00ff75, #3700ff) 1;
  box-shadow: 0 1px 0 var(--hairline-color);
}
body.atas-admin-ui:not(.atas-login) #site-name a { font-weight: 600; }
/* 用途：晝夜切換時文字與底色同步，不讓舊文字色在新底色上延遲淡入。 */
body.atas-admin-ui:not(.atas-login) a,
body.atas-admin-ui:not(.atas-login) button,
body.atas-admin-ui:not(.atas-login) input[type="submit"] {
  transition-property: box-shadow, border-color, transform;
}
body.atas-admin-ui:not(.atas-login) #nav-sidebar { background: var(--atas-surface); }
body.atas-admin-ui:not(.atas-login) #nav-sidebar .module { border-radius: 0; }
body.atas-admin-ui:not(.atas-login) .breadcrumbs { border-bottom: 1px solid var(--hairline-color); }

/* 用途：資料與表單區塊共用細漸層框；不微縮填寫中表單或資料表。 */
body.atas-admin-ui:not(.atas-login) #content .module,
body.atas-admin-ui:not(.atas-login) .payments-nav-section,
body.atas-admin-ui:not(.atas-login) .handle-summary,
body.atas-admin-ui:not(.atas-login) .handle-primary-actions,
body.atas-admin-ui:not(.atas-login) .withdrawal-action-card,
body.atas-admin-ui:not(.atas-login) .withdrawal-table-wrap {
  border: 1px solid transparent;
  border-radius: 16px;
  background: linear-gradient(var(--atas-surface), var(--atas-surface)) padding-box,
              linear-gradient(163deg, rgba(0,255,117,.65), rgba(55,0,255,.6)) border-box;
}
body.atas-admin-ui:not(.atas-login) .module h2,
body.atas-admin-ui:not(.atas-login) .module caption,
body.atas-admin-ui:not(.atas-login) .inline-group h2,
body.atas-admin-ui:not(.atas-login) .payments-nav-heading,
body.atas-admin-ui:not(.atas-login) .handle-summary h2,
body.atas-admin-ui:not(.atas-login) .handle-primary-actions > h2 {
  background: var(--atas-raised);
  color: var(--body-fg);
  border-bottom: 1px solid var(--hairline-color);
}
body.atas-admin-ui:not(.atas-login) .payments-nav-primary { border-top-width: 2px; }
body.atas-admin-ui:not(.atas-login) .payments-nav-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
body.atas-admin-ui:not(.atas-login) .payments-nav-card {
  padding: 2px;
  border: 0;
  border-radius: 20px;
  background: linear-gradient(163deg, #00ff75, #3700ff);
  overflow: visible;
  transition: box-shadow .3s ease;
}
body.atas-admin-ui:not(.atas-login) .atas-theme-card-inner {
  display: flex;
  flex: 1;
  min-width: 0;
  border-radius: 18px;
  background: var(--atas-surface);
  transition: transform .2s ease, border-radius .2s ease;
}
body.atas-admin-ui:not(.atas-login) .payments-nav-card:hover,
body.atas-admin-ui:not(.atas-login) .payments-nav-card:focus-within { box-shadow: 0 0 30px 1px rgba(0,255,117,.3); }
body.atas-admin-ui:not(.atas-login) .payments-nav-card:hover .atas-theme-card-inner,
body.atas-admin-ui:not(.atas-login) .payments-nav-card:focus-within .atas-theme-card-inner { transform: scale(.98); border-radius: 20px; }
body.atas-admin-ui:not(.atas-login) .payments-nav-main { min-width: 0; border-radius: 18px; }
body.atas-admin-ui:not(.atas-login) .payments-nav-add { border-radius: 0 18px 18px 0; }
body.atas-admin-ui:not(.atas-login) .payments-nav-main strong { font-size: 16px; line-height: 1.6; }

/* 用途：描邊掃入只用在標題與導覽文字，原文仍是讀屏名稱。 */
body.atas-admin-ui:not(.atas-login) .atas-theme-text {
  display: inline-block;
  position: relative;
  max-width: 100%;
  color: transparent;
  -webkit-text-stroke: .7px var(--atas-stroke);
  letter-spacing: 1px;
}
body.atas-admin-ui:not(.atas-login) .atas-theme-text-overlay {
  position: absolute;
  inset: 0 auto 0 0;
  box-sizing: border-box;
  width: 0;
  opacity: 0;
  overflow: hidden;
  white-space: nowrap;
  pointer-events: none;
  font: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  margin: 0;
  padding: inherit;
  color: var(--atas-neon);
  -webkit-text-stroke: .7px var(--atas-neon);
  border-right: 4px solid var(--atas-neon);
  transition: width .5s ease, opacity .15s ease, filter .5s ease;
}
body.atas-admin-ui:not(.atas-login) .atas-theme-text:hover .atas-theme-text-overlay,
body.atas-admin-ui:not(.atas-login) .payments-nav-main:hover .atas-theme-text-overlay,
body.atas-admin-ui:not(.atas-login) .payments-nav-main:focus-visible .atas-theme-text-overlay {
  width: 100%; opacity: 1; filter: drop-shadow(0 0 14px var(--atas-neon));
}
body.atas-admin-ui:not(.atas-login) #content > h1.atas-theme-text { color: var(--body-fg); -webkit-text-stroke: 0; }
body.atas-admin-ui:not(.atas-login) #content > h1.atas-theme-text .atas-theme-text-overlay { color: var(--atas-neon); }

/* 用途：切換晝夜仍可讀，標題底色與文字成對；執行：覆寫頁面舊配色。
   注意：警告區保留自己的語意底色，不將所有文字一律改同色。 */
body.atas-admin-ui:not(.atas-login) .atas-theme-text {
  color: var(--body-fg);
  -webkit-text-stroke: 0;
}
body.atas-admin-ui:not(.atas-login) #content > h1 {
  background-color: var(--atas-surface);
  color: var(--body-fg);
}
body.atas-admin-ui:not(.atas-login) .module h2 a,
body.atas-admin-ui:not(.atas-login) .module caption a,
body.atas-admin-ui:not(.atas-login) #changelist-filter h2 {
  background-color: var(--atas-raised);
  color: var(--body-fg);
}
body.atas-admin-ui:not(.atas-login) .object-tools a,
body.atas-admin-ui:not(.atas-login) .object-tools a:visited {
  background-color: var(--button-bg);
  color: var(--button-fg);
}
body.atas-admin-ui:not(.atas-login) .pending-credit-summary-active :is(h2, p, span, strong, .help) {
  color: #78350f;
}

/* 用途：全部後台導覽卡片共用實心標題與明亮說明，停用卡片文字掃光。
   執行：由共用主題載入；注意：保留其他標題動畫、卡片綠紫外框與光暈。 */
body.atas-admin-ui:not(.atas-login) .payments-nav-main strong {
  color: var(--body-fg);
  -webkit-text-stroke: 0;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: .5px;
}
body.atas-admin-ui:not(.atas-login) .payments-nav-main .atas-theme-text-overlay { display: none; }
body.atas-admin-ui:not(.atas-login) .payments-nav-main > span {
  color: var(--body-medium-color);
  font-size: 14px;
  line-height: 1.8;
  margin-top: 6px;
}

/* 用途：輸入與操作採一致深色表面，原必填、選取、disabled及危險操作保留。 */
body.atas-admin-ui:not(.atas-login) input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),
body.atas-admin-ui:not(.atas-login) select,
body.atas-admin-ui:not(.atas-login) textarea {
  background: var(--atas-surface); color: var(--body-fg);
  border-color: var(--border-color); border-radius: 8px;
}

/* 用途：採使用者選定的膠囊輸入外觀；執行：沿用原input/select，不替換節點。
   注意：不載入外部字型、不加不存在的快捷鍵，保留原生日期、數字步進與選單。 */
body.atas-admin-ui:not(.atas-login) input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]):not([type="file"]):not([type="color"]):not([type="range"]),
body.atas-admin-ui:not(.atas-login) select:not([multiple]),
body.atas-admin-ui:not(.atas-login) #toolbar .payment-query-field :is(input, select) {
  box-sizing: border-box;
  min-height: 48px;
  max-width: 100%;
  border: 1px solid var(--atas-field-edge);
  border-radius: 999px;
  background: var(--atas-field-bg);
  color: var(--atas-field-ink);
  padding: 0 18px;
  font-family: inherit;
  font-size: var(--atas-field-font-size);
  box-shadow: 0 1px 1px rgba(14,17,22,.03), 0 18px 36px -22px rgba(14,17,22,.18);
  transition: border-color 220ms ease, box-shadow 220ms ease;
}
body.atas-admin-ui:not(.atas-login) textarea,
body.atas-admin-ui:not(.atas-login) select[multiple] {
  box-sizing: border-box;
  max-width: 100%;
  border: 1px solid var(--atas-field-edge);
  border-radius: 18px;
  padding: 12px 18px;
  background: var(--atas-field-bg);
  color: var(--atas-field-ink);
  font-family: inherit;
  font-size: var(--atas-field-font-size);
}
body.atas-admin-ui:not(.atas-login) input::placeholder,
body.atas-admin-ui:not(.atas-login) textarea::placeholder {
  color: var(--atas-field-muted);
  opacity: 1;
}
body.atas-admin-ui:not(.atas-login) :is(input, select, textarea):focus-visible {
  border-color: var(--atas-focus);
  box-shadow: 0 0 0 3px var(--atas-focus-ring);
}
body.atas-admin-ui:not(.atas-login) :is(input, select, textarea):disabled {
  background-color: var(--atas-raised);
  color: var(--body-quiet-color);
  cursor: not-allowed;
}
body.atas-admin-ui:not(.atas-login) :is(input, textarea)[readonly] {
  background-color: var(--atas-raised);
}
body.atas-admin-ui:not(.atas-login) input:autofill {
  -webkit-text-fill-color: var(--atas-field-ink);
  box-shadow: inset 0 0 0 1000px var(--atas-field-bg);
  caret-color: var(--atas-field-ink);
}

/* 用途：日期區沿用圓角分段視覺；執行：只排版原查詢欄位，不新增日期預設或送出事件。 */
body.atas-admin-ui:not(.atas-login) .payment-query-range {
  gap: 6px;
  padding: 8px;
  background: var(--atas-raised);
  border: 1px solid var(--atas-field-edge);
  border-radius: 28px;
}
body.atas-admin-ui:not(.atas-login) .payment-query-range .payment-query-field {
  padding: 4px;
}
body.atas-admin-ui:not(.atas-login) .payment-query-range .payment-query-actions {
  padding: 4px 8px;
  flex-wrap: wrap;
}
body.atas-admin-ui:not(.atas-login) #toolbar .payment-query-range .payment-query-field label {
  border-radius: 999px;
  padding: 4px 10px;
}
body.atas-admin-ui:not(.atas-login) #toolbar .payment-query-range .payment-query-field:focus-within label {
  background: var(--atas-field-ink);
  color: var(--atas-field-bg);
  border-radius: 999px;
  padding: 4px 10px;
}
body.atas-admin-ui:not(.atas-login) input:focus-visible,
body.atas-admin-ui:not(.atas-login) select:focus-visible,
body.atas-admin-ui:not(.atas-login) textarea:focus-visible,
body.atas-admin-ui:not(.atas-login) button:focus-visible,
body.atas-admin-ui:not(.atas-login) a:focus-visible { outline: 2px solid var(--link-fg); outline-offset: 3px; }
body.atas-admin-ui:not(.atas-login) input[type="checkbox"],
body.atas-admin-ui:not(.atas-login) input[type="radio"] { accent-color: #22985a; }
body.atas-admin-ui:not(.atas-login) button:not(.theme-toggle):not(.toggle-nav-sidebar),
body.atas-admin-ui:not(.atas-login) input[type="submit"],
body.atas-admin-ui:not(.atas-login) input[type="button"],
body.atas-admin-ui:not(.atas-login) .button { border-radius: 8px; }
body.atas-admin-ui:not(.atas-login) .submit-row { border-color: var(--hairline-color); border-radius: 12px; background: var(--atas-raised); }
body.atas-admin-ui:not(.atas-login) .submit-row input.default,
body.atas-admin-ui:not(.atas-login) .submit-row a.deletelink,
body.atas-admin-ui:not(.atas-login) input[type="submit"].default { color: #fff; }
body.atas-admin-ui:not(.atas-login) #toolbar,
body.atas-admin-ui:not(.atas-login) #changelist .actions,
body.atas-admin-ui:not(.atas-login) #changelist .paginator { background: var(--atas-surface); border-color: var(--hairline-color); }
body.atas-admin-ui:not(.atas-login) table { color: var(--body-fg); }
body.atas-admin-ui:not(.atas-login) thead th,
body.atas-admin-ui:not(.atas-login) table thead th { background: var(--atas-raised); color: var(--body-fg); }
body.atas-admin-ui:not(.atas-login) #result_list thead th,
body.atas-admin-ui:not(.atas-login) #result_list thead th a { color: var(--body-fg); background: var(--atas-raised); }
body.atas-admin-ui:not(.atas-login) tbody tr:nth-child(even):not(.selected) { background: var(--darkened-bg); }
body.atas-admin-ui:not(.atas-login) td,
body.atas-admin-ui:not(.atas-login) th { border-color: var(--hairline-color); }
body.atas-admin-ui:not(.atas-login) .help,
body.atas-admin-ui:not(.atas-login) .quiet { color: var(--body-quiet-color); }
body.atas-admin-ui:not(.atas-login) .errornote { background: var(--message-error-bg); border-color: var(--error-fg); color: var(--error-fg); border-radius: 8px; }
body.atas-admin-ui:not(.atas-login) #changelist-filter { border-color: var(--hairline-color); border-radius: 12px; }
body.atas-admin-ui:not(.atas-login) .admin-auto-refresh { border-radius: 12px; }
body.atas-admin-ui:not(.atas-login) .admin-auto-refresh button,
body.atas-admin-ui:not(.atas-login) [data-pending-sound-toggle],
body.atas-admin-ui:not(.atas-login) #toolbar input[type="submit"] {
  background: var(--button-bg); color: var(--button-fg);
  border: 1px solid var(--border-color); border-radius: 8px;
}
/* 用途：訂單列表的舊夜間按鈕規則較具體，成對覆寫避免深字落在深底。 */
html[data-theme] body.atas-admin-ui.payment-management:not(.atas-login) #toolbar .payment-query-actions input[type="submit"],
html[data-theme] body.atas-admin-ui.payment-management:not(.atas-login) .admin-auto-refresh button,
html[data-theme] body.atas-admin-ui.payment-management:not(.atas-login) [data-pending-sound-toggle] {
  background: var(--button-bg);
  color: var(--button-fg);
}
html[data-theme] body.atas-admin-ui.payment-management:not(.atas-login) #toolbar .payment-query-actions input[type="submit"]:hover,
html[data-theme] body.atas-admin-ui.payment-management:not(.atas-login) .admin-auto-refresh button:hover,
html[data-theme] body.atas-admin-ui.payment-management:not(.atas-login) [data-pending-sound-toggle]:hover {
  background: var(--button-hover-bg);
  color: var(--button-fg);
}

/* 用途：橘色待辦與紅綠資料核對沿用原語意，不以品牌色蓋掉警告。 */
body.atas-admin-ui:not(.atas-login) .payment-summary > section:not(.pending-credit-summary-active) {
  border: 1px solid transparent; border-radius: 14px;
  background: linear-gradient(var(--atas-surface), var(--atas-surface)) padding-box,
              linear-gradient(163deg, rgba(0,255,117,.65), rgba(55,0,255,.6)) border-box;
}
body.atas-admin-ui:not(.atas-login) .pending-credit-summary-active { color: #78350f; }
body.atas-admin-ui:not(.atas-login) .pending-credit-summary-active .help { color: #78350f; }
@supports not (-webkit-text-stroke: 1px white) {
  body.atas-admin-ui:not(.atas-login) .atas-theme-text { color: var(--body-fg); }
}
@media (hover: none) {
  body.atas-admin-ui:not(.atas-login) .atas-theme-text { color: var(--body-fg); -webkit-text-stroke: 0; }
}
@media (max-width: 600px) {
  body.atas-admin-ui:not(.atas-login) .payments-nav-grid { grid-template-columns: minmax(0, 1fr); }
  /* 用途：框架原本依視窗算欄寬，改依表單容器避免膠囊欄位被卡片邊界裁切。 */
  body.atas-admin-ui:not(.atas-login) .aligned .form-row > div {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }
  body.atas-admin-ui:not(.atas-login) { --atas-field-font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  body.atas-admin-ui:not(.atas-login) .payments-nav-card,
  body.atas-admin-ui:not(.atas-login) .atas-theme-card-inner,
  body.atas-admin-ui:not(.atas-login) .atas-theme-text-overlay,
  body.atas-admin-ui:not(.atas-login) input,
  body.atas-admin-ui:not(.atas-login) select { transition: none; }
  body.atas-admin-ui:not(.atas-login) .payments-nav-card:hover .atas-theme-card-inner,
  body.atas-admin-ui:not(.atas-login) .payments-nav-card:focus-within .atas-theme-card-inner { transform: none; }
  body.atas-admin-ui:not(.atas-login) .atas-theme-text { color: var(--body-fg); -webkit-text-stroke: 0; }
  body.atas-admin-ui:not(.atas-login) .atas-theme-text-overlay { display: none; }
}

/* 用途：設定表單保留足夠文字／數字空間，避免5em欄寬被膠囊內距吃掉。
   執行：所有後台共用；注意：不改欄位型別、驗證或原生日期／數字控制。 */
body.atas-admin-ui:not(.atas-login) #content .aligned .form-row > div {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}
body.atas-admin-ui:not(.atas-login) #content .aligned .form-row {
  padding: 12px 14px;
  border-bottom: 0;
}
body.atas-admin-ui:not(.atas-login) #content .aligned .form-row:not(.hidden) ~ .form-row:not(.hidden) {
  border-top: 1px solid var(--hairline-color);
}
body.atas-admin-ui:not(.atas-login) #content .aligned .flex-container {
  min-width: 0;
  flex-wrap: wrap;
  row-gap: 8px;
}
body.atas-admin-ui:not(.atas-login) #content .aligned :is(.vTextField, .vUUIDField, .vURLField) {
  width: min(100%, 32rem);
  min-width: 0;
}
body.atas-admin-ui:not(.atas-login) #content .aligned :is(.vIntegerField, .vPositiveSmallIntegerField, input[type="number"]) {
  width: min(100%, 20rem);
  min-width: 0;
}
body.atas-admin-ui:not(.atas-login) #content .aligned :is(.vLargeTextField, .vXMLLargeTextField) {
  width: min(100%, 48rem);
  min-width: 0;
}
body.atas-admin-ui:not(.atas-login) #content .aligned select:not([multiple]) {
  width: min(100%, 28rem);
  min-width: 0;
}
body.atas-admin-ui:not(.atas-login) #content .aligned :is(.vDateField, .vTimeField) {
  width: min(100%, 12rem);
  min-width: 0;
}
body.atas-admin-ui:not(.atas-login) #content :is(.readonly, .help, .description) {
  overflow-wrap: anywhere;
}
/* 用途：只修正標題與末列圓角，保留焦點外框及資料表可捲動範圍，不裁切整張卡片。 */
body.atas-admin-ui:not(.atas-login) #content .module > :is(h2, caption),
body.atas-admin-ui:not(.atas-login) #content fieldset.module > details > summary,
body.atas-admin-ui:not(.atas-login) #content .module > table > caption,
body.atas-admin-ui:not(.atas-login) #changelist-filter > h2 {
  border-top-left-radius: 14px;
  border-top-right-radius: 14px;
}
body.atas-admin-ui:not(.atas-login) #content fieldset.module > .form-row:last-child {
  border-bottom: 0;
  border-radius: 0 0 15px 15px;
}
body.atas-admin-ui:not(.atas-login) #content-main,
body.atas-admin-ui:not(.atas-login) .changelist-form-container {
  min-width: 0;
}
body.atas-admin-ui:not(.atas-login) #changelist .paginator { border-radius: 0 0 14px 14px; }
/* 用途：列表標頭背景收在卡片圓角內，修正審核紀錄等無搜尋列頁面的方角外溢。
   執行：沿用Django原有results捲動容器；注意：不裁切整張module、篩選器或表單。
   寬表仍可左右捲至末欄，工具列與收合篩選按鈕只補相同圓角，不改事件或欄位。 */
body.atas-admin-ui:not(.atas-login) #changelist .results {
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}
body.atas-admin-ui:not(.atas-login) #changelist #toolbar {
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}
body.atas-admin-ui:not(.atas-login) #changelist-filter.atas-filter-ready > .atas-filter-toggle {
  border-top-left-radius: 11px;
  border-top-right-radius: 11px;
}
body.atas-admin-ui:not(.atas-login) #changelist-filter.atas-filter-collapsed > .atas-filter-toggle {
  border-bottom-left-radius: 11px;
  border-bottom-right-radius: 11px;
}
/* 用途：全頁核對補上明亮模式刪除確認的成對文字色，保留紅色危險操作語意。 */
body.atas-admin-ui:not(.atas-login).delete-confirmation form input[type="submit"] { color: #fff; }
body.atas-admin-ui:not(.atas-login).delete-confirmation form .cancel-link {
  color: var(--button-fg);
  background: var(--button-bg);
}
body.atas-admin-ui:not(.atas-login).delete-confirmation form .cancel-link:hover { background: var(--button-hover-bg); }
/* 用途：登入／登出只修正100%寬度加內距造成的窄屏溢出；原確認外觀及驗證保持。 */
body.atas-admin-ui.atas-login { padding: 0; }
body.atas-admin-ui.atas-login #container { margin: 0; }
body.atas-admin-ui.atas-login #content-start { box-sizing: border-box; }
body.atas-admin-ui.atas-login #content { box-sizing: border-box; padding: 0; margin: 0 auto; }

/* 用途：充提共用緊湊查詢及上方提示音／刷新工具列；執行：只套用兩個管理列表。
   注意：保留所有說明、待辦、聲音節點及原生欄位；窄螢幕換行，不裁文字。 */
body.atas-admin-ui.payment-management #content { padding: 20px 28px; }
body.atas-admin-ui.payment-management #content > h1 {
  font-size: 20px;
  padding: 10px 16px;
  margin-bottom: 14px;
}
body.atas-admin-ui.payment-management .payment-list-tools {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 8px 14px;
  margin-bottom: 10px;
  padding: 8px 12px;
  border-bottom: 1px solid var(--hairline-color);
}
body.atas-admin-ui.payment-management .payment-list-tools .pending-credit-sound-controls {
  flex: 1 1 320px;
  gap: 6px 10px;
  margin: 0;
}
body.atas-admin-ui.payment-management .payment-list-tools .pending-credit-sound-controls span {
  flex: 1 1 180px;
  font-size: 12px;
  overflow-wrap: anywhere;
}
body.atas-admin-ui.payment-management .payment-list-tools .admin-auto-refresh {
  flex: 1 1 520px;
  gap: 6px 10px;
  border: 0;
  background: transparent;
  margin: 0;
  padding: 0;
}
body.atas-admin-ui.payment-management .payment-list-tools .admin-auto-refresh-status { flex: 1 1 130px; }
body.atas-admin-ui.payment-management .payment-list-tools :is(button, [data-pending-sound-toggle]) {
  min-height: 36px;
  padding: 6px 10px;
  white-space: nowrap;
}
body.atas-admin-ui.payment-management #toolbar.payment-query-toolbar { padding: 10px 12px; }
body.atas-admin-ui.payment-management .payment-query-form { gap: 8px; }
body.atas-admin-ui.payment-management .payment-query-main {
  gap: 8px 12px;
  grid-template-columns: minmax(180px, 1.5fr) minmax(120px, 1fr) minmax(140px, 1fr);
}
body.atas-admin-ui.payment-management .payment-query-field { gap: 4px; }
body.atas-admin-ui.payment-management #toolbar .payment-query-field :is(input, select) {
  height: 38px;
  min-height: 38px;
  padding: 0 12px;
}
body.atas-admin-ui.payment-management .payment-query-range {
  grid-template-columns: repeat(4, minmax(150px, 1fr)) auto;
  gap: 8px;
  padding: 8px;
  border-radius: 20px;
}
body.atas-admin-ui.payment-management .payment-query-range .payment-query-field { padding: 0; }
body.atas-admin-ui.payment-management #toolbar .payment-query-range .payment-query-field label { padding: 0 8px; }
body.atas-admin-ui.payment-management .payment-query-range .payment-query-actions {
  grid-column: auto;
  gap: 8px;
  padding: 0 2px;
}
body.atas-admin-ui.payment-management .payment-summary {
  gap: 12px;
  margin: 10px 0;
}
body.atas-admin-ui.payment-management .payment-summary > section { padding: 10px 14px; }
body.atas-admin-ui.payment-management #changelist .payment-summary h2 {
  margin: 0 0 6px;
  font-size: 14px;
  line-height: 1.5;
}
body.atas-admin-ui.payment-management .payment-summary-amount { font-size: 24px; line-height: 1.3; }
body.atas-admin-ui.payment-management .payment-summary p { margin: 4px 0 0; padding: 0; }
@media (max-width: 1200px) {
  body.atas-admin-ui.payment-management .payment-query-range { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.atas-admin-ui.payment-management .payment-query-range .payment-query-actions { grid-column: 1 / -1; }
}
@media (max-width: 767px) {
  body.atas-admin-ui:not(.atas-login) #content .aligned .form-row > div { width: 100%; }
  body.atas-admin-ui.payment-management #content { padding: 16px; }
  body.atas-admin-ui.payment-management .payment-list-tools { padding: 8px; }
  body.atas-admin-ui.payment-management .payment-query-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.atas-admin-ui.payment-management .payment-query-keyword { grid-column: 1 / -1; }
  body.atas-admin-ui.payment-management .payment-list-tools .admin-auto-refresh {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.atas-admin-ui.payment-management .payment-list-tools :is(button, [data-pending-sound-toggle]),
  body.atas-admin-ui.payment-management #toolbar .payment-query-actions :is(input, a) { min-height: 44px; box-sizing: border-box; }
  body.atas-admin-ui.payment-management #toolbar .payment-query-actions a { display: inline-flex; align-items: center; }
  body.atas-admin-ui.payment-management #toolbar .payment-query-field :is(input, select) { min-height: 44px; height: 44px; font-size: 16px; }
}
@media (max-width: 600px) {
  body.atas-admin-ui.payment-management .payment-query-range { grid-template-columns: minmax(0, 1fr); }
  body.atas-admin-ui.payment-management .payment-query-hint { line-height: 1.6; }
}
@media (pointer: coarse) {
  body.atas-admin-ui.payment-management .payment-list-tools :is(button, [data-pending-sound-toggle]),
  body.atas-admin-ui.payment-management #toolbar .payment-query-actions :is(input, a) { min-height: 44px; }
  body.atas-admin-ui.payment-management #toolbar .payment-query-field :is(input, select) { min-height: 44px; height: 44px; font-size: 16px; }
}
