/* My Space presentation refinement. Scoped to the signed-in app shell only.
   Uses existing theme tokens so Light, Dark and Mono all inherit correctly.
   No display/visibility rules on hidden elements; no layout changes to the active JD chat. */

/* Shell: quiet canvas, centred working column */
body.in-app #view-app .app-main{background:var(--bg)}
body.in-app #view-app .app-content{max-width:1120px;margin-inline:auto;padding-top:clamp(24px,3.4vw,48px)}
body.in-app #view-app .app-top{height:60px}
body.in-app #view-app .app-top .where{font-size:.9375rem;letter-spacing:-.01em}

/* Sidebar rhythm */
body.in-app #view-app .sidebar{padding:20px 16px;gap:2px}
body.in-app #view-app .side-group{padding:20px 12px 8px;font-size:.65rem;letter-spacing:.18em}
body.in-app #view-app .side-item{min-height:42px;border-radius:12px;transition:background .16s var(--ease),color .16s var(--ease)}
body.in-app #view-app .side-item[aria-current="page"]{background:var(--surface-2);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}
body.in-app #view-app .side-item[aria-current="page"]::before{inset-inline-start:-16px;background:var(--text)}
body.in-app #view-app .side-foot{padding-top:12px}

/* Page headings shared by chats, map, thoughts, privacy */
body.in-app #view-app .page-head{padding-bottom:20px;margin-bottom:24px;border-bottom:1px solid var(--border)}
body.in-app #view-app .page-head h1{font-size:clamp(1.75rem,1.3rem + 1.6vw,2.5rem);line-height:1.08;letter-spacing:-.03em}
body.in-app #view-app .page-head p{color:var(--text-2);max-width:66ch;margin-top:8px;line-height:1.6}

/* Consultation module: remove the doubled gutter inside .app-content */
body.in-app #view-app .jdc{max-width:none;padding:0 0 96px}
body.in-app #view-app .jdc-head{margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--border);align-items:flex-end}
body.in-app #view-app .jdc-kicker{color:var(--muted);letter-spacing:.22em;font-size:.6875rem;margin-bottom:12px}
body.in-app #view-app .jdc-title{font-family:inherit;font-weight:600;font-size:clamp(2rem,1.3rem + 2.6vw,3.25rem);letter-spacing:-.035em;line-height:1.02}
body.in-app #view-app .jdc-title em{font-family:var(--serif);font-weight:400;color:inherit}
body.in-app #view-app .jdc-lead{margin-top:14px;font-size:1.0625rem}

/* Tabs as a segmented control */
body.in-app #view-app .jdc-tabs{display:inline-flex;max-width:100%;gap:2px;padding:4px;border:1px solid var(--border);border-radius:999px;background:var(--surface);margin-bottom:24px;scrollbar-width:none}
body.in-app #view-app .jdc-tabs::-webkit-scrollbar{display:none}
body.in-app #view-app .jdc-tab{min-height:40px;padding:0 18px;border-radius:999px;border-bottom:0;margin:0;flex:none;transition:background .16s var(--ease),color .16s var(--ease)}
body.in-app #view-app .jdc-tab:hover{background:var(--surface-2)}
body.in-app #view-app .jdc-tab[aria-current="page"]{background:var(--text);color:var(--surface);border-bottom:0}
body.in-app #view-app .jdc-tab[aria-current="page"] .jdc-count{background:var(--surface);color:var(--text)}
body.in-app #view-app .jdc-tab:focus-visible{outline-offset:-2px}

