/* ==========================================================================
   eProc 2.6 - Sistem Standarisasi Tombol (Action Buttons & Semantic Palette)
   Selaras dengan Identitas eProc 2.5 (Navy, Gold UI, Emerald, Crimson, Slate)
   ========================================================================== */

/* Toolbar Wadah Tombol Aksi */
.eproc-action-toolbar {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}

/* Micro-interaction & Standar Tombol */
.btn {
    font-family: inherit;
    font-weight: 600;
    letter-spacing: 0.01em;
    transition: all 0.18s cubic-bezier(0.16, 1, 0.3, 1);
}

.btn:hover {
    transform: translateY(-1px);
}

.btn:active {
    transform: translateY(0);
}

.btn[disabled],
.btn[aria-disabled='true'],
.eproc-action-toolbar .btn[disabled],
.eproc-action-toolbar .btn[aria-disabled='true'] {
    opacity: 0.65;
    pointer-events: none;
    transform: none !important;
    box-shadow: none !important;
}

/* Tombol Berbentuk Oval / Pill (Standar Bab 5 UI-UX Standardization) */
.btn.round,
.eproc-action-toolbar .btn.round {
    border-radius: 999px !important;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}

.btn.btn-sm.round {
    padding-left: 1rem;
    padding-right: 1rem;
}

.btn.btn-min-width {
    min-width: 105px;
}

.btn.btn-sm.btn-min-width {
    min-width: 80px;
}

/* Shadow Halus Modern */
.box-shadow-1 {
    box-shadow: 0 3px 8px -1px rgba(10, 37, 64, 0.12), 0 1px 3px rgba(10, 37, 64, 0.08) !important;
}

.box-shadow-1:hover {
    box-shadow: 0 6px 16px -2px rgba(10, 37, 64, 0.20), 0 2px 5px rgba(10, 37, 64, 0.10) !important;
}

/* ==========================================================================
   Palet Semantik Tombol (Solid)
   ========================================================================== */

/* Primary: Deep Corporate Navy */
.btn-primary {
    background-color: #0A2540 !important;
    border-color: #0A2540 !important;
    color: #FFFFFF !important;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: #163A63 !important;
    border-color: #163A63 !important;
    color: #FFFFFF !important;
}

/* Success / Approve: Emerald Green (Parity eproc25 --verify-600) */
.btn-success {
    background-color: #1D7A5F !important;
    border-color: #1D7A5F !important;
    color: #FFFFFF !important;
}

.btn-success:hover,
.btn-success:focus {
    background-color: #155D49 !important;
    border-color: #155D49 !important;
    color: #FFFFFF !important;
}

/* Warning / Add CTA: UI Gold (Khas UI) */
.btn-warning {
    background-color: #EAB308 !important;
    border-color: #EAB308 !important;
    color: #0A2540 !important;
    font-weight: 700 !important;
}

.btn-warning:hover,
.btn-warning:focus {
    background-color: #CA8A04 !important;
    border-color: #CA8A04 !important;
    color: #0A2540 !important;
}

/* Danger / Reject / Delete: Crimson Red */
.btn-danger {
    background-color: #DC2626 !important;
    border-color: #DC2626 !important;
    color: #FFFFFF !important;
}

.btn-danger:hover,
.btn-danger:focus {
    background-color: #B91C1C !important;
    border-color: #B91C1C !important;
    color: #FFFFFF !important;
}

/* Info / Print / Action: Steel Blue */
.btn-info {
    background-color: #2563EB !important;
    border-color: #2563EB !important;
    color: #FFFFFF !important;
}

.btn-info:hover,
.btn-info:focus {
    background-color: #1D4ED8 !important;
    border-color: #1D4ED8 !important;
    color: #FFFFFF !important;
}

/* Secondary / Neutral: Slate */
.btn-secondary {
    background-color: #64748B !important;
    border-color: #64748B !important;
    color: #FFFFFF !important;
}

.btn-secondary:hover,
.btn-secondary:focus {
    background-color: #475569 !important;
    border-color: #475569 !important;
    color: #FFFFFF !important;
}

/* Dark: Midnight Navy */
.btn-dark {
    background-color: #0F172A !important;
    border-color: #0F172A !important;
    color: #FFFFFF !important;
}

.btn-dark:hover,
.btn-dark:focus {
    background-color: #1E293B !important;
    border-color: #1E293B !important;
    color: #FFFFFF !important;
}

/* ==========================================================================
   Palet Semantik Tombol (Outline)
   ========================================================================== */

.btn-outline-primary {
    color: #0A2540 !important;
    border-color: #0A2540 !important;
    background-color: transparent !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary.active,
.btn-outline-primary:active,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active {
    background-color: #0A2540 !important;
    color: #FFFFFF !important;
    border-color: #0A2540 !important;
}

.btn-outline-success {
    color: #1D7A5F !important;
    border-color: #1D7A5F !important;
    background-color: transparent !important;
}

.btn-outline-success:hover,
.btn-outline-success:focus,
.btn-outline-success.active,
.btn-outline-success:active,
.btn-outline-success:not(:disabled):not(.disabled).active,
.btn-outline-success:not(:disabled):not(.disabled):active {
    background-color: #1D7A5F !important;
    color: #FFFFFF !important;
    border-color: #1D7A5F !important;
}

.btn-outline-warning {
    color: #CA8A04 !important;
    border-color: #EAB308 !important;
    background-color: transparent !important;
}

.btn-outline-warning:hover,
.btn-outline-warning:focus,
.btn-outline-warning.active,
.btn-outline-warning:active,
.btn-outline-warning:not(:disabled):not(.disabled).active,
.btn-outline-warning:not(:disabled):not(.disabled):active {
    background-color: #EAB308 !important;
    color: #0A2540 !important;
    border-color: #EAB308 !important;
}

.btn-outline-danger {
    color: #DC2626 !important;
    border-color: #DC2626 !important;
    background-color: transparent !important;
}

.btn-outline-danger:hover,
.btn-outline-danger:focus,
.btn-outline-danger.active,
.btn-outline-danger:active,
.btn-outline-danger:not(:disabled):not(.disabled).active,
.btn-outline-danger:not(:disabled):not(.disabled):active {
    background-color: #DC2626 !important;
    color: #FFFFFF !important;
    border-color: #DC2626 !important;
}

.btn-outline-info {
    color: #2563EB !important;
    border-color: #2563EB !important;
    background-color: transparent !important;
}

.btn-outline-info:hover,
.btn-outline-info:focus,
.btn-outline-info.active,
.btn-outline-info:active,
.btn-outline-info:not(:disabled):not(.disabled).active,
.btn-outline-info:not(:disabled):not(.disabled):active {
    background-color: #2563EB !important;
    color: #FFFFFF !important;
    border-color: #2563EB !important;
}

.btn-outline-secondary {
    color: #64748B !important;
    border-color: #CBD5E1 !important;
    background-color: transparent !important;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
    background-color: #F1F5F9 !important;
    color: #334155 !important;
}
