html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overscroll-behavior:none}
button,a,select,input{touch-action:manipulation}

@media (max-width: 1024px) {
  .app-shell{display:block;height:100vh;height:100dvh;overflow:hidden}
  .main{grid-column:1;height:100vh;height:100dvh;grid-template-rows:56px minmax(0,1fr)}
  .sidebar{display:flex;position:fixed;inset:0 auto 0 0;z-index:30;width:min(82vw,290px);height:100vh;height:100dvh;padding:calc(12px + env(safe-area-inset-top)) 12px calc(12px + env(safe-area-inset-bottom));transform:translateX(-105%);transition:transform .22s ease;box-shadow:18px 0 45px rgba(0,0,0,.28)}
  .sidebar.open{transform:translateX(0)}
  .sidebar .logo strong,.sidebar nav span,.sidebar nav p,.sidebar .sidebar-foot div{display:initial}
  .sidebar .logo{justify-content:flex-start}
  .sidebar nav a{justify-content:flex-start;font-size:13px;padding:7px 10px}
  .sidebar nav p{display:block;margin:9px 10px 4px}
  .mobile-menu{display:inline-grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);font-size:0}
  .mobile-menu::before{content:'☰';font-size:21px}
  body.nav-open::after{content:'';position:fixed;inset:0;z-index:25;background:rgba(10,16,20,.48);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
  body.nav-open{overflow:hidden}
  .topbar{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));gap:9px}
  .company-switch{flex:1;min-width:0}
  .company-switch label{font-size:0;display:block}
  .company-switch select{width:100%;max-width:none;padding:9px 32px 9px 10px;font-size:12px;font-weight:750}
  .topbar>form:last-child{flex:0 0 auto}
  .topbar .ghost{padding:9px 11px}
  .content{height:100%;padding:14px max(14px,env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));overflow-x:hidden;scrollbar-gutter:auto}
  .page-head{align-items:flex-start;gap:10px}
  .page-head>div{min-width:0}
  .page-head h1{font-size:23px}
  .page-head .muted{font-size:12px;margin:3px 0}
  .today{flex:0 0 auto;font-size:11px;padding:7px 9px}
  .dashboard-grid,.split,.recipes-layout{grid-template-columns:minmax(0,1fr)}
  .platform-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
  .platform-layout,.users-layout{grid-template-columns:minmax(0,1fr)}
  .license-card{grid-template-columns:42px minmax(0,1fr)}
  .license-form{grid-column:1/-1;grid-template-columns:minmax(100px,.8fr) minmax(150px,1fr) minmax(130px,.9fr) auto}
  .panel,.form-panel{width:100%;max-width:100%}
  .form-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .company-list article{min-width:0}
  .table-wrap{width:100%;max-width:100%;overflow-x:auto}
  .record-editor{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .production-source-form{grid-template-columns:minmax(0,1fr)}
  .production-source-form .form-hint{grid-column:auto}
}

@media (max-width: 600px) {
  .auth-shell{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
  .auth-shell .brand-panel{display:flex;flex:0 0 auto;align-items:center;padding:calc(14px + env(safe-area-inset-top)) 20px 12px;background:linear-gradient(145deg,#151b20,#252e34)}
  .auth-shell .brand-panel>*:not(.brand-mark){display:none}
  .auth-shell .brand-mark{width:136px;height:82px;margin:0;background-size:contain;box-shadow:none}
  .topbar{height:54px}
  .main{grid-template-rows:54px minmax(0,1fr)}
  .content{padding-top:11px}
  .page-head{margin-bottom:10px}
  .page-head h1{font-size:21px}
  .page-head .eyebrow{margin-bottom:3px}
  .today{display:none}
  .kpi-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
  .kpi{padding:11px;min-height:88px}
  .kpi strong{font-size:23px}
  .kpi small{line-height:1.25}
  .panel{padding:13px;border-radius:12px}
  .panel-title{gap:8px}
  .panel h2{font-size:17px}
  .module-links{grid-template-columns:minmax(0,1fr)}
  .form-row,.record-editor,.compact-form,.order-card,.check-grid,.money-grid{grid-template-columns:minmax(0,1fr)}
  .platform-summary{grid-template-columns:minmax(0,1fr)}
  .license-form,.member-controls,.permission-grid{grid-template-columns:minmax(0,1fr)}
  .license-form button{width:100%}
  .production-source-form .primary{width:100%}
  .license-strip{align-items:flex-start;flex-wrap:wrap}
  .license-strip small{width:100%;margin-left:0}
  .company-profile-layout,.company-identity-card,.report-company-header,.profile-location-row,.social-field-grid{grid-template-columns:minmax(0,1fr)}
  .form-stack{gap:10px}
  .company-list article{align-items:flex-start;padding:12px;flex-wrap:wrap}
  .company-list .role{margin-left:53px}
  .seed-import,.filter-bar{align-items:stretch;flex-direction:column}
  .filter-bar>*{width:100%}
  .auth-card{min-height:100vh;min-height:100dvh;padding:24px max(20px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}
  .auth-card h2{font-size:30px}
}

@media (display-mode: standalone) {
  .topbar{padding-top:env(safe-area-inset-top);height:calc(56px + env(safe-area-inset-top))}
  .main{grid-template-rows:calc(56px + env(safe-area-inset-top)) minmax(0,1fr)}
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
}
