/* Touch-first layout shared by Safari and the signed iOS client. */
:root { --tab-height: 76px; }
.account-card {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;background:#fff;border:1px solid #e1e4da;border-radius:20px;margin-bottom:20px}
.account-card p {font-size:12px;color:#7c837a;margin:7px 0 0}
.ios-app body {overscroll-behavior-y:none}
@media(max-width:1024px) {
  html {background:#f6f4ee;scroll-padding-bottom:calc(var(--tab-height) + 85px)}
  body {padding-bottom:calc(var(--tab-height) + env(safe-area-inset-bottom));-webkit-text-size-adjust:100%}
  main {margin:0;padding:0 22px;max-width:800px;margin-inline:auto}
  .sidebar {position:static;inset:auto;width:100%;height:auto;display:block;padding:22px 24px 8px;background:transparent;border:0}
  .brand {font-size:35px;letter-spacing:-3px;align-items:center}
  .brand b {font-size:18px;letter-spacing:-.4px;margin-left:12px}
  .brand small,.nav-label,.sidebar-bottom {display:none}
  .sidebar nav {position:fixed;z-index:30;bottom:0;left:0;right:0;height:calc(var(--tab-height) + env(safe-area-inset-bottom));padding:6px 12px calc(8px + env(safe-area-inset-bottom));margin:0;display:flex;gap:6px;background:rgba(250,251,247,.97);border-top:1px solid #e1e5da;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
  .nav {flex:1;min-height:54px;width:auto;margin:0;padding:7px 4px;display:flex;flex-direction:column;justify-content:center;gap:5px;font-size:22px;border-radius:15px;color:#80907a}
  .nav span,.nav i {display:none}
  .nav::after {content:attr(data-short);font-size:11px;letter-spacing:.3px}
  .nav.active {color:#294c37;background:#e5ebde}
  header {height:65px;border:0;padding:4px 0 12px}
  header .eyebrow {display:none}
  header p {margin:0;font-size:12px}
  .private-badge {font-size:10px;background:#eef1e6}
  .page-heading {margin:8px 0 22px;align-items:flex-start;gap:14px}
  h1 {font-size:28px;font-weight:550;line-height:1.4;margin:7px 0 8px}
  .page-heading p {font-size:13px;line-height:1.65}
  .quiet-tag {display:none}
  .conversation-layout {display:block}
  .call-card {border-radius:28px;padding:22px 18px 18px;min-height:0;box-shadow:0 10px 35px #31412b05}
  .call-top {font-size:10px;gap:8px}
  .presence {padding:28px 0 23px}
  .orb-wrap {width:172px;height:172px}
  .orb {width:140px;height:140px}
  .presence h2 {font-size:24px;margin:18px 0 10px}
  .presence p {font-size:13px;max-width:95%}
  .call-controls {gap:14px}
  #start {min-height:54px;padding:14px 26px;border-radius:28px;font-size:15px}
  .round {height:50px;width:50px;min-width:50px;font-size:22px}
  .call-note {font-size:10px;margin-top:20px;line-height:1.6}
  .side-note {display:none}
  .captions-card {margin-top:18px;min-height:110px;border-radius:20px}
  #transcript {max-height:155px}
  .talk-footer {font-size:11px;gap:12px;line-height:1.8}
  .improve-button {bottom:calc(var(--tab-height) + env(safe-area-inset-bottom) + 14px);right:18px;min-height:46px;padding:11px 19px;z-index:25;background:#f9fcf4;box-shadow:0 5px 20px #274e2720}
  input,textarea,select {font-size:16px;min-height:46px}
  button,.text-button {min-height:44px}
  .memory-toolbar {align-items:stretch;flex-direction:column;gap:16px}
  .memory-toolbar>input {max-width:none;width:100%}
  .memory-add {flex-direction:column;gap:10px;padding:16px}
  .memory-grid,.settings-grid {display:grid;grid-template-columns:1fr}
  .memory-card {padding:22px}
  .memory-actions {gap:12px;justify-content:space-between}
  .memory-actions button {padding:6px 0}
  .settings-card {padding:22px}
  .settings-actions {align-items:stretch;flex-direction:column;gap:14px}
  .measure-card {flex-direction:column;gap:20px;padding:22px}
  .page-heading>.secondary {font-size:11px;padding:10px 12px;white-space:nowrap}
  .account-card {padding:20px}
  .account-card b {font-size:15px}
  .account-card button {font-size:12px;padding:10px 14px}
  .feedback-card {display:block;padding:20px}
  .feedback-card h3 {font-size:15px;line-height:1.65}
  .feedback-card small {font-size:11px;line-height:1.7}
  .feedback-card button {margin-top:15px}
  footer {padding:20px 0 85px;margin-bottom:0;align-items:center;gap:10px}
  footer .version {margin-right:0;white-space:nowrap}
  dialog,#feedback-dialog,#issue-dialog {max-height:calc(100dvh - 36px - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:calc(100vw - 24px);max-width:680px;border-radius:25px;padding:24px 20px;overscroll-behavior:contain}
  dialog textarea {font-size:16px}
  .dialog-actions {gap:10px;flex-wrap:wrap}
  .dialog-actions button {flex:1;white-space:nowrap}
  .issue-actions {display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .issue-actions button {padding:12px 8px;font-size:12px}
  .dialog-version {font-size:10px}
  #toast {bottom:calc(var(--tab-height) + env(safe-area-inset-bottom) + 72px);max-width:calc(100vw - 36px);width:max-content;line-height:1.7}
  .login-shell {min-height:100dvh;padding:30px 22px}
  .login-card {padding:28px 24px;border-radius:28px;width:100%;max-width:420px}
  .login-card h1 {font-size:34px}
  #camera-preview {max-height:200px;object-fit:cover}
}
@media(max-width:370px) {
  main {padding-inline:16px}
  h1 {font-size:25px}
  #start {padding-inline:18px}
  .call-controls {gap:10px}
}
@media(max-height:500px) and (max-width:1024px) {
  :root {--tab-height:62px}
  .sidebar {padding-top:14px}
  .presence {padding:15px 0}
  .orb-wrap {width:115px;height:115px}
  .orb {width:95px;height:95px}
  .orbit {display:none}
}

.people-card{background:#fff;border:1px solid #dde2d8;border-radius:20px;padding:24px;margin:20px 0}.people-card p,#vision-status{color:#647464;font-size:14px}.person-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eee;padding:12px 0;gap:16px}#people-list{margin-top:16px}#vision-status{padding:0 16px;text-align:center}#person-dialog .toggle-label{margin:20px 0;display:flex;gap:12px}#person-dialog input[type=checkbox]{width:22px;min-width:22px}.settings-card .toggle-label{display:flex;align-items:center;gap:12px;margin-top:20px;line-height:1.6}.settings-card input[type=checkbox]{width:22px;min-width:22px;min-height:22px;height:22px;margin:0;flex:none}
