.premium-access-overlay{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(1,9,19,.78);backdrop-filter:blur(9px)}
.premium-access-overlay.show{display:flex;animation:premiumFade .18s ease-out}
.premium-access-modal{position:relative;width:min(430px,100%);padding:30px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:linear-gradient(145deg,rgba(10,30,51,.98),rgba(4,18,34,.99));box-shadow:0 28px 90px rgba(0,0,0,.55);text-align:center;color:#f7fbff;animation:premiumRise .22s ease-out}
.premium-access-modal:before{content:"";position:absolute;inset:-1px;border-radius:22px;padding:1px;background:linear-gradient(135deg,rgba(255,112,0,.75),rgba(38,119,255,.12),rgba(255,255,255,.05));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.premium-access-icon{width:72px;height:72px;margin:0 auto 17px;display:grid;place-items:center;border-radius:21px;background:rgba(255,105,0,.12);border:1px solid rgba(255,112,0,.35);font-size:34px;color:#ff7a00;box-shadow:0 0 34px rgba(255,106,0,.13)}
.premium-access-kicker{margin:0 0 7px;color:#ff7a00;font-size:11px;font-weight:800;letter-spacing:1.7px;text-transform:uppercase}
.premium-access-modal h2{margin:0;font-size:24px;line-height:1.25;font-weight:750}
.premium-access-modal p{margin:12px auto 23px;max-width:350px;color:#aab8c8;font-size:13px;line-height:1.65}
.premium-access-feature{color:#fff;font-weight:700}
.premium-access-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:11px}
.premium-access-actions button{min-height:44px;border-radius:10px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:.18s ease}
.premium-access-cancel{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.035);color:#d6e0eb}
.premium-access-cancel:hover{background:rgba(255,255,255,.075)}
.premium-access-upgrade{border:0;background:linear-gradient(135deg,#ff8500,#ff5e00);color:#fff;box-shadow:0 10px 28px rgba(255,96,0,.24)}
.premium-access-upgrade:hover{transform:translateY(-1px);box-shadow:0 13px 32px rgba(255,96,0,.32)}
.premium-access-close{position:absolute;top:13px;right:14px;width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:#8fa1b5;font-size:24px;cursor:pointer}
.premium-access-close:hover{background:rgba(255,255,255,.06);color:#fff}
.premium-locked{position:relative}
/* PRO badges are rendered once in the shared sidebar markup. */
.premium-locked::after{content:none!important;display:none!important}
@keyframes premiumFade{from{opacity:0}to{opacity:1}}
@keyframes premiumRise{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:520px){.premium-access-modal{padding:26px 20px 21px}.premium-access-actions{grid-template-columns:1fr}.premium-access-upgrade{grid-row:1}.premium-access-modal h2{font-size:21px}}
