.ass-sticker { display:inline-flex; align-items:center; justify-content:center; position:relative; cursor:pointer; font-size:14px; line-height:1; padding:6px 10px; font-weight:600; }
.ass-shape-circle { border-radius:50%; }
.ass-shape-square { border-radius:0; }
.ass-shape-rounded { border-radius:8px; }
.ass-size-small { font-size:12px; padding:4px 8px; }
.ass-size-medium { font-size:14px; }
.ass-size-large { font-size:18px; padding:10px 16px; }
.ass-sticker .ass-tooltip { opacity:0; visibility:hidden; position:absolute; z-index:9999; background:#222; color:#fff; padding:10px; border-radius:6px; box-shadow:0 6px 18px rgba(0,0,0,.2); transition:.18s ease; width:max-content; box-sizing:border-box; overflow:hidden; }
.ass-sticker:focus .ass-tooltip, .ass-sticker:hover .ass-tooltip, .ass-sticker.ass-open .ass-tooltip { opacity:1; visibility:visible; transform:translateY(0); }
.ass-pos-top .ass-tooltip { bottom:100%; left:50%; transform:translate(calc(-50% + var(--ass-shift-x, 0px)), 8px); }
.ass-pos-top:hover .ass-tooltip, .ass-pos-top.ass-open .ass-tooltip { transform:translate(calc(-50% + var(--ass-shift-x, 0px)), 0); }
.ass-pos-right .ass-tooltip { left:100%; top:50%; transform:translate(calc(4px + var(--ass-shift-x, 0px)), calc(-50% + var(--ass-shift-y, 0px))); }
.ass-pos-right:hover .ass-tooltip, .ass-pos-right.ass-open .ass-tooltip { transform:translate(calc(0px + var(--ass-shift-x, 0px)), calc(-50% + var(--ass-shift-y, 0px))); }
.ass-pos-bottom .ass-tooltip { top:100%; left:50%; transform:translate(calc(-50% + var(--ass-shift-x, 0px)), -8px); }
.ass-pos-bottom:hover .ass-tooltip, .ass-pos-bottom.ass-open .ass-tooltip { transform:translate(calc(-50% + var(--ass-shift-x, 0px)), 0); }
.ass-pos-left .ass-tooltip { right:100%; top:50%; transform:translate(calc(-4px + var(--ass-shift-x, 0px)), calc(-50% + var(--ass-shift-y, 0px))); }
.ass-pos-left:hover .ass-tooltip, .ass-pos-left.ass-open .ass-tooltip { transform:translate(calc(0px + var(--ass-shift-x, 0px)), calc(-50% + var(--ass-shift-y, 0px))); }
.ass-tt-btn { display:inline-block; margin-top:8px; padding:8px 14px; color:#fff; text-decoration:none; font-weight:600; border-radius:4px; }
.ass-tt-title { font-size:16px; font-weight:700; margin-bottom:4px; }
.ass-tt-desc { font-size:14px; margin-bottom:6px; }
@media (hover:none) { .ass-sticker .ass-tooltip { display:none; } .ass-sticker.ass-open .ass-tooltip { display:block; opacity:1; visibility:visible; } }
/* Dashicons inside sticker scale with font-size */
.ass-sticker .dashicons{font-size:1.2em; width:1.2em; height:1.2em; line-height:1;}
.ass-shape-pill{border-radius:9999px}

/* Adaptive media sizing via CSS variables */
.ass-tooltip .ass-img{display:block;width:100%;height:auto;max-width:var(--ass-mw-d, 100%);} 
/* Стабилизируем область видео: обертка .ass-video резервирует место (aspect-ratio 16:9) до загрузки метаданных */
.ass-tooltip .ass-video{display:block;width:100%;max-width:var(--ass-mw-d, 100%);aspect-ratio:16/9;background:#000;} 
.ass-tooltip iframe{display:block;width:100%;height:100%;max-width:var(--ass-mw-d, 100%);} 
.ass-tooltip video{display:block;width:100%;height:auto;max-width:var(--ass-mw-d, 100%);} 

@media (max-width:640px){
	.ass-sticker .ass-tooltip{max-width:min(var(--ass-mw-m, 90vw), 95vw);} /* ensure container never exceeds viewport */
	.ass-tooltip .ass-img{max-width:var(--ass-mw-m, 90vw);} 
	.ass-tooltip .ass-video{max-width:var(--ass-mw-m, 90vw);} 
	.ass-tooltip iframe{max-width:var(--ass-mw-m, 90vw);} 
	.ass-tooltip video{max-width:var(--ass-mw-m, 90vw);} 
}