.partner-card { max-width:720px; margin:0 0 40px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.partner-welcome > .partner-card { width:100%; min-width:0; margin:0; }
.partner-wallet-heading { margin-bottom:16px; }
.partner-wallet-heading h1 { max-width:none; margin:0; color:var(--ink); font-size:18px; line-height:1.4; font-weight:550; letter-spacing:-.025em; }
.partner-wallet-terms { display:grid; gap:8px; }
.partner-wallet-terms > .partner-discount:not(.partner-port-price) > strong { margin-left:auto; }
.partner-wallet-main { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:32px; padding:24px; }
.partner-wallet-summary { min-width:0; }
.partner-wallet-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px 20px; min-width:0; padding:16px 24px; border-top:1px solid var(--line); background:#fafafb; border-radius:0 0 12px 12px; }
.partner-wallet-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.partner-wallet-actions .button { min-height:36px; font-size:12px; }
.partner-wallet-actions .text-button { margin-inline:8px; }
.partner-wallet-settings { margin-left:auto; font-size:11px; white-space:nowrap; }
.partner-wallet-warning { margin:0; padding:14px 24px; border-top:1px solid var(--line); color:#98632c; font-size:12px; line-height:1.6; }
.partner-heading,.partner-actions,.partner-pages { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.partner-heading { justify-content:space-between; margin-bottom:20px; }
.partner-heading h2 { margin:0; font-size:20px; }
.partner-discount { display:inline-flex; align-items:center; gap:7px; min-height:30px; border:1px solid var(--line); border-radius:6px; background:#f7f8fa; color:var(--muted); padding:5px 9px; font-size:11px; white-space:nowrap; }
.partner-discount strong { color:var(--ink); font-size:12px; font-weight:550; font-variant-numeric:tabular-nums; }
.partner-discount .partner-currency { font-size:inherit; color:inherit; }
.partner-port-price,.partner-credit-limit { padding-block:2px; padding-right:4px; }
.partner-port-price { gap:5px; }
.partner-port-price strong { font-weight:600; }
.partner-stats { min-width:0; margin:0; }
.partner-stat { container-type:inline-size; min-width:0; }
.partner-stats dt { display:flex; align-items:center; gap:4px; min-height:28px; margin-bottom:8px; color:var(--muted); font-size:12px; line-height:1.5; font-weight:400; }
.partner-stats dt > span { min-width:0; overflow-wrap:anywhere; }
.partner-stats dd { margin:0; color:var(--ink); font-size:min(36px,10cqi); line-height:1.2; font-weight:500; letter-spacing:-.035em; font-variant-numeric:tabular-nums; white-space:nowrap; }
.partner-currency { color:var(--subtle); font-size:.65em; font-weight:400; letter-spacing:0; }
.partner-stats .partner-negative { color:#a63838; }
.partner-stats .partner-positive { color:var(--green); }
.partner-stats .partner-negative .partner-currency,.partner-stats .partner-positive .partner-currency { color:inherit; }
.partner-help { display:inline-flex; align-items:center; justify-content:center; flex:0 0 24px; width:24px; height:24px; padding:2px; border-radius:50%; color:#9a9fa8; }
.partner-help svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.2; stroke-linecap:round; }
.partner-help .partner-help-dot { fill:currentColor; stroke:none; }
.partner-help:hover,.partner-help:focus-visible,.partner-help[aria-expanded=true] { color:var(--ink); background:#f0f1f4; }
.partner-wallet-popover { position:fixed; inset:auto; z-index:1100; width:300px; max-width:calc(100vw - 24px); margin:0; padding:13px 15px; overflow:visible; border:1px solid #ffffff0d; border-radius:8px; background:#191a1d; color:#fff; box-shadow:0 6px 22px #10121826; font-size:12px; font-weight:400; line-height:1.65; letter-spacing:0; text-align:left; }
.partner-wallet-popover::before { content:""; position:absolute; left:var(--help-arrow-x); bottom:-4px; width:7px; height:7px; background:#191a1d; transform:translateX(-50%) rotate(45deg); }
.partner-wallet-popover[data-side=bottom]::before { bottom:auto; top:-4px; }
.partner-wallet-popover::backdrop { background:transparent; pointer-events:none; }
.partner-dialog.partner-topup-dialog { width:min(460px,calc(100vw - 32px)); }
.partner-topup-actions { display:flex; justify-content:flex-end; margin-top:22px; }
.partner-topup-summary { margin:20px 0; }
.partner-topup-summary > div { display:flex; justify-content:space-between; gap:20px; padding:8px 0; font-size:13px; }
.partner-topup-summary dt { color:var(--muted); }
.partner-topup-summary dd { margin:0; font-variant-numeric:tabular-nums; }
.partner-topup-summary > div:last-child { margin-top:6px; padding-top:14px; border-top:1px solid var(--line); font-weight:600; }
.partner-billing-link { margin-top:16px; }
.partner-negative { color:#a63838; }
.partner-dialog { width:min(920px,calc(100vw - 32px)); max-height:90dvh; border:1px solid #d8ded5; border-radius:18px; padding:24px; overflow:auto; color:#263029; background:white; }
.partner-dialog::backdrop { background:#14201688; }
.admin-page .partner-settings-dialog { width:min(640px,calc(100% - 32px)); }
.admin-page .partner-transactions-dialog,.admin-page .partner-ports-dialog { width:min(860px,calc(100% - 32px)); }
.partner-settings-email { margin-bottom:20px; }
.partner-form-footer { display:flex; align-items:center; gap:14px; margin-top:20px; }
.partner-form-footer small { color:var(--subtle); font-size:11px; line-height:1.5; overflow-wrap:anywhere; }
.partner-dialog [data-withdrawals]:not([hidden]) { margin-top:24px; padding-top:20px; border-top:1px solid var(--line); }
.partner-dialog h2 { margin:0; font-size:21px; }
.partner-dialog .field { margin-bottom:14px; }
.partner-dialog textarea { width:100%; min-height:86px; padding:12px; border:1px solid #ccd3c8; border-radius:8px; font:inherit; resize:vertical; }
.partner-dialog select,.partner-dialog input { max-width:100%; }
.partner-dialog .partner-form { margin-top:24px; border-top:1px solid #e2e6de; padding-top:20px; }
.partner-table-wrap { overflow:auto; }
.partner-table { width:100%; border-collapse:collapse; font-size:14px; }
.partner-table th,.partner-table td { text-align:left; padding:12px 10px; border-bottom:1px solid #e4e8df; vertical-align:top; }
.partner-table th { color:#65705f; font-size:12px; font-weight:600; }
.partner-table td small { display:block; margin-top:4px; color:#65705f; }
.partner-table .numeric { white-space:nowrap; font-variant-numeric:tabular-nums; }
.partner-table .partner-comment { min-width:150px; overflow-wrap:anywhere; white-space:pre-wrap; }
.partner-pages { justify-content:space-between; margin-top:16px; }
.partner-note { font-size:13px; color:#64715f; line-height:1.6; }
.partner-feedback { margin:12px 0; color:#a63838; white-space:pre-wrap; }
.partner-token { overflow-wrap:anywhere; display:block; padding:14px; background:#f3f6ef; border-radius:8px; user-select:all; }
.partner-withdrawal { padding:14px 0; border-bottom:1px solid #e4e8df; }
.partner-profile { max-width:900px; margin:0; padding:32px 0 0; border-top:1px solid var(--line); }
.partner-profile > h2 { margin:0 0 28px; color:var(--ink); font-size:20px; font-weight:550; letter-spacing:-.025em; }
.partner-setting-row { display:grid; grid-template-columns:minmax(220px,1fr) minmax(0,420px); gap:64px; padding:0 0 30px; }
.partner-setting-row + .partner-setting-row { padding-top:30px; border-top:1px solid var(--line); }
.partner-setting-heading h3 { margin:0; font-size:15px; font-weight:550; color:var(--ink); }
.partner-setting-heading p { max-width:280px; margin-top:8px; color:var(--muted); font-size:12px; line-height:1.7; }
.partner-prefix-form,.partner-api-settings { min-width:0; }
.partner-profile .field { margin:0 0 8px; }
.partner-prefix-controls { display:flex; align-items:center; gap:10px; }
.partner-prefix-controls input { flex:1; width:100%; min-width:0; height:38px; padding:8px 10px; border:1px solid #dedfe5; border-radius:6px; background:#fff; font-size:13px; }
.partner-profile .button { font-size:12px; }
.partner-login-preview { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:6px 14px; margin-top:12px; padding:11px 12px; border-radius:6px; background:#f7f8fa; }
.partner-login-preview > span { color:var(--muted); font-size:11px; }
.partner-login-preview code { font-family:var(--mono); font-size:11px; color:var(--subtle); overflow-wrap:anywhere; }
.partner-login-preview [data-prefix-preview] { color:var(--ink); }
.partner-api-status { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 16px; min-height:38px; margin-bottom:16px; }
.partner-token-status { display:inline-flex; align-items:center; gap:7px; padding:4px 8px; border-radius:5px; background:#f2f3f5; color:var(--muted); font-size:11px; }
.partner-token-status::before { content:""; width:5px; height:5px; border-radius:50%; background:#9a9fa8; }
.partner-token-status[data-active=true] { background:#edf5ef; color:#377655; }
.partner-token-status[data-active=true]::before { background:#377655; }
.partner-api-status > code { font-family:var(--mono); font-size:12px; color:var(--muted); }
.partner-api-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px 18px; }
.partner-api-actions .partner-revoke { color:#8e463e; }
.partner-api-note { margin-top:12px; color:var(--subtle); font-size:11px; line-height:1.7; }
.partner-token-reveal { margin-bottom:18px; padding:16px; border:1px solid var(--line); border-radius:8px; background:#fafbfc; }
.partner-token-reveal p { color:var(--muted); font-size:12px; line-height:1.6; }
.partner-token-reveal .partner-token { margin:12px 0; padding:0; background:none; border-radius:0; color:var(--ink); font-family:var(--mono); font-size:12px; line-height:1.7; }
.partner-profile .partner-feedback { margin:12px 0 0; font-size:12px; line-height:1.6; }
.partner-profile .partner-feedback[data-success] { color:#377655; }
.partner-link { border:0; background:transparent; padding:0; color:#285e3d; text-decoration:underline; cursor:pointer; font:inherit; }
@media(max-width:680px) { .partner-setting-row { grid-template-columns:1fr; gap:18px; padding-bottom:26px; } .partner-setting-row + .partner-setting-row { padding-top:26px; } .partner-profile { padding-top:26px; } .partner-profile > h2 { margin-bottom:24px; } .partner-api-status { min-height:0; } }
@media(max-width:650px) { .partner-stats dt { font-size:11px; } .partner-wallet-main { padding:20px; gap:24px; } .partner-wallet-footer { padding:16px 20px; } }
@media(max-width:1000px) { .welcome-block.partner-welcome { grid-template-columns:1fr; gap:24px; } .partner-welcome > .welcome-contacts { max-width:720px; } }
@media(max-width:650px) { .partner-wallet-heading h1 { font-size:17px; } .partner-wallet-warning { padding:12px 20px; } .partner-dialog { padding:18px; } .partner-dialog .form-grid { grid-template-columns:1fr; } }
@media(max-width:520px) { .partner-wallet-main { grid-template-columns:1fr; gap:20px; } .partner-wallet-terms { justify-self:start; } }
@media(max-width:400px) { .partner-wallet-actions .text-button { margin:6px 0 0; } }
.connection-credential-actions {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
}
.partner-connection-choice { margin:0 0 24px; }
.partner-connection-choice select { width:100%; }
.partner-domain-fields { margin-top:24px; }
.partner-dialog.partner-domain-dialog { width:min(460px,calc(100vw - 32px)); }
.partner-domain-contacts { display:grid; justify-items:start; gap:14px; margin-top:20px; }
.partner-domain-contact { display:inline-flex; align-items:center; gap:9px; font-size:14px; }
.partner-domain-contact .icon { width:15px; height:15px; color:var(--muted); }
.renew-all[aria-disabled="true"] { color:var(--muted); opacity:.65; cursor:help; }
.partner-topup-dialog .field { margin-bottom:20px; }
.partner-topup-dialog .partner-topup-summary dd { font-variant-numeric:tabular-nums; }
.partner-topup-dialog [data-topup-credit] { font-size:22px; font-weight:600; }
