/* Whole-portal dark look, same palette as the Map Studio Contrast theme. Loaded last; Map Studio keeps its own
   id-scoped theme (nothing here selects inside #mapStudioRoot). Colours only: layout, sizes and behaviour unchanged.
   Status colours keep their meaning (applied = green, available = red, selected = blue, detected = amber). */
:root{--pd-bg:#0a0a0b;--pd-shell:#111113;--pd-panel:#151517;--pd-raised:#1d1d20;--pd-hover:#26262b;--pd-border:#2e2e33;--pd-border2:#3b3b41;
 --pd-text:#f5f5f6;--pd-muted:#b9b9bf;--pd-faint:#8d8d95;--pd-accent:#c62a31;--pd-blue:#2f6fd6;--pd-blue-text:#8ab4ff;--pd-gold:#f5cd62;--pd-green:#6fd18a;--pd-red:#ff6b6b;color-scheme:dark}
html,body{background:var(--pd-bg)!important;color:var(--pd-text)!important}

/* Shell */
#appView.app-shell,.app-shell,.main{background:var(--pd-bg)!important;color:var(--pd-text)!important}
.sidebar{background:var(--pd-shell)!important;border-color:var(--pd-border)!important;color:var(--pd-text)!important}
.sidebar :is(p,small,.eyebrow,.nav-label,h4){color:var(--pd-faint)!important}
.nav-item{background:transparent!important;color:#d6d6da!important;border-color:transparent!important;box-shadow:none!important}
.nav-item span{color:inherit!important}
.nav-item:hover{background:var(--pd-raised)!important;color:#fff!important}
.nav-item.active{background:#2a2a30!important;color:#fff!important;box-shadow:inset 3px 0 var(--pd-accent)!important}
.server-mini{background:var(--pd-panel)!important;border-color:var(--pd-border)!important;color:var(--pd-muted)!important}
.topbar{background:var(--pd-shell)!important;border-color:var(--pd-border)!important;color:var(--pd-text)!important;box-shadow:none!important}
.topbar :is(h1,h2,h3,#viewTitle){color:#fff!important}
:is(.eyebrow,.kicker):not(#mapStudioRoot *){color:var(--pd-faint)!important}
.language-control span{color:var(--pd-faint)!important}

/* Credit tiles and user */
.credit-card{background:var(--pd-panel)!important;border-color:var(--pd-border)!important;box-shadow:inset 0 3px var(--pd-blue)!important;color:var(--pd-text)!important}
.credit-card :is(span,small){color:var(--pd-muted)!important}
.credit-card strong{color:var(--pd-blue-text)!important}
.credit-card.paid-credit-card{box-shadow:inset 0 3px #e4d327!important}
.credit-card.paid-credit-card strong{color:#f1e46b!important}
.credit-card.gold{box-shadow:inset 0 3px var(--pd-gold)!important}
.credit-card.gold strong{color:var(--pd-gold)!important}
#userInitial{background:#2a2a30!important;color:#fff!important;border-color:var(--pd-border2)!important}
.user-pill{color:var(--pd-text)!important}
.user-pill :is(small,#userPlan){color:var(--pd-muted)!important}

/* Panels and cards */
:is(.panel,.empty-card,.auth-card,.billing-balance,.billing-history,.support-panel,.support-context,.response-summary,.response-empty,.credit-package,
 .credit-package-loading,.file-bar,.status-chip,.response-auto-state,fieldset.support-fixes):not(#mapStudioRoot *){background:var(--pd-panel)!important;border-color:var(--pd-border)!important;color:var(--pd-text)!important;box-shadow:none!important}
:is(.panel,.empty-card,.auth-card,.support-panel,.response-empty,.billing-balance,.billing-history):not(#mapStudioRoot *) :is(h1,h2,h3,h4,b,strong,legend){color:#fff!important}
:is(.panel,.empty-card,.auth-card,.support-panel,.response-empty,.billing-balance,.billing-history,.dropzone,.file-bar):not(#mapStudioRoot *) :is(p,small,.muted,.hint,figcaption){color:var(--pd-muted)!important}
.dropzone{background:var(--pd-shell)!important;border-color:var(--pd-border2)!important;color:var(--pd-text)!important}
.dropzone :is(h3,b){color:#fff!important}
.dropzone:is(:hover,.dragover,.is-dragover){border-color:var(--pd-blue)!important;background:#12192a!important}
:is(.upload-icon,.file-symbol){background:var(--pd-raised)!important;color:#fff!important;border-color:var(--pd-border2)!important}

/* Buttons, badges, toasts */
:is(.btn-secondary,.btn-ghost,.btn-outline):not(#mapStudioRoot *){background:var(--pd-raised)!important;color:#f2f2f3!important;border-color:var(--pd-border2)!important}
:is(.btn-secondary,.btn-ghost,.btn-outline):not(#mapStudioRoot *):hover:not(:disabled){background:#2a2a30!important;color:#fff!important}
.btn-primary:not(#mapStudioRoot *){border-color:transparent!important}
.btn:not(#mapStudioRoot *):disabled{opacity:.55!important}
.badge.neutral:not(#mapStudioRoot *){background:#232326!important;color:#d6d6da!important;border-color:var(--pd-border2)!important}
.badge.success:not(#mapStudioRoot *){background:#10261a!important;color:#9fe7b4!important;border-color:#2c6b44!important}
.toast{background:var(--pd-raised)!important;color:var(--pd-text)!important;border-color:var(--pd-border2)!important}
.toast.error{background:#3b0d12!important;color:#ffc2c6!important;border-color:#7a2028!important}
.toast.ok,.toast.success{background:#10261a!important;color:#b6f0c7!important;border-color:#2c6b44!important}

/* Form controls and tables outside Map Studio */
:is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea):not(#mapStudioRoot *){background:var(--pd-shell)!important;color:var(--pd-text)!important;border-color:var(--pd-border2)!important}
:is(input,textarea):not(#mapStudioRoot *)::placeholder{color:var(--pd-faint)!important;opacity:1}
select:not(#mapStudioRoot *) option{background:var(--pd-panel);color:var(--pd-text)}
:is(input[type=checkbox],input[type=radio]):not(#mapStudioRoot *){accent-color:var(--pd-blue)}
:is(label,legend):not(#mapStudioRoot *){color:var(--pd-text)}
table:not(#mapStudioRoot *) th{background:#1a1a1d!important;color:#d6d6da!important;border-color:var(--pd-border)!important}
table:not(#mapStudioRoot *) td{border-color:#2a2a2e!important;color:#e6e6e9!important}
table:not(#mapStudioRoot *) tbody tr:hover td{background:#18181b!important}
:is(:not(#mapStudioRoot *)):focus-visible{outline-color:var(--pd-blue-text)}

/* Fix cards: dark tints with the production meaning — applied = red neon, available/detected = blue, beta = yellow */
.feature{background:#1a1a1d!important;border-color:#3b3b41!important;color:var(--pd-text)!important}
.feature:not(.applied):not(.available):not(.detected):not(.selected):not(.beta-selectable):not(.beta-selected){box-shadow:none!important}
.feature .feature-copy b{color:#fff!important}
.feature .feature-copy span{color:var(--pd-muted)!important}
.feature-icon{background:#232326!important;color:#e6e6e9!important;border-color:var(--pd-border2)!important}
.feature:not(.applied):hover{border-color:#5a5a62!important}
.feature:is(.disabled,.unavailable):not(.applied){background:#141416!important;border-color:#2e2e33!important}
.feature:is(.disabled,.unavailable):not(.applied) .feature-copy :is(b,span){color:var(--pd-faint)!important}
.feature:is(.available,.detected,.selected):not(.applied){background:#0f1d33!important;border-color:var(--pd-blue)!important;box-shadow:inset 6px 0 var(--pd-blue)!important}
.feature:is(.available,.detected,.selected):not(.applied) .feature-icon{background:#163061!important;color:#cfe0ff!important;border-color:var(--pd-blue)!important}
.feature:is(.available,.detected,.selected):not(.applied) .feature-copy span{color:#b7cdf0!important}
.feature.available.selected:not(.applied) .feature-icon{background:#2e77c3!important;color:#fff!important}
.feature.applied{background:linear-gradient(100deg,#2c0a10,#1d0b0e)!important;border-color:#ff3352!important}
.feature.applied .feature-icon{background:#d9002b!important;color:#fff!important;border-color:#ff3352!important}
.feature.applied .feature-copy b{color:#ffd0d8!important}
.feature.applied .feature-copy span{color:#ff8095!important}
.feature.beta-selectable{background:#2a2410!important;border-color:#b49300!important;box-shadow:inset 5px 0 #d1aa00!important}
.feature.beta-selected{background:#3a3110!important;border-color:#e0c51e!important;box-shadow:inset 5px 0 #e0c51e!important}

/* Support chips and notices */
.support-fix-chip{background:#1a1a1d!important;color:#f2f2f3!important;border-color:var(--pd-border2)!important}
.support-fix-chip>span{background:#26262b!important;color:#d6d6da!important;border-color:var(--pd-border2)!important}
.support-fix-chip:hover{border-color:#5a5a62!important}
.support-fix-chip.selected{background:#10213d!important;border-color:var(--pd-blue)!important;color:#fff!important}
.support-fix-chip.selected>span{background:var(--pd-blue)!important;color:#fff!important}
.support-gold-notice{background:#2a2210!important;color:#f3d98d!important;border-color:#9a7a22!important}
.support-gold-notice.ok{background:#10261a!important;color:#a6f0bf!important;border-color:#2c6b44!important}

/* Login / registration */
#loginView{background:var(--pd-bg)!important;color:var(--pd-text)!important}
#loginView :is(.auth-side,.auth-hero,.login-hero,.brand-panel){background:var(--pd-shell)!important;color:var(--pd-text)!important;border-color:var(--pd-border)!important}

/* Fine contrast fixes found by the per-view scan */
.auth-shell{background:var(--pd-bg)!important}
.auth-brand{background:var(--pd-shell)!important;border-color:var(--pd-border)!important;color:var(--pd-text)!important}
.auth-brand :is(.auth-lead,.auth-points span){color:var(--pd-muted)!important}
.auth-brand .eyebrow{color:#e4d327!important}
.auth-brand :is(h1,h1 strong){color:#fff!important}
.auth-points b{color:#e4d327!important}
:is(.subtle-link,.auth-link-button):not(#mapStudioRoot *){color:#c9c9d0!important}
.status-chip{color:#a6f0bf!important}
.side-brand,.side-brand div{color:#fff!important}
.side-brand strong{color:#e4d327!important}
:is(.server-mini,.server-status-en,.server-status-pl){color:var(--pd-muted)!important}
#userEmail{color:#fff!important}
.section-title p:not(.eyebrow){color:var(--pd-muted)!important}
.section-title :is(h1,h2){color:#fff!important}
.dial span{color:var(--pd-muted)!important}
.dial strong{color:#fff!important}
.pipeline :is(b,li b){color:#f2f2f3!important}
.pipeline span{color:var(--pd-muted)!important}
.pipeline li>i{background:#26262b!important;border-color:#5a5a62!important}
.pipeline li.active>i{background:var(--pd-blue)!important;border-color:var(--pd-blue-text)!important}
.pipeline li:is(.done,.complete,.ok)>i{background:#2f8f55!important;border-color:#6fd18a!important}
#dtcCount{color:var(--pd-muted)!important}
.console-panel{background:var(--pd-panel)!important}
.console-head{color:var(--pd-muted)!important;border-color:var(--pd-border)!important}
.console-head i{background:#26262b!important}
.console{background:#0d0d0f!important;color:#e6e6e9!important;border-color:var(--pd-border)!important}
.console .time{color:#a9a9b1!important}
#clearLogBtn{background:var(--pd-raised)!important;color:#f2f2f3!important;border-color:var(--pd-border2)!important}
.empty-card span,.response-empty span{color:var(--pd-muted)!important}
.response-empty>span:first-child,.empty-card>span:first-child{background:#1d1d20!important;border-color:var(--pd-border2)!important}
.response-auto-state :is(b,span){color:#a6f0bf!important}
.response-auto-state i{background:#2f8f55!important}
.response-summary span{color:var(--pd-muted)!important}
.response-summary :is(b,strong){color:#fff!important}
.billing-balance span{color:var(--pd-muted)!important}
.billing-balance strong{color:var(--pd-blue-text)!important}
.support-attachment-note{color:var(--pd-muted)!important}
.live-dot{box-shadow:0 0 0 3px #10261a!important}

/* Gradients and pseudo-elements the element scan cannot see */
.sidebar nav:before{color:var(--pd-faint)!important}
.dial{background:conic-gradient(var(--pd-blue) var(--progress,0%),#26262b 0)!important}
.dial:before{background:var(--pd-panel)!important;border-color:var(--pd-border2)!important}
.feature .feature-state{background:#3b3b41!important;border-color:#5a5a62!important;box-shadow:none!important}
.feature .feature-state:after{background:#d6d6da!important}
.feature.available:not(.applied) .feature-state{background:#d7c329!important;border-color:#8c7600!important}
.feature.available:not(.applied) .feature-state:after{background:#fff!important}
.feature.selected:not(.available):not(.applied) .feature-state{background:#d7c329!important;border-color:#8c7600!important}
.feature.available.selected:not(.applied) .feature-state{background:#3f8f47!important;border-color:#6fd18a!important}
.feature.selected:not(.applied) .feature-state:after{background:#fff!important}
.feature.applied .feature-state{background:#e0002b!important;border-color:#7d0018!important;box-shadow:0 0 10px rgba(255,18,58,.75)!important}
.feature.applied .feature-state:after{background:#fff!important}

/* DTC table toggles (ON = dark track, OFF keeps its yellow signal colour) */
#dtcRows input[type="checkbox"]{border-color:#5a5a62!important;background:#2a2a30!important;box-shadow:none!important}
#dtcRows input[type="checkbox"]:before{color:#c9c9d0!important}
#dtcRows input[type="checkbox"]:after{background:#d6d6da!important}
#dtcRows input[type="checkbox"]:checked{border-color:#c1a911!important;background:#e0c51e!important}
#dtcRows input[type="checkbox"]:checked:before{color:#2a2400!important}
#dtcRows input[type="checkbox"]:checked:after{background:#fff!important}
#dtcRows .status-unknown{color:#e8c25a!important}

/* Support messages and metadata use the same dark surfaces as the workspace. */
#fileResponseView .response-card dl>div,#fileResponseView .response-chat,
#fileResponseView .response-chat-message{background:var(--pd-panel)!important;border-color:var(--pd-border)!important;color:var(--pd-text)!important}
#fileResponseView .response-chat>header,#fileResponseView .response-chat-compose{background:var(--pd-raised)!important;border-color:var(--pd-border)!important;color:var(--pd-text)!important}
#fileResponseView .response-card dd,#fileResponseView .response-chat-message p{color:var(--pd-text)!important}
#fileResponseView .response-card dt,#fileResponseView .response-chat-message time,#fileResponseView .response-chat-compose small{color:var(--pd-muted)!important}
#fileResponseView .response-chat-message.own{background:#172335!important}
#fileResponseView .response-chat-message b,#fileResponseView .response-chat-attachment{color:var(--pd-blue-text)!important}
#fileResponseView .response-chat-attachment,#fileResponseView .response-status,#fileResponseView .response-file-icon,#fileResponseView .response-file-download{background:#18291f!important;border-color:#315b40!important;color:var(--pd-green)!important}
#fileResponseView input[type=file]{color:var(--pd-muted)!important}
#fileResponseView input[type=file]::file-selector-button{background:var(--pd-hover);color:var(--pd-text);border:1px solid var(--pd-border2);border-radius:6px;padding:6px 10px}
.support-ticket-list{margin-top:20px}.support-ticket{display:flex;flex-direction:column;gap:5px;width:100%;text-align:left;padding:14px;margin-top:8px;background:var(--pd-panel);color:var(--pd-text);border:1px solid var(--pd-border);border-radius:8px;cursor:pointer}.support-ticket:hover{background:var(--pd-hover)}.support-ticket small{color:var(--pd-muted)!important}
