/* ============================================================
   Landing page overrides — shared across all *_landing blades
   ============================================================ */

/* --- Admin user dropdown (auth) --- */
.admin-user-holder{position:relative;display:inline-block;cursor:pointer;}
.admin-dropdown-name{background-color:#0087e2;color:#fff;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;font-weight:600;font-size:14px;}
span.arrow-bottom{display:inline-block;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #fff;margin-left:0;transition:border-color .3s;}
.site-nav.scrolled span.arrow-bottom{border-top-color:var(--heading,#1a1a2e);}
[data-theme="dark"] span.arrow-bottom{border-top-color:#fff !important;}
.admin-user-holder .dropdown-holder{display:none;position:absolute;right:0;top:calc(100% + 12px);width:250px;background:var(--card-bg,#fff);border:1px solid var(--border,#e5e5e5);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12);z-index:1050;padding:12px 16px;}
.admin-user-holder .dropdown-holder.show{display:block;}
.admin-user-holder .dropdown-holder:after{content:'';position:absolute;top:-9px;right:30px;display:inline-block;border-right:9px solid transparent;border-bottom:9px solid var(--card-bg,#fff);border-left:9px solid transparent;}
.admin-user-holder .dropdown-holder .dropdown-item{padding:4px 0;line-height:32px;color:var(--text,#333);text-decoration:none;display:block;font-size:14px;}
.admin-user-holder .dropdown-holder .dropdown-item:hover{color:#0087e2;}
.admin-user-holder .dropdown-holder .dropdown-item:active{background:transparent;}
.user-name-adm{font-weight:600;font-size:15px;color:var(--heading,#25313c);cursor:default;}
.dropdown-item-email{display:block;font-size:12px;color:var(--muted,#666);line-height:18px;}
.dropdown-divider{border-top:1px solid var(--border,#e5e5e5);margin:6px 0;}

/* --- Navbar spacing & nowrap --- */
.site-nav .navbar-nav{flex-wrap:nowrap;}
.site-nav .nav-link{white-space:nowrap;padding:.5rem .65rem;font-size:.875rem;}
.site-nav .d-flex.gap-2{flex-wrap:nowrap;gap:.5rem !important;}
.site-nav .btn-outline-navy{white-space:nowrap;padding:.5rem 1rem;font-size:.85rem;}

/* --- Desktop (lg+): tighter fit --- */
@media(min-width:992px){
    .site-nav{padding-top:.5rem !important;padding-bottom:.5rem !important;}
    .site-nav .navbar-nav{gap:0;}
    .site-nav .nav-link{padding:.5rem .55rem;font-size:.8rem;}
}
@media(min-width:1200px){
    .site-nav .nav-link{padding:.5rem .75rem;font-size:.875rem;}
}

/* --- Mobile (below lg): stack nav properly --- */
@media(max-width:991.98px){
    .site-nav .navbar-collapse{padding:1rem 0;}
    .site-nav .navbar-nav{flex-direction:column;gap:.25rem;}
    .site-nav .nav-link{padding:.6rem 0;font-size:1rem;}
    .site-nav .d-flex.gap-2{flex-wrap:wrap;justify-content:flex-start;margin-top:.75rem;padding-top:.75rem;}
    .admin-user-holder .dropdown-holder{position:fixed;right:1rem;left:1rem;width:auto;top:auto;margin-top:8px;}
    .admin-user-holder .dropdown-holder:after{right:auto;left:30px;}
    .site-nav .image-name-holder{margin:0 !important;padding:0 !important;}
}

/* --- Prevent horizontal overflow --- */
html,body{overflow-x:hidden;max-width:100vw;}
@media(max-width:1199.98px){
    .call-logs-card{right:-4% !important;width:min(320px,36%) !important;}
}
@media(max-width:991.98px){
    .call-logs-card{display:none !important;}
}

/* --- Non-interactive elements in showcase mocks (no pointer cursor) --- */
.cc-channels .cc-ch,
.cd-edit,
.cd-link,
.cd-chip,
.cth-btn,
.wpt{cursor:default !important;}

/* --- SweetAlert text color --- */
.swal2-popup{background:#fff !important;}
.swal2-title,.swal2-html-container{color:#1a1a2e !important;}

/* --- AI libraries mock: mobile-friendly table --- */
@media(max-width:767.98px){
    .alib-mock{overflow:hidden;}
    .alib-mock .rm-main{padding:.75rem;overflow-x:auto;-webkit-overflow-scrolling:touch;}
    /* Tabs + toolbar wrap cleanly */
    .alib-mock .alib-tabs{flex-wrap:wrap;gap:.35rem;}
    .alib-mock .alib-toolbar-row{flex-wrap:wrap;gap:.5rem;}
    .alib-mock .alib-toolbar-left{flex-wrap:wrap;gap:.35rem;width:100%;}
    .alib-mock .rm-actions{flex-wrap:wrap;gap:.35rem;}
    .alib-mock .rm-actions .rm-btn{font-size:.65rem;padding:.35rem .6rem;}
    /* Keep the table readable — horizontal scroll inside the card */
    .alib-mock .rm-table,
    .alib-mock .alib-rm-table{min-width:640px;font-size:.68rem;}
    .alib-mock .rm-table thead th,
    .alib-mock .alib-rm-table thead th{font-size:.58rem;padding:.35rem .4rem;}
    .alib-mock .rm-table tbody td,
    .alib-mock .alib-rm-table tbody td{padding:.4rem;font-size:.66rem;}
}

/* --- Appointments mock: mobile-friendly calendar --- */
@media(max-width:767.98px){
    /* Let the card itself contain the overflow */
    .appt-mock{overflow:hidden;}
    .appt-mock .rm-main{padding:.75rem;overflow-x:auto;-webkit-overflow-scrolling:touch;}
    /* Ensure the calendar keeps readable widths by scrolling horizontally */
    .appt-mock .appt-cal{min-width:560px;font-size:.6rem;}
    .appt-mock .appt-cal-header span{padding:.3rem;font-size:.55rem;}
    /* Toolbar stacks so search/actions don't crush together */
    .appt-mock .rm-top{flex-wrap:wrap;gap:.5rem;}
    .appt-mock .appt-toolbar{flex-wrap:wrap;width:100%;gap:.35rem;}
    .appt-mock .rm-actions{flex-wrap:wrap;gap:.35rem;}
    .appt-mock .rm-actions .rm-btn{font-size:.65rem;padding:.35rem .6rem;}
    .appt-mock .appt-cal-nav{flex-wrap:wrap;gap:.5rem;}
    .appt-mock .appt-page-title h3{font-size:.95rem;}
}
