/* Phone layout keeps the existing palette and content while moving primary navigation into thumb reach. */
@media (max-width: 760px) {
  html,body{max-width:100%;overflow-x:clip}
  body{font-size:15px}
  .shell{display:block;min-width:0}
  .sidebar{position:sticky;top:0;z-index:20;height:56px;min-height:56px;padding:8px 16px!important;background:#f8fafa!important;border:0!important;border-bottom:1px solid #dce4e5!important;box-shadow:none!important;backdrop-filter:none!important}
  .sidebar .brand{height:40px;padding:0!important;margin:0;font-size:21px!important;color:#183640!important}
  .sidebar .brand span{display:none}
  .sidebar>.small-label,.sidebar-bottom{display:none!important}
  .sidebar>#nav{position:fixed!important;inset:auto 0 0 0!important;top:auto!important;right:0!important;width:100%!important;height:calc(66px + env(safe-area-inset-bottom));display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:0!important;padding:5px 4px calc(5px + env(safe-area-inset-bottom))!important;background:#fbfcfc!important;border-top:1px solid #d8e2e5;box-shadow:0 -8px 24px #18364012;overflow:visible!important;z-index:30}
  .sidebar>#nav button{display:flex!important;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;width:100%!important;min-height:54px!important;padding:3px 0!important;border-radius:8px!important;font-size:10px!important;line-height:1.15;white-space:nowrap;color:#586d74!important}
  .sidebar>#nav button .ico{display:block!important;width:auto;font-size:17px;line-height:1.2}
  .sidebar>#nav button.active{background:#e8eff1!important;color:#193d4b!important;font-weight:700}
  .sidebar>.nav:last-of-type{position:absolute!important;top:11px!important;right:15px!important;width:auto!important}
  .sidebar>.nav:last-of-type button{min-height:34px!important;padding:6px 11px!important;color:#294956!important;background:#fff!important;border:1px solid #d5e0e3!important;font-size:11px!important}
  .sidebar>.nav:last-of-type .ico{display:none!important}
  .main{padding:20px 16px calc(90px + env(safe-area-inset-bottom))!important;min-width:0}
  .topbar{margin-bottom:20px!important;padding-bottom:12px!important}
  .topbar .icon-btn{width:42px;height:42px;font-size:18px}
  .heading{font-size:clamp(26px,7vw,34px)!important;letter-spacing:-.025em!important;line-height:1.3}
  .sub,.muted{line-height:1.65}
  .hero{min-width:0;overflow:hidden}
  .hero h2{font-size:clamp(32px,9vw,44px)!important;line-height:1.14}
  .hero-art{height:260px!important}
  .hero .button{min-height:46px}
  .grid.two,.grid.three,.three,.admin-metrics{grid-template-columns:minmax(0,1fr)!important}
  .card,.workbench,.training-chooser,.training-week,.training-detail,.diet-menu{min-width:0}
  .card.pad{padding:18px}
  .section{margin-top:24px}
  .card-head{gap:10px;align-items:flex-start}.card-head .link{min-height:44px;padding:8px 0;font-size:12px;text-align:right}
  .button,.chips button,.training-plan-switch,.diet-plan-card,.training-plan-card{touch-action:manipulation}
  .button,.chips button,.onboard-open{min-height:44px}
  .chips{flex-wrap:nowrap!important;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;margin-right:-16px;padding-right:16px}.chips::-webkit-scrollbar{display:none}.chips button{flex:0 0 auto;font-size:12px}
  .week,.training-day-grid,.diet-day-grid{grid-template-columns:repeat(7,minmax(100px,1fr))!important;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:8px}.week>* ,.training-day-grid>* ,.diet-day-grid>*{scroll-snap-align:start}
  .training-plan-grid,.diet-plan-grid{grid-template-columns:1fr!important}
  .training-plan-card,.diet-plan-card{min-height:0!important}
  .training-action,.exercise-line,.meal-line{min-height:52px}
  .training-action-dose{white-space:normal}
  .list-card{min-width:0;flex-wrap:wrap}.list-card>div{flex:1;min-width:120px}.list-card .button{margin-left:auto}
  .search,input,select,textarea{font-size:16px!important}
  .library-toolbar{display:flex!important;flex-direction:column;align-items:stretch!important}
  .food-card,.catalogue-card{min-width:0}
  .note{display:block;padding:18px}.note .spark{display:none}.note button{margin:14px 0 0}
  .workbench-grid,.setting-grid{grid-template-columns:1fr!important}
  .modal-wrap,.detail-wrap,.food-sheet-wrap{z-index:50}
  .modal-wrap{align-items:flex-end;padding:0}.modal{width:100%;max-width:none;border-radius:18px 18px 0 0;max-height:calc(100dvh - 20px);overflow:auto;padding:22px 18px calc(22px + env(safe-area-inset-bottom))}
  .detail-wrap{padding:0}.detail{width:100%;max-height:94dvh;border-radius:18px 18px 0 0}
  .detail-close,.modal .close{min-width:44px;min-height:44px}
  .food-sheet{max-height:94dvh}
  .table{display:block;overflow-x:auto;white-space:nowrap}
}
@media (max-width: 380px) {
  .sidebar>#nav button{font-size:9px!important}
  .sidebar>#nav button .ico{font-size:16px}
  .main{padding-left:13px!important;padding-right:13px!important}
}
