.portal-main:has([data-panel=reseller].is-active) { background:#080808; }
.portal-main:has([data-panel=reseller].is-active) #panel-kicker { display:none; }
.portal-main:has([data-panel=reseller].is-active) #panel-title { color:#fff; font-size:clamp(32px, 3.6vw, 43px); font-weight:850; letter-spacing:-1.4px; }
#reseller-root { --background:#080808; --surface:#111111; --surface-soft:#111111; --line:#282828; --text:#fff; --text-soft:#c1c1c1; --muted:#b7b7b7; --accent:#ff792e; color:#fff; background:#080808; min-width:0; font-size:15px; line-height:1.5; }
#reseller-root *, #reseller-root *::before, #reseller-root *::after { box-sizing:border-box; }
#reseller-root [hidden] { display:none !important; }
#reseller-root button, #reseller-root input, #reseller-root textarea, #reseller-root select { font:inherit; }
#reseller-root button:focus-visible, #reseller-root a:focus-visible, #reseller-root input:focus-visible, #reseller-root textarea:focus-visible, #reseller-root select:focus-visible { outline:2px solid #ff792e; outline-offset:4px; }
#reseller-root .button { display:inline-flex; justify-content:center; align-items:center; min-height:46px; max-width:100%; padding:11px 20px; border:1px solid #ff792e; border-radius:26px; background:#ff792e; color:#201006; font-weight:800; text-decoration:none; white-space:normal; text-align:center; cursor:pointer; }
#reseller-root .button:hover:not(:disabled) { background:#ff8d4f; border-color:#ff8d4f; }
#reseller-root .button-secondary { background:#111111; border-color:#282828; color:#fff; }
#reseller-root .button-secondary:hover:not(:disabled) { background:#1c1c1c; border-color:#505050; }
#reseller-root .reseller-summary { padding:8px 0 32px; border:0; gap:24px; }
#reseller-root .reseller-summary strong { font-size:clamp(33px, 4.2vw, 48px); font-weight:800; letter-spacing:-1.5px; line-height:1.3; }
#reseller-root .reseller-summary span, #reseller-root .reseller-summary small { color:#d8d8d8; }
#reseller-root .reseller-summary-actions { display:grid; justify-items:end; gap:12px; min-width:0; }
#reseller-root .reseller-contact { min-width:0; max-width:320px; }
#reseller-root .reseller-tabs { display:flex; justify-content:center; flex-wrap:wrap; gap:38px; border-bottom:1px solid #282828; margin-bottom:30px; }
#reseller-root [role=tab] { min-height:50px; padding:13px 0; background:transparent; border:0; border-bottom:3px solid transparent; color:#fff; font-size:16px; font-weight:800; cursor:pointer; }
#reseller-root [role=tab]:hover { border-bottom-color:#555; }
#reseller-root [role=tab][aria-selected=true] { border-bottom-color:#ff792e; }
#reseller-root .reseller-section-heading { padding:0 0 24px; gap:20px; flex-wrap:wrap; }
#reseller-root .reseller-section-heading h2 { color:#fff; font-size:23px; font-weight:850; letter-spacing:-.5px; }
#reseller-root .reseller-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; min-width:0; }
#reseller-root .reseller-search { display:block; width:100%; min-width:0; min-height:58px; padding:14px 22px; margin:0 0 20px; border:1px solid #444; border-radius:28px; background:#111111; color:#fff; font-size:19px; font-weight:750; }
#reseller-root .reseller-search::placeholder { color:#e6e6e6; opacity:1; }
#reseller-root .reseller-search:focus { border-color:#ff792e; }
#reseller-root .reseller-table { width:100%; table-layout:fixed; }
#reseller-root .reseller-table th, #reseller-root .reseller-table td { padding:19px 12px; border-bottom:1px solid #282828; }
#reseller-root .reseller-table th { color:#b7b7b7; font-size:13px; font-weight:650; }
#reseller-root .reseller-table th:first-child { width:54%; }
#reseller-root .reseller-table td { color:#fff; font-size:15px; font-weight:750; overflow-wrap:anywhere; }
#reseller-root .reseller-table th:last-child, #reseller-root .reseller-table td:last-child { text-align:right; }
#reseller-root .reseller-code { min-width:0; justify-content:space-between; gap:12px; }
#reseller-root .reseller-code-details { min-width:0; padding:6px 0; border:0; background:transparent; color:#fff; cursor:pointer; text-align:left; }
#reseller-root .reseller-code-details:hover { color:#ff792e; }
#reseller-root .reseller-code code { display:block; max-width:none; font-family:Consolas, monospace; font-size:14px; font-weight:750; overflow-wrap:anywhere; }
#reseller-root .reseller-icon { width:42px; min-width:42px; height:42px; min-height:42px; padding:0; border-radius:50%; flex-shrink:0; }
#reseller-root .reseller-status { font-size:14px; font-weight:800; color:#fff; }
#reseller-root .reseller-status.unfunded, #reseller-root .reseller-status.disabled, #reseller-root .reseller-status.expired { color:#c1c1c1; }
#reseller-root #reseller-load-more { display:flex; margin:24px auto 0; }
#reseller-root #reseller-empty { padding:24px 0; color:#c7c7c7; text-align:center; }
#reseller-root .reseller-history-row { gap:24px; padding:22px 0; border-bottom:1px solid #282828; }
#reseller-root .reseller-chart { padding:24px;border:1px solid #282828;border-radius:28px;background:#111111;margin-bottom:24px; }
#reseller-root .reseller-chart strong { display:block;font-size:clamp(27px,3vw,36px);font-weight:850;color:#fff; }
#reseller-root .reseller-chart span { color:#c1c1c1;font-size:13px; }
#reseller-root .reseller-chart svg { display:block;width:100%;height:190px;margin-top:20px; }
#reseller-root .reseller-history-row strong { color:#fff; font-size:16px; font-weight:800; }
#reseller-root .reseller-history-row > span { font-size:19px; font-weight:850; overflow-wrap:anywhere; }
#reseller-root .reseller-history-row > small { font-weight:650; overflow-wrap:anywhere; }
#reseller-root #reseller-error, #reseller-root #reseller-create-error { color:#ffaaa4; overflow-wrap:anywhere; }
#reseller-root dialog.modal { position:fixed; inset:0; width:min(530px, calc(100% - 32px)); max-width:calc(100% - 32px); max-height:calc(100dvh - 32px); height:auto; padding:0; margin:auto; border:1px solid #383838; border-radius:30px; background:#111111; color:#fff; overflow:auto; transform:none; box-shadow:0 24px 100px rgb(0 0 0 / .5); }
#reseller-root dialog.modal:not([open]) { display:none; }
#reseller-root dialog.modal[open] { display:block; }
#reseller-root dialog::backdrop { background:rgb(0 0 0 / .78); }
#reseller-root .modal-card { display:block; width:100%; max-width:none; max-height:none; padding:28px; margin:0; border:0; background:#111111; color:#fff; box-shadow:none; }
#reseller-root .modal-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 0 24px; border:0; }
#reseller-root .modal-header h2 { margin:0; color:#fff; font-size:23px; font-weight:850; overflow-wrap:anywhere; }
#reseller-root .modal-close { width:42px; height:42px; flex-shrink:0; padding:0; border:1px solid #282828; border-radius:50%; background:transparent; color:#fff; font-size:26px; cursor:pointer; }
#reseller-root .reseller-form { grid-template-columns:minmax(0, 1fr) minmax(0, .6fr); padding:0; gap:20px 16px; align-items:start; }
#reseller-root .reseller-form label { font-size:14px; color:#d8d8d8; }
#reseller-root .reseller-form input { min-height:48px; padding:12px 16px; border:1px solid #282828; border-radius:22px; background:#080808; color:#fff; font-size:17px; font-weight:650; }
#reseller-root .reseller-total, #reseller-root #reseller-create, #reseller-root #reseller-create-error { grid-column:1 / -1; }
#reseller-root .reseller-total { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
#reseller-root .reseller-result-body { padding:0; }
#reseller-root .reseller-result-body textarea { background:#080808; color:#fff; white-space:pre; }
#reseller-root .modal-actions { display:flex; padding:20px 0 0; border:0; }
#reseller-root .reseller-detail-fields { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin:24px 0 0; }
#reseller-root .reseller-detail-fields dt { color:#c1c1c1; font-size:13px; }
#reseller-root .reseller-detail-fields dd { margin:5px 0 0; font-size:20px; font-weight:800; overflow-wrap:anywhere; }
#reseller-root #reseller-detail-code { overflow-wrap:anywhere; }
#reseller-root #reseller-detail-customer-area { grid-column:1 / -1; }
#reseller-root .reseller-payments { margin:0; padding:24px; border:1px solid #282828; border-radius:28px; background:#111111; min-width:0; }
#reseller-root .reseller-payments h2, #reseller-root .reseller-payments h3 { color:#fff; font-weight:850; }
#reseller-root .reseller-payments select, #reseller-root .reseller-payment-form input { border-color:#282828; border-radius:22px; background:#080808; color:#fff; }
#reseller-root .reseller-payment-form { grid-template-columns:minmax(0, 1fr) auto; }
#reseller-root .reseller-payment-form > button[type=submit] { grid-column:1 / -1; justify-self:start; }
#reseller-root .reseller-payment-row strong { font-size:19px; font-weight:800; }
#reseller-root .reseller-payment-row a { color:#ff792e; font-weight:800; }
@media (max-width:700px) {
  #reseller-root .reseller-payment-form { grid-template-columns:minmax(0, 1fr); }
  #reseller-root .reseller-payments { padding:18px; }
}
@media (max-width:600px) {
  #reseller-root .reseller-summary { flex-direction:column; align-items:start; gap:18px; }
  #reseller-root .reseller-summary-actions { justify-items:start; }
  #reseller-root .reseller-tabs { gap:17px; }
  #reseller-root [role=tab] { font-size:13px; }
  #reseller-root .reseller-section-heading { align-items:start; gap:16px; }
  #reseller-root .reseller-section-heading h2 { font-size:22px; }
  #reseller-root .reseller-section-heading .button { font-size:13px; padding:10px 16px; }
  #reseller-root .reseller-search { padding:14px 16px; font-size:17px; }
  #reseller-root .reseller-table, #reseller-root .reseller-table tbody { display:block; }
  #reseller-root .reseller-table tr { grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); padding:18px 0; gap:12px; }
  #reseller-root .reseller-table td { padding:0; border:0; }
  #reseller-root .reseller-table td:first-child { grid-column:1 / -1; }
  #reseller-root .reseller-table td:first-child::before { display:none; }
  #reseller-root .reseller-history-row { grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:10px; }
  #reseller-root .reseller-history-row strong { font-size:14px; }
  #reseller-root .reseller-history-row > span { font-size:15px; text-align:right; }
  #reseller-root .reseller-history-row > small { grid-column:1 / -1; }
  #reseller-root dialog.modal { border-radius:26px; }
  #reseller-root .modal-card { padding:22px 18px; }
  #reseller-root .modal-header h2 { font-size:20px; }
  #reseller-root .reseller-form { gap:18px 12px; }
  #reseller-root .reseller-form label { font-size:13px; }
  #reseller-root .reseller-form input { padding:12px; }
}
