/*
|--------------------------------------------------------------------------
| SIDEBAR
|--------------------------------------------------------------------------
*/

.sidebar{

    width:280px;
	
	min-width:280px;

    background:#0f172a;

    border-right:1px solid #1e293b;

    display:flex;

    flex-direction:column;

    transition:0.3s ease;

    overflow:hidden;

}

/*
|--------------------------------------------------------------------------
| COLLAPSED
|--------------------------------------------------------------------------
*/

.sidebar.collapsed{

    width:80px;

}

/*
|--------------------------------------------------------------------------
| TOP
|--------------------------------------------------------------------------
*/

.sidebar-top{

    padding:15px;

    display:flex;

    gap:10px;

    align-items:center;

}

.logo{
    font-size:24px;
    font-weight:bold;
    color:#38bdf8;
    margin-bottom:20px;
    letter-spacing:1px;
}

/*
|--------------------------------------------------------------------------
| NEW CHAT BUTTON
|--------------------------------------------------------------------------
*/

.new-chat-btn{

    flex:1;

    height:45px;

    border:none;

    border-radius:12px;

    background:#2563eb;

    color:#fff;

    font-weight:bold;

    cursor:pointer;

    transition:0.2s;

}

.new-chat-btn:hover{

    opacity:0.9;

}

/*
|--------------------------------------------------------------------------
| CONVERSATIONS
|--------------------------------------------------------------------------
*/

.conversations{

    flex:1;

    overflow-y:auto;

    padding:10px;

}

/*
|--------------------------------------------------------------------------
| SCROLLBAR
|--------------------------------------------------------------------------
*/

.conversations::-webkit-scrollbar{
    width:6px;
}

.conversations::-webkit-scrollbar-thumb{
    background:#1e293b;
    border-radius:20px;
}

/*
|--------------------------------------------------------------------------
| CONVERSATION ITEM
|--------------------------------------------------------------------------
*/

.conversation-item{

    padding:14px;

    border-radius:12px;

    margin-bottom:8px;

    cursor:pointer;

    transition:0.2s;

    color:#cbd5e1;

    background:transparent;

}

.conversation-item:hover{

    background:#1e293b;

}

/*
|--------------------------------------------------------------------------
| ACTIVE CHAT
|--------------------------------------------------------------------------
*/

.conversation-item.active{

    background:#2563eb;

    color:#fff;

}

/*
|--------------------------------------------------------------------------
| CONVERSATION LAYOUT
|--------------------------------------------------------------------------
*/

.conversation-item{

    position:relative;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:10px;

}

/*
|--------------------------------------------------------------------------
| TITLE
|--------------------------------------------------------------------------
*/

.conversation-title{

    flex:1;

    overflow:hidden;

    white-space:nowrap;

    text-overflow:ellipsis;

    font-size:14px;

}

/*
|--------------------------------------------------------------------------
| MENU BUTTON
|--------------------------------------------------------------------------
*/

.conversation-menu-btn{

    width:30px;

    height:30px;

    border:none;

    background:transparent;

    color:#94a3b8;

    border-radius:8px;

    cursor:pointer;

    transition:0.2s ease;

    flex-shrink:0;

    display:flex;

    align-items:center;

    justify-content:center;

    opacity:0.7;

}

/*
|--------------------------------------------------------------------------
| HOVER
|--------------------------------------------------------------------------
*/

.conversation-menu-btn:hover{

    background:#334155;

    color:#ffffff;

    opacity:1;

}

/*
|--------------------------------------------------------------------------
| SHOW FULLY ON CHAT HOVER
|--------------------------------------------------------------------------
*/

.conversation-item:hover
.conversation-menu-btn{

    opacity:1;

}

.conversation-menu-btn:hover{

    background:#334155;

    color:#ffffff;

}

/*
|--------------------------------------------------------------------------
| DROPDOWN
|--------------------------------------------------------------------------
*/

.conversation-dropdown{

    position:absolute;

    top:50px;

    right:10px;

    width:150px;

    background:#111827;

    border:1px solid #1e293b;

    border-radius:14px;

    overflow:hidden;

    display:none;

    z-index:999;

    box-shadow:
        0 10px 30px rgba(0,0,0,0.4);

}

/*
|--------------------------------------------------------------------------
| SHOW DROPDOWN
|--------------------------------------------------------------------------
*/

.conversation-dropdown.show{

    display:flex;

    flex-direction:column;

}

/*
|--------------------------------------------------------------------------
| DROPDOWN BUTTONS
|--------------------------------------------------------------------------
*/

.conversation-dropdown button{

    width:100%;

    border:none;

    background:none;

    color:#ffffff;

    padding:12px 14px;

    text-align:left;

    cursor:pointer;

    transition:0.2s;

    font-size:14px;

}

.conversation-dropdown button:hover{

    background:#1e293b;

}

/*
|--------------------------------------------------------------------------
| DELETE BUTTON
|--------------------------------------------------------------------------
*/

