/* =============================================================================
   Tixit (domyhned.cz) brand RECOLOR – pure visual override, no layout changes.
   Palette extracted from the live offer template (templates.id_template=7):
       black  : #111111
       yellow : #FAB207
   ============================================================================= */

:root {
    --tixit-black:        #111111;
    --tixit-black-2:      #000000;
    --tixit-yellow:       #FAB207;
    --tixit-yellow-deep:  #d99403;
}

/* =============================================================================
   TOPBAR – black background, yellow accent line, DOMYHNED logo in navbar-brand.
   Also override .navbar-header which has bg:#fff in the original styles
   (otherwise a white strip appears below the topbar before the sidebar).
   ============================================================================= */

.topbar,
.topbar .navbar-collapse,
.topbar .top-navbar,
.topbar .top-navbar .navbar-header,
.navbar-header {
    background: var(--tixit-black) !important;
    border-bottom-color: var(--tixit-yellow);
}
.topbar {
    border-bottom: 2px solid var(--tixit-yellow);
}
/* Navbar brand – flex centered both axes across the full 70px topbar.
   Matches the visual weight of the original "TIXIT" text placeholder. */
.topbar .navbar-brand {
    background: var(--tixit-black) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 70px !important;
    padding: 0 16px !important;
}
.topbar .navbar-brand .logo-icon,
.topbar .navbar-brand .logo-text {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100%;
    line-height: 1;
}
/* DOMYHNED PNG – bigger, fills the brand area, centered. */
.topbar .navbar-brand .tixit-brand-full {
    height: 52px !important;
    max-height: 52px !important;
    width: auto !important;
    max-width: 220px !important;
    display: block !important;
    margin: 0 auto !important;
}
.topbar .navbar-brand .tixit-brand-mark {
    /* In mini-sidebar mode only .logo-icon shows – crop PNG to just the "D". */
    height: 50px !important;
    max-height: 50px !important;
    width: 50px !important;
    object-fit: cover;
    object-position: 0 center;
    display: block !important;
    margin: 0 auto !important;
}
/* Wooden villa SVG v collapsed (mini) sidebaru — yellow body, brown roof,
   vyrazne odlisene od fa-home v Dashboard menu polozce hned pod logem. */
.topbar .navbar-brand .tixit-brand-villa {
    width: 44px !important;
    height: 44px !important;
    display: block !important;
    margin: 0 auto !important;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35));
}
/* Auto-invert team-uploaded raster logos to white on the black topbar */
.topbar .navbar-brand img.dark-logo {
    filter: brightness(0) invert(1);
}

/* =============================================================================
   SIDEBAR – pure recolor, no structural changes. Override the white bg that
   the original CSS sets on .left-sidebar AND on .sidebar-nav ul (the inner
   <ul> covers the parent bg if we don't recolor it too).
   ============================================================================= */

.left-sidebar,
.left-sidebar .scroll-sidebar,
.left-sidebar .sidebar-nav,
.left-sidebar .sidebar-nav ul,
.left-sidebar #sidebarnav {
    background: var(--tixit-black) !important;
}

/* Menu links – legible on black. Selectors mirror the originals from
   styles.css so specificity wins (.sidebar-nav ul .sidebar-item .sidebar-link). */
.left-sidebar .sidebar-nav ul .sidebar-item .sidebar-link {
    color: rgba(255, 255, 255, 0.82) !important;
    opacity: 1 !important;
}
.left-sidebar .sidebar-nav ul .sidebar-item .sidebar-link i {
    color: rgba(255, 255, 255, 0.7) !important;
}
.left-sidebar .sidebar-nav ul .sidebar-item .sidebar-link:hover,
.left-sidebar .sidebar-nav ul .sidebar-item .sidebar-link.active,
.left-sidebar .sidebar-nav ul .sidebar-item.selected > .sidebar-link {
    color: var(--tixit-yellow) !important;
    background: rgba(250, 178, 7, 0.10) !important;
    border-left-color: var(--tixit-yellow) !important;
}
.left-sidebar .sidebar-nav ul .sidebar-item .sidebar-link:hover i,
.left-sidebar .sidebar-nav ul .sidebar-item .sidebar-link.active i,
.left-sidebar .sidebar-nav ul .sidebar-item.selected > .sidebar-link i {
    color: var(--tixit-yellow) !important;
}
.left-sidebar .sidebar-nav ul .nav-divider {
    background: rgba(255, 255, 255, 0.08) !important;
}
.left-sidebar .sidebar-nav ul .nav-small-cap,
.left-sidebar .sidebar-nav ul .nav-small-cap span {
    color: rgba(255, 255, 255, 0.45) !important;
}
.left-sidebar .sidebar-nav ul .nav-small-cap i {
    color: rgba(255, 255, 255, 0.35) !important;
}
.left-sidebar .sidebar-nav ul .badge.badge-success {
    background: var(--tixit-yellow) !important;
    color: var(--tixit-black) !important;
    font-weight: 700;
}

