/* 2026-07-18：授权后台手机端采用单页分层导航，桌面端原有四栏布局保持不变。 */
.mobile-back,.mobile-panel-close{display:none}
@media(max-width:760px){
  html,body{width:100%;max-width:100%;min-width:0;min-height:100%;overflow-x:hidden;overflow-y:auto;background:#f6f8f7}
  button,input,select,textarea{font-size:16px}
  .login-view{min-height:100dvh;padding:12px}
  .login-card{width:100%;max-width:430px;padding:28px 22px;border-radius:12px}
  .login-card h1{font-size:24px}.login-card p{font-size:13px}.login-card label{font-size:13px}
  .login-card input,.login-card button{height:48px}.login-card small{font-size:11px;line-height:1.5}
  .app-shell{width:100%;height:auto;min-height:100dvh;display:block;padding:56px 0 68px;background:#f6f8f7}
  .topbar{position:fixed;z-index:50;inset:0 0 auto;height:56px;padding:0 12px}
  .brand{gap:7px;font-size:13px;min-width:0}.brand-mark{width:32px;height:32px;flex:0 0 32px}.brand strong{white-space:nowrap}.brand b{display:none}
  .top-actions{gap:6px}.identity-badge{display:none}.top-button{height:38px;padding:0 12px;font-size:13px}
  .sidebar{position:fixed;z-index:50;inset:auto 0 0;height:68px;display:block;border-top:1px solid rgba(255,255,255,.14);background:var(--teal-950);padding-bottom:env(safe-area-inset-bottom)}
  .sidebar nav{height:100%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;padding:0 2px}
  .sidebar nav button{position:relative;width:100%;height:64px;display:flex;align-items:center;justify-content:center;padding:22px 1px 4px;border-radius:0;text-align:center;font-size:0;color:#a9c0ba}
  .sidebar nav button::before{content:"";position:absolute;top:13px;width:5px;height:5px;border:1.5px solid currentColor;border-radius:50%}
  .sidebar nav button::after{content:attr(data-mobile-label);font-size:11px;font-weight:600}
  .sidebar nav button.active{color:#dffbed;background:rgba(42,145,105,.26)}
  .sidebar nav button.active::before{background:#76d5a4;border-color:#76d5a4}
  .sidebar nav em{position:absolute;top:5px;right:3px;min-width:17px;height:17px;font-size:9px}
  .owner-card{display:none}
  .agent-panel{display:none;width:100%;min-height:calc(100dvh - 124px);border:0}
  .mobile-directory .agent-panel{display:flex}.mobile-directory .workspace{display:none}
  .panel-heading{padding:18px 16px 14px;align-items:center}.panel-heading h1{font-size:20px}.panel-heading .primary{height:40px}
  .agent-panel>.search{height:44px;margin:0 16px 12px}.search span{font-size:11px}.search input{font-size:16px}
  .agent-list{overflow:visible}.agent-item{min-height:94px;padding:14px 16px}.agent-item.selected{box-shadow:inset 3px 0 0 var(--green)}
  .agent-title strong{font-size:14px}.agent-title small,.agent-meta{font-size:10px}.agent-meta{margin-left:44px;gap:8px;flex-wrap:wrap}
  .workspace{width:100%;min-height:calc(100dvh - 124px);display:flex;overflow:visible}
  .workspace-head{min-height:0;padding:15px 14px;gap:10px;align-items:flex-start}
  .workspace-title{min-width:0;display:flex;align-items:flex-start;gap:8px}
  .mobile-back{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;padding:0;border:1px solid #d3ddda;border-radius:8px;color:#31564d;background:#fff;font-size:28px;line-height:1}
  .workspace-head>.secondary{height:40px;flex:0 0 auto;padding:0 10px}
  .title-row{flex-wrap:wrap;gap:6px}.title-row h2{font-size:17px}.workspace-head p{max-width:100%;font-size:10px;line-height:1.55}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats article{padding:14px;border-bottom:1px solid #e7eceb}.stats article:nth-child(2){border-right:0}.stats strong{font-size:21px}
  .toolbar{height:auto;min-height:0;padding:14px;display:grid;gap:12px;align-items:stretch}
  .toolbar h3{font-size:15px}.toolbar p{font-size:10px;line-height:1.5}
  .toolbar>div:last-child{width:100%;display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px!important}
  .toolbar .search{width:auto;height:42px;margin:0}.toolbar .primary{height:42px}
  .table-wrap{width:100%;min-height:0;flex:none;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}
  .table-wrap table{min-width:640px}.view-card .table-wrap table{min-width:680px}
  th,td{padding:0 12px}th{height:42px;font-size:10px}td{height:64px;font-size:11px}.cell-title strong{font-size:12px}.cell-title small{font-size:9px}
  .pagination{height:48px;padding:0 14px;font-size:10px}
  .view-card{margin:10px;border-radius:8px;overflow:hidden}
  .view-card header{padding:14px;display:grid;gap:12px;align-items:stretch}.view-card h2{font-size:17px}.view-card header p{font-size:11px;line-height:1.5}
  .request-actions{flex-wrap:wrap}.request-actions button{min-height:38px}
  .detail-panel{position:fixed;z-index:60;inset:56px 0 0;display:none;width:100%;min-height:0;padding:42px 0 calc(72px + env(safe-area-inset-bottom));overflow-y:auto;border:0;background:#fff}
  .mobile-detail-open .detail-panel{display:block}
  .mobile-detail-open .mobile-panel-close{position:fixed;z-index:61;top:64px;right:12px;width:36px;height:36px;display:grid;place-items:center;padding:0;border:1px solid #d7e0de;border-radius:50%;color:#36554e;background:#fff;box-shadow:0 4px 16px rgba(9,45,39,.12);font-size:23px}
  .breadcrumb{height:auto;min-height:42px;padding:10px 56px 10px 16px;font-size:10px;line-height:1.5}.detail-section{padding:18px 16px}.detail-section h2{font-size:19px}.detail-section h3{font-size:15px}.detail-list div{grid-template-columns:86px 1fr;font-size:12px}.auth-grid span{font-size:10px}.auth-grid strong{font-size:12px}.permission-row{height:42px;font-size:12px}.note{font-size:11px}.detail-panel button{min-height:42px}
  .modal{width:100%;max-width:none;max-height:90dvh;margin:auto 0 0;border-radius:16px 16px 0 0;overflow:auto}
  .modal-shell>header{position:sticky;z-index:2;top:0;min-height:64px;padding:12px 16px;background:#fff}.modal-shell h2{font-size:18px}
  .modal-body{padding:18px 16px}.form-grid{grid-template-columns:1fr;gap:14px}.form-grid label.full-field{grid-column:auto}.form-grid label{font-size:12px}.form-grid input,.form-grid select,.form-grid textarea{min-height:46px;font-size:16px}
  .modal footer{position:sticky;bottom:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fff}.modal footer button{min-height:44px;flex:1}
  .toast{z-index:80;bottom:82px;max-width:calc(100% - 24px);text-align:center}
}
