/* Public source: platform account UI requirements; shared --th-* tokens in theme-global.css. */
#page-accounts, #import-account-modal, .platform-account-dialog { color: var(--th-text); font-size: 14px; letter-spacing: 0; }
#account-import-inline { margin: 18px 0 4px; padding: 20px; border: 1px solid var(--th-border); border-radius: 8px; background: var(--th-surface-subtle); }
#account-import-inline[hidden], #account-import-inline.hidden { display: none !important; }
.account-import-inline-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding-bottom: 16px; border-bottom: 1px solid var(--th-border); }
.account-import-inline-heading h2 { margin: 0; color: var(--th-text); font-size: 18px; font-weight: 600; }
.account-import-inline-heading p { margin: 6px 0 0; color: var(--th-text-secondary); font-size: 13px; }
.account-import-inline-surface { width: 100%; max-width: none !important; max-height: none !important; padding: 20px 0 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; overflow: visible !important; }
.account-import-inline-surface > :first-child { padding-top: 0; }
.account-import-inline-surface > :last-child { position: static !important; }
#page-accounts { min-width: 0; }
.platform-accounts-content { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
#page-accounts h1 { font-size: 22px; line-height: 1.4; }
#page-accounts h1 svg { color: var(--th-accent); }
#page-accounts button, #import-account-modal button, .platform-account-dialog button {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  min-height: 36px; padding: 6px 10px; border-radius: 6px; font-size: 14px; letter-spacing: 0;
}
#page-accounts svg, #import-account-modal button svg, .platform-account-dialog svg { width: 16px; height: 16px; flex-shrink: 0; }
#page-accounts .btn-glass, #import-account-modal .btn-glass, .platform-account-dialog .btn-glass { color: var(--th-text) !important; }
#page-accounts .acct-icon svg, #import-account-modal button svg { color: inherit !important; }
#acct-page-info, #acct-page-num, #acct-summary-chips b { color: var(--th-text) !important; }
#page-accounts .acct-icon, .platform-account-dialog .acct-icon { width: 36px; height: 36px; padding: 8px; flex: 0 0 36px; }
#page-accounts :focus-visible, #import-account-modal :focus-visible, .platform-account-dialog :focus-visible { outline: 2px solid var(--th-accent); outline-offset: 2px; }
#page-accounts button:disabled, #import-account-modal button:disabled, .platform-account-dialog button:disabled { opacity: .5; cursor: not-allowed; }
.acct-filters { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 16px; }
.acct-filters > span { display: flex; align-items: center; gap: 8px; color: var(--th-text-secondary); font-size: 14px; }
#page-accounts select, #page-accounts input[type="search"], #import-account-modal input:not([type="file"]), #import-account-modal select, #import-account-modal textarea, .platform-account-dialog input {
  min-width: 0; min-height: 38px; padding: 8px 10px; border: 1px solid var(--th-border); border-radius: 6px;
  background: var(--th-input-bg); color: var(--th-text); font-size: 14px; font-family: inherit;
}
#acct-filter-search { width: 240px; max-width: 100%; }
#acct-filter-pool { max-width: 260px; }
#page-accounts input::placeholder, #import-account-modal textarea::placeholder { color: var(--th-text-secondary); opacity: 1; }
#page-accounts option, #import-account-modal option { background: var(--th-bg); color: var(--th-text); }
.acct-summary { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px; min-height: 28px; }
#acct-summary-chips > span { background: transparent; border: 0; padding: 0; font-size: 13px; }
.acct-batch-bar { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 10px 0; border-block: 1px solid var(--th-border); font-size: 14px; }
#page-accounts .hidden { display: none; }
#page-accounts [hidden], #create-pool-modal [hidden] { display: none !important; }
.acct-purpose-tabs { display: flex; flex-wrap: wrap; gap: 4px 20px; border-bottom: 1px solid var(--th-border); }
#page-accounts .acct-purpose-tabs button { border: 0; border-radius: 0; border-bottom: 2px solid transparent; min-height: 44px; padding: 10px 4px; background: transparent; color: var(--th-text-secondary); }
#page-accounts .acct-purpose-tabs button[aria-selected="true"] { color: var(--th-accent); border-bottom-color: var(--th-accent); font-weight: 600; }
#create-pool-modal > .modal-apple { max-width: 560px; border-radius: 8px !important; font-family: inherit; }
#create-pool-modal h3 { font-size: 18px; }
#create-pool-modal label, #create-pool-modal summary, #create-pool-modal button { font-size: 14px; }
#create-pool-modal select, #create-pool-modal input { min-height: 40px; padding: 8px 10px; border-radius: 6px; font-size: 14px; }
#create-pool-modal [class*="text-white/"] { color: var(--th-text-secondary) !important; }
#create-pool-modal .onboarding-group-option { min-height: 40px; }
.acct-table-scroll { max-width: 100%; overflow-x: auto; border-block: 1px solid var(--th-border); }
#page-accounts table { width: 100%; min-width: 1420px; border-radius: 0; background: transparent; }
#page-accounts th { color: var(--th-text-secondary); font-size: 13px; font-weight: 500; padding: 12px; background: var(--th-surface-subtle); }
#page-accounts td { vertical-align: middle; padding: 16px 12px; font-size: 14px; line-height: 1.55; border-color: var(--th-border); }
#page-accounts td [class*="text-["] { font-size: 13px; }
#page-accounts td .font-bold { font-size: 14px; }
#page-accounts [class*="text-white/"], #import-account-modal [class*="text-white/"] { color: var(--th-text-secondary) !important; }
#page-accounts [class*="text-emerald-"] { color: var(--th-success) !important; }
#page-accounts [class*="text-amber-"], #page-accounts [class*="text-orange-"] { color: var(--th-warning) !important; }
#page-accounts [class*="text-rose-"] { color: var(--th-danger) !important; }
#page-accounts [class*="text-cyan-"], #page-accounts h1 svg { color: var(--th-accent) !important; }
#page-accounts button[role="switch"] { width: 36px; min-height: 20px; height: 20px; padding: 0; border-radius: 999px; display: inline-flex; justify-content: flex-start; }
#page-accounts button[role="switch"] span { position: absolute; left: 0; top: 0; width: 16px; height: 16px; }
#page-accounts td:nth-child(2) { min-width: 210px; max-width: 250px; overflow-wrap: anywhere; }
#page-accounts .acct-empty { height: 180px; text-align: center; color: var(--th-text-secondary); }
.acct-muted, .acct-warranty small { color: var(--th-text-secondary); }
.acct-success { color: var(--th-success); }
.acct-warning { color: var(--th-warning); }
.acct-warranty { display: flex; flex-direction: column; gap: 4px; white-space: nowrap; }
.acct-warranty small { font-size: 13px; }
#page-accounts .acct-model-link { min-height: 28px; padding: 2px 0; color: var(--th-accent); font-size: 13px; }
.acct-row-actions { display: flex; align-items: center; justify-content: flex-end; gap: 6px; min-width: 280px; }
.acct-actions-menu { position: fixed; inset: auto; margin: 0; width: 192px; padding: 6px; max-height: calc(100dvh - 16px); overflow-y: auto; background: var(--th-bg-2); color: var(--th-text); border: 1px solid var(--th-border); border-radius: 6px; box-shadow: 0 10px 30px #0003; }
#page-accounts .acct-actions-menu button { width: 100%; justify-content: flex-start; border: 0; background: transparent; }
#page-accounts .acct-actions-menu button:hover { background: var(--th-surface-muted); }
#page-accounts .acct-danger { color: var(--th-danger); }
#acct-pagination { font-size: 13px; color: var(--th-text-secondary); }
#page-accounts input[type="checkbox"] { width: 16px; height: 16px; accent-color: var(--th-accent); }
#import-account-modal > .modal-apple { max-width: 720px; border-radius: 8px !important; font-family: inherit; }
#import-account-modal h3 { font-size: 18px; color: var(--th-text); }
#import-account-modal label, #import-account-modal p { font-size: 14px; }
#import-account-modal p { color: var(--th-text-secondary); }
#import-account-modal details { border-top: 1px solid var(--th-border); padding-top: 14px; }
#import-account-modal summary { padding-block: 6px; cursor: pointer; font-size: 14px; font-weight: 600; }
#import-account-modal section, .platform-account-dialog section { padding-top: 18px; }
#import-account-modal h4, .platform-account-dialog h3 { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; font-size: 14px; font-weight: 600; margin-bottom: 12px; }
#import-account-modal h4 small, .platform-account-dialog h3 small { font-size: 13px; font-weight: 400; color: var(--th-text-secondary); }
.acct-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.acct-form-grid label, .platform-account-dialog label { display: flex; flex-direction: column; gap: 8px; font-size: 14px; min-width: 0; }
.platform-account-dialog { width: min(700px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); padding: 0; background: var(--th-bg-2); border: 1px solid var(--th-border); border-radius: 8px; }
.platform-account-dialog::backdrop { background: #0008; }
.platform-account-dialog [hidden] { display: none !important; }
.platform-account-dialog select { min-width: 0; min-height: 40px; padding: 8px 10px; background: var(--th-input-bg); color: var(--th-text); border: 1px solid var(--th-border); border-radius: 6px; font: inherit; }
.platform-account-dialog .acct-pool-check { flex-direction: row; align-items: center; }
.platform-account-dialog .acct-pool-check input { min-height: 0; width: 16px; height: 16px; accent-color: var(--th-accent); }
#account-pool-delete { margin-right: auto; color: var(--th-danger); }
#account-pool-error { color: var(--th-danger); }
#account-pool-error:empty { display: none; }
.trading-new-price-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; padding-bottom: 16px; border-bottom: 1px solid var(--th-border); }
.trading-new-price-form label { display: flex; flex-direction: column; gap: 7px; min-width: 0; color: var(--th-text-secondary); font-size: 14px; }
.trading-new-price-form input, .trading-new-price-form select { width: 100%; min-width: 0; min-height: 40px; background: var(--th-input-bg); color: var(--th-text); border: 1px solid var(--th-border); border-radius: 6px; padding: 8px 10px; font-size: 14px; }
.trading-new-price-form button { grid-column: 1 / -1; justify-self: end; display: inline-flex; align-items: center; gap: 6px; min-height: 40px; font-size: 14px; }
.trading-new-price-form button svg { width: 16px; height: 16px; }
.platform-account-dialog header, .platform-account-dialog footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 22px; }
.platform-account-dialog header { border-bottom: 1px solid var(--th-border); }
.platform-account-dialog h2 { font-size: 18px; font-weight: 600; }
.platform-account-dialog footer { justify-content: flex-end; border-top: 1px solid var(--th-border); }
.acct-editor-body { display: flex; flex-direction: column; gap: 18px; padding: 22px; }
.platform-account-dialog section { border-top: 1px solid var(--th-border); }
#platform-account-error { color: var(--th-danger); }
#platform-account-error:empty { display: none; }
@media (max-width: 640px) {
  #page-accounts { padding: 20px 16px; }
  .acct-filters { align-items: stretch; gap: 10px; }
  .acct-filters > span { width: 100%; justify-content: space-between; }
  .acct-filters select { flex: 1; max-width: 260px; }
  #acct-filter-search { flex: 1; width: 180px; }
  #page-accounts button, #import-account-modal button, .platform-account-dialog button { min-height: 44px; }
  #page-accounts .acct-icon, .platform-account-dialog .acct-icon { width: 44px; height: 44px; flex-basis: 44px; }
  .acct-form-grid { grid-template-columns: minmax(0, 1fr); }
  #import-account-modal { padding: 8px; }
  #import-account-modal > .modal-apple { padding: 16px; max-height: calc(100dvh - 16px); }
  #import-account-modal > .modal-apple > :last-child { flex-wrap: wrap; }
  #import-account-modal input, #import-account-modal select, #import-account-modal textarea, .platform-account-dialog input { font-size: 16px; }
  #page-accounts table { min-width: 0; }
  #page-accounts thead { display: none; }
  #page-accounts tbody { display: block; }
  #page-accounts tbody tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; padding: 20px 0; border-bottom: 1px solid var(--th-border); position: relative; }
  #page-accounts td { display: block; padding: 0; min-width: 0; border: 0; }
  #page-accounts td::before { content: attr(data-label); display: block; font-size: 13px; color: var(--th-text-secondary); margin-bottom: 8px; }
  #page-accounts td:first-child { position: absolute; top: 20px; right: 4px; }
  #page-accounts td:first-child::before, #page-accounts td:nth-child(2)::before { display: none; }
  #page-accounts td:nth-child(2) { grid-column: 1 / -1; max-width: none; min-width: 0; padding-right: 28px; }
  #page-accounts td:nth-child(9), #page-accounts td:nth-child(10), #page-accounts .acct-empty { grid-column: 1 / -1; }
  #page-accounts td:nth-child(10)::before { display: none; }
  .acct-row-actions { min-width: 0; justify-content: flex-start; flex-wrap: wrap; }
  #page-accounts td:nth-child(9) { white-space: normal; }
  #page-accounts td .min-w-\[112px\] { min-width: 0; }
  #page-accounts button[role="switch"] { min-height: 20px; }
  #page-accounts .acct-empty { display: grid; place-items: center; height: 120px; }
}