/* Sidebar footer */
.left-sidebar .sidebar-footer {
    background: var(--tixit-black-2) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
}
.left-sidebar .sidebar-footer .link {
    color: rgba(255, 255, 255, 0.65) !important;
}
.left-sidebar .sidebar-footer .link:hover {
    color: var(--tixit-yellow) !important;
}

/* =============================================================================
   LOGIN PAGE – modern aurora background. Deep-black base, multiple soft
   yellow radial glows ("aurora blobs") slowly drifting + morphing, with a
   very subtle architectural grid overlay (nods at the houses/construction
   business). Vignette around edges to keep eye on the card.
   ============================================================================= */

.main-wrapper.login-bcg {
    background: #08080a;
    position: relative;
    overflow: hidden;
    min-height: 100vh;
}

/* Layer 1 – aurora blobs that visibly drift, rotate and morph. Two
   parallel animations on two stacked layers so the glows shift relative
   to each other (more lifelike than a single-element animation). */
.main-wrapper.login-bcg::before {
    content: '';
    position: fixed;
    inset: -25%;
    background:
        radial-gradient(38% 32% at 18% 28%, rgba(250, 178, 7, 0.50) 0%, transparent 55%),
        radial-gradient(34% 28% at 82% 22%, rgba(250, 178, 7, 0.28) 0%, transparent 55%),
        radial-gradient(48% 38% at 52% 82%, rgba(250, 178, 7, 0.36) 0%, transparent 55%),
        radial-gradient(28% 24% at 88% 72%, rgba(255, 200, 60, 0.26) 0%, transparent 55%),
        radial-gradient(22% 18% at  8% 78%, rgba(217, 148, 3,  0.34) 0%, transparent 55%);
    filter: blur(70px);
    animation: tixitAurora 18s ease-in-out infinite alternate;
    pointer-events: none;
    z-index: 0;
    will-change: transform, filter;
}
@keyframes tixitAurora {
    0%   { transform: translate3d(0, 0, 0)            rotate(0deg)  scale(1);    filter: blur(70px) hue-rotate(0deg);   }
    25%  { transform: translate3d(5vw, -3vh, 0)       rotate(3deg)  scale(1.12); filter: blur(70px) hue-rotate(-6deg);  }
    50%  { transform: translate3d(-3vw, 4vh, 0)       rotate(-4deg) scale(1.18); filter: blur(80px) hue-rotate(8deg);   }
    75%  { transform: translate3d(-5vw, -2vh, 0)      rotate(5deg)  scale(0.92); filter: blur(70px) hue-rotate(-4deg);  }
    100% { transform: translate3d(4vw, 3vh, 0)        rotate(-2deg) scale(1.06); filter: blur(70px) hue-rotate(0deg);   }
}

/* Layer 2 – very subtle architectural grid + vignette */
.main-wrapper.login-bcg::after {
    content: '';
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px),
        radial-gradient(ellipse 80% 70% at center,
            transparent 35%,
            rgba(0, 0, 0, 0.55) 100%);
    background-size: 48px 48px, 48px 48px, 100% 100%;
}

/* =============================================================================
   Tixit auth card – elegant elevated card with black brand header,
   white form body, yellow accent bar between. Sits on top of the animated
   black↔yellow gradient background.
   ============================================================================= */

/* Override the original .auth-wrapper – it's a 420px white column with shadow
   that covers the gradient. We want transparent + full-width so the animated
   black/yellow background shows everywhere; only the card itself stays opaque. */
