.fac-tab {
    border: 1px solid rgb(71 85 105);
    border-radius: 0.75rem;
    padding: 0.5rem 0.75rem;
    color: rgb(203 213 225);
    background: rgb(15 23 42 / .55);
    font-size: .875rem;
}
.fac-tab:hover, .fac-tab.active {
    background: rgb(245 158 11 / .12);
    color: rgb(252 211 77);
    border-color: rgb(245 158 11 / .35);
}
.fac-card, .fac-panel {
    border: 1px solid rgb(30 41 59);
    background: rgb(2 6 23 / .72);
    border-radius: 1rem;
    padding: 1rem;
}
.fac-panel {
    padding: 0;
    overflow: hidden;
}
.fac-panel-title {
    padding: 1rem;
    border-bottom: 1px solid rgb(30 41 59);
    font-weight: 600;
    color: rgb(226 232 240);
}
.fac-input {
    width: 100%;
    border: 1px solid rgb(51 65 85);
    border-radius: .75rem;
    background: rgb(2 6 23);
    color: rgb(226 232 240);
    padding: .75rem 1rem;
    font-size: .875rem;
}
.fac-input::placeholder { color: rgb(100 116 139); }
.fac-badge {
    display: inline-flex;
    align-items: center;
    border: 1px solid rgb(71 85 105);
    border-radius: .75rem;
    padding: .25rem .55rem;
    font-size: .72rem;
}
.fac-usage-card {
    border: 1px solid rgb(51 65 85);
    background: rgb(2 6 23 / .82);
    border-radius: 1rem;
    padding: 1rem;
}
.fac-progress-track {
    height: .75rem;
    overflow: hidden;
    border-radius: 9999px;
    background: rgb(30 41 59);
}
.fac-progress-fill {
    height: 100%;
    border-radius: inherit;
    transition: width .25s ease;
}
