/* === MCT v58: pantallas únicas, móvil y mensajes sin barras visibles === */
.role-professional .sidebar nav a[href$="/profesional"],
.role-admin .sidebar nav a[href$="/admin"]{display:none!important}

/* User menu: siempre por encima del layout y usable en móvil */
.user-menu-popover{position:fixed!important;left:auto!important;right:clamp(.75rem,2vw,1.25rem)!important;bottom:clamp(5rem,8vh,6.4rem)!important;top:auto!important;width:min(430px,calc(100vw - 1.5rem))!important;max-height:min(78dvh,680px)!important;overflow:auto!important;z-index:20000!important;padding:1rem!important;border-radius:24px!important;box-shadow:0 24px 80px rgba(0,0,0,.55)!important}.user-menu-popover.hidden{display:none!important}.user-menu-popover.is-open{display:block!important}.user-menu-panel{display:none}.user-menu-panel.active{display:block}.user-menu-tabs{display:flex;gap:.45rem;flex-wrap:wrap;margin:.75rem 0}.user-menu-tabs .mini-btn{flex:1 1 auto}

/* Mensajes: sin scrollbars dentro del área, el documento se encarga del scroll */
.messages-page,.mct-v54-messages{height:auto!important;min-height:0!important;overflow:visible!important}.mct-v54-messages .mct-chat-shell{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;align-items:start}.mct-v54-messages .thread-list,.mct-v54-messages .chat-box{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}.mct-v54-messages .thread-items,.mct-v54-messages .thread-view-body{max-height:none!important;overflow:visible!important;scrollbar-width:none}.mct-v54-messages .thread-items::-webkit-scrollbar,.mct-v54-messages .thread-view-body::-webkit-scrollbar,.user-menu-popover::-webkit-scrollbar{width:0;height:0}.mct-v54-messages .chat-box{align-self:start}.mct-v54-messages .chat-reply{position:sticky;bottom:.75rem;z-index:5;border-radius:18px;backdrop-filter:blur(16px)}

/* Pantallas únicas: admin y profesional no apilan módulos */
.admin-v57 #admin-start-panel.hidden,.admin-v57 [data-admin-panel].hidden,.pro-home-v56 [data-pro-panel].hidden{display:none!important}.admin-v57 #admin-start-panel:not(.hidden),.admin-v57 [data-admin-panel]:not(.hidden),.pro-home-v56 [data-pro-panel]:not(.hidden){display:block!important;animation:mctPanelIn .18s ease-out}.admin-v57 .admin-panel-stack{display:block!important}.admin-v57 .admin-module-grid{display:none!important}.admin-v57 .admin-hero-actions{display:none!important}.admin-v57 .admin-insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem}.admin-v57 .admin-insight-grid article{padding:1rem;border-radius:20px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.055)}.admin-v57 .admin-insight-grid strong{display:block;font-size:clamp(1.35rem,3vw,2rem);margin:.25rem 0}.admin-v57 .admin-start-card{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);align-items:stretch}.admin-v57 .admin-start-card.hidden{display:none!important}.admin-v57 .admin-start-orbit{display:none!important}.admin-v57 .admin-action-list{display:grid;gap:.55rem}.admin-v57 .admin-action-list li{list-style:none;padding:.75rem .85rem;border-radius:16px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09)}
.pro-home-v56{display:block!important}.pro-home-v56 .pro-screen-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.pro-home-v56 .pro-screen-actions .mct-btn{width:auto}.pro-home-v56 .professional-patients-panel,.pro-home-v56 .patient-records-panel{margin-top:0}.pro-home-v56 [data-pro-panel]{min-height:clamp(360px,calc(100dvh - 170px),900px)}

@keyframes mctPanelIn{from{opacity:.25;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Luna: mismas clases base y dibujo circular para Mis Fases */
.mct-icon.moon-new,.mct-icon.moon-full,.mct-icon.moon-waxing,.mct-icon.moon-waning,.mct-icon.moon-first-quarter,.mct-icon.moon-last-quarter,.mct-icon.moon-waxing-crescent,.mct-icon.moon-waning-crescent,.mct-icon.moon-waxing-gibbous,.mct-icon.moon-waning-gibbous{border-radius:50%!important;font-size:0!important;color:transparent!important;isolation:isolate}.mct-icon.moon-new:before,.mct-icon.moon-full:before{content:"";position:absolute;inset:0;border-radius:50%;background:transparent}.mct-icon.moon-new{background:radial-gradient(circle at 45% 35%,#20283d,#070913 68%,#02030a)!important}.mct-icon.moon-full{background:radial-gradient(circle at 35% 30%,#fff,#edf4ff 45%,#b9c4e6 82%)!important}.mct-icon.moon-first-quarter:before{clip-path:inset(0 0 0 50%)!important}.mct-icon.moon-last-quarter:before{clip-path:inset(0 50% 0 0)!important}

@media(max-width:900px){.user-menu-popover{right:.75rem!important;left:.75rem!important;bottom:5.7rem!important;width:auto!important}.mct-v54-messages .chat-box{position:fixed!important;inset:.55rem!important;z-index:15000!important;overflow:auto!important;scrollbar-width:none}.mct-v54-messages .chat-box::-webkit-scrollbar{width:0;height:0}.mct-v54-messages .thread-view-body{overflow:visible!important}.admin-v57 .admin-start-card{grid-template-columns:1fr}.admin-v57 .admin-insight-grid{grid-template-columns:1fr 1fr}.pro-home-v56 [data-pro-panel]{min-height:auto}.pro-home-v56 .pro-screen-actions .mct-btn{width:100%}}
@media(max-width:640px){.admin-v57 .admin-insight-grid{grid-template-columns:1fr}.admin-v57 .admin-action-list{padding:0}.mct-v54-messages .chat-reply{position:static}.user-menu-popover{max-height:calc(100dvh - 7rem)!important}.user-menu-popover .panel-head{display:flex!important}.user-menu-popover input,.user-menu-popover select,.user-menu-popover button{min-height:44px}.mct-v54-messages .thread-item{grid-template-columns:1fr auto!important}.mct-v54-messages .thread-open{grid-template-columns:auto 1fr;align-items:center}.mct-v54-messages .thread-copy{min-width:0}.mct-v54-messages .thread-copy b,.mct-v54-messages .thread-copy em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

@media(max-width:520px){
  .sidebar .bottom-icons.header-actions-big{display:flex!important;position:fixed!important;right:.65rem!important;bottom:5.25rem!important;z-index:16000!important;gap:.45rem!important;background:rgba(6,9,20,.76)!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:999px!important;padding:.35rem!important;backdrop-filter:blur(14px)!important}
  .sidebar .bottom-icons.header-actions-big .bottom-icon{display:inline-grid!important;width:42px!important;height:42px!important;place-items:center!important}
}
