/* ===== Subscription / access gate ===== */
html.subscription-pending body > *:not(#subscription-gate){
visibility:visible !important;
}
html.subscription-pending #subscription-gate{
visibility:visible !important;
}
html.subscription-owner #subscription-gate{
display:none !important;
visibility:hidden !important;
}
html.subscription-owner body > *{
visibility:visible !important;
}

.subscription-card{
border:1.5px solid rgba(103, 72, 255, .22);
background:linear-gradient(135deg, rgba(103,72,255,.08), rgba(255,255,255,.96));
overflow:hidden;
padding:12px 14px;
}
.subscription-card .subscription-body{margin-top:8px;}
.subscription-card .subscription-actions{margin-top:8px;gap:6px;}
.subscription-card .subscription-actions .mini-btn{padding:8px 10px;}
.subscription-head{display:flex;align-items:center;gap:10px;}
.subscription-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.06);flex-shrink:0;}
.subscription-title{font-family:'Baloo 2';font-size:18px;font-weight:800;line-height:1.1;}
/* Статус, основная строка и тариф не должны вылезать за карточку */
.subscription-status,
.subscription-main,
.subscription-meta,
.subscription-loading,
.subscription-error{
overflow-wrap:anywhere;
word-break:break-word;
max-width:100%;
min-width:0;
}
.subscription-status{font-size:12px;font-weight:700;margin-top:2px;color:var(--muted);}
.subscription-body{margin-top:12px;min-width:0;max-width:100%;}
.subscription-main{font-size:15px;font-weight:800;line-height:1.35;}
.subscription-meta{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.45;}
.subscription-actions{display:flex;flex-direction:column;gap:8px;margin-top:12px;}
/* Тарифы в одну колонку: подпись и цена переносятся, ничего не вылезает за карточку */
.subscription-actions .mini-btn{
display:flex;align-items:center;justify-content:center;gap:8px;
width:100%;min-width:0;padding:10px 12px;
font-size:12.5px;line-height:1.35;text-align:center;
white-space:normal;overflow-wrap:anywhere;word-break:break-word;
}
.subscription-actions .mini-btn .plan-price{ font-weight:800; white-space:nowrap; }
.subscription-loading{font-size:13px;color:var(--muted);}
.subscription-error{font-size:12px;color:#b42318;margin-top:8px;}
.subscription-gate{
position:fixed;inset:0;z-index:99999;
display:none;align-items:center;justify-content:center;
padding:24px;background:rgba(244,247,250,.94);
backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
}
.subscription-gate.show{display:flex;}
.subscription-gate-card{
width:min(420px,100%);background:#fff;border-radius:28px;
padding:26px 20px 20px;box-shadow:0 20px 70px rgba(0,0,0,.15);
text-align:center;
}
.subscription-gate-icon{font-size:48px;line-height:1;margin-bottom:12px;}
.subscription-gate-card h2{margin:0;font-family:'Baloo 2';font-size:26px;}
.subscription-gate-card p{margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.45;}
.subscription-gate-buttons{display:flex;gap:8px;flex-direction:column;margin-top:18px;}
.subscription-gate-buttons button{width:100%;}
.subscription-gate-note{font-size:11px;color:var(--muted);margin-top:12px;}


.modal-link-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;margin-top:10px;border-radius:16px;background:#eef3ff;color:#2168e8;text-decoration:none;font-weight:700;font-size:15px;}
.modal-link-card span:last-child{font-size:25px;line-height:1;}
