/* Play MMO v0.4.6 – persistent demo banner inventory; dark/light friendly */
.side-placement{display:flex;flex-direction:column;gap:10px;min-width:0}
.side-placement .side-creative-list{min-width:0}
.slot-preview{position:relative;display:flex!important;flex-direction:column;min-height:250px;padding:18px 12px;align-items:center;justify-content:center;gap:9px;text-align:center;border:1px dashed var(--accent-2,#b98a46)!important;border-radius:16px;overflow:hidden;background:linear-gradient(145deg,var(--surface-2,#f7fafc),var(--surface,#fff))!important;box-shadow:var(--shadow)!important;text-decoration:none!important;color:var(--text)!important}
.slot-preview:before{content:"";position:absolute;inset:-40px -70px auto auto;width:190px;height:190px;border:1px solid var(--accent-2);border-radius:50%;opacity:.16;box-shadow:0 0 0 24px var(--ornament)}
.slot-preview:hover{border-style:solid!important;transform:translateY(-3px);box-shadow:0 14px 38px rgba(185,138,70,.2)!important}
.slot-preview-kicker{font-size:9px;letter-spacing:.11em;font-weight:900;color:var(--accent-2)!important}
.slot-preview-art{display:grid;place-items:center;height:56px;width:56px;border:1px solid var(--vip-line);border-radius:16px;font-size:32px;color:var(--accent-2);background:var(--vip-bg)}
.slot-preview strong{font-size:16px;line-height:1.25;color:var(--text)!important}
.slot-preview-price{font-size:12px;line-height:1.4;font-weight:900;color:var(--accent-2)!important}
.slot-preview-action{font-size:11px;color:var(--accent)!important;font-weight:850;border-bottom:1px solid var(--accent);padding-bottom:2px}
.ad-price-title{font-size:clamp(19px,2vw,26px);margin:30px 0 12px;font-weight:850;color:var(--text)}
.banner-price-card{scroll-margin-top:100px}
.banner-price-card.is-requested,.banner-price-card:target{border-color:var(--accent-2)!important;box-shadow:0 0 0 3px rgba(185,138,70,.16),var(--shadow)!important}
.banner-price-card .pricing-price{font-size:22px;margin-bottom:16px}
.banner-price-sample{display:grid;place-items:center;padding:15px 8px;border:1px dashed var(--accent-2);border-radius:12px;background:var(--surface-2);color:var(--accent-2);font-size:12px;font-weight:850;margin:16px 0 20px}
.ad-contact-note{padding:20px;color:var(--muted)}
.choice-servers{padding:14px}
.choice-server{display:flex;justify-content:space-between;gap:10px;padding:14px 10px;border-bottom:1px solid var(--line);color:var(--text)}
.choice-server:last-child{border-bottom:0}.choice-server span{color:var(--accent)}
@media (max-width:1130px){.slot-preview{min-height:205px}}
@media (max-width:720px){.slot-preview{min-height:155px}.banner-pricing-grid{grid-template-columns:1fr}}

/* Stable inventory columns: prevent sticky clipping and keep display independent of JS */
.side-column{min-width:0;display:flex;flex-direction:column;gap:15px;position:relative!important;top:auto!important;align-self:start;z-index:1;visibility:visible!important;opacity:1!important;transform:none!important}
.side-column-left{grid-area:left}.side-column-right{grid-area:right}
.side-column-title{display:flex;align-items:center;gap:8px;padding:5px 2px 0;color:var(--text);font-size:13px;font-weight:800}
.side-column-title strong{font-size:14px;flex:1}.side-column-title small{color:var(--muted);font-size:11px;letter-spacing:.08em}
.side-column-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 0 4px var(--ornament)}
.side-placement{display:flex;flex-direction:column;gap:10px;min-width:0!important;visibility:visible!important;opacity:1!important}
.slot-preview{min-height:224px;visibility:visible!important;opacity:1!important;transform:none}
.slot-preview:hover{transform:translateY(-2px)}
.slot-preview .slot-preview-art{font:30px/1 Georgia,serif}
.slot-preview-kicker{font-size:11px!important;letter-spacing:.04em!important}
.slot-preview strong{font-size:18px!important;line-height:1.25}
.slot-preview-price{font-size:14px!important}
.slot-preview-action{font-size:13px!important}
.side-creative-list{display:grid;gap:12px;padding:8px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.side-creative-list a{display:block;border-radius:11px;overflow:hidden}
.side-creative-list .creative-image{width:100%;max-width:100%;max-height:550px;height:auto;object-fit:contain;border-radius:10px}
.side-bottom-link{display:flex;justify-content:space-between;gap:8px;padding:4px 7px;font-size:13px;color:var(--accent)}
.side-bottom-link:hover{color:var(--accent-2)}
@media(max-width:1130px){.side-column{position:relative!important}.side-placement{min-width:0}.slot-preview{min-height:180px}}
@media(max-width:720px){.slot-preview{min-height:155px}.side-column-title strong{font-size:15px}}
/* The older layout moved the side panels below the entire catalog at 1130px.
   Keep the two promo rails beside the main board on laptop widths. */
@media(min-width:960px) and (max-width:1130px){
 .portal-layout{display:grid!important;grid-template-columns:minmax(124px,148px) minmax(0,1fr) minmax(124px,148px)!important;grid-template-areas:"left main right"!important;gap:12px!important;align-items:start!important}
 .side-column{width:auto;max-width:none!important}
 .slot-preview{padding:14px 8px;min-height:200px}
 .slot-preview strong{font-size:15px!important}
 .slot-preview-kicker{font-size:9px!important}
 .slot-preview-price{font-size:12px!important}
 .slot-preview-art{height:42px;width:42px;font-size:25px}
 .side-column-title strong{font-size:12px!important}
}