.delete-chat-btn{

    color:#f87171 !important;

}

/*
|--------------------------------------------------------------------------
| MOBILE
|--------------------------------------------------------------------------
*/

@media(max-width:900px){

    .conversation-dropdown{

        right:0;

    }

}

/*
|--------------------------------------------------------------------------
| ACTIVE CONVERSATION
|--------------------------------------------------------------------------
*/

.active-conversation{
    background:#1e293b !important;
    border-color:#38bdf8 !important;
    color:#ffffff;
}

/*
|--------------------------------------------------------------------------
| BOTTOM USER AREA
|--------------------------------------------------------------------------
*/

.sidebar-bottom{
    border-top:1px solid #1e293b;
    padding:20px;
    background:#0b1120;
}

.user-box{
    background:#111827;
    padding:14px;
    border-radius:12px;
}

.user-name{
    font-weight:bold;
    margin-bottom:5px;
    color:#ffffff;
}

.user-plan{
    color:#94a3b8;
    font-size:13px;
}

/*
|--------------------------------------------------------------------------
| COLLAPSED TEXT
|--------------------------------------------------------------------------
*/

.sidebar.collapsed .new-chat-btn{

    display:none;

}

/*
|--------------------------------------------------------------------------
| COLLAPSED CONVERSATIONS
|--------------------------------------------------------------------------
*/

.sidebar.collapsed .conversation-item{

    text-align:center;

    font-size:12px;

    padding:14px 5px;

}

/*
|--------------------------------------------------------------------------
| TOGGLE BUTTON
|--------------------------------------------------------------------------
*/

.sidebar-toggle{

    width:45px;

    height:45px;

    border:none;

    border-radius:12px;

    background:#1e293b;

    color:#fff;

    cursor:pointer;

    font-size:18px;

}

/*
|--------------------------------------------------------------------------
| MOBILE SIDEBAR
|--------------------------------------------------------------------------
*/

@media(max-width:900px){

    .sidebar{

        position:fixed;

        left:-260px;

        top:0;

        width:240px;

        min-width:240px;

        height:100vh;

        z-index:9999;

        transition:left 0.3s ease;

        box-shadow:
            0 0 20px rgba(0,0,0,0.4);

        overflow-y:auto;

        overflow-x:hidden;

        -webkit-overflow-scrolling:touch;

    }

    .sidebar.open{

        left:0;

    }

}

#sidebarOverlay{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,0.5);

    z-index:9998;

    opacity:0;

    pointer-events:none;

    transition:0.3s;

}

#sidebarOverlay.active{

    opacity:1;

    pointer-events:auto;

}

.sidebar-overlay{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,0.5);

    z-index:998;

    opacity:0;

    visibility:hidden;

    transition:0.3s;

}

/*
|--------------------------------------------------------------------------
| ACTIVE
|--------------------------------------------------------------------------
*/

.sidebar-overlay.active{

    opacity:1;

    visibility:visible;

}

/*
|--------------------------------------------------------------------------
| PERSONALITY WRAPPER
|--------------------------------------------------------------------------
*/

.personality-wrapper{

    margin-top:15px;

}

/*
|--------------------------------------------------------------------------
| LABEL
|--------------------------------------------------------------------------
*/

.personality-label{

    display:block;

    margin-bottom:8px;

    font-size:13px;

    color:#94a3b8;

    font-weight:600;

    letter-spacing:0.5px;

}

/*
|--------------------------------------------------------------------------
| SELECT
|--------------------------------------------------------------------------
*/

#personalitySelect{

    width:100%;

    background:#1e293b;

    color:#ffffff;

    border:1px solid #334155;

    border-radius:12px;

    padding:12px 14px;

    font-size:14px;

    outline:none;

    cursor:pointer;

    transition:all 0.2s ease;

}

/*
|--------------------------------------------------------------------------
| HOVER
|--------------------------------------------------------------------------
*/

#personalitySelect:hover{

    border-color:#38bdf8;

    background:#243244;

}

/*
|--------------------------------------------------------------------------
| FOCUS
|--------------------------------------------------------------------------
*/

#personalitySelect:focus{

    border-color:#38bdf8;

    box-shadow:
        0 0 0 3px rgba(
            56,
            189,
            248,
            0.25
        );

}

/*
|--------------------------------------------------------------------------
| OPTIONS
|--------------------------------------------------------------------------
*/

#personalitySelect option{

    background:#0f172a;

    color:#ffffff;

}

/*
|--------------------------------------------------------------------------
| COLLAPSED SIDEBAR
|--------------------------------------------------------------------------
*/

.sidebar.collapsed .personality-wrapper{

    display:none;

}

/*
|--------------------------------------------------------------------------
| AI SETTINGS
|--------------------------------------------------------------------------
*/

.ai-settings{

    margin-top:18px;

}

.toggle-item{

    display:flex;

    align-items:center;

    gap:10px;

    margin-top:12px;

    font-size:14px;

    color:#cbd5e1;

}

