/* Neoexis v12 responsive layer */
*{box-sizing:border-box}img,video,iframe{max-width:100%}button,a,input,select,textarea{touch-action:manipulation}
.mobile-menu-btn,.mobile-back{display:none}
@media (max-width: 760px){
  html,body{max-width:100%;overflow-x:hidden}
  button,a{min-height:40px}
  input,select,textarea{font-size:16px!important}
  /* USER MAIL */
  .neo-user .topbar{height:58px!important;display:grid!important;grid-template-columns:44px minmax(0,1fr) auto!important;padding:0 8px!important;gap:7px!important;position:sticky;top:0;z-index:80}
  .neo-user .topbar>.brand{display:none}.neo-user .topbar .search{min-width:0;width:100%;height:40px}.neo-user .topbar .account{gap:4px}.neo-user .topbar .accountdetails{display:none!important}
  .mobile-menu-btn{display:inline-grid;place-items:center;width:40px;height:40px;border:0;border-radius:8px;background:#f1f1f1;color:#333;font-size:21px;cursor:pointer}
  .neo-user .shell{height:calc(100dvh - 58px)!important;display:block!important;overflow:hidden}
  .neo-user .sidebar{display:block!important;position:fixed;z-index:100;left:0;top:58px;bottom:0;width:min(84vw,300px)!important;transform:translateX(-105%);transition:transform .2s ease;box-shadow:12px 0 32px #0002;padding:12px 10px!important;background:#fafafa!important;overflow:auto}
  .neo-user.nav-open .sidebar{transform:translateX(0)}
  .neo-user.nav-open:after,.admin-v8.nav-open:after{content:"";position:fixed;inset:58px 0 0;background:#0006;z-index:90}
  .neo-user .sidebar .label,.neo-user .sidebar .count,.neo-user .sidebar .navsection,.neo-user .sidebar .storage{display:initial!important}
  .neo-user .sidebar .navitem,.neo-user .sidebar .composebtn{justify-content:flex-start!important;padding:0 14px!important;gap:12px!important;min-height:44px}
  .neo-user .listpane{display:block;width:100%;height:100%;overflow:auto;border:0}.neo-user .listhead{position:sticky;top:0;background:#fff;z-index:4;height:54px;padding:0 13px}.neo-user .mailrow{min-height:88px;padding:12px 10px;grid-template-columns:24px minmax(0,1fr) auto}.neo-user .mailrow .preview{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .neo-user .reader{display:none!important;position:absolute;inset:0;z-index:20;overflow:auto;background:#fff}
  .neo-user.mobile-reading .listpane{display:none}.neo-user.mobile-reading .reader{display:block!important}
  .neo-user .readtoolbar{position:sticky;top:0;background:#fff;z-index:5;height:auto;min-height:54px;padding:8px 10px;gap:6px}.neo-user .messageview{padding:18px 16px}.neo-user .messageview h1{font-size:21px;line-height:1.25}.neo-user .fromline{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px}.neo-user .msgdate{grid-column:2;font-size:11px}.neo-user .mailbody{overflow-wrap:anywhere}.neo-user .mailbody table{display:block;max-width:100%;overflow-x:auto}
  /* ADMIN */
  .admin-v8{display:block!important}.admin-v8 .admin-side{position:fixed!important;z-index:110;left:0;top:0;bottom:0;width:min(86vw,300px)!important;transform:translateX(-105%);transition:transform .2s ease;padding:20px 12px!important;overflow:auto}.admin-v8.nav-open .admin-side{transform:translateX(0)}
  .admin-v8 .admin-side .wordmark,.admin-v8 .admin-side .nav-label,.admin-v8 .admin-side nav span,.admin-v8 .login-mail span{display:initial!important}.admin-v8 .admin-side nav a{justify-content:flex-start!important;font-size:14px!important}.admin-v8 .admin-logo{justify-content:flex-start!important}
  .admin-v8 .admin-main{width:100%!important;padding:14px 12px 40px!important}.admin-v8 .admin-top{position:relative;display:grid!important;grid-template-columns:44px minmax(0,1fr);gap:8px!important;align-items:start!important;margin-bottom:16px!important}.admin-v8 .admin-top>.mobile-menu-btn{grid-column:1}.admin-v8 .admin-top>div:first-of-type{grid-column:2;min-width:0}.admin-v8 .admin-top h1{font-size:20px!important;line-height:1.2}.admin-v8 .admin-top p{font-size:12px!important}.admin-v8 .admin-actions{grid-column:1/-1;width:100%;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}.admin-v8 .admin-actions .btn{width:100%;padding:9px 8px;font-size:12px}.admin-v8 .metric-grid,.admin-v8 .storage-grid,.admin-v8 .app-grid,.admin-v8 .status-grid{grid-template-columns:1fr!important;gap:10px!important}.admin-v8 .metric{height:auto!important;min-height:108px;padding:16px!important}.admin-v8 .metric i{width:64px!important;height:64px!important}.admin-v8 .host-card{padding:20px 14px!important}.admin-v8 .host-title{font-size:16px!important}.admin-v8 .copyline{height:auto!important;min-height:52px}.admin-v8 .copyline code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-v8 .supported div{gap:7px}.admin-v8 .supported b{font-size:11px!important;padding:7px 9px!important}.admin-v8 .panel{padding:16px 12px!important;margin-top:14px!important;overflow:hidden}.admin-v8 .form-grid,.admin-v8 .inline-form{grid-template-columns:1fr!important}.admin-v8 .account-row{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;gap:10px!important;padding:16px 0}.admin-v8 .account-row>label,.admin-v8 .account-row>.btn{grid-column:1/-1}.admin-v8 .account-row>.useravatar{grid-column:1}.admin-v8 table{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.admin-v8 th,.admin-v8 td{padding:11px 9px}.admin-v8 .domain-card{align-items:flex-start}.admin-v8 .domain-card .pill{margin-left:0}
  /* CHAT */
  .teams-app{height:100dvh!important;display:grid!important;grid-template-columns:52px minmax(0,1fr)!important;overflow:hidden}.app-rail{width:52px;padding:6px 3px}.app-rail a{width:46px;min-height:52px}.app-rail a small{font-size:9px}.chat-list{display:block!important;min-width:0}.chat-list>header{height:62px;padding:10px 12px}.rooms{height:calc(100dvh - 144px)}.conversation{display:none!important}.teams-app.has-active .chat-list{display:none!important}.teams-app.has-active .conversation{display:flex!important}.conversation-head{height:62px;padding:7px 8px;gap:7px}.mobile-back{display:inline-grid;place-items:center;border:0;background:#eee;border-radius:7px;width:36px;height:36px;color:#333;text-decoration:none;font-size:20px}.conversation-title h2{font-size:15px}.conversation-title span{font-size:10px}.head-actions{gap:2px}.head-actions .iconbtn{min-width:34px}.head-actions .callbtn{width:36px;padding:0;justify-content:center}.messages{padding:10px 8px!important}.message{grid-template-columns:32px minmax(0,1fr);gap:7px}.message>.msg-actions{grid-column:2;opacity:1!important;width:max-content}.composer{margin:6px 7px 8px!important}.compose-tools{overflow-x:auto}.sendline small{display:none}.people-panel{display:none!important}.neo-dialog{width:calc(100% - 16px)!important;max-height:92dvh;overflow:auto}.neo-dialog header{padding:14px}.neo-dialog>form>label,.neo-dialog fieldset{margin:12px 14px}.neo-dialog footer{padding:12px 14px;position:sticky;bottom:0;background:#fff}
  /* MEETINGS */
  .meeting-app{grid-template-columns:52px minmax(0,1fr)!important}.calendar-side{display:none!important}.calendar-main{padding:12px 10px!important}.calendar-head{display:block!important;padding-bottom:14px}.calendar-head h1{font-size:22px}.calendar-head>div:last-child{margin-top:12px;display:grid!important;grid-template-columns:1fr 1fr}.event-detail{margin:14px 0!important}.event-top{padding:16px;display:block!important}.event-top h2{font-size:21px}.event-grid{grid-template-columns:1fr 1fr!important}.event-grid div{padding:12px}.calendar-board{margin:30px auto!important;display:block!important;text-align:center}.today-card{margin:0 auto 20px}.meeting-dialog .two{grid-template-columns:1fr!important}.prejoin{width:calc(100% - 12px)!important;max-height:96dvh;overflow:auto}.prejoin-stage{grid-template-columns:1fr!important}.camera-preview{min-height:190px!important}.preview-avatar{width:92px;height:92px;font-size:30px}.prejoin-copy{padding:18px!important}.meeting-overlay>header{height:auto;min-height:56px;padding:7px 9px;gap:6px}.meeting-overlay>header b{font-size:13px}.meeting-body{grid-template-columns:1fr!important}.meeting-body aside{display:none!important}
}
@media (min-width:761px) and (max-width:1100px){.admin-v8 .admin-main{padding-left:22px!important;padding-right:22px!important}.admin-v8 .account-row{grid-template-columns:48px 1fr 1fr!important}.neo-user .messageview{padding-left:22px;padding-right:22px}}
@media (hover:none) and (pointer:coarse){.msg-actions{opacity:1!important}.iconbtn,.toolbtn,.btn,.navitem{min-height:42px}}

/* v13 hard mobile visibility/fallback fixes */
@media (max-width:760px){
  body.neo-user{display:block!important;min-width:0!important;width:100%!important;background:#fff!important}
  .neo-user .topbar{visibility:visible!important;width:100%!important}
  .neo-user .shell{visibility:visible!important;width:100%!important;min-width:0!important}
  .neo-user .listpane{visibility:visible!important;min-width:0!important;max-width:100%!important}
  .neo-user .mailrow{width:100%!important;max-width:100%!important}
  .neo-user .mailrow>div{min-width:0!important}
  .neo-user .search input{min-width:0!important;width:100%!important}
  .neo-user .account{min-width:max-content!important}
  .neo-user .reader{width:100%!important;max-width:100%!important}
  .neo-user.mobile-reading .reader{position:fixed!important;top:58px!important;right:0!important;bottom:0!important;left:0!important;height:auto!important}
  .login{padding:16px!important;min-height:100svh!important;display:grid!important;place-items:center!important}
  .login-card{width:100%!important;max-width:430px!important;margin:0!important;padding:24px 18px!important}
  .settings-page .settings-shell{width:100%!important;max-width:100%!important;margin:0!important;padding:12px!important}
  .compose-page,.compose-shell{width:100%!important;max-width:100%!important;min-width:0!important}
  dialog{max-width:calc(100vw - 16px)!important}
}
/* v14 comprehensive mobile interaction layer */
@media(max-width:760px){
  html{font-size:16px}body{min-width:0!important}button,input,select,textarea,a{max-width:100%}
  .teams-app,.meeting-app{width:100%!important;max-width:100vw!important}
  .app-rail{position:relative;z-index:30}.chat-list,.conversation,.calendar-main{min-width:0!important;max-width:calc(100vw - 52px)!important}
  .room-copy,.conversation-title{min-width:0}.room-copy b,.room-copy small,.conversation-title h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .head-actions{margin-left:auto;min-width:0}.head-actions .iconbtn{display:none}.head-actions .callbtn span{display:none}
  .composer textarea{font-size:16px!important;max-height:140px;overflow:auto}.compose-tools button,.sendbtn{min-width:44px;min-height:44px}
  .emoji-pop.show{position:fixed!important;left:60px!important;right:8px!important;bottom:82px!important;top:auto!important;width:auto!important;z-index:300!important;display:flex!important;flex-wrap:wrap}
  .meeting-overlay{position:fixed!important;inset:0!important;width:100vw!important;height:100svh!important;z-index:1000!important}.meeting-body{height:calc(100svh - 58px)!important}.jitsi{height:100%!important;min-height:0!important}.jitsi iframe{width:100%!important;height:100%!important}
  .pre-controls{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}.pre-controls button{min-height:48px}.prejoin-copy>.primary,.prejoin-copy>.secondary{width:100%;min-height:48px;margin-top:8px}
  .neo-dialog input,.neo-dialog textarea,.neo-dialog select{width:100%!important;min-height:44px}.member-check{min-height:54px}
  .admin-v8 .admin-main,.neo-user .shell{min-width:0!important}.admin-v8 .panel>*{max-width:100%}
}
@media(max-width:420px){.calendar-head>div:last-child{grid-template-columns:1fr!important}.event-grid{grid-template-columns:1fr!important}.admin-v8 .admin-actions{grid-template-columns:1fr!important}}
/* v15 final mobile typography + touch pass */
@media(max-width:760px){
  html{font-size:17px!important;-webkit-text-size-adjust:100%}body{font-size:16px!important;line-height:1.45}
  button,input,select,textarea{font-size:16px!important}button,a,[role=button]{min-height:44px}
  .neo-user .mailrow{min-height:96px!important}.neo-user .mailrow .sender{font-size:16px!important}.neo-user .mailrow .subject{font-size:15px!important;line-height:1.35}.neo-user .mailrow .preview{font-size:14px!important}.neo-user .mailrow .time{font-size:12px!important}.neo-user .listhead h2{font-size:19px!important}.neo-user .navitem,.neo-user .composebtn{font-size:16px!important}.neo-user .messageview h1{font-size:23px!important}.neo-user .mailbody{font-size:17px!important;line-height:1.65!important}.neo-user .frommeta b{font-size:15px!important}.neo-user .frommeta div,.neo-user .msgdate{font-size:13px!important}
  .teams-app{font-size:16px!important}.app-rail small{font-size:11px!important}.chat-list h2,.conversation-head h2{font-size:19px!important}.room-copy b{font-size:15px!important}.room-copy small{font-size:13px!important}.messages .message-body{font-size:16px!important;line-height:1.55!important}.messages header b{font-size:15px!important}.composer textarea{font-size:17px!important;line-height:1.45!important;min-height:54px}.sendline small{font-size:12px!important}.people-panel .member b,.member-check b{font-size:15px!important}.people-panel .member small,.member-check small{font-size:13px!important}
  .calendar-head h1{font-size:23px!important}.calendar-head p,.event-detail p{font-size:14px!important}.event-detail h2{font-size:21px!important}.event-grid b{font-size:15px!important}.mini-meeting b{font-size:14px!important}.mini-meeting small{font-size:12px!important}.meeting-dialog label,.neo-dialog label{font-size:14px!important}.meeting-dialog input,.meeting-dialog textarea,.meeting-dialog select,.neo-dialog input,.neo-dialog textarea{font-size:16px!important}
  .admin-v8 .admin-top h1{font-size:23px!important}.admin-v8 .admin-top p{font-size:14px!important}.admin-v8 .metric strong{font-size:25px!important}.admin-v8 .panel h2{font-size:19px!important}.admin-v8 label,.admin-v8 td,.admin-v8 th{font-size:14px!important}.admin-v8 input,.admin-v8 select,.admin-v8 textarea{font-size:16px!important;min-height:46px}
  .login-card{width:calc(100% - 24px)!important;margin:24px auto!important;padding:24px 18px!important}.login-card h1{font-size:25px!important}.login-card p{font-size:15px!important}
}
@media(max-width:380px){html{font-size:16px!important}.neo-user .mailrow{min-height:92px!important}.app-rail{width:52px!important}.chat-list,.conversation,.calendar-main{max-width:calc(100vw - 52px)!important}}
