/* /Layout/LandingLayout.razor.rz.scp.css */
/* Move CSS variables into the layout scope to avoid CSS isolation scoping issues */
.landing-wrapper[b-iql2k64o5o] {
    --brand-navy: #1a2033;
    --brand-indigo: #232a48;
    --brand-accent: #1f78ff;
    --brand-accent-hover: #1563d4;
    --text-on-dark: #f6f9ff; /* brighter */
}

.landing-wrapper[b-iql2k64o5o] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    /* Image background with subtle dark overlay for readability */
    background: linear-gradient(180deg, rgba(26,32,51,0.49) 0%, rgba(35,42,72,0.49) 100%), url('/images/landing-bg.png?v=4');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 24px;
}

.landing-card[b-iql2k64o5o] {
    text-align: center;
    max-width: 560px;
    width: 100%;
    padding: 32px 28px 40px 28px;
    background: rgba(0, 0, 0, 0.35);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.35);
    color: var(--text-on-dark);
    backdrop-filter: blur(4px);
}

/* Content inside the card */
.landing-card[b-iql2k64o5o]  .landing-logo {
    max-width: 260px;
    width: 100%;
    height: auto;
    margin: 0 auto 18px auto;
    display: block;
}

/* Make subtitle and headings very readable */
.landing-card[b-iql2k64o5o]  .landing-subtitle,
.landing-card[b-iql2k64o5o]  h3 {
    color: var(--text-on-dark) !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.55);
    margin-bottom: 16px;
}

/* Inputs: force brighter text and caret on dark bg */
.landing-card[b-iql2k64o5o]  .landing-input,
.landing-card[b-iql2k64o5o]  input.landing-input,
.landing-card[b-iql2k64o5o]  input.landing-input[type="text"],
.landing-card[b-iql2k64o5o]  input.landing-input[type="email"],
.landing-card[b-iql2k64o5o]  input.landing-input[type="password"] {
    height: 50px;
    border-radius: 28px;
    padding: 0 18px;
    border: 1px solid rgba(255, 255, 255, 0.55);
    width: 100%;
    background: rgba(255,255,255,0.18);
    color: var(--text-on-dark) !important;
    -webkit-text-fill-color: var(--text-on-dark) !important;
    caret-color: var(--text-on-dark);
    outline: none;
}

/* Autofill overrides for Chrome/WebKit */
.landing-card[b-iql2k64o5o]  input.landing-input:-webkit-autofill,
.landing-card[b-iql2k64o5o]  input.landing-input:-webkit-autofill:hover,
.landing-card[b-iql2k64o5o]  input.landing-input:-webkit-autofill:focus {
    -webkit-text-fill-color: var(--text-on-dark) !important;
    transition: background-color 9999s ease-in-out 0s;
}

.landing-card[b-iql2k64o5o]  .landing-input::placeholder{ color: rgba(255,255,255,0.95); }

