/* MOIYENA Mobile Safe — stability-first mobile layout */
@media (max-width:900px){
  html,body{max-width:100%;overflow-x:hidden}
  body.mobile-drawer-open{overflow:hidden}
  .dashboard-view{display:block!important;min-height:100dvh!important}
  .workspace{width:100%;min-width:0!important}
  .workspace:before,.workspace:after{display:none!important}
  .mobile-hide-company{display:none!important}

  .sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(86vw,320px)!important;height:100dvh!important;z-index:120!important;padding:calc(16px + env(safe-area-inset-top)) 14px calc(16px + env(safe-area-inset-bottom))!important;border-right:1px solid #2b3b31!important;border-bottom:0!important;transform:translateX(-102%);transition:transform .18s ease;overflow-y:auto;background:#111b14!important;box-shadow:none!important}
  .sidebar.mobile-open{transform:translateX(0)}
  .side-brand{display:flex!important;align-items:center!important;gap:10px!important;padding:0 6px 16px!important;margin:0 0 10px!important}
  .side-brand img{width:138px!important}
  .side-brand span{margin-left:auto}
  .mobile-drawer-close{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border:1px solid #314136;border-radius:10px;background:#17231a;color:#eef3ee;font-size:20px;line-height:1}
  .side-nav{display:grid!important;gap:5px!important;overflow:visible!important}
  .side-nav .nav-item{display:flex!important;width:100%!important;min-height:46px!important;justify-content:flex-start!important;padding:11px 12px!important;white-space:normal!important;border-radius:10px!important}
  .side-nav .nav-item .nav-icon{display:inline-grid!important}
  .side-nav .nav-item small{display:block!important}
  .side-bottom{display:grid!important;margin-top:18px!important;padding:18px 8px 8px!important}
  .nav-item:hover{transform:none!important}

  .mobile-drawer-backdrop{position:fixed;inset:0;z-index:110;background:rgba(4,10,6,.62);opacity:0;pointer-events:none;transition:opacity .14s ease}
  .mobile-drawer-backdrop.open{opacity:1;pointer-events:auto}

  .topbar{position:sticky!important;top:0!important;z-index:80!important;min-height:62px!important;height:auto!important;padding:calc(8px + env(safe-area-inset-top)) 10px 8px!important;display:flex!important;align-items:center!important;gap:7px!important;border-bottom:1px solid rgba(90,108,93,.13)!important;background:#f8f5ef!important;backdrop-filter:none!important}
  .mobile-menu-button{display:grid!important;place-items:center;width:40px;height:40px;flex:0 0 40px;border:1px solid #d7d0c6;border-radius:10px;background:#fffdf9;color:var(--forest);font-size:20px}
  .mobile-page-heading{display:grid;min-width:0;margin-right:auto}
  .mobile-page-heading small{font-size:7px;letter-spacing:.12em;font-weight:800;color:#8d978d}
  .mobile-page-heading strong{font:650 13px/1.2 Manrope;color:var(--forest);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:36vw}
  .moiyena-density-toggle{display:none!important}
  .moiyena-theme-toggle{width:38px!important;min-width:38px!important;height:38px!important;padding:0!important;font-size:0!important}
  .user-chip{min-width:38px!important;min-height:38px!important;padding:3px!important;border-radius:11px!important;gap:0!important}
  .user-chip>span{width:31px!important;height:31px!important}
  .user-chip div{display:none!important}

  .workspace-body{width:100%!important;max-width:none!important;padding:18px 12px calc(28px + env(safe-area-inset-bottom))!important;margin:0!important}
  .section-title-row{margin-bottom:16px!important;gap:10px!important;align-items:flex-start!important;flex-direction:column!important}
  .section-title-row h1{font-size:27px!important;line-height:1.04!important;margin:7px 0 6px!important}
  .section-title-row p{font-size:10.5px!important;line-height:1.5!important}
  .status-pill{align-self:flex-start!important}

  .metric-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin-bottom:14px!important}
  .metric-card{min-height:118px!important;padding:13px!important;border-radius:15px!important;box-shadow:none!important}
  .metric-card.health{grid-column:1/-1;min-height:136px!important}
  .metric-card strong{font-size:32px!important;margin-top:20px!important}
  .metric-card.health strong{font-size:48px!important}
  .metric-card:hover{transform:none!important;box-shadow:none!important}

  #my-work-panel.my-work-panel{grid-template-columns:1fr 1fr!important;margin-bottom:14px!important;box-shadow:none!important}
  #my-work-panel .my-work-lead{grid-column:1/-1!important}
  #my-work-panel .my-work-lead,#my-work-panel .my-work-stat{padding:14px!important}

  .content-grid,#section-overview .content-grid{grid-template-columns:1fr!important;gap:12px!important}
  .panel{padding:14px!important;border-radius:15px!important;min-width:0!important;box-shadow:none!important}
  .panel-head{gap:10px!important}

  .hc,.fi,.fb,.financial-insights,.capital-simulator,.eb,.og{max-width:100%!important;overflow:hidden!important;border-radius:15px!important;box-shadow:none!important}
  .hc-top,.hc-bottom,.fi-grid,.fb-grid{grid-template-columns:1fr!important}
  .hc-score,.hc-plan,.hc-chart,.hc-next{padding:15px!important;border-right:0!important}
  .hc-score{gap:13px!important}
  .hc-ring{width:98px!important;height:98px!important;flex:0 0 98px!important}
  .hc-ring strong{font-size:30px!important}
  .hc-head{gap:10px!important;flex-direction:column!important}
  .hc-potential{text-align:left!important;min-width:0!important}
  .hc-item{grid-template-columns:28px minmax(0,1fr)!important;padding:10px!important}
  .hc-impact{grid-column:2!important;text-align:left!important}
  .fi-head,.fi-empty{padding:14px!important;gap:10px!important;flex-direction:column!important}
  .fi-card{padding:14px!important;min-height:auto!important;border-right:0!important}

  #section-upload .upload-grid{grid-template-columns:1fr!important;gap:12px!important}
  #section-upload .upload-panel,#section-upload .mapping-panel{min-height:0!important;padding:14px!important}
  .drop-zone{min-height:170px!important;padding:18px 14px!important}
  .mapping-fields{grid-template-columns:1fr!important;gap:10px!important}
  .mapping-field select{width:100%!important;min-height:46px!important}
  .analysis-action{flex-direction:column!important;align-items:stretch!important;gap:12px!important;padding:14px!important}
  .analysis-action-buttons{width:100%!important;display:grid!important;gap:8px!important}
  .run-analysis,.primary-small{width:100%!important;min-height:46px!important}

  .data-table{overflow:visible!important}
  .table-row.head,.issue-detail-row.head{display:none!important}
  .table-row:not(.head),.issue-detail-row:not(.head),.audit-row{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;margin:0 0 9px!important;padding:12px!important;border:1px solid rgba(85,104,89,.14)!important;border-radius:12px!important;min-width:0!important}
  .table-row:not(.head)>*,.issue-detail-row:not(.head)>*{display:block!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important}
  #issue-toolbar{position:static!important;display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  #issue-toolbar input,#issue-toolbar select,#issue-toolbar button,.issue-collab-bar select,.issue-collab-bar button,.bulk-issue-bar select,.bulk-issue-bar button{width:100%!important;min-height:44px!important}
  .issue-collab-bar,.bulk-issue-bar,.issue-utility-bar{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .issue-drawer{width:100%!important;max-width:none!important;inset:0!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}

  img,svg,canvas,select,input,textarea,button{max-width:100%}

  body.moiyena-dark .topbar{background:#0b140e!important;border-bottom-color:#243129!important}
  body.moiyena-dark .mobile-menu-button{background:#111b14!important;color:#e9f0ea!important;border-color:#2d3a31!important}
  body.moiyena-dark .mobile-page-heading strong{color:#edf3ee!important}
}

@media (max-width:430px){
  .workspace-body{padding-left:10px!important;padding-right:10px!important}
  .section-title-row h1{font-size:25px!important}
  .metric-grid{gap:8px!important}
  .metric-card{padding:12px!important}
  .mobile-page-heading strong{max-width:30vw}
  .hc-score{align-items:flex-start!important;flex-direction:column!important}
}
