/* FCE Classic – role-admin ONLY, unified mobile navigation.
 * Load last, after legacy mobile CSS. Parent, guest and desktop remain untouched. */
.trainer-mobile-header-actions,
.trainer-mobile-bottom-nav,
.trainer-mobile-more-overlay{display:none}
.trainer-mobile-more-overlay[hidden]{display:none!important}
/* Trainer account settings; Layout-ID toggle is visible to admins only. */
body.theme-admin .trainer-mobile-brand{display:none}
body.theme-admin .account-mobile-settings{margin:18px 0;max-width:100%}
body.theme-admin .account-mobile-settings>summary{
  list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;
  align-items:center;gap:8px;padding:13px 15px;min-height:52px;
  font-size:14px;color:var(--text)
}
body.theme-admin .account-mobile-settings>summary::-webkit-details-marker{display:none}
body.theme-admin .account-mobile-settings>summary>span{
  font-size:11px;color:var(--muted);flex:1 1 140px
}
body.theme-admin .account-mobile-settings>summary::after{content:"⌄";font-size:20px;color:var(--brand)}
body.theme-admin .account-mobile-settings[open]>summary::after{transform:rotate(180deg)}
body.theme-admin .account-mobile-settings-body{
  padding:0 15px 15px;display:grid;gap:12px
}
body.theme-admin .account-mobile-settings-body>div{
  display:grid;gap:8px;border:1px solid var(--line);
  border-radius:12px;padding:13px;min-width:0
}
body.theme-admin .account-mobile-settings-body strong{font-size:13px}
body.theme-admin .account-mobile-settings-body p{
  margin:0;font-size:12px;line-height:1.4;color:var(--muted)
}
body.theme-admin .account-mobile-settings-body .btn{
  justify-self:start;min-height:42px;max-width:100%
}

