@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root{
    --primary:#6D5EF8;
    --primary-dark:#4F46E5;
    --dark:#0F172A;
    --text:#1E293B;
    --muted:#64748B;
    --border:#E6E8F2;
    --bg:#F8FAFC;
    --soft:#FAFAFF;
    --danger:#B91C1C;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
    margin:0;
    font-family:Inter,Arial,sans-serif;
    background:var(--bg);
    color:var(--text);
}
img{max-width:100%;}
button,input,select,textarea{font:inherit;}
a{color:inherit;}

.icon-btn{
    width:40px;
    height:40px;
    border:0;
    border-radius:13px;
    background:#F1F3F8;
    color:var(--dark);
    display:grid;
    place-items:center;
    cursor:pointer;
    text-decoration:none;
    font-size:18px;
}

.mobile-only{display:none;}
.jantaz-mobile-bar{display:none;}
.sidebar-overlay{display:none;}

.signin-btn,
.mobile-signin{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:11px 22px;
    border-radius:12px;
    background:linear-gradient(135deg,#2563EB,#7E22CE);
    color:#fff;
    text-decoration:none;
    font-weight:800;
    transition:.2s ease;
}

.signin-btn:hover,
.mobile-signin:hover{
    background:linear-gradient(135deg,#1D4ED8,#6D28D9);
    color:#fff;
    transform:translateY(-1px);
}

.auth-error{
    background:#FEF2F2;
    color:var(--danger);
    padding:11px 12px;
    border-radius:12px;
    margin-bottom:12px;
    font-size:13px;
    line-height:1.5;
}

.auth-info{
    display:flex;
    align-items:flex-start;
    gap:8px;
    padding:11px 12px;
    margin-bottom:14px;
    border-radius:12px;
    background:#EEF2FF;
    color:#4338CA;
    font-size:13px;
    line-height:1.5;
}

@keyframes spin{
    from{transform:rotate(0deg);}
    to{transform:rotate(360deg);}
}

.is-thinking i{animation:spin 1s linear infinite;}

@media(max-width:900px){
    .jantaz-mobile-bar{
        height:62px;
        display:flex;
        align-items:center;
        justify-content:space-between;
        padding:0 14px;
        background:#fff;
        border-bottom:1px solid var(--border);
        position:sticky;
        top:0;
        z-index:80;
    }

    .jantaz-mobile-bar > img,
    .jantaz-mobile-bar .sidebar-logo{
        width:auto !important;
        height:34px !important;
        max-width:130px;
        object-fit:contain;
    }

    .mobile-signin{
        padding:9px 12px;
        font-size:12px;
        border-radius:12px;
    }

    .desktop-only{display:none !important;}
    .mobile-only{display:grid;}
}
