/**
 * TycoSim v0.5 - Corp Utilities
 * 
 * Extracted from firm-v2.css (Lines 765-870)
 * 
 * Contains:
 * - Flexbox Utilities
 * - Spacing Utilities
 * - Text/Color Utilities
 * - Layout Helpers
 * - Misc Utilities
 */

/* ==========================================================================
   FLEXBOX UTILITIES
   ========================================================================== */

.corp-flex {
    display: flex;
}

.corp-flex-1 {
    flex: 1;
}

.corp-items-center {
    align-items: center;
}

.corp-justify-between {
    justify-content: space-between;
}

.corp-gap-sm {
    gap: var(--corp-space-sm);
}

.corp-gap-md {
    gap: var(--corp-space-md);
}

.corp-gap-lg {
    gap: var(--corp-space-lg);
}

/* ==========================================================================
   SPACING UTILITIES
   ========================================================================== */

.corp-mt-0 {
    margin-top: 0;
}

.corp-mb-0 {
    margin-bottom: 0;
}

.corp-mb-sm {
    margin-bottom: var(--corp-space-sm);
}

.corp-mb-md {
    margin-bottom: var(--corp-space-md);
}

.corp-mb-lg {
    margin-bottom: var(--corp-space-lg);
}

.corp-p-0 {
    padding: 0;
}

.corp-p-sm {
    padding: var(--corp-space-sm);
}

.corp-p-md {
    padding: var(--corp-space-md);
}

.corp-p-lg {
    padding: var(--corp-space-lg);
}

/* ==========================================================================
   TEXT/COLOR UTILITIES
   ========================================================================== */

.corp-text-muted {
    color: var(--corp-text-muted);
}

.corp-text-success {
    color: var(--corp-success);
}

.corp-text-warning {
    color: var(--corp-warning);
}

.corp-text-danger {
    color: var(--corp-danger);
}

/* ==========================================================================
   BACKGROUND UTILITIES
   ========================================================================== */

.corp-bg-surface {
    background: var(--corp-surface);
}

.corp-bg-surface-2 {
    background: var(--corp-surface-2);
}

/* ==========================================================================
   LAYOUT HELPERS
   ========================================================================== */

.corp-rounded {
    border-radius: var(--corp-radius-md);
}

.corp-font-mono {
    font-family: var(--corp-font-mono);
}

.corp-font-bold {
    font-weight: 700;
}

.corp-hidden {
    display: none !important;
}

/* ==========================================================================
   MONEY/VALUE STYLING
   ========================================================================== */

.corp-money {
    font-family: var(--corp-font-mono);
    font-weight: 600;
    letter-spacing: -0.02em;
}

.corp-money.positive {
    color: var(--corp-success);
}

.corp-money.negative {
    color: var(--corp-danger);
}

/* ==========================================================================
   MISC UTILITIES
   ========================================================================== */

.corp-divider {
    height: 1px;
    background: var(--corp-border);
    margin: var(--corp-space-lg) 0;
}

.corp-icon-btn {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--corp-radius-md);
    background: transparent;
    border: 1px solid transparent;
    color: var(--corp-text-muted);
    cursor: pointer;
    transition: all 0.15s ease;
}

.corp-icon-btn:hover {
    background: var(--corp-surface-2);
    color: var(--corp-text);
}

.corp-stat-mini {
    display: flex;
    align-items: center;
    gap: var(--corp-space-sm);
    padding: var(--corp-space-sm) var(--corp-space-md);
    background: var(--corp-surface-2);
    border-radius: var(--corp-radius-md);
}

.corp-stat-mini-label {
    font-size: var(--corp-text-xs);
    color: var(--corp-text-muted);
}

.corp-stat-mini-value {
    font-size: var(--corp-text-base);
    font-weight: 600;
    font-family: var(--corp-font-mono);
}