/* CasaPrimes icon system — Bootstrap Icons (MIT). */
.bi,
.site-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 1em;
    height: 1em;
    font-size: 1em;
    line-height: 1;
    vertical-align: -0.125em;
}

.site-icon {
    margin-inline: 0.12em;
}

button > .bi:first-child,
a > .bi:first-child,
label > .bi:first-child,
[class*="icon"] > .bi:only-child {
    margin-inline-end: 0.38em;
}

[aria-label] > .bi:only-child,
[title] > .bi:only-child,
.icon-only > .bi,
[class*="-icon"] > .bi:only-child {
    margin: 0;
}

.bi-check-circle-fill,
.bi-check-lg { color: #16895a; }
.bi-x-circle-fill,
.bi-x-lg { color: #c93e3e; }
.bi-exclamation-triangle-fill { color: #c47a12; }

/* Keep icon sizing predictable in the shared shells. */
.adm-nav-item > .bi,
.pf-nav-item > .bi { width: 1.25rem; font-size: 1.05rem; }
.adm-icon-btn > .bi,
.adm-topbar-add-btn > .bi { font-size: 1rem; }
.adm-stat-icon > .bi,
.sub-stat-icon > .bi { font-size: 1.35rem; }
.mni-icon > .bi { font-size: 1.35rem; }
.mni-post-circle > .bi { color: #fff; font-size: 1.3rem; }
.fe-fab-icon.bi { width: auto; height: auto; font-size: 1.55rem; }
.fe-field-icon > .bi,
.fe-phone-prefix > .bi { margin: 0; }

@media (prefers-reduced-motion: reduce) {
    .bi { transition: none !important; }
}
