/* Iconos SVG propios */
.ico { display: inline-block; width: 1.15em; height: 1.15em; vertical-align: -0.2em; flex-shrink: 0; overflow: visible; }
.ico-flag { width: 1.3em; height: 0.95em; border-radius: 2px; vertical-align: -0.12em; margin-right: 0.15em; box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.15); }
.ico-cc { width: auto; height: auto; font-size: 0.7em; font-weight: 900; padding: 1px 4px; border-radius: 4px; background: rgba(255, 255, 255, 0.12); vertical-align: 0.1em; }

/* Contextos grandes */
.portal-icon .ico { width: 30px; height: 30px; }
.portal-go .ico { width: 22px; height: 22px; }
.perk-icon .ico { width: 20px; height: 20px; }
.success-emoji .ico { width: 58px; height: 58px; }
.modal-icon .ico { width: 44px; height: 44px; }
.empty-cta .ico, .cta-mega .ico, .cta-ghost .ico { width: 1.25em; height: 1.25em; vertical-align: -0.25em; margin-right: 0.2em; }
.combo-title .ico { width: 1.3em; height: 1.3em; }
.sheet-back .ico, .sheet-close .ico { width: 20px; height: 20px; vertical-align: middle; }
.stars-gold .ico { width: 1em; height: 1em; }
.stars-gold { display: inline-flex; gap: 2px; }
.btn-task .ico, .btn-redeem .ico { vertical-align: -0.22em; }
.security-lock .ico, .free-shipping-tag .ico { width: 1em; height: 1em; }
.live-toast .ico { width: 1em; height: 1em; }
.inbox-text .ico { width: 1em; height: 1em; }
.admin-body .modal-icon .ico { width: 44px; height: 44px; }
.goal-remaining .ico { width: 1.2em; height: 1.2em; }
.order-status .ico { width: 1em; height: 1em; }
.badge-status .ico, .badge-ads .ico, .badge-gems .ico, .badge-streak .ico { width: 1em; height: 1em; vertical-align: -0.15em; margin-right: 2px; }
