/* Freetown mobile-first stability + professional polish — 2026-09-20 */
@media(max-width:760px){
  html.ft-mobile-primary body{background:#f7f4ee}
  html.ft-mobile-primary .hub-content{background:#f7f4ee}
  html.ft-mobile-primary .os-main{padding:16px 14px 96px!important}
  html.ft-mobile-primary .ft-workspace-mobile-bar{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.98);backdrop-filter:blur(12px);border-bottom:1px solid rgba(23,61,49,.10);padding:14px 16px;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:12px}
  html.ft-mobile-primary .ft-workspace-mobile-bar small{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#a87935;font-weight:800;margin-bottom:4px}
  html.ft-mobile-primary .ft-workspace-mobile-bar strong{font-size:22px;color:#173d31;line-height:1.1}
  html.ft-mobile-primary .ft-workspace-sections-btn{border:0;background:#173d31;color:#fff;border-radius:999px;padding:12px 17px;font-weight:700;min-height:44px}
  html.ft-mobile-primary .hub-toolbar{display:none!important}
  html.ft-mobile-primary .os-main>.section-head{padding:18px 18px!important;border-radius:18px!important;margin-bottom:14px!important;box-shadow:none!important}
  html.ft-mobile-primary .os-main>.section-head h2{font-size:30px!important}
  html.ft-mobile-primary .os-main .card{border-radius:18px!important;box-shadow:none!important}
  html.ft-mobile-primary .sidebar{width:min(88vw,340px)!important}
  html.ft-mobile-primary .side-nav{padding:12px 10px 22px!important}
  html.ft-mobile-primary .side-group summary{font-size:11px!important;padding:12px 10px!important}
  html.ft-mobile-primary .side-nav button[data-os-route]{font-size:15px!important;min-height:44px!important;padding:11px 12px!important}
  html.ft-mobile-primary .sidebar-footer{padding-bottom:max(20px,env(safe-area-inset-bottom))}
  html.ft-mobile-primary .owner-shortcuts,html.ft-mobile-primary .owner-control-shortcuts,html.ft-mobile-primary .workspace-shortcuts,html.ft-mobile-primary .hub-owner-shortcuts{display:none!important}
  .ft-mobile-people header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
  .ft-mobile-people header span{display:block;font-size:11px;letter-spacing:.14em;font-weight:800;color:#a87935}
  .ft-mobile-people h1{font-size:32px;line-height:1.05;margin:4px 0 6px;color:#173d31}
  .ft-mobile-people p{margin:0;color:#657066;line-height:1.45}
  .ft-mobile-people header button,.ft-mobile-error button{border:1px solid rgba(23,61,49,.18);background:#fff;color:#173d31;border-radius:999px;padding:10px 14px;font-weight:700}
  .ft-mobile-people-list{display:grid;gap:10px}
  .ft-mobile-people-list article{background:#fff;border:1px solid rgba(23,61,49,.10);border-radius:16px;padding:15px 16px;display:grid;gap:4px}
  .ft-mobile-people-list strong{font-size:17px;color:#173d31}.ft-mobile-people-list span{color:#6e766f}.ft-mobile-people-list small{color:#6e766f;margin-top:4px}
  .ft-mobile-empty,.ft-mobile-error{background:#fff;border:1px solid rgba(23,61,49,.10);border-radius:18px;padding:20px;display:grid;gap:8px;color:#5f685f}
  .ft-mobile-empty strong,.ft-mobile-error strong{color:#173d31;font-size:18px}
  dialog.ft-mobile-task-modal{width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;margin:0!important;border:0!important;border-radius:0!important;padding:0!important;background:#fff!important}
  dialog.ft-mobile-task-modal::backdrop{background:rgba(16,33,28,.38)}
  dialog.ft-mobile-task-modal #modalBody,dialog.ft-mobile-task-modal>form{padding:20px 16px calc(92px + env(safe-area-inset-bottom))!important;min-height:100dvh!important;overflow-y:auto!important;display:block!important}
  dialog.ft-mobile-task-modal h2,dialog.ft-mobile-task-modal h3{font-size:28px!important;margin:4px 56px 18px 0!important;color:#173d31!important;line-height:1.1}
  dialog.ft-mobile-task-modal label{font-size:16px!important;font-weight:700!important;color:#203b31!important;display:grid!important;gap:8px!important;margin-bottom:16px!important}
  dialog.ft-mobile-task-modal input,dialog.ft-mobile-task-modal select,dialog.ft-mobile-task-modal textarea{width:100%!important;font-size:17px!important;border:1px solid #c9d5ce!important;border-radius:14px!important;padding:14px 14px!important;min-height:52px!important;background:#fff!important;color:#1f2f28!important}
  dialog.ft-mobile-task-modal textarea{min-height:140px!important;resize:vertical}
  dialog.ft-mobile-task-modal button[value="cancel"],dialog.ft-mobile-task-modal .modal-close{position:fixed!important;top:calc(12px + env(safe-area-inset-top));right:14px;z-index:4;width:44px!important;height:44px!important;border-radius:50%!important;background:#fff!important;border:1px solid rgba(23,61,49,.16)!important;color:#173d31!important}
  dialog.ft-mobile-task-modal .ft-mobile-sticky-save{position:fixed!important;left:14px!important;right:14px!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;width:auto!important;min-height:52px!important;border-radius:14px!important;background:#173d31!important;color:#fff!important;font-weight:800!important;font-size:17px!important;z-index:5!important;box-shadow:0 8px 24px rgba(23,61,49,.20)!important}
  html.ft-mobile-primary .toast{left:14px!important;right:14px!important;bottom:calc(20px + env(safe-area-inset-bottom))!important;width:auto!important;max-width:none!important;border-radius:14px!important;font-size:15px!important}
}