/* Improve selection contrast */
.landing-card[b-iql2k64o5o]  .landing-input::selection { background: rgba(255,255,255,0.5); color: #000; }

.landing-card[b-iql2k64o5o]  .landing-button {
    margin-top: 14px;
    height: 50px;
    border-radius: 28px;
    width: 100%;
    background-color: var(--brand-accent);
    color: white;
    border: none;
    font-weight: 600;
}

.landing-card[b-iql2k64o5o]  .landing-button:hover { background-color: var(--brand-accent-hover); }

/* Ensure error text stays readable */
.landing-card[b-iql2k64o5o]  .text-danger { color: #ffd1d1 !important; }
/* /Layout/MainLayout.razor.rz.scp.css */
.app-shell[b-yx3kxst34q] {
    display: grid;
    grid-template-columns: 56px 220px 1fr;
    grid-template-rows: 48px 1fr;
    grid-template-areas:
        "topbar topbar topbar"
        "rail   sidebar content";
    height: 100vh;
    overflow: hidden;
}

.app-shell-unauth[b-yx3kxst34q] {
    min-height: 100vh;
}

.app-topbar[b-yx3kxst34q] {
    grid-area: topbar;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 1rem;
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    color: #fff;
    z-index: 100;
}

.topbar-left[b-yx3kxst34q] {
    display: flex;
    align-items: center;
}

.topbar-brand[b-yx3kxst34q] {
    font-weight: 600;
    font-size: 1.1rem;
    color: #fff;
    text-decoration: none;
}

.topbar-brand:hover[b-yx3kxst34q] { color: #ccc; }

.topbar-right[b-yx3kxst34q] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.topbar-user[b-yx3kxst34q] {
    font-size: 0.85rem;
    opacity: 0.85;
}

.icon-rail[b-yx3kxst34q] {
    grid-area: rail;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0.5rem 0;
    background: #1a1a2e;
    overflow-y: auto;
    z-index: 90;
}

.rail-item[b-yx3kxst34q] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 8px;
    color: rgba(255, 255, 255, 0.6);
    text-decoration: none;
    font-size: 1.2rem;
    margin-bottom: 2px;
    transition: all 0.15s;
}

.rail-item:hover[b-yx3kxst34q] {
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
}

.rail-item.active[b-yx3kxst34q] {
    background: rgba(255, 255, 255, 0.15);
    color: #4dabf7;
}

.rail-label[b-yx3kxst34q] {
    font-size: 0.6rem;
    margin-top: 1px;
    line-height: 1;
}

.rail-spacer[b-yx3kxst34q] { flex: 1; }

.module-sidebar[b-yx3kxst34q] {
    grid-area: sidebar;
    display: flex;
    flex-direction: column;
    background: #f8f9fa;
    border-right: 1px solid #dee2e6;
    padding: 0.75rem 0;
    overflow-y: auto;
}

.module-sidebar.collapsed[b-yx3kxst34q] { display: none; }

.sidebar-header[b-yx3kxst34q] {
    padding: 0.5rem 1rem;
    font-weight: 600;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6c757d;
}

[b-yx3kxst34q] .sidebar-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    color: #495057;
    text-decoration: none;
    font-size: 0.875rem;
    border-left: 3px solid transparent;
    transition: all 0.1s;
}

[b-yx3kxst34q] .sidebar-item:hover {
    background: #e9ecef;
    color: #212529;
}

[b-yx3kxst34q] .sidebar-item.active {
    background: #e7f1ff;
    color: #0d6efd;
    border-left-color: #0d6efd;
    font-weight: 500;
}

.app-content[b-yx3kxst34q] {
    grid-area: content;
    padding: 1.25rem 1.5rem;
    overflow-y: auto;
    background: #fff;
}

.app-content.no-sidebar[b-yx3kxst34q] {
    grid-column: sidebar / -1;
}

.mobile-overlay[b-yx3kxst34q] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 80;
}

@media (max-width: 767.98px) {
    .app-shell[b-yx3kxst34q] {
        grid-template-columns: 1fr;
        grid-template-rows: 48px 1fr;
        grid-template-areas:
            "topbar"
            "content";
    }

    .icon-rail[b-yx3kxst34q] {
        position: fixed;
        left: 0;
        top: 48px;
        bottom: 0;
        width: 56px;
        transform: translateX(-100%);
        transition: transform 0.2s;
    }

    .icon-rail.show[b-yx3kxst34q] { transform: translateX(0); }

    .module-sidebar[b-yx3kxst34q] {
        position: fixed;
        left: 56px;
        top: 48px;
        bottom: 0;
        width: 220px;
        transform: translateX(-276px);
        transition: transform 0.2s;
        z-index: 85;
    }

    .module-sidebar.show[b-yx3kxst34q] { transform: translateX(0); }
    .module-sidebar.collapsed[b-yx3kxst34q] { display: none; }

    .app-content[b-yx3kxst34q] {
        grid-column: 1;
        padding: 1rem;
    }

    .app-content.no-sidebar[b-yx3kxst34q] { grid-column: 1; }
}
/* /Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-4hxk6zmpe3] {
    background-color: rgba(255, 255, 255, 0.1);
}

.top-row[b-4hxk6zmpe3] {
    height: 3.5rem;
    background-color: #1f2a44; /* match brand navy */
}

