/* pk8m5w3 — PlaySlot premium SPA skin.
   Business logic remains in js_dist/api.php. These are visual-only rules. */
:root{
  color-scheme:dark;
  --gold:#F5B400;
  --gold-bright:#FFC533;
  --gold-deep:#C98A00;
  --green:#3ECf8E;
  --red:#ef5b6e;
  --text:#fff;
  --muted:#8c8c8c;
  --label:#777;
  --line:rgba(255,255,255,.07);
  --card-grad:linear-gradient(160deg,#161616,#0e0e0e);
  --bg-body:#050505;
  --bg-panel:linear-gradient(160deg,#161616,#0e0e0e);
  --bg-raised:#151515;
  --bg-input:#0e0e0e;
  --bg-hover:rgba(255,255,255,.045);
  --bg-active:rgba(245,180,0,.11);
  --border-color:rgba(255,255,255,.07);
  --text-primary:#fff;
  --text-secondary:#cfcfcf;
  --text-muted:#8c8c8c;
  --accent-color:#F5B400;
  --accent-hover:#FFC533;
  --accent-alt:#C98A00;
  --status-success:#3ECf8E;
  --status-warning:#F5B400;
  --status-danger:#ef5b6e;
  --status-info:#F5B400;
  --status-purple:#F5B400;
  --panel-shadow:0 1px 0 rgba(255,255,255,.03) inset,0 12px 30px rgba(0,0,0,.4);
}
html[data-pl-route] body{
  display:block!important;
  min-height:100vh;
  font-family:'Poppins',sans-serif!important;
  background:radial-gradient(120% 80% at 50% -10%,#0c0c0c,#050505 60%)!important;
  color:#fff!important;
  -webkit-font-smoothing:antialiased;
}
html[data-pl-route] #root{width:100%;min-height:100vh;}
html[data-pl-route] .pl-dashboard-vanta{opacity:0!important;}

/* Sidebar: identical PlaySlot reference structure, including promo/footer. */
html[data-pl-route] .ps-react-sidebar{width:236px!important;min-width:236px!important;background:linear-gradient(180deg,#0b0b0b,#070707)!important;border-right:1px solid var(--line)!important;padding:20px 14px 14px!important;box-shadow:none!important;}
html[data-pl-route] .ps-react-sidebar.rail{width:74px!important;min-width:74px!important;}
html[data-pl-route] .ps-react-sidebar .side-logo{height:42px;padding:4px 8px 2px!important;}
html[data-pl-route] .ps-react-sidebar .side-logo img{height:32px;width:auto;object-fit:contain;}
html[data-pl-route] .ps-react-sidebar .side-logo .bolt-only{height:30px;display:none;}
html[data-pl-route] .ps-react-sidebar .rail-btn{margin:10px 8px 12px!important;width:34px!important;height:30px!important;border-radius:8px!important;border:1px solid var(--line)!important;background:#131313!important;color:#9a9a9a!important;}
html[data-pl-route] .ps-react-sidebar .rail-btn:hover{color:var(--gold)!important;border-color:rgba(245,180,0,.35)!important;}
html[data-pl-route] .ps-react-sidebar .nav{display:flex;flex-direction:column;gap:3px;padding-top:0!important;}
html[data-pl-route] .ps-react-sidebar .nav-item{min-height:0!important;padding:10px 12px!important;border-radius:10px!important;background:transparent!important;color:#b0b0b0!important;font-size:13.5px!important;font-weight:500!important;gap:13px!important;}
html[data-pl-route] .ps-react-sidebar .nav-item:hover{background:rgba(255,255,255,.05)!important;color:#fff!important;}
html[data-pl-route] .ps-react-sidebar .nav-item.active{background:linear-gradient(90deg,rgba(245,180,0,.15),rgba(245,180,0,.02))!important;color:#fff!important;}
html[data-pl-route] .ps-react-sidebar .nav-item.active .ic,html[data-pl-route] .ps-react-sidebar .fly-item.active .dot{color:var(--gold)!important;}
html[data-pl-route] .ps-react-sidebar .nav-item.active:before{content:"";position:absolute;left:-14px;top:50%;transform:translateY(-50%);width:4px;height:22px;border-radius:0 4px 4px 0;background:var(--gold);box-shadow:0 0 12px rgba(245,180,0,.7);}
html[data-pl-route] .ps-react-sidebar .nav-group.open>.nav-item,html[data-pl-route] .ps-react-sidebar .nav-group.has-active>.nav-item{color:#fff!important;background:rgba(255,255,255,.05)!important;}
html[data-pl-route] .ps-react-sidebar .flyout{background:linear-gradient(160deg,#1c1c1c,#121212)!important;border:1px solid rgba(245,180,0,.18)!important;border-radius:14px!important;box-shadow:0 18px 50px rgba(0,0,0,.6)!important;z-index:1000!important;}
html[data-pl-route] .ps-react-sidebar .fly-item{border-radius:9px!important;color:#c2c2c2!important;font-size:13px!important;}
html[data-pl-route] .ps-react-sidebar .fly-item:hover{background:rgba(245,180,0,.10)!important;color:#fff!important;}
html[data-pl-route] .ps-react-sidebar .fly-item.active{color:#fff!important;background:rgba(245,180,0,.12)!important;}
html[data-pl-route] .ps-react-sidebar .mgr{background:var(--card-grad)!important;border:1px solid var(--line)!important;border-radius:12px!important;padding:13px!important;}
html[data-pl-route] .ps-react-sidebar .promo{display:block;margin-top:12px;border-radius:12px;padding:16px 15px 15px;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 110% 120%,rgba(245,180,0,.32),rgba(245,180,0,0) 55%),linear-gradient(160deg,#141414,#0c0c0c);border:1px solid var(--line);}
html[data-pl-route] .ps-react-sidebar .promo h4{font-size:14px;font-weight:700;line-height:1.25;margin-bottom:9px;}
html[data-pl-route] .ps-react-sidebar .promo .g{color:var(--gold);}
html[data-pl-route] .ps-react-sidebar .promo p{font-size:11px;color:#9a9a9a;line-height:1.5;margin-bottom:14px;font-weight:300;max-width:140px;}
html[data-pl-route] .ps-react-sidebar .promo .learn{display:inline-flex;align-items:center;gap:7px;background:linear-gradient(180deg,var(--gold-bright),var(--gold-deep));color:#1a1200;font-weight:600;font-size:12px;padding:8px 16px;border-radius:7px;border:none;cursor:pointer;position:relative;z-index:2;}
html[data-pl-route] .ps-react-sidebar .promo .coins{position:absolute;right:-6px;bottom:-6px;opacity:.9;}
html[data-pl-route] .ps-react-sidebar .side-foot{display:block;margin-top:12px;padding:0 4px 2px;}
html[data-pl-route] .ps-react-sidebar .copy{font-size:10px;color:#818080;line-height:1.45;font-weight:500;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
html[data-pl-route] .ps-react-sidebar.rail .promo,html[data-pl-route] .ps-react-sidebar.rail .side-foot,html[data-pl-route] .ps-react-sidebar.rail .mgr{display:none!important;}

/* Premium cards/tables/forms across preserved SPA pages. */
html[data-pl-route] .ps-panel,html[data-pl-route] .ps-stat-card,html[data-pl-route] .dash-panel,html[data-pl-route] .dash-kpi-card,html[data-pl-route] .dash-scope-card,html[data-pl-route] .dash-status-card{background:var(--card-grad)!important;border:1px solid rgba(255,255,255,.06)!important;border-radius:14px!important;box-shadow:var(--panel-shadow)!important;}
html[data-pl-route] .ps-panel{padding:20px!important;}
/* Spacing between stacked panels (Finance pre-close / issued closes / fraud, etc.) */
html[data-pl-route] .ps-panel{margin-bottom:18px!important;}
html[data-pl-route] .ps-panel:last-child{margin-bottom:0!important;}
html[data-pl-route] .ps-stat-card{border-radius:14px!important;padding:20px 22px!important;}
html[data-pl-route] .ps-section-header{margin-bottom:22px!important;}
html[data-pl-route] .ps-section-header h1,html[data-pl-route] .ps-section-header h2{font-size:23px!important;font-weight:700!important;letter-spacing:-.3px!important;}
html[data-pl-route] .pl-section-header-icon{width:46px!important;height:46px!important;border-radius:13px!important;color:var(--gold)!important;background:linear-gradient(160deg,rgba(245,180,0,.14),rgba(245,180,0,.03))!important;border:1px solid rgba(245,180,0,.22)!important;}
html[data-pl-route] .pl-section-header-icon svg{color:var(--gold)!important;stroke:var(--gold)!important;}
html[data-pl-route] .ps-tablewrap{overflow-x:auto!important;border-radius:14px!important;border:1px solid rgba(255,255,255,.06)!important;background:var(--card-grad)!important;box-shadow:var(--panel-shadow)!important;}
html[data-pl-route] table.ps-data-table,html[data-pl-route] table.data,html[data-pl-route] table{border-collapse:collapse!important;border-spacing:0!important;}
html[data-pl-route] table.ps-data-table thead tr,html[data-pl-route] table thead tr{background:transparent!important;}
html[data-pl-route] table.ps-data-table thead th,html[data-pl-route] table thead th{background:rgba(255,255,255,.015)!important;color:#6f6f6f!important;font-size:10.5px!important;letter-spacing:.7px!important;text-transform:uppercase!important;font-weight:600!important;border-bottom:1px solid var(--line)!important;padding:14px 16px!important;}
html[data-pl-route] table.ps-data-table tbody td,html[data-pl-route] table tbody td{border-bottom:1px solid rgba(255,255,255,.045)!important;color:#d6d6d6!important;padding:14px 16px!important;}
html[data-pl-route] table tbody tr:hover{background:rgba(245,180,0,.04)!important;}
html[data-pl-route] :where(input,select,textarea){background:#0e0e0e!important;border:1px solid var(--line)!important;color:#e6e6e6!important;border-radius:10px!important;font-family:'Poppins',sans-serif!important;}
html[data-pl-route] :where(input,select,textarea):focus{outline:none!important;border-color:rgba(62,207,142,.5)!important;box-shadow:0 0 0 3px rgba(62,207,142,.08)!important;}
html[data-pl-route] :where(button){font-family:'Poppins',sans-serif;}
html[data-pl-route] :where(button[type="submit"],.btn-primary,.login-btn){background:linear-gradient(180deg,var(--gold-bright),var(--gold-deep))!important;color:#1a1200!important;border:none!important;border-radius:10px!important;font-weight:700!important;box-shadow:0 8px 22px rgba(245,180,0,.22)!important;}
html[data-pl-route] :where(button[type="submit"],.btn-primary,.login-btn):hover{transform:translateY(-1px);}
html[data-pl-route] :where([role="dialog"],.modal,.drawer){background:#121212!important;border:1px solid rgba(245,180,0,.14)!important;border-radius:16px!important;box-shadow:0 24px 70px rgba(0,0,0,.66)!important;}

/* Dashboard live states and tooltips. */
.psdash .spark-empty,.psdash .ps-empty-note,.psdash .ps-chart-empty,.psdash .ps-empty-row{color:#777;font-size:12px;letter-spacing:.02em;}
.psdash .spark-empty{margin:14px -18px 0;min-height:70px;display:flex;align-items:center;justify-content:center;border-top:1px solid rgba(255,255,255,.04);background:linear-gradient(180deg,rgba(255,255,255,.015),transparent);}
.psdash .ps-chart-empty{min-height:250px;display:flex;align-items:center;justify-content:center;}
.psdash .ps-chart-empty[hidden]{display:none!important;}
.psdash .ps-empty-row{text-align:center;padding:30px 12px!important;}
.psdash .badge-warn,.psdash .badge-bad{display:inline-flex;align-items:center;font-size:11px;font-weight:500;padding:4px 12px;border-radius:20px;}
.psdash .badge-warn{background:rgba(245,180,0,.13);color:#f5b400;}
.psdash .badge-bad{background:rgba(239,91,110,.13);color:#ef5b6e;}
.psdash .kdelta .down{color:var(--red);font-weight:600;display:flex;align-items:center;gap:3px;}
.psdash .kdelta .flat{color:#888;font-weight:600;display:flex;align-items:center;gap:3px;}
.ps-live-loading,.ps-live-error{margin-bottom:14px;padding:12px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#ddd;font-size:13px;}
.ps-live-error{border-color:rgba(239,91,110,.3);color:#ef8b98;}
.chart-tip,.ps-chart-tip-live{position:fixed;z-index:99999;pointer-events:none;transform:translate(-50%,-100%);background:linear-gradient(160deg,#1c1c1c,#121212)!important;border:1px solid rgba(245,180,0,.28)!important;border-radius:10px!important;padding:9px 11px!important;color:#fff!important;font-size:12px!important;box-shadow:0 18px 40px rgba(0,0,0,.55)!important;opacity:0;transition:opacity .12s;}
.chart-tip .tt-d{font-weight:700;margin-bottom:6px;color:#fff;}
.chart-tip .tt-r{display:flex;align-items:center;gap:8px;color:#bdbdbd;margin-top:3px;}
.chart-tip .tt-r i{width:8px;height:8px;border-radius:50%;display:inline-block;}
.chart-tip .tt-r b{margin-left:auto;color:#fff;font-weight:700;}

/* Login/register premium skin without changing auth handlers. */
html[data-pl-route="login"] body,html[data-pl-route="register"] body{background:radial-gradient(900px 520px at 78% 8%,rgba(245,180,0,.14),transparent 62%),radial-gradient(700px 520px at 10% 90%,rgba(245,180,0,.07),transparent 64%),#050505!important;}
html[data-pl-route="login"] body:before,html[data-pl-route="register"] body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.25),rgba(0,0,0,0));}
html[data-pl-route="login"] .login-input,html[data-pl-route="register"] input,html[data-pl-route="register"] select{background:#0e0e0e!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:12px!important;color:#fff!important;}
html[data-pl-route="login"] .login-input:focus,html[data-pl-route="register"] input:focus,html[data-pl-route="register"] select:focus{border-color:rgba(245,180,0,.55)!important;background:#101010!important;box-shadow:0 0 0 3px rgba(245,180,0,.08)!important;}
html[data-pl-route="login"] .login-forgot{color:#F5B400!important;}
html[data-pl-route="login"] .login-divider:before,html[data-pl-route="login"] .login-divider:after{background:rgba(255,255,255,.08)!important;}

@media(max-width:1024px){
  html[data-pl-route] .ps-react-sidebar,html[data-pl-route] .ps-react-sidebar.rail{position:fixed!important;top:0!important;left:0!important;height:100vh!important;width:264px!important;min-width:264px!important;transform:translateX(-100%);transition:transform .28s ease;z-index:1000;}
  html[data-pl-route] .ps-react-sidebar.rail .promo,html[data-pl-route] .ps-react-sidebar.rail .side-foot,html[data-pl-route] .ps-react-sidebar.rail .mgr{display:block!important;}
}
@media(max-width:720px){html[data-pl-route] table{font-size:12px;}.psdash .grid-mid,.psdash .grid-bot{grid-template-columns:1fr!important;}.psdash .kpis{grid-template-columns:1fr!important;}}


/* 2026-06-16 v11 — PlaySlot gold/black filter accents */
html[data-pl-route] :where(input,select,textarea):focus{border-color:rgba(245,180,0,.55)!important;box-shadow:0 0 0 3px rgba(245,180,0,.08)!important;}
html[data-pl-route] select option{background:#111!important;color:#e6e6e6!important;}
html[data-pl-route] [role="option"][aria-selected="true"],html[data-pl-route] .is-selected,html[data-pl-route] .selected{background:rgba(245,180,0,.12)!important;color:#fff!important;border-color:rgba(245,180,0,.28)!important;}
@media(max-width:720px){html[data-pl-route] :where(input,select,textarea):focus{border-color:rgba(245,180,0,.55)!important;box-shadow:0 0 0 3px rgba(245,180,0,.08)!important;}}

/* 2026-06-17 v13 - Dashboard mobile menu matching the public site */
@media (max-width:767px){
  html[data-pl-route] .dashboard-nav-toggle{
    width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;
    border-radius:10px;border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.30);
    color:#fff;cursor:pointer;transition:border-color .2s,color .2s,background .2s;
  }
  html[data-pl-route] .dashboard-nav-toggle:hover,
  html[data-pl-route] .dashboard-nav-toggle.open{border-color:rgba(245,180,0,.65);color:var(--gold,#F5B400);background:rgba(245,180,0,.06);}
  html[data-pl-route] .dashboard-mobile-menu-backdrop{
    position:fixed;inset:48px 0 0;z-index:998;background:rgba(0,0,0,.38);
    opacity:0;pointer-events:none;transition:opacity .22s;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);
  }
  html[data-pl-route] .dashboard-mobile-menu-backdrop.open{opacity:1;pointer-events:auto;}
  html[data-pl-route] .ps-react-sidebar.dashboard-mobile-menu,
  html[data-pl-route] .ps-react-sidebar.dashboard-mobile-menu.rail{
    position:fixed!important;top:58px!important;left:14px!important;right:14px!important;bottom:auto!important;
    width:auto!important;min-width:0!important;height:auto!important;max-height:calc(100vh - 76px)!important;
    padding:10px!important;overflow:hidden!important;z-index:1000!important;
    background:linear-gradient(160deg,#161616,#0c0c0c)!important;
    border:1px solid var(--line,rgba(255,255,255,.10))!important;border-radius:14px!important;
    box-shadow:0 24px 50px rgba(0,0,0,.62)!important;
    opacity:0!important;transform:translateY(-10px)!important;pointer-events:none!important;
    transition:opacity .22s ease,transform .22s ease!important;
  }
  html[data-pl-route] .ps-react-sidebar.dashboard-mobile-menu.open{
    opacity:1!important;transform:translateY(0)!important;pointer-events:auto!important;
  }
  html[data-pl-route] .dashboard-mobile-menu .side-logo,
  html[data-pl-route] .dashboard-mobile-menu .rail-btn,
  html[data-pl-route] .dashboard-mobile-menu .mgr,
  html[data-pl-route] .dashboard-mobile-menu .promo,
  html[data-pl-route] .dashboard-mobile-menu .side-spacer,
  html[data-pl-route] .dashboard-mobile-menu .side-foot{display:none!important;}
  html[data-pl-route] .dashboard-mobile-menu .dashboard-mobile-menu-list{
    display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important;
    padding:0!important;overflow-x:hidden!important;overflow-y:auto!important;max-height:calc(100vh - 98px)!important;
    scrollbar-width:thin;scrollbar-color:rgba(245,180,0,.35) transparent;
    -webkit-mask-image:none!important;mask-image:none!important;
  }
  html[data-pl-route] .dashboard-mobile-menu .dashboard-mobile-menu-list::-webkit-scrollbar{width:5px;display:block;}
  html[data-pl-route] .dashboard-mobile-menu .dashboard-mobile-menu-list::-webkit-scrollbar-thumb{background:rgba(245,180,0,.35);border-radius:10px;}
  html[data-pl-route] .dashboard-mobile-menu .nav-item{
    position:relative!important;width:100%!important;min-width:0!important;min-height:44px!important;flex:0 0 auto!important;
    display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;
    gap:12px!important;padding:12px 14px!important;border-radius:9px!important;scroll-snap-align:none!important;
    color:#d8d8d8!important;background:transparent!important;font-size:13.5px!important;font-weight:500!important;
  }
  html[data-pl-route] .dashboard-mobile-menu .nav-item:hover{background:rgba(255,255,255,.05)!important;color:#fff!important;}
  html[data-pl-route] .dashboard-mobile-menu .nav-item.active{background:rgba(245,180,0,.10)!important;color:var(--gold,#F5B400)!important;}
  html[data-pl-route] .dashboard-mobile-menu .nav-item .ic{display:flex!important;flex:0 0 auto!important;color:currentColor!important;}
  html[data-pl-route] .dashboard-mobile-menu .nav-item .lbl{display:block!important;flex:1!important;font-size:13.5px!important;line-height:1.25!important;white-space:nowrap!important;}
  html[data-pl-route] .dashboard-mobile-menu .nav-item .caret{display:none!important;}
  html[data-pl-route] .dashboard-mobile-menu .nav-item.active:before{
    content:""!important;position:absolute!important;left:8px!important;right:8px!important;top:auto!important;bottom:4px!important;
    width:auto!important;height:2px!important;transform:none!important;border-radius:2px!important;
    background:var(--gold,#F5B400)!important;box-shadow:0 0 10px rgba(245,180,0,.55)!important;
  }
  html[data-pl-route] body{padding-bottom:0!important;}
}


/* Sidebar CMS carousel: Reviews, Contact Us and Events */
.promo.promo-rotator{min-height:150px;padding:14px 14px 13px;margin-top:10px;isolation:isolate;}
.promo-rotator .promo-slide{position:relative;z-index:2;min-height:120px;display:flex;flex-direction:column;}
.promo-rotator .promo-slide.is-changing{animation:psPromoIn .48s cubic-bezier(.22,1,.36,1) both;}
.promo-rotator .promo-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0;}
.promo-rotator .promo-copy{min-width:0;flex:1;padding-top:1px;}
.promo-rotator .promo-kicker{color:var(--gold);font-size:9px;line-height:1.2;font-weight:700;letter-spacing:1.35px;margin-bottom:5px;}
.promo-rotator h4{font-size:13.5px;line-height:1.25;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.promo-rotator .promo-media{width:45px;height:45px;flex:0 0 45px;border-radius:11px;border:1px solid rgba(245,180,0,.28);background:rgba(245,180,0,.07);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 8px 18px rgba(0,0,0,.28);}
.promo-rotator .promo-image{width:100%;height:100%;object-fit:cover;display:block;}
.promo-rotator .promo-text{font-size:10.5px;line-height:1.45;color:#aaa;margin:10px 0 12px;max-width:168px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.promo-rotator .promo-dots{display:flex;align-items:center;gap:4px;margin-top:auto;max-width:118px;overflow:hidden;}
.promo-rotator .promo-dots span{width:4px;height:4px;border-radius:10px;background:rgba(255,255,255,.18);flex:0 0 auto;transition:width .25s ease,background .25s ease;}
.promo-rotator .promo-dots span.active{width:14px;background:var(--gold);box-shadow:0 0 8px rgba(245,180,0,.55);}
.promo-rotator .coins{right:-12px;bottom:-10px;opacity:.56;z-index:1;pointer-events:none;}
@keyframes psPromoIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){.promo-rotator .promo-slide.is-changing{animation:none;}}

/* React sidebar specificity overrides for the CMS carousel */
html[data-pl-route] .ps-react-sidebar .promo.promo-rotator{min-height:150px!important;padding:14px 14px 13px!important;margin-top:10px!important;isolation:isolate;}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-slide{position:relative;z-index:2;min-height:120px;display:flex;flex-direction:column;}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0;}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-copy{min-width:0;flex:1;padding-top:1px;}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-kicker{color:var(--gold);font-size:9px;line-height:1.2;font-weight:700;letter-spacing:1.35px;margin-bottom:5px;}
html[data-pl-route] .ps-react-sidebar .promo-rotator h4{font-size:13.5px;line-height:1.25;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-media{width:45px;height:45px;flex:0 0 45px;border-radius:11px;border:1px solid rgba(245,180,0,.28);background:rgba(245,180,0,.07);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 8px 18px rgba(0,0,0,.28);}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-image{width:100%;height:100%;object-fit:cover;display:block;}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-text{font-size:10.5px;line-height:1.45;color:#aaa;margin:10px 0 12px;max-width:168px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-dots{display:flex;align-items:center;gap:4px;margin-top:auto;max-width:118px;overflow:hidden;}
html[data-pl-route] .ps-react-sidebar .promo-rotator .coins{right:-12px!important;bottom:-10px!important;opacity:.56!important;z-index:1;pointer-events:none;}
/* Events slide: full image at slide width instead of the small square */
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-slide.is-event .promo-head{flex-direction:column;align-items:stretch;gap:8px;}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-slide.is-event .promo-media{order:-1;width:100%!important;height:auto!important;flex:0 0 auto!important;aspect-ratio:auto;border-radius:11px;background:none;border:0;box-shadow:0 8px 18px rgba(0,0,0,.28);}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-slide.is-event .promo-image{width:100%!important;height:auto!important;object-fit:contain!important;}

/* Custom dashboard banner image: display the uploaded artwork at full card width. */
.promo-rotator .promo-slide.is-banner-image .promo-head{flex-direction:column;align-items:stretch;gap:8px;}
.promo-rotator .promo-slide.is-banner-image .promo-media{order:-1;width:100%;height:76px;flex:0 0 76px;border-radius:10px;background:none;border:0;box-shadow:0 8px 18px rgba(0,0,0,.28);}
.promo-rotator .promo-slide.is-banner-image .promo-image{width:100%;height:100%;object-fit:cover;}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-slide.is-banner-image .promo-head{flex-direction:column;align-items:stretch;gap:8px;}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-slide.is-banner-image .promo-media{order:-1;width:100%!important;height:76px!important;flex:0 0 76px!important;border-radius:10px;background:none;border:0;box-shadow:0 8px 18px rgba(0,0,0,.28);}
html[data-pl-route] .ps-react-sidebar .promo-rotator .promo-slide.is-banner-image .promo-image{width:100%!important;height:100%!important;object-fit:cover!important;}
