/* v61: calendar cleanup + real fixed mobile header */
.nav-svg{width:1.35em!important;height:1.35em!important;min-width:1.35em!important;stroke-width:2;vertical-align:-.22em;filter:drop-shadow(0 0 8px rgba(100,244,255,.18));}
.sidebar nav a{font-size:1.02rem;}
.sidebar nav a > svg.nav-svg{font-size:1.18rem;}

.calendar-page .mct-badge{display:none!important;}
.calendar-section-head{align-items:center!important;}
.calendar-legend{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap;color:var(--mct-muted,#b8c1d8);font-weight:800;font-size:.88rem;}
.calendar-legend span{display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);padding:.42rem .6rem;border-radius:999px;}
.calendar-day .calendar-count{position:absolute;right:.45rem;top:.45rem;min-width:1.75rem;height:1.75rem;padding:0 .35rem;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,var(--mct-cyan,#64f4ff),var(--mct-violet,#a78bfa));color:#07101e;font-weight:950;font-size:.78rem;line-height:1;box-shadow:0 10px 26px rgba(100,244,255,.15);}
.calendar-toolbar.mct-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:.5rem!important;flex-wrap:wrap!important;max-width:100%!important;}
.calendar-toolbar .icon-btn,.calendar-toolbar button.icon-btn{flex:0 0 auto!important;width:44px!important;min-width:44px!important;height:44px!important;display:grid!important;place-items:center!important;}
.calendar-toolbar select{flex:1 1 170px!important;min-width:0!important;max-width:220px!important;}
.calendar-toolbar input[type="number"]{flex:0 1 105px!important;min-width:86px!important;}

.mobile-topbar{display:none;}

@media(max-width:760px){
  body{padding-top:64px!important;}
  .mobile-topbar{display:flex!important;position:fixed!important;left:0!important;right:0!important;top:0!important;width:100%!important;height:64px!important;z-index:50000!important;background:#03050a!important;border-bottom:1px solid rgba(255,255,255,.12)!important;box-shadow:0 14px 38px rgba(0,0,0,.5)!important;align-items:center!important;padding:8px 12px!important;}
  .mobile-menu{position:static!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.55rem!important;width:auto!important;height:46px!important;min-width:112px!important;margin:0!important;padding:0 .9rem!important;border-radius:14px!important;background:#0a0d16!important;border:1px solid rgba(255,255,255,.16)!important;color:#fff!important;font-weight:900!important;letter-spacing:.01em!important;box-shadow:none!important;backdrop-filter:none!important;}
  .mobile-menu span{font-size:1.45rem;line-height:1;}
  .mobile-menu strong{font-size:.95rem;}
  .app-shell{padding:0!important;}
  .main{padding:.85rem .75rem 1rem!important;}
  .sidebar-backdrop{display:block!important;position:fixed!important;inset:64px 0 0!important;z-index:49000!important;background:rgba(0,0,0,.58)!important;backdrop-filter:blur(4px)!important;opacity:0!important;pointer-events:none!important;transition:opacity .18s ease!important;}
  body.menu-open .sidebar-backdrop{opacity:1!important;pointer-events:auto!important;}
  .sidebar{position:fixed!important;left:0!important;right:0!important;top:64px!important;bottom:auto!important;width:100%!important;max-width:none!important;height:auto!important;max-height:calc(100dvh - 64px)!important;z-index:50001!important;border-radius:0 0 24px 24px!important;padding:1rem!important;background:linear-gradient(180deg,rgba(8,12,24,.98),rgba(5,8,18,.97))!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.12)!important;transform:translateY(-115%)!important;opacity:0!important;pointer-events:none!important;overflow:auto!important;transition:transform .22s ease,opacity .18s ease!important;box-shadow:0 26px 60px rgba(0,0,0,.62)!important;}
  body.menu-open .sidebar{transform:translateY(0)!important;opacity:1!important;pointer-events:auto!important;}
  .sidebar .brand{margin-bottom:.7rem!important;padding-bottom:.8rem!important;border-bottom:1px solid rgba(255,255,255,.1)!important;}
  .sidebar nav{display:grid!important;grid-template-columns:1fr!important;gap:.45rem!important;overflow:visible!important;max-height:none!important;padding:0!important;}
  .sidebar nav a{min-height:48px!important;border-radius:15px!important;font-size:1.03rem!important;}
  .sidebar nav a > svg.nav-svg{width:1.55em!important;height:1.55em!important;min-width:1.55em!important;}
  .sidebar .profile{margin-top:.8rem!important;}
  .calendar-page .mct-header{gap:.85rem!important;}
  .calendar-toolbar.mct-actions{width:100%!important;display:grid!important;grid-template-columns:44px minmax(0,1fr) minmax(82px,.55fr) 44px 44px!important;gap:.42rem!important;margin-top:.35rem!important;}
  .calendar-toolbar select,.calendar-toolbar input[type="number"],.calendar-toolbar .icon-btn,.calendar-toolbar button.icon-btn{width:100%!important;max-width:none!important;min-width:0!important;}
  .calendar-toolbar .icon-btn,.calendar-toolbar button.icon-btn{height:44px!important;}
  .calendar-section-head{display:grid!important;gap:.65rem!important;align-items:start!important;}
  .calendar-legend{justify-content:flex-start!important;gap:.42rem!important;font-size:.82rem!important;}
  .calendar-legend span{padding:.36rem .5rem!important;}
  .calendar-day .calendar-count{right:.24rem!important;top:.24rem!important;min-width:1.35rem!important;height:1.35rem!important;font-size:.68rem!important;}
}

@media(max-width:430px){
  .calendar-toolbar.mct-actions{grid-template-columns:40px minmax(0,1fr) 72px 40px 40px!important;gap:.32rem!important;}
  .calendar-toolbar .icon-btn,.calendar-toolbar button.icon-btn{height:40px!important;font-size:.95rem!important;}
  .calendar-toolbar select,.calendar-toolbar input[type="number"]{height:40px!important;min-height:40px!important;padding:.45rem .5rem!important;font-size:.88rem!important;}
}
