/* JPRAXC Super Admin Console — the Sales Portal's chrome, laid over console.css and the
   shared partners-theme.css (loaded last). The staff portal's sidebar, top bar with the
   page crumb, stat cards, panel tables, pills and dark mode, on the console's own classes. */
:root{--side:282px}

/* ---------- Sidebar: the portal's measures ---------- */
.dev-side{width:var(--side);padding:23px 17px;background-color:var(--jp-surface);background-image:radial-gradient(at 0 100%,rgba(211,163,77,.043),transparent 55%)}
.dev-brand{gap:12px;padding:0 5px 23px;border-bottom:1px solid var(--jp-line)}
.dev-brand img{width:44px;height:44px;object-fit:contain}
.dev-brand strong{font-size:14px;font-weight:700;color:var(--jp-ink)}
.dev-brand span{font-size:12px;letter-spacing:.02em;color:var(--jp-muted)}
.dev-brand .brand-tagline{font-size:9px;letter-spacing:.14em;color:var(--jp-gold)}
.dev-nav{margin-top:18px}
.nav-group{gap:5px;margin:0 0 6px}
.nav-group>small{display:block;margin:16px 5px 4px;font-size:10px;font-weight:760;letter-spacing:.14em;text-transform:uppercase;color:var(--jp-muted)}
.dev-nav button{min-height:46px;gap:10px;padding:0 12px;border-radius:12px;font-size:14px;font-weight:700;color:var(--jp-primary)}
.dev-nav button:hover{color:var(--jp-primary);background:var(--jp-canvas)}
.dev-nav button.active{background:var(--jp-tint);box-shadow:inset 3px 0 var(--jp-gold)}
.dev-nav i{width:29px;height:29px;flex-basis:29px;border-radius:10px;background:transparent;color:var(--jp-primary)}
.dev-side .btn,.dev-side .product-management-link{margin:12px 5px 0}
.dev-user{margin:auto 5px 0;padding:12px;border:1px solid var(--jp-line);border-top:1px solid var(--jp-line);border-radius:12px;background:var(--jp-canvas)}
.dev-user small{font-size:10px;font-weight:760;letter-spacing:.14em;text-transform:uppercase;color:var(--jp-muted)}
.dev-user strong{font-size:13px;color:var(--jp-ink)}
.dev-user span{font-size:12px;color:var(--jp-muted)}