.navbar-brand[b-4hxk6zmpe3] {
    font-size: 1.1rem;
}

.bi[b-4hxk6zmpe3] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

/* Icons for each menu item */
.bi-house-door-fill-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E"); }
.bi-people-fill-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-people-fill' viewBox='0 0 16 16'%3E%3Cpath d='M13 7a2 2 0 1 0-4 0 2 2 0 0 0 4 0m-7 2a3 3 0 1 1 0-6 3 3 0 0 1 0 6M6 9a4.999 4.999 0 0 0-4 2.5C2 13 3.5 14 6 14s4-1 4-2.5A4.999 4.999 0 0 0 6 9m5.216 3.752c.339.148.705.248 1.097.248 1.657 0 3-1 3-2.5S13.97 8 12.313 8A3.236 3.236 0 0 1 11 8.3'/%3E%3C/svg%3E"); }
.bi-kanban-fill-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-kanban-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 2a.5.5 0 0 0-.5.5v11A1.5 1.5 0 0 0 3 15h10a1.5 1.5 0 0 0 1.5-1.5v-11A.5.5 0 0 0 14 2zM5.5 6A.5.5 0 0 1 6 5.5h1A.5.5 0 0 1 7.5 6V13H6V6.5a.5.5 0 0 1-.5-.5m3 2A.5.5 0 0 1 9 7.5h1a.5.5 0 0 1 .5.5v5H9zM12.5 5A.5.5 0 0 1 13 4.5h1a.5.5 0 0 1 .5.5v8h-2z'/%3E%3C/svg%3E"); }
.bi-person-badge-fill-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-badge-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 2.5a1.5 1.5 0 1 1 3 0h1A1.5 1.5 0 0 1 12 4v8a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 12V4A1.5 1.5 0 0 1 5.5 2.5zM8 11.25c1.257 0 2.45.284 3.5.79V12c0-.757-1.567-1.25-3.5-1.25S4.5 11.243 4.5 12v.04c1.05-.506 2.243-.79 3.5-.79zM8 10a2 2 0 1 0 0-4 2 2 0 0 0 0 4'/%3E%3C/svg%3E"); }
.bi-receipt-cutoff-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-receipt-cutoff' viewBox='0 0 16 16'%3E%3Cpath d='M1.92.506a.5.5 0 0 1 .58 0L3 1.06l.5-.553a.5.5 0 0 1 .737.031L4.98 1.77l.744-.74a.5.5 0 0 1 .703.703L5.98 2.475l.74.745a.5.5 0 0 1-.032.737L6.06 4 5.506 4.5a.5.5 0 0 1-.58 0L4 3.94l-.5.553a.5.5 0 0 1-.737-.03L3.02 3.23l-.744.74a.5.5 0 1 1-.703-.703l.744-.744-.74-.744a.5.5 0 0 1 .031-.737L2.495 0l.453.506.972-.972zM1 4h14v9.5a1.5 1.5 0 0 1-1.5 1.5H2.5A1.5 1.5 0 0 1 1 13.5z'/%3E%3C/svg%3E"); }
.bi-chat-dots-fill-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-chat-dots-fill' viewBox='0 0 16 16'%3E%3Cpath d='M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0Zm-3.5 7a1 1 0 1 1 0 2 1 1 0 0 1 0-2m3.5 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2m3.5 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2'/%3E%3C/svg%3E"); }
.bi-shield-shaded-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-shield-shaded' viewBox='0 0 16 16'%3E%3Cpath d='M5.5.051a1.7 1.7 0 0 0-.6.23l-3.637 2.1A1.5 1.5 0 0 0 0 3.648V6c0 5.186 3.218 7.22 5.714 8.458.318.156.643.187.948.109z'/%3E%3Cpath d='M8 0c-.077 0-.223.012-.391.051L7.61 14.568c.305.078.63.047.948-.109C11.055 13.22 14.273 11.186 14.273 6V3.648a1.5 1.5 0 0 0-1.264-1.267L9.372.281A1.7 1.7 0 0 0 8.773.051z'/%3E%3C/svg%3E"); }
.bi-box-seam-fill-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-box-seam-fill' viewBox='0 0 16 16'%3E%3Cpath d='M1 2.828v8.837c0 .324.175.623.461.784l6 3.428a.9.9 0 0 0 .878 0l6-3.428A.9.9 0 0 0 15 11.665V2.828a.9.9 0 0 0-.461-.784l-6-3.428a.9.9 0 0 0-.878 0l-6 3.428A.9.9 0 0 0 1 2.828z'/%3E%3C/svg%3E"); }
.bi-clipboard2-check-fill-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-clipboard2-check-fill' viewBox='0 0 16 16'%3E%3Cpath d='M10 1.5A1.5 1.5 0 0 1 11.5 3v.5h1A1.5 1.5 0 0 1 14 5v8A1.5 1.5 0 0 1 12.5 14.5h-9A1.5 1.5 0 0 1 2 13V5a1.5 1.5 0 0 1 1.5-1.5h1V3A1.5 1.5 0 0 1 6 1.5zM3.854 8.646a.5.5 0 0 0-.708.708l2 2a.5.5 0 0 0 .708 0l4-4a.5.5 0 1 0-.708-.708L5.5 10.293z'/%3E%3C/svg%3E"); }