/* Booking entry + steps */
body.in-app #view-app .jdc-flow{gap:18px}
body.in-app #view-app .jdc-entry{gap:14px}
body.in-app #view-app .jdc-entry .jdc-choice{padding:20px 22px;border-radius:var(--r-lg);min-height:96px;justify-content:center}
body.in-app #view-app .jdc-entry .jdc-choice strong{font-size:1.0625rem}
body.in-app #view-app .jdc-entry .jdc-choice:last-child{background:var(--surface-2)}
body.in-app #view-app .jdc-step,body.in-app #view-app .jdc-section,body.in-app #view-app .jdc-bookform{border-radius:var(--r-xl);padding:clamp(18px,2.6vw,30px);box-shadow:var(--e1)}
body.in-app #view-app .jdc-step.is-done{padding-block:14px;box-shadow:none}
body.in-app #view-app .jdc-step h2{font-family:inherit;font-weight:600;font-size:1.3rem;letter-spacing:-.02em}
body.in-app #view-app .jdc-step.is-done h2{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase}
body.in-app #view-app .jdc-section h2,body.in-app #view-app .jdc-bookform h2{font-family:inherit;font-weight:600;font-size:1.3rem;letter-spacing:-.02em}
body.in-app #view-app .jdc-step-n{width:32px;height:32px;background:var(--surface-2);color:var(--text);border:1px solid var(--border)}
body.in-app #view-app .jdc-step.is-done .jdc-step-n{background:var(--text);color:var(--surface);border-color:var(--text)}
body.in-app #view-app .jdc-choices{gap:12px}
body.in-app #view-app .jdc-choice{border-radius:var(--r-md);padding:16px 18px;min-height:88px}
body.in-app #view-app .jdc-choice:hover:not(:disabled){border-color:var(--text);transform:translateY(-1px)}
body.in-app #view-app .jdc-choice.is-selected,body.in-app #view-app .jdc-pro.is-selected{border-color:var(--text);box-shadow:0 0 0 1px var(--text)}
body.in-app #view-app .jdc-chip.is-selected{background:var(--text);border-color:var(--text);color:var(--surface)}
body.in-app #view-app .jdc-safety-line{padding-top:14px;border-top:1px solid var(--border);margin-top:18px}

/* Cards, lists, notes */
body.in-app #view-app .jdc-pro,body.in-app #view-app .jdc-booking,body.in-app #view-app .jdc-row-card,body.in-app #view-app .jdc-note-item{border-radius:var(--r-lg)}
body.in-app #view-app .jdc-pro:hover,body.in-app #view-app .jdc-booking:hover{border-color:var(--border-strong)}
body.in-app #view-app .jdc-empty{background:var(--surface-2);border-radius:var(--r-lg);padding:36px 24px}
body.in-app #view-app .jdc-ready{border:1px solid var(--border);background:var(--surface)}

/* Existing conversations / thoughts / map surfaces: align, not re-skin */
body.in-app #view-app .jd-chats-panel{max-width:none;box-shadow:var(--e1);border-radius:var(--r-xl)}

/* Mono: homepage black/white brand */
:root[data-theme="mono"] body.in-app #view-app .app-main{background:#F6F6F4}
:root[data-theme="mono"] body.in-app #view-app .jdc-step,
:root[data-theme="mono"] body.in-app #view-app .jdc-section,
:root[data-theme="mono"] body.in-app #view-app .jdc-entry .jdc-choice:first-child{background:#FCFCFB}
:root[data-theme="mono"] body.in-app #view-app .jdc-entry .jdc-choice:last-child{background:#EFEFEC}

/* Mobile */
@media (max-width:767px){
  body.in-app #view-app .app-content{padding-top:20px}
  body.in-app #view-app .jdc{padding-bottom:180px}
  body.in-app #view-app .jdc-head{padding-bottom:18px;margin-bottom:20px}
  body.in-app #view-app .jdc-tabs{display:flex;overflow-x:auto}
  body.in-app #view-app .jdc-tab{padding:0 14px}
  body.in-app #view-app .jdc-entry .jdc-choice{min-height:0;padding:16px 18px}
  body.in-app #view-app .jdc-choice{min-height:0}
}
@media (prefers-reduced-motion:reduce){body.in-app #view-app *{transition:none!important}}