/* ---------- Top bar: the page crumb and the portal's actions ---------- */
.dev-top{height:78px;gap:14px;padding:0 28px;background:var(--jp-surface);border-bottom:1px solid var(--jp-line);box-shadow:inset 0 2px 0 rgba(211,163,77,.4)}
.dev-top>img,.dev-top>strong{display:none}
.dev-crumb{min-width:0;display:grid;gap:3px}
.dev-crumb p{margin:0;font-size:11px;font-weight:760;letter-spacing:.14em;text-transform:uppercase;color:var(--jp-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dev-crumb h1{margin:0;font-size:22px;font-weight:700;letter-spacing:-.04em;color:var(--jp-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dev-top-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto}
.dev-theme-toggle{width:42px;height:42px;display:grid;place-items:center;padding:10px;border:1px solid var(--jp-line-strong);border-radius:10px;background:var(--jp-surface);color:var(--jp-primary);cursor:pointer}
.dev-theme-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dev-theme-toggle:hover{background:var(--jp-tint)}
.developer-only{min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;border-radius:999px;font-size:11px;font-weight:700}
.idle-box{min-height:40px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--jp-line-strong);border-radius:10px;background:var(--jp-surface);color:var(--jp-ink)}
.idle-box small{font-size:10px;color:var(--jp-muted)}
.idle-box strong{font-size:13px;font-variant-numeric:tabular-nums}

/* The page heading keeps its description and action; its title lives in the top bar. */
.heading{align-items:center;margin-bottom:22px}
.heading small,.heading h1{display:none}
.heading p{margin:0;font-size:14px;line-height:1.55;color:var(--jp-muted)}

/* ---------- Cards, stats, tables, pills ---------- */
.stats{gap:16px;margin-bottom:24px}
.stat{min-height:118px;padding:18px;border-radius:17px;box-shadow:none}
.stat span{font-size:10px;font-weight:730;letter-spacing:.06em;text-transform:uppercase;color:var(--jp-muted)}
.stat strong{margin:8px 0 5px;font-size:38px;font-weight:800;letter-spacing:0;color:var(--jp-primary)}
.stat small{font-size:13px;color:var(--jp-muted)}
.card{padding:23px;border-radius:16px;box-shadow:0 6px 22px rgba(65,12,27,.043)}
.card h2{font-size:18px;font-weight:700;letter-spacing:-.02em}
.card>p,.card-note{font-size:13px;color:var(--jp-muted)}
.dev-content table{width:100%;border-collapse:collapse}
.dev-content th{padding:14px 12px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:left;color:var(--jp-muted);background:var(--jp-canvas);border-bottom:1px solid var(--jp-line)}
.dev-content td{padding:14px 12px;font-size:14px;border-bottom:1px solid var(--jp-line)}
.dev-content table.compact th{padding:11px 10px;font-size:11px}
.dev-content table.compact td{padding:11px 10px;font-size:13px}
.status{padding:6px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.03em}
.btn{min-height:44px;border-radius:12px;font-size:13px}
.btn.compact{min-height:40px;font-size:12px}
.btn.secondary{border-color:var(--jp-line-strong);color:var(--jp-primary);background:var(--jp-surface)}
.btn.secondary:hover:not(:disabled){background:var(--jp-tint)}

/* ---------- Dark mode: the console surfaces the shared theme does not name ---------- */
html[data-theme=dark]{color-scheme:dark}
html[data-theme=dark] body{background:var(--jp-canvas);color:var(--jp-ink)}
html[data-theme=dark] :is(.dev-side,.dev-top,.dev-subnav,.card,.stat,.dialog-card,.credential-sheet,.result-card,.school-result,.security-summary,.tenant-provision,.purchase-card,.console-line-card,.update-live-card,.provider-card,.provider-connection,.idle-box,.dev-theme-toggle,.control-captcha-card,.control-captcha-question,.login-form){background:var(--jp-surface);color:var(--jp-ink);border-color:var(--jp-line)}
html[data-theme=dark] .dev-side{background-image:none}
html[data-theme=dark] :is(.dev-subnav nav button,.dev-nav button){color:var(--jp-ink)}
html[data-theme=dark] :is(.dev-subnav nav button.active,.dev-nav button.active){background:var(--jp-tint);color:var(--jp-link)}
html[data-theme=dark] :is(.dev-nav i,.dev-subnav nav i,.dev-crumb p,.dev-user button,.btn.secondary,.dev-theme-toggle){color:var(--jp-link)}
html[data-theme=dark] :is(.dev-crumb h1,.heading h1,.card h2,.card h3,.card h4,.stat span,.dev-brand strong,.dev-user strong,.dev-subnav h2,.dev-subnav strong,.dialog-card h2,.dialog-card h3){color:var(--jp-ink)}
html[data-theme=dark] :is(.stat strong,.card h2 b,.mono){color:var(--jp-link)}
html[data-theme=dark] :is(.dev-content th){background:var(--jp-canvas);color:var(--jp-muted)}
html[data-theme=dark] :is(.dev-content td,.card p,.card li,.card dd,.card dt,.heading p,.stat small,.card-note,.muted,.dev-brand span,.dev-user span,.nav-group>small,.idle-box small,.dev-subnav small){color:var(--jp-muted)}
html[data-theme=dark] :is(.dev-content td,.card p,.card li,.card dd){color:var(--jp-ink)}
html[data-theme=dark] :is(.dev-user,.dev-subnav header,.tenant-provision){background:var(--jp-canvas)}
html[data-theme=dark] :is(input,select,textarea):not([type=checkbox]):not([type=radio]){background:var(--jp-canvas);color:var(--jp-ink);border-color:var(--jp-line-strong)}
html[data-theme=dark] :is(input,select,textarea)::placeholder{color:var(--jp-muted)}
html[data-theme=dark] label{color:var(--jp-ink)}
html[data-theme=dark] .btn.secondary{background:var(--jp-surface);border-color:var(--jp-line-strong)}
html[data-theme=dark] .btn.primary{background:var(--jp-primary);color:#fff}
html[data-theme=dark] .dialog{background:rgba(12,6,9,.78)}
html[data-theme=dark] .status{filter:saturate(.9) brightness(1.15)}
html[data-theme=dark] .developer-only{background:#1f3a2c;border-color:#2f5a42;color:#bfe9d0}
html[data-theme=dark] .toast-stack>*{background:var(--jp-surface);color:var(--jp-ink);border:1px solid var(--jp-line)}
html[data-theme=dark] :is(.card,.dialog-card) a{color:var(--jp-link)}

/* Dark: the surfaces console.css paints white or near-white. */
html[data-theme=dark] :is(table,thead,tbody,tr,td){background-color:transparent}
html[data-theme=dark] :is(th){background:var(--jp-canvas)}
html[data-theme=dark] tr.is-suspended td{background:var(--jp-note)}
html[data-theme=dark] :is(.dev-subnav nav button,.school-result,.result-scroll,.school-results,.recycle-results,.recycle-row,.purchase-card,.tenant-form,.tenant-strip,.credential-grid>div,.migration-strip>div,.purchase-request-previews details,.purchase-request-previews pre,.school-credentials,.school-credentials dl,.school-credentials dl>div,.password-field,.password-field button,.btn.tertiary,.btn.danger-outline,.control-captcha-tools button,.control-captcha-actions button,.dlt-step-no,.console-line-card.is-down){background:var(--jp-surface);color:var(--jp-ink);border-color:var(--jp-line)}
html[data-theme=dark] .dev-subnav nav button.active{background:var(--jp-tint);border-color:var(--jp-line-strong)}
html[data-theme=dark] .dev-subnav nav button :is(strong){color:var(--jp-ink)}
html[data-theme=dark] .dev-subnav nav button :is(small){color:var(--jp-muted)}
html[data-theme=dark] .dev-subnav nav button i{background:var(--jp-canvas);color:var(--jp-link)}
html[data-theme=dark] .dev-subnav nav button.active i{background:var(--jp-primary);color:#fff}
html[data-theme=dark] :is(.credential-warning,.notice,.warn-panel,.error-panel,.destructive-notice,.login-delivery-warning,.purchase-invoice-strip,.credential-print-options,.metric.warn,.idle-box.warning){background:var(--jp-note);color:var(--jp-ink);border-color:var(--jp-line-strong)}
html[data-theme=dark] :is(.credential-warning,.notice,.warn-panel,.error-panel) :is(p,small,strong,b){color:var(--jp-ink)}
html[data-theme=dark] :is(.credential-warning,.warn-panel,.error-panel) :is(h2,h3,h4,summary){color:var(--jp-link)}
html[data-theme=dark] .dev-content :is(dt,small.muted,.muted){color:var(--jp-muted)}
html[data-theme=dark] .dev-content :is(dd,strong,b,.mono){color:var(--jp-ink)}
html[data-theme=dark] .dev-content .mono{color:var(--jp-link)}
html[data-theme=dark] :is(.stat span,.card>header small){color:var(--jp-muted)}

@media(max-width:980px){:root{--side:282px}.dev-crumb h1{font-size:19px}}
@media(max-width:600px){.dev-top{height:auto;flex-wrap:wrap;padding:12px 16px}.dev-top-actions{width:100%;margin-left:0}.dev-crumb h1{font-size:18px;white-space:normal}}