@media(max-width:760px){
 body.theme-admin .site-shell.role-admin{min-height:100vh}
 body.theme-admin .site-shell.role-admin .sticky-header-stack{z-index:120}
 body.theme-admin .site-shell.role-admin .topbar{min-height:0!important}
 body.theme-admin .site-shell.role-admin .topbar-inner{
   width:calc(100% - 24px)!important;
   min-height:0!important;padding:7px 0!important;
   display:block!important;
 }
 body.theme-admin .site-shell.role-admin .topbar-brand-row{
   width:100%;min-width:0;display:flex!important;
   align-items:center;justify-content:space-between;gap:8px;
 }
 body.theme-admin .site-shell.role-admin .topbar-brand-row>.brand{display:none!important}
 body.theme-admin .site-shell.role-admin .trainer-mobile-brand{
   display:flex!important;flex:1 1 auto;gap:9px;align-items:center;min-width:0;color:#fff
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-brand-copy{
   min-width:0;display:flex;flex-direction:column;gap:2px
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-brand-copy strong{
   font-size:13px;line-height:1.1;color:#fff
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-brand-copy small{
   max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
   font-size:9px;color:#f5dfeb;line-height:1.2
 }
 body.theme-admin .site-shell.role-admin .brand-mark{
   width:34px!important;height:34px!important;flex:0 0 34px!important
 }
 body.theme-admin .site-shell.role-admin .brand-copy{min-width:0;display:flex!important;flex-direction:column}
 body.theme-admin .site-shell.role-admin .brand-copy strong{font-size:13px!important;line-height:1.15}
 body.theme-admin .site-shell.role-admin .brand-copy span{
   display:block!important;font-size:9px!important;line-height:1.2;
   max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
 }
 body.theme-admin .site-shell.role-admin .topnav,
 body.theme-admin .site-shell.role-admin .topbar-logout,
 body.theme-admin .site-shell.role-admin .mobile-user-status{
   display:none!important
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-header-actions{
   display:flex;align-items:center;gap:4px;flex:0 0 auto;
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-header-actions a{
   display:grid;place-items:center;min-width:43px;min-height:43px;
   border-radius:11px;color:#fff;text-decoration:none;
   border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.08)
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-header-actions a[aria-current="page"],
 body.theme-admin .site-shell.role-admin .trainer-mobile-header-actions a:hover{
   background:rgba(255,255,255,.18)
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-header-logout{
   display:inline-flex!important;align-items:center;justify-content:center;
   gap:5px;min-height:43px;min-width:0;padding:7px 9px;
   border:1px solid rgba(255,255,255,.32);border-radius:11px;
   background:#b42318!important;color:#fff!important;
   font-family:inherit;font-size:10px;font-weight:800;
   white-space:nowrap;cursor:pointer;touch-action:manipulation;
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-header-logout:focus-visible{
   outline:3px solid #fff;outline-offset:2px
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-header-logout:disabled{
   opacity:.65;cursor:wait
 }
 /* The five main tabs are ALWAYS fixed for logged-in trainers, on /admin and /konto. */
 body.theme-admin .site-shell.role-admin .trainer-mobile-bottom-nav{
   display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));
   gap:2px;position:fixed;left:0;right:0;bottom:0;z-index:230;
   padding:7px 6px calc(7px + env(safe-area-inset-bottom));
   background:#fff;border-top:1px solid #e9d9df;
   box-shadow:0 -6px 24px rgba(56,24,41,.12);
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-bottom-item{
   appearance:none;border:1px solid transparent;border-radius:12px;
   min-width:0;min-height:55px;padding:7px 2px;
   display:flex;flex-direction:column;align-items:center;justify-content:center;
   gap:5px;background:transparent;color:#564c56;text-decoration:none;
   cursor:pointer;font-family:inherit;text-align:center;
   touch-action:manipulation;line-height:1.1
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-bottom-item span{
   font-size:10px;font-weight:750;white-space:nowrap
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-bottom-item.is-current{
   background:#f7e8ed;color:#862d49;border-color:#a24762
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-bottom-item:focus-visible{
   outline:3px solid #a24762;outline-offset:2px
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-more-overlay:not([hidden]){
   position:fixed;inset:0;z-index:290;display:block!important;
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-more-backdrop{
   position:absolute;inset:0;border:0;background:rgba(29,17,26,.58);
   width:100%;height:100%;cursor:pointer
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-more-sheet{
   position:absolute;bottom:0;left:0;right:0;max-height:min(84dvh,800px);
   overflow:auto;overscroll-behavior:contain;background:#fff;
   border-radius:20px 20px 0 0;
   padding:16px 14px calc(18px + env(safe-area-inset-bottom));
   box-shadow:0 -12px 40px #27112355;
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-more-head{
   display:flex;justify-content:space-between;align-items:center;gap:9px;margin-bottom:12px
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-more-head h2{
   margin:0;font-size:18px;color:#31242a;line-height:1.2
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-more-close{
   border:1px solid #ead8df;background:#f8f0f3;border-radius:10px;
   min-width:42px;min-height:42px;color:#862d49;font-size:27px;cursor:pointer
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-more-links{
   display:grid;gap:7px
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-more-links a{
   min-height:59px;display:flex;flex-direction:column;
   justify-content:center;gap:3px;text-decoration:none;
   border:1px solid #eadce1;border-radius:12px;padding:10px 13px;
   color:#272027;background:#fff
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-more-links a.is-current{
   background:#f7e8ed;border-color:#a24762
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-more-label{
   font-size:13px;font-weight:800
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-more-links small{
   font-size:11px;color:#675b63
 }
 body.theme-admin .site-shell.role-admin .container{
   width:calc(100% - 20px)!important;
   padding:12px 0 calc(98px + env(safe-area-inset-bottom))!important;
 }
 /* No duplicate mobile area picker or permanently displayed secondary bottom bar. */
 body.theme-admin .site-shell.role-admin .trainer-mobile-view-picker{
   display:none!important
 }
 body.theme-admin .site-shell.role-admin [data-admin-view="trainings"] .training-workspace-tabs{
   position:static!important;bottom:auto!important;left:auto!important;right:auto!important;
   display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));
   z-index:auto!important;border:1px solid #e9d7de!important;
   border-radius:13px!important;box-shadow:none!important;
   margin:10px 0 15px!important;padding:5px!important;
   background:#f7eff2!important;
 }
 body.theme-admin .site-shell.role-admin [data-admin-view="trainings"] .training-workspace-tabs button{
   min-height:43px!important;gap:3px!important;
   font-size:10.5px!important;padding:7px 2px!important;
 }
 body.theme-admin .site-shell.role-admin [data-admin-view="trainings"] .training-workspace-tabs button span{
   font-size:15px!important
 }
 body.theme-admin .site-shell.role-admin [data-admin-view="trainings"].is-active-view:not(.training-workspace-in-editor){
   padding-bottom:8px!important
 }
 body.theme-admin .site-shell.role-admin [data-admin-view="trainings"].training-workspace-in-editor .training-workspace-tabs{
   display:none!important
 }
 body.theme-admin .site-shell.role-admin .section{margin-bottom:15px!important}
 body.theme-admin .site-shell.role-admin .section-head{margin-bottom:11px!important;gap:5px!important}
 body.theme-admin .site-shell.role-admin .section-head h1,
 body.theme-admin .site-shell.role-admin .section-head h2{font-size:21px;line-height:1.15}
 body.theme-admin .site-shell.role-admin .section-head p{font-size:12px;line-height:1.4}
 body.theme-admin .site-shell.role-admin .card{border-radius:13px}
 body.theme-admin .site-shell.role-admin .training-workspace-heading{margin:4px 0 10px!important}
 body.theme-admin .site-shell.role-admin .training-workspace-heading h3{font-size:17px!important}
 body.theme-admin .site-shell.role-admin .training-workspace-heading p{font-size:12px!important;line-height:1.35}
 body.theme-admin .site-shell.role-admin .training-workspace-filters{margin-bottom:9px!important}
 body.theme-admin .site-shell.role-admin .training-absence-compact>summary{min-height:58px!important}
 /* When a specific work area is selected, its own heading suffices. */
 body.theme-admin[data-fce-trainer-view]:not([data-fce-trainer-view="dashboard"])
   .site-shell.role-admin #main-content>.section:first-child>.section-head{
   display:none!important
 }
 body.theme-admin .site-shell.role-admin .account-mobile-settings{
   margin:15px 0
 }
 body.theme-admin .site-shell.role-admin .trainer-account-back-link{
   display:none!important
 }
}
@media(max-width:390px){
 body.theme-admin .site-shell.role-admin .trainer-mobile-bottom-item span{font-size:9px}
 body.theme-admin .site-shell.role-admin .trainer-mobile-brand-copy small{max-width:120px}
 body.theme-admin .site-shell.role-admin .trainer-mobile-header-actions a{
   min-width:40px;min-height:40px
 }
 body.theme-admin .site-shell.role-admin .trainer-mobile-header-logout{
   min-height:40px;padding:6px 7px;font-size:9px
 }
}
@media(max-width:340px){
 body.theme-admin .site-shell.role-admin .trainer-mobile-header-logout span{display:none}
 body.theme-admin .site-shell.role-admin .trainer-mobile-header-logout{min-width:40px}
}
@media(min-width:761px){
 .trainer-mobile-header-actions,.trainer-mobile-bottom-nav,
 .trainer-mobile-more-overlay{display:none!important}
}


/* 2026-11-05: compact logged-in trainer dashboard for real mobile browsers.
   Scoped to the trainer role and <= 760px; never affects desktop/parent/login. */
.trainer-mobile-dashboard-entry{display:none}
@media(max-width:760px){
  body.theme-admin .site-shell.role-admin .topbar-inner{
    padding:6px 0!important;
  }
  body.theme-admin .site-shell.role-admin .trainer-mobile-brand{
    gap:8px;
  }
  body.theme-admin .site-shell.role-admin .trainer-mobile-brand-copy strong{
    font-size:14px;
    line-height:1.15;
  }
  body.theme-admin .site-shell.role-admin .trainer-mobile-brand-copy small{
    max-width:min(36vw,170px);
    font-size:10px;
  }
  body.theme-admin .site-shell.role-admin .trainer-mobile-header-actions{
    flex:0 0 auto;
  }
  body.theme-admin .site-shell.role-admin .trainer-mobile-header-logout{
    min-height:44px!important;
    padding:8px 11px!important;
    font-size:12px!important;
    border-radius:11px!important;
    background:#b42318!important;
    color:#fff!important;
  }
  body.theme-admin[data-fce-trainer-view="dashboard"] .site-shell.role-admin
    .trainer-desktop-intro{display:none!important}
  body.theme-admin[data-fce-trainer-view="dashboard"] .site-shell.role-admin
    .trainer-mobile-dashboard-entry{
    display:grid;
    gap:0;
    margin:0 0 10px;
  }
  body.theme-admin .site-shell.role-admin .trainer-mobile-welcome{
    display:flex;
    align-items:center;
    min-width:0;
    gap:11px;
    padding:2px 3px 0;
  }
  body.theme-admin .site-shell.role-admin .trainer-mobile-welcome-icon{
    flex:0 0 42px;
    width:42px;height:42px;
    display:grid;place-items:center;
    border-radius:50%;
    background:#95506b;color:#fff;
  }
  body.theme-admin .site-shell.role-admin .trainer-mobile-welcome-copy{
    min-width:0;
  }
  body.theme-admin .site-shell.role-admin .trainer-mobile-welcome-copy h2{
    margin:0;
    font-size:clamp(17px,4.6vw,20px);
    line-height:1.2;
    letter-spacing:-.025em;
    overflow-wrap:anywhere;
  }
  body.theme-admin .site-shell.role-admin .trainer-mobile-welcome-copy p{
    margin:2px 0 0;
    font-size:12px;
    line-height:1.3;
    color:var(--muted);
  }
  body.theme-admin[data-fce-trainer-view="dashboard"] .site-shell.role-admin
    .trainer-status-board{
    margin-top:0;
    gap:10px;
  }
  body.theme-admin[data-fce-trainer-view="dashboard"] .site-shell.role-admin
    .trainer-status-mini{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px;
  }
  body.theme-admin[data-fce-trainer-view="dashboard"] .site-shell.role-admin
    .trainer-status-mini>div{
    min-width:0;
    padding:8px 2px;
  }
  body.theme-admin[data-fce-trainer-view="dashboard"] .site-shell.role-admin
    .trainer-status-mini strong{
    font-size:18px;
  }
  body.theme-admin[data-fce-trainer-view="dashboard"] .site-shell.role-admin
    .trainer-status-mini span{
    font-size:10px;
    line-height:1.2;
    overflow-wrap:anywhere;
  }
}
@media(max-width:340px){
  body.theme-admin .site-shell.role-admin .trainer-mobile-header-logout span{
    display:inline;
  }
  body.theme-admin .site-shell.role-admin .trainer-mobile-brand-copy small{
    display:none;
  }
}
