/* ==========================================================================
   Social Security Optimizer - Slate Blue Theme
   A trustworthy, government-inspired color scheme
   ========================================================================== */

.tool-social-security {
    --tool-primary: #475569;
    --tool-primary-light: #64748B;
    --tool-primary-dark: #334155;
    --tool-primary-rgb: 71, 85, 105;
    --tool-secondary: #CBD5E1;
    --tool-accent: #94A3B8;
    --tool-surface: #F1F5F9;
    --tool-text-on-primary: #ffffff;
}

/* Card Headers */
.tool-social-security .card-header.tool-header {
    background-color: var(--tool-primary) !important;
    color: var(--tool-text-on-primary) !important;
    border-bottom: none;
}

.tool-social-security .card-header.tool-header h5,
.tool-social-security .card-header.tool-header .h5,
.tool-social-security .card-header.tool-header i {
    color: var(--tool-text-on-primary) !important;
}

/* Primary Buttons */
.tool-social-security .btn-tool-primary {
    background-color: var(--tool-primary);
    border-color: var(--tool-primary);
    color: var(--tool-text-on-primary);
}

.tool-social-security .btn-tool-primary:hover,
.tool-social-security .btn-tool-primary:focus {
    background-color: var(--tool-primary-dark);
    border-color: var(--tool-primary-dark);
    color: var(--tool-text-on-primary);
    transform: translateY(-1px);
    box-shadow: 0 4px 6px -1px rgba(var(--tool-primary-rgb), 0.3);
}

.tool-social-security .btn-tool-primary:disabled {
    background-color: var(--tool-primary);
    border-color: var(--tool-primary);
    opacity: 0.65;
}

/* Outline Buttons */
.tool-social-security .btn-outline-tool {
    color: var(--tool-primary);
    border-color: var(--tool-primary);
    background: transparent;
}

.tool-social-security .btn-outline-tool:hover {
    background-color: var(--tool-primary);
    border-color: var(--tool-primary);
    color: var(--tool-text-on-primary);
}

/* Text Colors */
.tool-social-security .text-tool-primary {
    color: var(--tool-primary) !important;
}

/* Badges */
.tool-social-security .badge-tool {
    background-color: var(--tool-primary);
    color: var(--tool-text-on-primary);
}

/* Alerts/Info boxes */
.tool-social-security .alert-tool {
    background-color: var(--tool-surface);
    border-left: 4px solid var(--tool-primary);
    color: var(--tool-primary-dark);
}

/* Form focus states */
.tool-social-security .form-control:focus,
.tool-social-security .form-select:focus {
    border-color: var(--tool-primary);
    box-shadow: 0 0 0 3px rgba(var(--tool-primary-rgb), 0.15);
}

/* Checkboxes */
.tool-social-security .form-check-input:checked {
    background-color: var(--tool-primary);
    border-color: var(--tool-primary);
}