/* Phone and tablet layout; desktop presentation stays in index.html. */
.workspace>*{min-width:0}
@media(max-width:700px){
  .shell{width:auto;margin-left:max(12px,env(safe-area-inset-left));margin-right:max(12px,env(safe-area-inset-right))}
  body{padding-bottom:env(safe-area-inset-bottom)}
  .topbar{height:auto;min-height:68px;padding:12px 0}
  .brand{min-width:0;gap:12px}.bank-lockup img{width:clamp(112px,34vw,160px)}
  .brand>.product-name{font-size:clamp(14px,4vw,18px);padding-left:12px;white-space:normal}
  .status{display:none}
  .hero h1{font-size:clamp(30px,8vw,42px)}
  .panel,.saved-section,.admin-section,.access-gate{padding:16px;border-radius:18px;min-width:0}
  .account,.account-user,.bot-login,.bot-login-body{min-width:0;max-width:100%;flex-wrap:wrap}
  .account-user,.account-status,.access-error,.saved-note,.meta,.progress{overflow-wrap:anywhere}
  .bot-login{width:100%}.bot-login-body{width:100%}
  .bot-login-qr,.bot-login-qr-hint{display:none}
  .btn,.chip,.filter,.lib-tab,.logout,.version,.delete,.project .use,.log-actions .btn,.members-table button,.bot-login-links a,.bot-login-links button{min-height:44px;touch-action:manipulation}
  .btn{height:auto;padding:12px 14px;white-space:normal;overflow-wrap:anywhere}
  .bot-login-links{align-items:center}.bot-login-links a,.bot-login-links button{display:inline-flex;align-items:center}
  input,select,textarea,.input,.prompt-editor textarea,.prompt-setting textarea,.admin-form input{font-size:16px;max-width:100%}
  select.input{min-width:0;width:100%;text-overflow:ellipsis}
  .advanced-grid,.admin-form{grid-template-columns:minmax(0,1fr)}
  .actions{display:grid;grid-template-columns:minmax(0,1fr)}.actions .btn{width:100%}
  .prompt-editor,.prompt-setting{padding:12px;min-width:0}.prompt-setting>summary{flex-wrap:wrap}
  .lib-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;padding:4px 2px 10px;gap:8px;scrollbar-width:thin}.lib-tab{flex:0 0 auto}
  .filters{flex-wrap:wrap}.filter{flex:1 1 auto}
  .saved-head,.section-head{align-items:flex-start;flex-direction:column}
  #catalog{overflow:visible;padding-bottom:32px}
  .project-table{display:block;min-width:0;border:0;background:none;overflow:visible}
  .project-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .project-table tbody{display:grid;gap:12px}
  .project-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:12px;gap:8px}
  .project-table td{display:block;border:0;padding:0!important;width:auto!important;min-width:0!important;overflow-wrap:anywhere}
  .project-table .project-cell,.project-table .actions-cell{grid-column:1/-1}
  .project-table .project-actions{margin-top:8px}.project-table .project-actions .btn,.project-table .project-actions .use{min-height:44px;font-size:13px;padding:8px}
  .catalog-skeleton-row{min-width:0;grid-template-columns:1fr 1fr}
  .saved-catalog{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:minmax(0,1fr);overflow:visible}
  .log-wrap,.admin-members{max-width:100%;overscroll-behavior-x:contain;scrollbar-width:thin}
  .phone{width:min(100%,340px);border-width:6px;margin-top:12px}
  .modal{padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom))}
  .modal-bar{flex-wrap:wrap}.modal-bar #modalTitle{flex:1 1 calc(100% - 56px)}
  .modal-bar .close{order:1}.modal-bar #modalReference,.modal-bar #modalShare{order:2;width:100%;flex-basis:100%}
  .toast{bottom:max(16px,env(safe-area-inset-bottom));text-align:center;overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project,.btn,.toast{transition:none}}
@media(max-width:700px){
  .log-wrap,.admin-members{border:0;background:none;overflow:visible}
  .log-table,.members-table{display:block;width:100%;min-width:0;border:0}
  .log-table thead,.members-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .log-table tbody,.members-table tbody{display:grid;gap:12px;min-width:0}
  .log-table tbody>tr,.members-table .admin-member{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--panel);min-width:0}
  .log-table td,.members-table td{display:block;width:auto!important;min-width:0!important;max-width:none!important;padding:0!important;border:0;white-space:normal;overflow-wrap:anywhere;font-size:14px;text-align:left!important}
  .log-table td[data-label]::before,.members-table td[data-label]::before{content:attr(data-label);display:block;margin-bottom:5px;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.03em}
  .log-table .log-result b{font-size:16px}.log-table .log-result span,.members-table small{font-size:12px}
  .log-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .log-actions .btn{min-height:44px;padding:10px;font-size:13px;white-space:normal}
  .history-idea summary{min-height:44px;display:flex;align-items:center;font-size:13px}
  .history-idea summary::before{content:'▸';margin-right:8px}.history-idea[open] summary::before{content:'▾'}
  .members-table td:empty{display:none}
  .members-table .member-action button{width:100%;min-height:44px;font-size:13px;white-space:normal}
  .members-table .member-tag{min-height:26px;font-size:11px}
  .log-table .log-prompts{margin-top:-4px;border-top:2px solid var(--lime)}
  .log-prompts td{background:none}.log-prompt-head{flex-wrap:wrap;padding:10px}.log-prompt pre{max-width:100%;font-size:13px}
}
