/* FireTutor 1.1.5: iPad/Tablet-App – original website layout unaffected. */
.app-body{-webkit-tap-highlight-color:transparent;overscroll-behavior-x:none}
.app-body .app-toolbar{position:sticky;top:0;z-index:35;gap:12px;min-width:0;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:rgba(13,21,34,.96)}
.ft-toolbar-left,.ft-toolbar-right{display:flex;align-items:center;gap:12px;min-width:0}
.ft-toolbar-home,.ft-install-trigger{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;min-width:46px;padding:8px 14px;border:1px solid #3a4c68;border-radius:13px;background:#162439;color:#fff;font-size:24px;font-weight:700;text-decoration:none;white-space:nowrap}
.ft-toolbar-home span,.ft-install-trigger span{font-size:13px;font-weight:750}
.ft-install-trigger{cursor:pointer;font-size:24px}
.ft-toolbar-home:hover,.ft-install-trigger:hover{background:#243956}
.ft-toolbar-right .mode-tag{white-space:nowrap}
.ft-sidebar-home{background:rgba(208,48,49,.13)!important;border:1px solid rgba(240,71,71,.34);color:#f8e6e5!important}
.ft-tabbar{display:none}
.ft-account-shortcuts{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:0 0 22px}
.ft-account-shortcuts button,.ft-account-shortcuts a{min-height:52px}
.ft-install-dialog{max-width:min(92vw,490px);width:100%;padding:0;border:1px solid #5b6c87;border-radius:23px;background:#111b2b;color:#f7f8fb;box-shadow:0 28px 120px rgba(0,0,0,.75)}
.ft-install-dialog::backdrop{background:rgba(2,5,10,.74);backdrop-filter:blur(7px)}
.ft-install-dialog-body{position:relative;text-align:center;padding:32px clamp(18px,5vw,40px);display:grid;justify-items:center;gap:14px}
.ft-install-logo{border:1px solid #7c3641;border-radius:20px;overflow:hidden;width:76px;height:76px;box-shadow:0 0 34px rgba(253,54,49,.18)}
.ft-install-logo img{width:100%;height:100%;object-fit:cover}
.ft-install-dialog h2{margin:0;font-size:clamp(23px,4vw,30px)}
.ft-install-dialog p{color:#c7d4e5;line-height:1.55;margin:0;font-size:15px}
.ft-install-dialog .ft-install-note{font-size:13px;color:#99a8bd}
.ft-install-dialog .red-button{width:100%;min-height:50px}
.ft-install-close{position:absolute;top:10px;right:12px;border:0;background:#26354a;border-radius:12px;color:#fff;min-width:42px;min-height:42px;font-size:28px;line-height:1}
/* Tablet / iPad floating dock: navigation stays one tap away even inside a long seminar day. */
@media(max-width:1180px){
 .app-body .ft-tabbar{position:fixed;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;bottom:0;left:0;right:0;min-height:calc(73px + env(safe-area-inset-bottom,0px));padding:7px 12px calc(7px + env(safe-area-inset-bottom,0px));background:rgba(12,21,35,.97);border-top:1px solid #34455d;box-shadow:0 -12px 45px #0008;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);z-index:80;gap:8px}
 .ft-tabbar a,.ft-tabbar button{min-width:0;min-height:53px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:0;border:0;background:transparent;color:#b4c1d2;text-decoration:none;padding:2px 4px;border-radius:12px;cursor:pointer}
 .ft-tabbar a>span,.ft-tabbar button>span{display:block;font-size:26px;line-height:1.05}
 .ft-tabbar a>small,.ft-tabbar button>small{display:block;font-size:11px;font-weight:700;line-height:1.5}
 .ft-tabbar a.ft-tab-active{color:#fff;background:rgba(218,54,51,.18);box-shadow:inset 0 2px rgba(243,76,73,.9)}
 .app-body .app-content{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))}
 .app-body .app-footer{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))}
 .ft-toolbar-home span,.ft-install-trigger span{display:none}
 .ft-install-trigger{min-width:44px;padding:0 8px}
 .app-body .app-toolbar{padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px))}
 .app-body input:not([type=checkbox]),.app-body select,.app-body textarea{font-size:16px}
 .app-body button,.app-body .ghost-button,.app-body .red-button,.app-body .side-nav a{touch-action:manipulation}
 .app-body .ft-pad-surface canvas{touch-action:none;-webkit-user-select:none;user-select:none}
 .app-body .ft-pad-actions button{min-height:48px;font-size:14px}
}
@media(max-width:900px){
 .app-body .sidebar{z-index:110;height:100dvh;min-height:0;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}
 .app-body .app-toolbar{height:68px}
 .app-body .app-content{padding-left:max(14px,env(safe-area-inset-left,0px));padding-right:max(14px,env(safe-area-inset-right,0px))}
 .app-body .ft-attendance-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
 .app-body .ft-attendance-fields>*{min-width:0}
 .app-body .ft-attendance-fields button{width:100%}
 .app-body .ft-pad-surface canvas{width:100%;height:auto;aspect-ratio:10/3;min-height:160px}
}
@media(max-width:540px){
 .app-body .toolbar-label{font-size:12px;letter-spacing:.025em}
 .app-body .toolbar-label span{display:none}
 .app-body .mode-tag{display:none}
 .ft-toolbar-left,.ft-toolbar-right{gap:5px}
 .app-body .ft-pad-heading{align-items:center}
 .app-body .ft-pad-actions{gap:8px}
 .app-body .ft-pad-actions button{padding:11px 8px}
 .app-body .ft-attendance-fields{grid-template-columns:1fr}
 .app-body .ft-attendance-row{grid-template-columns:1fr}
 .app-body .ft-tabbar{padding-left:7px;padding-right:7px}
 .app-body .ft-tabbar small{font-size:10.5px}
}
@media(prefers-reduced-motion:reduce){.ft-install-dialog,.ft-tabbar{transition:none!important}}
