/* v32 phone-first + full-screen fixes */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html,body{max-width:100%;overflow-x:hidden}
body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
@supports(padding:max(0px)){
 body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
}
img,video,canvas,svg{max-width:100%}
@media (max-width:767px){input,select,textarea{font-size:16px!important}}
/* 44px minimum tap targets on touch screens (Apple/Google guidance) */
@media (pointer:coarse){
 button,.btn,a.btn,[role=button],select,
 input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),
 #tn-v21-roi,#tn-demo-book,#tnRomBook,a.book,.tn30-works{min-height:44px!important}
 button,.btn,a.btn,[role=button]{min-width:44px!important}
 header a,nav a,.topbar a{min-height:44px;display:inline-flex;align-items:center}
 a.btn,#tn-v21-roi,#tn-demo-book,a.book,.tn30-works{display:inline-flex;align-items:center;justify-content:center}
 input[type=checkbox],input[type=radio]{min-width:22px;min-height:22px}
 /* fixed bottom bars clear the home indicator */
 .tnp-lb-bot{padding-bottom:max(12px,env(safe-area-inset-bottom))}
 .tnp-lb-top{padding-top:max(10px,env(safe-area-inset-top))}
}
/* landing nav: keep all four header buttons on-screen on small phones */
@media (max-width:430px){
 nav .wrap{gap:6px}
 nav .wrap>div{gap:6px!important;flex-wrap:nowrap!important}
 nav .wrap .btn{padding-left:9px!important;padding-right:9px!important}
 nav .brand{gap:6px;min-width:0}
 nav .brand .tn-logo{width:38px!important;height:38px!important}
}
@media (max-width:374px){ nav .brand b,nav .brand .bt{font-size:16px} }
@media (pointer:coarse){
 a[href="/"][title]{min-height:44px;display:inline-flex!important;align-items:center}
 label:has(> input[type=checkbox]),label:has(> input[type=radio]){min-height:44px;display:flex;align-items:center;gap:8px}
}

/* v35 phone header: logo + wordmark, Try ROM, Menu sheet (<=600px only) */
.tn35-ph,.tn35-sheet,.tn35-scrim{display:none}
@media (max-width:600px){
  nav.tn35 .wrap{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;height:60px!important;min-height:60px!important;padding:0 12px!important;padding-left:max(12px,env(safe-area-inset-left))!important;padding-right:max(12px,env(safe-area-inset-right))!important;gap:8px!important}
  nav.tn35 .wrap>.tn35-desk{display:none!important}
  nav.tn35 .brand{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1 auto;overflow:hidden;white-space:nowrap;text-decoration:none}
  nav.tn35 .brand .tn-logo{width:32px!important;height:32px!important;flex:0 0 32px}
  nav.tn35 .brand b,nav.tn35 .brand span{font-size:16px!important;line-height:1!important}
  nav.tn35 .brand .bt{display:flex;align-items:baseline;gap:4px;min-width:0;overflow:hidden;text-overflow:ellipsis}
  .tn35-ph{display:flex;align-items:center;gap:8px;flex:0 0 auto}
  .tn35-ph a,.tn35-ph button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 14px;border-radius:10px;font-family:inherit;font-weight:700;font-size:14px;line-height:1;white-space:nowrap;cursor:pointer;text-decoration:none}
  .tn35-try{background:#E0561F;color:#fff;border:0}
  .tn35-menu{background:transparent;color:#EEF3F8;border:1px solid rgba(255,255,255,.22)}
  .tn35-menu svg{width:20px;height:20px}
  .tn35-scrim{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:998}
  .tn35-sheet{position:fixed;left:0;right:0;bottom:0;z-index:999;background:#0E1828;color:#EEF3F8;border-radius:16px 16px 0 0;padding:10px 16px calc(16px + env(safe-area-inset-bottom));box-shadow:0 -8px 30px rgba(0,0,0,.45);max-height:85vh;overflow:auto}
  .tn35-open .tn35-sheet,.tn35-open .tn35-scrim{display:block}
  .tn35-open{overflow:hidden}
  .tn35-sheet .tn35-hd{display:flex;justify-content:space-between;align-items:center;font-family:inherit;font-weight:700;font-size:15px;padding:4px 0 8px}
  .tn35-sheet .tn35-x{min-width:44px;min-height:44px;background:transparent;border:0;color:#EEF3F8;font-size:26px;cursor:pointer}
  .tn35-sheet a{display:flex;align-items:center;min-height:48px;padding:0 12px;margin:4px 0;border-radius:10px;background:rgba(255,255,255,.05);color:#EEF3F8;text-decoration:none;font-weight:600;font-size:16px}
  .tn35-sheet a.pri{background:#E0561F;color:#fff}
}
@media (max-width:340px){nav.tn35 .brand span:not(.bt){display:none}nav.tn35 .brand .bt span{display:none}.tn35-ph a,.tn35-ph button{padding:0 10px}}
