/* Provider Portal — Advertising Control visual language, applied portal-wide */
:root{--bg:#080b12;--sidebar:#0b0f18;--panel:#101623;--panel2:#161d2c;--line:#1e2635;--line2:#2a3549;--text:#e7eaf0;--muted:#8b93a7;--cyan:#22d3ee;--green:#34d399;--amber:#f5b133;--red:#ef4444;--shadow:none}
html{font-size:118%}
body{background:var(--bg);color:var(--text);font-size:16.5px}
.portal-shell{grid-template-columns:292px minmax(0,1fr)}

/* Sidebar */
.portal-sidebar{background:var(--sidebar);border-right:1px solid var(--line)}
.portal-brand{border-bottom:1px solid var(--line)}
.portal-provider{background:var(--panel);border:1px solid var(--line);border-radius:10px}
.portal-provider-logo{border-radius:8px}
.nav-group{border-top:1px solid var(--line)}
.nav-label{color:var(--muted)}
.nav-sections a{color:var(--muted);border-left:0;border-radius:8px;font-weight:600}
.nav-sections a:hover{background:var(--panel);box-shadow:none;color:var(--text)}
.nav-sections a.active,.nav-sections a.nav-home.active{background:rgba(34,211,238,.1);color:var(--cyan);border-left:0;box-shadow:none;font-weight:700}
.nav-home{background:none;border-left:0!important;color:var(--muted)!important}
.nav-home.active{color:var(--cyan)!important;background:rgba(34,211,238,.1)}
.nav-sections a.nav-commercial{color:var(--muted)}
.nav-sections a.nav-commercial .ico{color:var(--cyan)}
.nav-sections a.nav-commercial.active{color:var(--cyan)}
.portal-sidebar-foot{border-top:1px solid var(--line)}

/* Top bar and page chrome */
.portal-topbar{background:transparent;backdrop-filter:none;border-bottom:1px solid var(--line)}
.portal-kicker,.eyebrow{color:var(--cyan)}
.portal-topbar h1{font-size:1.6rem}
.portal-top-actions>a{border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text)}
.build-badge{border-radius:8px}
.portal-live-pill{background:rgba(52,211,153,.08);border:1px solid rgba(52,211,153,.3);color:var(--green);border-radius:8px}
.portal-live-pill i{background:var(--green)}
.portal-live-pill.is-pending{background:rgba(245,177,51,.08);border-color:rgba(245,177,51,.35);color:var(--amber)}
.portal-flash{border-radius:10px;background:var(--panel);border-color:var(--line);color:var(--text)}
.portal-flash.success{background:rgba(52,211,153,.08);border-color:rgba(52,211,153,.3);color:#8fe9c4}
.portal-flash.error{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.35);color:#ffb3b5}
.portal-welcome h2,.page-intro h2,.section-heading h2,.advertising-hero h2{letter-spacing:-.02em}
.portal-welcome p,.page-intro p,.advertising-hero p{color:var(--muted)}

/* Buttons */
.button{border-radius:8px;border:1px solid var(--cyan);background:var(--cyan);color:#080b12;font-weight:800;letter-spacing:0}
.button:hover{filter:brightness(1.08)}
.button.secondary{background:var(--panel2);border-color:var(--line2);color:var(--text)}
.commercial-button{background:var(--cyan);border-color:var(--cyan);color:#080b12;box-shadow:none}
.deal-actions button.delete-action,.campaign-actions button.delete-action{color:var(--red)}

/* Cards and panels */
.portal-card,.pl-product-card,.deal-card,.primary-actions>a,.account-card,.help-card,.mascot-support,.status-card,.attention-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:none}
.portal-card{overflow:hidden}
.primary-actions>a{background:var(--panel)}
.primary-actions>a:hover{border-color:var(--cyan);transform:none}
.primary-actions>a>span{border-radius:10px;background:rgba(34,211,238,.1);border-color:rgba(34,211,238,.35);color:var(--cyan)}
.primary-actions small,.primary-actions div>b{color:var(--cyan)}
.primary-actions>a.commercial{background:var(--panel);border-color:var(--line)}
.primary-actions>a.commercial>span{background:rgba(34,211,238,.1);border-color:rgba(34,211,238,.35);color:var(--cyan)}
.primary-actions>a.commercial small,.primary-actions>a.commercial div>b{color:var(--cyan)}
.advertising-hero{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:none}
.pl-hero-visual{background:var(--panel2);border:1px solid var(--line);border-radius:10px}
.mascot-support{background:var(--panel)}
.empty-state{color:var(--muted)}

/* KPI / stat cards */
.portal-kpis{gap:16px}
.portal-kpi{background:var(--panel);border:1px solid var(--line);border-radius:12px;min-height:118px}
.portal-kpi:before{display:none}
.portal-kpi:hover{border-color:var(--cyan);background:var(--panel)}
.portal-kpi-label{color:var(--muted)}
.portal-kpi strong{font-size:1.9rem}
.portal-kpi small{color:var(--muted)}
.portal-kpi.status-live strong{color:var(--green)}
.portal-kpi.status-attention strong{color:var(--amber)}

/* Status pills, chips, meters */
.status-pill{border-radius:999px;background:var(--panel2);border-color:var(--line2);color:var(--muted)}
.status-pill.live{background:rgba(52,211,153,.1);border-color:rgba(52,211,153,.35);color:var(--green)}
.status-pill.pending{background:rgba(245,177,51,.1);border-color:rgba(245,177,51,.35);color:var(--amber)}
.status-meter{border-radius:999px;background:var(--panel2);border-color:var(--line);overflow:hidden}
.status-meter span{background:var(--cyan);box-shadow:none}
.chip-row>span{border-radius:6px;background:var(--panel2);border-color:var(--line2);color:var(--text)}
.attention-item{background:var(--panel2);border:0;border-radius:10px}
.review-note{border-radius:6px;background:rgba(34,211,238,.08);border-color:rgba(34,211,238,.3);color:var(--cyan)}
.pending-banner{border-radius:10px}
.completion-ring:before{background:var(--panel)}
.completion-ring{background:conic-gradient(var(--cyan) calc(var(--value)*1%),var(--panel2) 0)}

/* Profile preview */
.profile-preview-body,.preview-hero,.preview-grid>div,.trustpilot-summary>div,.source-url,.booking-summary,.selected-game-details a,.portal-override-grid article{background:var(--panel2);border:1px solid var(--line);border-radius:10px}
.profile-logo{border-radius:10px}
.full-profile-preview{padding:26px}

/* Listing tabs + forms */
.listing-tabs{background:transparent;border:0;border-bottom:1px solid var(--line);gap:4px}
.listing-tabs a{border-radius:0;color:var(--muted);font-weight:600;padding:14px 20px}
.listing-tabs a:hover{color:var(--text)}
.listing-tabs a.active{background:transparent;color:var(--cyan)}
.listing-tabs a.active:after{left:0;right:0;bottom:-1px;background:var(--cyan)}
.portal-form{border-radius:12px;padding:26px}
.listing-main>.portal-form{border-top-left-radius:0;border-top-right-radius:0}
.form-heading>span{color:var(--cyan)}
.form-grid label,.portal-form>label,.booking-form label{color:var(--muted)}
.form-grid label small,.file-field small{color:var(--muted)}
.portal-form input,.portal-form select,.portal-form textarea,.portal-override-grid input,.portal-override-grid select{background:#0b0f18;border:1px solid var(--line);border-radius:7px;color:var(--text)}
.portal-form input:focus,.portal-form select:focus,.portal-form textarea:focus{border-color:var(--cyan);box-shadow:none}
.portal-form input:disabled{background:var(--panel2);color:var(--muted)}
.portal-form fieldset{border:1px solid var(--line);border-radius:10px}
.form-actions{border-top:1px solid var(--line)}
.game-selector>label>span,.feature-selector label>span,.location-selector label>span,.mini-game-selector label>span{background:var(--panel2);border:1px solid var(--line);border-radius:8px}
.game-selector input:checked+span,.feature-selector input:checked+span,.location-selector input:checked+span,.mini-game-selector input:checked+span{border-color:var(--cyan);background:rgba(34,211,238,.08);box-shadow:none}
.feature-selector label:before{background:var(--sidebar);border-color:var(--line2);border-radius:4px}
.pricing-table,.campaign-table{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.pricing-head,.campaign-head{background:var(--panel2);color:var(--muted)}
.pricing-row,.campaign-row{border-top:1px solid var(--line)}
.listing-sidebar>.portal-card{padding:20px}
.check-list i{border-radius:4px}
.protected-data>span{color:var(--amber)}

/* Deals */
.deal-card-top>span:last-child{color:var(--cyan)}
.promo-code{border-radius:8px;background:var(--panel2);border-color:var(--line2)}
.promo-code b{color:var(--cyan)}
.deal-actions{border-top:1px solid var(--line)}
.deal-actions a,.campaign-actions>a{color:var(--cyan)}
.managed-note,.deal-meta{color:var(--muted)}

/* Account */
.account-card dl>div,.help-card>a{border-top:1px solid var(--line)}
.help-card>a>span{background:rgba(34,211,238,.1);border-color:rgba(34,211,238,.3);border-radius:8px;color:var(--cyan)}

/* Advertising wizard pieces */
.pl-visual{background:var(--panel2);border-bottom:1px solid var(--line)}
.surface-host_directory .pl-visual,.surface-game_page .pl-visual{background:var(--panel2)}
.availability{color:var(--green)}
.pl-copy a{color:var(--cyan)}
.pl-copy>div:last-child{border-top:1px solid var(--line)}
.game-pick,.slot-pick,.preset-card{background:var(--panel);border:1px solid var(--line);border-radius:12px}
.game-pick:has(input:checked),.slot-pick:has(input:checked),.preset-card:has(input:checked){border-color:var(--cyan);box-shadow:0 0 0 1px var(--cyan)}
.game-pick-art{background:var(--panel2)}
.slot-bar{background:rgba(16,22,35,.97);border:1px solid var(--line2);border-radius:12px}
.duration-pills span{background:#0b0f18;border:1px solid var(--line);border-radius:8px}
.duration-pills input:checked+span{border-color:var(--cyan);background:rgba(34,211,238,.1);box-shadow:none}
.game-pick-search input{background:#0b0f18;border:1px solid var(--line);border-radius:8px}
.preset-tick{background:var(--cyan);color:#080b12;border-radius:6px}
.wizard-steps li{border-top-color:var(--line)}
.wizard-steps li.done{border-top-color:#157c92}
.wizard-steps li.active{border-top-color:var(--cyan)}
.review-card{background:var(--panel);border:1px solid var(--line);border-radius:12px}
.review-pay{background:var(--cyan);border-color:var(--cyan);color:#080b12;border-radius:10px}
.confirm-pricing{border-radius:10px}
.preset-frame{border-radius:8px}

@media(max-width:900px){.portal-shell{display:block}}
.listing-tabs{overflow:visible;flex-wrap:wrap}
.game-pick.is-capped{opacity:.45;cursor:not-allowed}.game-pick-search span{white-space:nowrap}
.review-rows .review-sub{padding:2px 0 2px 18px}.review-rows .review-sub dt{font-size:.85rem}.review-rows .review-sub dd{font-weight:600}.slot-bar-selected b{display:block;max-width:34ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slot-bar button:disabled{opacity:.45;cursor:not-allowed}