/* Sign-out icon */
.bi-box-arrow-right-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-box-arrow-right' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M10 12.5a.5.5 0 0 1-.5.5h-5A1.5 1.5 0 0 1 3 11.5v-7A1.5 1.5 0 0 1 4.5 3h5a.5.5 0 0 1 0 1h-5A.5.5 0 0 0 4 4.5v7a.5.5 0 0 0 .5.5h5a.5.5 0 0 1 .5.5'/%3E%3Cpath fill-rule='evenodd' d='M15.854 8.354a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L14.293 7.5H6.5a.5.5 0 0 0 0 1h7.793l-2.147 2.146a.5.5 0 0 0 .708.708z'/%3E%3C/svg%3E"); }

/* Admin (gear) icon */
.bi-gear-fill-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-gear-fill' viewBox='0 0 16 16'%3E%3Cpath d='M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 0 1-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1c.895.264 1.318 1.285.872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169c.82-.446 1.841-.023 2.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34c.264-.895 1.285-1.318 2.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 0 1 .872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 0 1-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 0 1-2.105-.872zM8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5z'/%3E%3C/svg%3E"); }

/* Add a key icon for Change password */
.bi-key-fill-nav-menu[b-4hxk6zmpe3] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-key-fill' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 11a3.5 3.5 0 1 1 2.84-5.595l3.854-3.853a.5.5 0 0 1 .353-.146H12a1 1 0 0 1 1 1v1.5h1.5a.5.5 0 0 1 .5.5V6h1a1 1 0 0 1 1 1v1a.5.5 0 0 1-.5.5H15v1a1 1 0 0 1-1 1h-1.293l-1.5 1.5A.5.5 0 0 1 10.5 12h-2.793l-.354.354A3.5 3.5 0 0 1 3.5 11zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z'/%3E%3C/svg%3E"); }

.nav-item[b-4hxk6zmpe3] { font-size: 0.95rem; padding-bottom: 0.5rem; }
.nav-item:first-of-type[b-4hxk6zmpe3] { padding-top: 1rem; }
.nav-item:last-of-type[b-4hxk6zmpe3] { padding-bottom: 1rem; }
.nav-item[b-4hxk6zmpe3]  a { color: #d7d7d7; border-radius: 6px; height: 3rem; display: flex; align-items: center; line-height: 3rem; }
.nav-item[b-4hxk6zmpe3]  a.active { background-color: rgba(255,255,255,0.22); color: white; }
.nav-item[b-4hxk6zmpe3]  a:hover { background-color: rgba(255,255,255,0.12); color: white; }

@media (min-width: 641px) {
    .navbar-toggler[b-4hxk6zmpe3] { display: none; }
    .collapse[b-4hxk6zmpe3] { display: block; }
    .nav-scrollable[b-4hxk6zmpe3] { height: calc(100vh - 3.5rem); overflow-y: auto; }
}
