/* ==============================================
   STYLES - Additional overrides & utilities
   ============================================== */

/* ---- Utility Classes ---- */
.text-center  { text-align: center; }
.text-left    { text-align: left; }
.text-right   { text-align: right; }
.text-muted   { color: var(--text-muted); }
.text-primary { color: var(--brand-primary); }
.text-accent  { color: var(--brand-accent); }
.font-bold    { font-weight: 700; }
.font-sm      { font-size: var(--font-size-sm); }
.w-full       { width: 100%; }

.mt-sm  { margin-top: var(--space-sm); }
.mt-md  { margin-top: var(--space-md); }
.mt-lg  { margin-top: var(--space-lg); }
.mb-sm  { margin-bottom: var(--space-sm); }
.mb-md  { margin-bottom: var(--space-md); }
.mb-lg  { margin-bottom: var(--space-lg); }

.hidden  { display: none !important; }
.visible { display: block !important; }

.glass-surface {
    background: var(--bg-glass);
    border: 1px solid rgba(255,255,255,0.55);
    backdrop-filter: blur(10px);
    border-radius: var(--border-radius-lg);
}

.sar-symbol {
    width: 0.95em;
    height: 0.95em;
    vertical-align: -0.08em;
    display: inline-block;
}

/* ---- Scrollbar Styling ---- */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: rgba(47,47,47,0.08);
    border-radius: 999px;
}
::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #a3a3a3, #616161);
    border-radius: 999px;
}
::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, #ea9436, #d88123);
}

/* ---- Print / PDF Prep ---- */
@media print {
    .app-header,
    .panel-catalog,
    .actions-card,
    .header-actions { display: none; }

    .app-main {
        display: block;
        padding: 0;
    }

    .section-card {
        box-shadow: none;
        border: none;
        background: #fff;
    }
}
