/*
   AIIQData shared side menu skin.

   This file intentionally overrides legacy inline side-menu styles so every
   authenticated page uses the same drawer palette and interaction pattern.
*/

:root {
    --aiiq-nav-bg: #ffffff;
    --aiiq-nav-bg-2: #f8fbff;
    --aiiq-nav-line: #e5edf6;
    --aiiq-nav-text: #173b63;
    --aiiq-nav-strong: #0f3158;
    --aiiq-nav-muted: #6b7c93;
    --aiiq-nav-accent: #1465bb;
    --aiiq-nav-accent-2: #0d4f9b;
    --aiiq-nav-hover: #eef5ff;
    --aiiq-nav-card: #f8fbff;
    --aiiq-nav-icon-bg: #e8f3ff;
    --aiiq-select-border: #cfe0f3;
    --aiiq-select-bg: #ffffff;
    --aiiq-select-text: #08397a;
}

select:not([size]),
.chart-select {
    appearance: none !important;
    -webkit-appearance: none !important;
    background-color: var(--aiiq-select-bg) !important;
    background-image:
        linear-gradient(45deg, transparent 50%, #1465bb 50%),
        linear-gradient(135deg, #1465bb 50%, transparent 50%),
        linear-gradient(to right, #e8f3ff, #e8f3ff) !important;
    background-position:
        calc(100% - 20px) 50%,
        calc(100% - 14px) 50%,
        calc(100% - 42px) 50% !important;
    background-repeat: no-repeat !important;
    background-size: 6px 6px, 6px 6px, 1px 26px !important;
    border: 1px solid var(--aiiq-select-border) !important;
    border-radius: 15px !important;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.04) !important;
    box-sizing: border-box !important;
    color: var(--aiiq-select-text) !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
    font-size: 14px !important;
    min-height: 46px !important;
    padding: 10px 48px 10px 14px !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

select:not([size]):focus,
.chart-select:focus {
    border-color: #1465bb !important;
    box-shadow: 0 0 0 3px rgba(20, 101, 187, 0.12) !important;
    outline: none !important;
}

select:not([size]):disabled,
.chart-select:disabled {
    background-color: #f4f4f9 !important;
    color: #8a98a9 !important;
    cursor: not-allowed !important;
}

input[type="checkbox"] {
    accent-color: var(--aiiq-nav-accent) !important;
    cursor: pointer !important;
    flex: 0 0 16px !important;
    height: 16px !important;
    margin-bottom: 0 !important;
    min-height: 16px !important;
    min-width: 16px !important;
    width: 16px !important;
}

.menu-icon {
    align-items: center !important;
    background: linear-gradient(135deg, var(--aiiq-nav-accent), var(--aiiq-nav-accent-2)) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 11px !important;
    box-shadow: 0 8px 18px rgba(15, 49, 88, 0.18) !important;
    color: #ffffff !important;
    cursor: pointer !important;
    display: flex !important;
    font-family: Inter, "Segoe UI", Arial, sans-serif !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    height: 34px !important;
    justify-content: center !important;
    left: 9px !important;
    line-height: 1 !important;
    position: fixed !important;
    right: auto !important;
    top: 8px !important;
    width: 34px !important;
    z-index: 20001 !important;
}

.menu-icon:hover {
    box-shadow: 0 10px 24px rgba(30, 144, 255, 0.28) !important;
    transform: translateY(-1px) !important;
}

.side-menu {
    background: var(--aiiq-nav-bg) !important;
    border-left: 0 !important;
    border-right: 0 !important;
    box-shadow: none !important;
    color: var(--aiiq-nav-text) !important;
    display: flex !important;
    flex-direction: column !important;
    font-family: Inter, "Segoe UI", Arial, sans-serif !important;
    gap: 10px !important;
    height: 100vh !important;
    left: 0 !important;
    max-width: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 22px 0 18px !important;
    position: fixed !important;
    right: auto !important;
    scrollbar-color: rgba(148, 197, 255, 0.45) transparent !important;
    top: 0 !important;
    transition: width 0.24s ease, box-shadow 0.24s ease !important;
    width: 0 !important;
    z-index: 20000 !important;
}

.side-menu[style*="326px"],
.side-menu[style*="250px"],
.side-menu[style*="block"] {
    display: flex !important;
    border-right: 1px solid var(--aiiq-nav-line) !important;
    box-shadow: 18px 0 45px rgba(15, 49, 88, 0.14) !important;
    max-width: min(326px, calc(100vw - 28px)) !important;
    padding: 22px 14px 18px !important;
    width: min(326px, calc(100vw - 28px)) !important;
}

.side-menu .menu-logo {
    align-items: center !important;
    border-bottom: 1px solid var(--aiiq-nav-line) !important;
    display: flex !important;
    justify-content: center !important;
    margin: 0 0 8px !important;
    padding: 4px 8px 18px !important;
}

.side-menu .menu-logo svg {
    filter: drop-shadow(0 8px 18px rgba(20, 101, 187, 0.12)) !important;
    height: auto !important;
    max-width: 150px !important;
}

.side-menu .user-details {
    background: var(--aiiq-nav-card) !important;
    border: 1px solid var(--aiiq-nav-line) !important;
    border-radius: 16px !important;
    color: var(--aiiq-nav-text) !important;
    margin: 4px 4px 10px !important;
    padding: 12px !important;
}

.side-menu .user-details p {
    align-items: center !important;
    color: var(--aiiq-nav-text) !important;
    display: flex !important;
    font-size: 13px !important;
    gap: 8px !important;
    line-height: 1.4 !important;
    margin: 6px 0 !important;
}

.side-menu .user-details i {
    color: var(--aiiq-nav-accent) !important;
    min-width: 16px !important;
}

.side-menu .menu-section {
    border-top: 1px solid var(--aiiq-nav-line) !important;
    margin: 4px 0 0 !important;
    padding: 12px 4px 2px !important;
}

.side-menu .menu-label {
    color: var(--aiiq-nav-accent) !important;
    display: block !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    letter-spacing: 0.12em !important;
    margin: 0 8px 8px !important;
    padding-left: 0 !important;
    text-align: left !important;
    text-transform: uppercase !important;
    width: 100% !important;
}

.side-menu a,
.side-menu button {
    align-items: center !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    border-radius: 14px !important;
    color: var(--aiiq-nav-text) !important;
    cursor: pointer !important;
    display: flex !important;
    font-family: Inter, "Segoe UI", Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 720 !important;
    gap: 10px !important;
    line-height: 1.25 !important;
    margin: 3px 0 !important;
    min-height: 42px !important;
    padding: 10px 12px !important;
    text-align: left !important;
    text-decoration: none !important;
    transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, transform 0.16s ease !important;
    width: 100% !important;
}

.side-menu a i,
.side-menu button i {
    align-items: center !important;
    background: var(--aiiq-nav-icon-bg) !important;
    border-radius: 10px !important;
    color: var(--aiiq-nav-accent) !important;
    display: inline-flex !important;
    font-size: 13px !important;
    height: 28px !important;
    justify-content: center !important;
    margin: 0 !important;
    min-width: 28px !important;
    width: 28px !important;
}

.side-menu a:hover,
.side-menu button:hover {
    background: var(--aiiq-nav-hover) !important;
    border-color: #cfe1f5 !important;
    color: var(--aiiq-nav-strong) !important;
    transform: translateX(2px) !important;
}

.side-menu a:hover i,
.side-menu button:hover i {
    background: linear-gradient(135deg, #e8f3ff, #dcecff) !important;
    color: var(--aiiq-nav-accent) !important;
}

.side-menu .dropdown-toggle {
    background: var(--aiiq-nav-card) !important;
    border-color: var(--aiiq-nav-line) !important;
}

.side-menu .dropdown-menu {
    background: #ffffff !important;
    border: 1px solid var(--aiiq-nav-line) !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 22px rgba(20, 101, 187, 0.08) !important;
    flex-direction: column !important;
    margin: 6px 0 10px 12px !important;
    overflow: hidden !important;
    padding: 6px !important;
    width: calc(100% - 12px) !important;
}

.side-menu .dropdown-menu button {
    display: flex !important;
    flex: 0 0 auto !important;
    color: var(--aiiq-nav-text) !important;
    font-size: 13px !important;
    min-height: 36px !important;
    padding: 8px 10px !important;
    width: 100% !important;
}

.side-menu .dropdown-menu button::before {
    background: var(--aiiq-nav-accent) !important;
    border-radius: 999px !important;
    content: "" !important;
    height: 5px !important;
    margin-right: 8px !important;
    width: 5px !important;
}

.side-menu .dropdown-menu button:hover {
    transform: translateX(1px) !important;
}

.side-menu .menu-section:last-child button:last-child {
    background: #fff7f7 !important;
    border-color: #fde2e2 !important;
    color: #9f1d1d !important;
}

@media (max-width: 640px) {
    .menu-icon {
        left: 8px !important;
        right: auto !important;
        top: 8px !important;
    }

    .side-menu[style*="326px"],
    .side-menu[style*="250px"],
    .side-menu[style*="block"] {
        max-width: min(310px, calc(100vw - 18px)) !important;
        width: min(310px, calc(100vw - 18px)) !important;
    }
}
