/**
 * AXYN FOSSBilling Theme
 * Upload as axyn-custom.css to /themes/huraga/assets/css/
 * FOSSBilling Huraga already loads custom.css by default
 */

/* === CSS Variables === */
:root {
    --axyn-navy: #011627;
    --axyn-charcoal: #2C3E50;
    --axyn-teal: #41A0B7;
    --axyn-teal-hover: #358A9E;
    --axyn-blue-gray: #DEE5E5;
    --axyn-light-gray: #F3F4F6;
    --axyn-gradient: linear-gradient(135deg, #41A0B7, #457B9D);
}

/* === Global === */
body {
    font-family: 'Inter', sans-serif !important;
    color: var(--axyn-charcoal) !important;
    background: var(--axyn-light-gray) !important;
}

h1,h2,h3,h4,h5,h6 { 
    color: var(--axyn-charcoal) !important; 
    font-weight: 700 !important; 
}

h2 { 
    font-size: 1.75rem !important; 
    margin-bottom: 1rem !important; 
}

a { 
    color: var(--axyn-teal) !important; 
    text-decoration: none !important;
}

a:hover { 
    color: var(--axyn-teal-hover) !important; 
}

/* === Navigation === */
.navbar { 
    background: var(--axyn-light-gray) !important; 
    border-bottom: 1px solid var(--axyn-blue-gray) !important; 
    box-shadow: none !important; 
}

.navbar-brand { 
    color: var(--axyn-charcoal) !important; 
    font-weight: 700 !important; 
}

.nav-link { 
    color: var(--axyn-charcoal) !important; 
    font-weight: 500 !important; 
}

.nav-link:hover, 
.nav-link.active { 
    color: var(--axyn-teal) !important; 
}

/* === Buttons === */
.btn { 
    border-radius: 8px !important; 
    font-weight: 600 !important; 
    transition: all 0.3s !important; 
}

.btn-primary { 
    background: var(--axyn-teal) !important; 
    border: none !important; 
    color: white !important; 
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active { 
    background: var(--axyn-teal-hover) !important; 
    transform: translateY(-2px) !important; 
    box-shadow: 0 4px 12px rgba(65,160,183,0.3) !important; 
}

.btn-outline-primary { 
    border: 2px solid var(--axyn-teal) !important; 
    color: var(--axyn-teal) !important; 
    background: transparent !important; 
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active { 
    background: var(--axyn-teal) !important; 
    color: white !important; 
}

.btn-dark, 
.btn-secondary { 
    background: var(--axyn-charcoal) !important; 
    border: none !important; 
    color: white !important; 
}

.btn-dark:hover, 
.btn-secondary:hover,
.btn-dark:focus,
.btn-secondary:focus,
.btn-dark:active,
.btn-secondary:active { 
    background: var(--axyn-navy) !important; 
    transform: translateY(-2px) !important; 
}

/* === Cards === */
.card { 
    background: white !important; 
    border: 1px solid var(--axyn-blue-gray) !important; 
    border-radius: 12px !important; 
    box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important; 
    margin-bottom: 1.5rem !important; 
    overflow: hidden !important; 
    transition: all 0.3s !important;
}

.card:hover { 
    transform: translateY(-4px) !important; 
    box-shadow: 0 8px 24px rgba(0,0,0,0.12) !important; 
}

.card-header { 
    background: var(--axyn-gradient) !important; 
    color: white !important; 
    padding: 1rem 1.5rem !important; 
    border: none !important; 
}

.card-header h6, 
.card-header .h6 { 
    color: white !important; 
    margin: 0 !important; 
}

.card-body { 
    padding: 1.5rem !important; 
}

.card-body p { 
    color: var(--axyn-charcoal) !important; 
}

/* === Alerts === */
.alert { 
    border-radius: 12px !important; 
    border: 2px solid !important; 
    padding: 1.25rem 1.5rem !important; 
}

.alert h2 { 
    color: var(--axyn-charcoal) !important; 
    font-size: 1.5rem !important; 
    margin-bottom: 0.5rem !important; 
}

.alert p { 
    color: var(--axyn-charcoal) !important; 
    margin-bottom: 0.5rem !important; 
}

.alert-info { 
    background: linear-gradient(135deg, rgba(65,160,183,0.1), rgba(69,123,157,0.05)) !important; 
    border-color: var(--axyn-teal) !important; 
}

.alert-success { 
    background: rgba(39,174,96,0.1) !important; 
    border-color: #27ae60 !important; 
}

.alert-warning { 
    background: rgba(243,156,18,0.1) !important; 
    border-color: #f39c12 !important; 
}

.alert-danger { 
    background: rgba(231,76,60,0.1) !important; 
    border-color: #e74c3c !important; 
}

/* === Tables === */
.table thead { 
    background: var(--axyn-gradient) !important; 
}

.table thead th { 
    color: white !important; 
    font-weight: 600 !important; 
}

.table tbody tr:hover { 
    background: rgba(65,160,183,0.05) !important; 
}

/* === Forms === */
.form-control, 
.form-select, 
input:not([type="submit"]), 
textarea, 
select { 
    border: 1px solid var(--axyn-blue-gray) !important; 
    border-radius: 8px !important; 
}

.form-control:focus, 
input:focus, 
textarea:focus, 
select:focus { 
    border-color: var(--axyn-teal) !important; 
    box-shadow: 0 0 0 0.25rem rgba(65,160,183,0.15) !important; 
}

/* === Footer === */
.header a,
.footer a {
    color: white !important;
}

.header a:hover,
.footer a:hover {
    color: rgba(255, 255, 255, 0.8) !important;
}

.footer p,
.footer li,
.footer h4,
.footer span,
.footer .small {
    color: white !important;
}

/*
footer, 
#footer { 
    background: var(--axyn-navy) !important; 
    color: rgba(255,255,255,0.8) !important; 
    padding: 2rem 0 !important; 
    margin-top: 3rem !important; 
}

footer span, 
#footer span,
footer .small,
#footer .small { 
    color: rgba(255,255,255,0.8) !important; 
}

footer a, 
#footer a { 
    color: var(--axyn-teal) !important; 
}

footer a:hover, 
#footer a:hover { 
    color: white !important; 
}
*/

/* "Top" Button */
.btn.bottom-0.end-0,
a.btn.bottom-0.end-0 { 
    background: var(--axyn-teal) !important; 
    color: white !important; 
    border-radius: 50px !important; 
    border: none !important;
}

.btn.bottom-0.end-0:hover,
a.btn.bottom-0.end-0:hover {
    background: var(--axyn-teal-hover) !important;
}