.toggle-item input{

    width:18px;

    height:18px;

    accent-color:#38bdf8;

}

/*
|--------------------------------------------------------------------------
| MOBILE SIDEBAR LINKS
|--------------------------------------------------------------------------
*/

.mobile-sidebar-links{

    padding:15px;

    border-top:1px solid #1e293b;

    display:flex;

    flex-direction:column;

    gap:10px;

}

.mobile-sidebar-links a{

    text-decoration:none;

    color:#ffffff;

    background:#111827;

    padding:14px;

    border-radius:12px;

    transition:0.2s;

}

.mobile-sidebar-links a:hover{

    background:#1e293b;

}

/*
|--------------------------------------------------------------------------
| MOBILE SIDEBAR IMPROVEMENTS
|--------------------------------------------------------------------------
*/

@media(max-width:900px){

    /*
    |--------------------------------------------------------------------------
    | SMALLER SIDEBAR
    |--------------------------------------------------------------------------
    */

    .sidebar{

        width:240px;
        min-width:240px;

    }

    /*
    |--------------------------------------------------------------------------
    | SMALLER TOP AREA
    |--------------------------------------------------------------------------
    */

    .sidebar-top{

        padding:12px;

    }

    .logo{

        font-size:20px;
        margin-bottom:10px;

    }

    .new-chat-btn{

        height:40px;
        font-size:14px;

    }

    /*
    |--------------------------------------------------------------------------
    | CONVERSATIONS
    |--------------------------------------------------------------------------
    */

    .conversations{

        padding:8px;

    }

    .conversation-item{

        padding:10px;
        margin-bottom:6px;

    }

    .conversation-title{

        font-size:13px;

    }

    /*
    |--------------------------------------------------------------------------
    | USER BOX
    |--------------------------------------------------------------------------
    */

    .sidebar-bottom{

        padding:10px;

    }

    .user-box{

        padding:10px;

    }

    .user-name{

        font-size:14px;

    }

    .user-plan{

        font-size:12px;

    }

    /*
    |--------------------------------------------------------------------------
    | SETTINGS
    |--------------------------------------------------------------------------
    */

    .personality-wrapper,
    .ai-settings{

        margin-top:10px;

    }

    .personality-label{

        font-size:12px;
        margin-bottom:6px;

    }

    #personalitySelect,
    #modelSelect{

        padding:10px;
        font-size:13px;

    }

    .toggle-item{

        margin-top:8px;
        font-size:13px;

    }

    /*
    |--------------------------------------------------------------------------
    | MOBILE LINKS
    |--------------------------------------------------------------------------
    */

    .mobile-sidebar-links{

        padding:10px;
        gap:6px;

    }

    .mobile-sidebar-links a{

        padding:10px;
        font-size:13px;

    }

}

/*
|--------------------------------------------------------------------------
| MOBILE SIDEBAR SCROLL FIX
|--------------------------------------------------------------------------
*/

@media(max-width:900px){

    .sidebar{

        overflow-y:auto;

        overflow-x:hidden;

        -webkit-overflow-scrolling:touch;

    }

    .sidebar::-webkit-scrollbar{

        width:6px;

    }

    .sidebar::-webkit-scrollbar-thumb{

        background:#1e293b;

        border-radius:20px;

    }

    /*
    |--------------------------------------------------------------------------
    | SMALLER MOBILE SPACING
    |--------------------------------------------------------------------------
    */

    .sidebar-top{

        padding:12px;

    }

    .conversations{

        padding:8px;

    }

    .conversation-item{

        padding:12px;

        margin-bottom:6px;

    }

    .sidebar-bottom{

        padding:12px;

    }

    .mobile-sidebar-links{

        padding:10px;

    }

}

/*
|--------------------------------------------------------------------------
| MORE BUTTON
|--------------------------------------------------------------------------
*/

.sidebar-more-btn{

    width:calc(100% - 20px);

    margin:10px;

    height:42px;

    border:none;

    border-radius:12px;

    background:#111827;

    color:#ffffff;

    cursor:pointer;

    font-size:14px;

    transition:0.2s;

}

.sidebar-more-btn:hover{

    background:#1e293b;

}

/*
|--------------------------------------------------------------------------
| EXTRA SECTION
|--------------------------------------------------------------------------
*/

.sidebar-extra{

    display:none;

    padding-bottom:20px;

}

/*
|--------------------------------------------------------------------------
| SHOW EXTRA
|--------------------------------------------------------------------------
*/

.sidebar-extra.show{

    display:block;

}

/*
|--------------------------------------------------------------------------
| DESKTOP
|--------------------------------------------------------------------------
*/

@media(min-width:901px){

    .sidebar-more-btn{

        display:none;

    }

    .sidebar-extra{

        display:block;

    }

}

/*
|--------------------------------------------------------------------------
| MOBILE EXTRA SECTION
|--------------------------------------------------------------------------
*/

#sidebarExtra{

    display:none;

}

#sidebarExtra.show{

    display:block;

}