.auth-wrapper {
    position: relative;
    z-index: 1;
    width: 100% !important;
    max-width: none !important;
    min-height: 100vh;
    margin: 0 !important;
    padding: 24px !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

.tixit-auth-card {
    width: 100%;
    max-width: 440px;
    margin: 0 auto;
    background: #ffffff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow:
        0 30px 80px rgba(0, 0, 0, 0.55),
        0 8px 24px rgba(0, 0, 0, 0.35),
        0 0 0 1px rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(2px);
    animation: tixitAuthRise 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes tixitAuthRise {
    from { opacity: 0; transform: translateY(20px) scale(0.98); }
    to   { opacity: 1; transform: translateY(0)    scale(1);    }
}

/* Header – clean white strip with DOMYHNED logo. Logo PNG is white-on-transparent
   so we invert it to black for legibility on the white header. */
.tixit-auth-header {
    background: #ffffff;
    padding: 32px 36px 24px;
    text-align: center;
    position: relative;
}
.tixit-auth-logo {
    display: block;
    margin: 0 auto;
    width: 220px;
    max-width: 80%;
    height: auto;
    /* Invert white PNG to black so it reads on the white header */
    filter: brightness(0);
}

/* Body – white form area; tight top padding so it sits flush against header */
.tixit-auth-body {
    padding: 28px 36px 24px;
    background: #ffffff;
}
.tixit-auth-body #loginform .logo {
    display: none; /* The original template duplicates the title – we have header */
}
.tixit-auth-body h3.box-title {
    color: var(--tixit-black);
    font-weight: 700;
    font-size: 22px;
    margin: 0 0 22px;
    text-align: center;
}
.tixit-auth-body .form-control,
.tixit-auth-body input[type="text"],
.tixit-auth-body input[type="email"],
.tixit-auth-body input[type="password"] {
    border: 1px solid #e5e5e5 !important;
    border-radius: 8px !important;
    padding: 12px 14px !important;
    height: auto !important;
    font-size: 15px !important;
    transition: border-color .15s ease, box-shadow .15s ease !important;
    outline: none !important;
}
/* Override Bootstrap-derived purple focus ring – yellow Tixit ring instead.
   The original uses !important so we mirror that, plus extra specificity. */
.tixit-auth-body .form-control:focus,
.tixit-auth-body .form-control:focus-visible,
.tixit-auth-body input[type="text"]:focus,
.tixit-auth-body input[type="email"]:focus,
.tixit-auth-body input[type="password"]:focus {
    border-color: var(--tixit-yellow) !important;
    box-shadow: 0 0 0 3px rgba(250, 178, 7, 0.25) !important;
    outline: none !important;
    background-color: #fffdf5 !important;  /* very subtle warm tint */
}
/* Active (mouse pressed) state */
.tixit-auth-body .form-control:active,
.tixit-auth-body input:active {
    border-color: var(--tixit-yellow-deep) !important;
}
.tixit-auth-body .form-group {
    margin-bottom: 14px !important;
}
.tixit-auth-body .btn,
.tixit-auth-body input[type="submit"] {
    width: 100%;
    background: var(--tixit-yellow) !important;
    color: var(--tixit-black) !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 13px 18px !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    transition: transform .12s ease, background .15s ease, box-shadow .15s ease;
    cursor: pointer;
    margin-top: 6px;
    box-shadow: 0 4px 12px rgba(250, 178, 7, 0.30);
}
.tixit-auth-body .btn:hover,
.tixit-auth-body input[type="submit"]:hover {
    background: var(--tixit-yellow-deep) !important;
    color: var(--tixit-black) !important;
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(250, 178, 7, 0.45);
}
.tixit-auth-body a.text-dark {
    color: #777 !important;
    font-size: 13px;
    text-decoration: none;
    transition: color .15s ease;
}
.tixit-auth-body a.text-dark:hover {
    color: var(--tixit-yellow-deep) !important;
}
.tixit-auth-body .text-info {
    color: var(--tixit-yellow-deep) !important;
    font-weight: 600;
}
.tixit-auth-body .flash {
    border-radius: 8px;
    padding: 10px 14px;
    margin-bottom: 12px;
    font-size: 14px;
}

/* Footer – "Powered by INFINA SYSTEM" in lightblue */
.tixit-auth-foot {
    background: #fafafa;
    border-top: 1px solid #f0f0f0;
    padding: 14px 24px;
    text-align: center;
    color: #6CB4EE;            /* light blue */
    font-size: 12px;
    letter-spacing: 0.6px;
}
.tixit-auth-foot strong {
    color: #1E88E5;            /* slightly deeper blue for the brand word */
    font-weight: 700;
    letter-spacing: 0.8px;
}

/* Respect users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
    .main-wrapper.login-bcg::before {
        animation: none;
    }
}
