/* === Joker Network brand overrides for Tide theme === */
/* Matches hosting.joker.rs indigo palette: primary #4F46E5, accent #7C3AED */

:root {
    --tblr-primary: #4F46E5;
    --tblr-primary-rgb: 79, 70, 229;
    --tblr-primary-fg: #ffffff;
    --tblr-font-sans-serif: 'Inter Var', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
}

/* Map Tabler indigo to our exact brand indigo */
.btn-indigo,
.btn-indigo:focus,
.btn-indigo:hover {
    --tblr-btn-color: #4F46E5;
    --tblr-btn-color-hover: #4338CA;
    background-color: #4F46E5;
    border-color: #4F46E5;
}
.btn-indigo:hover {
    background-color: #4338CA;
    border-color: #4338CA;
}

/* Accent purple (from hosting.joker.rs accent #7C3AED) */
.btn-purple {
    background-color: #7C3AED;
    border-color: #7C3AED;
}
.btn-purple:hover {
    background-color: #6D28D9;
    border-color: #6D28D9;
}

/* Card top accent bars use brand indigo */
.card-status-top.bg-indigo {
    background-color: #4F46E5 !important;
}

/* Links use brand indigo */
a {
    color: #4F46E5;
}
a:hover {
    color: #4338CA;
}

/* Navbar brand logo — match hosting.joker.rs sizing */
.responsive-logo {
    height: 40px;
    width: auto;
}

/* Dashboard showcase banner — brand gradient like hosting.joker.rs */
.card.bg-indigo {
    background: linear-gradient(135deg, #4F46E5 0%, #7C3AED 100%) !important;
}

/* Order page ribbons */
.ribbon.bg-indigo {
    background-color: #4F46E5 !important;
}

/* Login page polish */
@media (min-width: 992px) {
    .navbar-brand img,
    .navbar-brand .responsive-logo {
        height: 40px;
    }
}

/* Smooth transitions like hosting.joker.rs */
.btn,
.card,
.nav-link {
    transition: all 0.2s ease;
}

/* Font feature settings for cleaner Inter rendering */
body {
    font-feature-settings: "cv03", "cv04", "cv11", "ss01";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* === Unified header (matches hosting.joker.rs) === */
.joker-header {
    background: rgba(255,255,255,0.9) !important;
    backdrop-filter: blur(16px);
    border-bottom: 1px solid rgba(229,231,235,0.7);
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}
[data-bs-theme="dark"] .joker-header {
    background: rgba(3,7,18,0.9) !important;
    border-bottom-color: rgba(31,41,55,0.7);
}
.joker-header .navbar-brand a {
    color: #111827;
    text-decoration: none;
}
[data-bs-theme="dark"] .joker-header .navbar-brand a {
    color: #fff;
}
.joker-nav-link {
    padding: 8px 12px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 600;
    color: #6b7280;
    text-decoration: none;
    transition: all 0.2s;
    white-space: nowrap;
}
.joker-nav-link:hover {
    color: #111827;
    background: rgba(255,255,255,0.8);
}
[data-bs-theme="dark"] .joker-nav-link { color: #9ca3af; }
[data-bs-theme="dark"] .joker-nav-link:hover {
    color: #fff;
    background: rgba(31,41,55,0.8);
}
.joker-btn-brand {
    background-color: #4F46E5 !important;
    border-color: #4F46E5 !important;
}
.joker-btn-brand:hover {
    background-color: #4338CA !important;
    border-color: #4338CA !important;
}

/* === Footer (matches hosting.joker.rs dark footer) === */
.joker-footer {
    background: #030712;
    color: #d1d5db;
    border-top: 1px solid #1f2937;
    padding: 48px 0 24px;
}
.joker-footer-hero {
    border: 1px solid #1f2937;
    background: rgba(17,24,39,0.7);
    border-radius: 32px;
    padding: 24px;
    margin-bottom: 40px;
}
.joker-footer-link {
    color: #9ca3af;
    text-decoration: none;
    font-size: 14px;
    transition: color 0.2s;
}
.joker-footer-link:hover { color: #818CF8; }
.joker-footer-bottom {
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid #1f2937;
    text-align: center;
}
.joker-footer-bottom p {
    font-size: 12px;
    color: #6b7280;
    margin: 0;
}

/* Page wrapper */
.page { display: flex; flex-direction: column; min-height: 100vh; }
.page-wrapper { flex: 1; }
