/* Desktop composition. Phone layouts remain in nashwa-mobile.css. */
@media (min-width:769px){
  body{--n-font-ui:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;--n-font-story:Georgia,serif;--n-gutter:clamp(32px,5vw,80px);--n-muted:#72776c}
  body.has-nashwa-nav>:is(main,.main,.home){box-sizing:border-box;max-width:1400px;margin-left:92px;margin-right:auto;padding:48px var(--n-gutter) 64px;width:calc(100% - 92px)}
  body.has-nashwa-nav .sidebar{backdrop-filter:none;background:var(--n-bg)!important}
  body.has-nashwa-nav .sidebar :is(.brand,.detail-brand){flex-basis:90px}
  body.has-nashwa-nav .sidebar .nav-label{font-family:var(--n-font-ui);font-weight:500}
  body.has-nashwa-nav .sidebar .nav-item.active{box-shadow:inset 2px 0 var(--n-accent)}
  :is(.page-header,.detail-header,.community-header,.quick-header,.waves-header,.pacts-header){margin-bottom:32px;gap:24px}
  :is(.page-header,.detail-header,.community-header,.quick-header,.waves-header,.pacts-header) h1{font-size:clamp(42px,4.4vw,60px);font-weight:400;line-height:1.08;letter-spacing:-1.8px;text-wrap:balance}
  :is(.eyebrow,.section-kicker,.mode-label,.goal-type,.story-category,.line-label){font-family:var(--n-font-ui);font-size:11px;line-height:1.5;letter-spacing:1.25px!important}
  :is(.subtitle,.detail-subtitle,.section-copy,.header-note,.detail-copy){font-family:var(--n-font-ui);font-size:14px;line-height:1.65;max-width:65ch}
  :is(.section-title,.section-heading h2,.line-intro h2,.vent-copy h2){font-weight:400;font-size:30px;line-height:1.2;letter-spacing:-.6px}
  :is(.primary-action,.secondary-action,.quiet-button,.create-button,.submit,.primary-button,.text-action,.filter-tabs button,.reaction-button,.report-link){font-family:var(--n-font-ui);font-size:13px;line-height:1.4;min-height:40px}
  :is(.primary-action,.secondary-action,.quiet-button,.create-button,.submit,.primary-button){padding:11px 16px;border-radius:12px}
  :is(.text-action,.report-link){display:inline-flex;align-items:center}
  button:disabled{opacity:.6;transform:none!important}
  button:not(:disabled):active{transform:translateY(1px)}
  summary{min-height:32px;cursor:pointer}summary:focus-visible{outline:2px solid #687955;outline-offset:4px}
  :is(.back-link,.local-state-note,.preview-note,.form-note,.community-note,.community-storage,.demo-strip,.safety-note,.feed-note){font:400 12px/1.6 var(--n-font-ui);color:var(--n-muted)}
  .back-link{display:inline-flex;align-items:center;min-height:32px;margin-bottom:16px}
  dialog{max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain}
  dialog :is(input,textarea,select),.product-form :is(input,textarea,select),.vent-form :is(textarea,select){font:400 15px/1.55 var(--n-font-ui)}
  :is(.field label,.field-label,.product-form label,.community-dialog>label,.vent-form>label){font-family:var(--n-font-ui);font-size:12px;line-height:1.5}
  :is(.form-error,.dialog-copy){font:400 13px/1.6 var(--n-font-ui)}
  dialog :is(.close,.close-dialog){min-width:40px;min-height:40px}

  /* A central identity, a clear action, then the surrounding commitments. */
  .home .lobby{grid-template-columns:minmax(170px,.8fr) minmax(280px,1.3fr) minmax(170px,.8fr);gap:28px;min-height:0;margin-top:16px}
  .home .journey-center{min-height:430px}.home .journey-center::before{height:380px;top:0}
  .home .journey-stage{width:280px;height:290px;max-width:100%}
  .home .journey-stage .nashwa-character{width:100%;height:290px}
  .home .journey-title{font-size:36px;margin-top:8px}
  .home .journey-day{font:400 13px/1.5 var(--n-font-ui);letter-spacing:0;text-transform:none}
  .home .journey-cue{opacity:1;transform:none;font-size:12px;margin-top:12px}
  .home .side-panel{padding-top:76px}.home .week-panel{grid-row:auto;grid-column:auto}
  .home :is(.ascent-link,.week){padding:18px 0;border-bottom:0;margin:0}
  .home .week .pact-today{font-size:27px}.home .week p{font-size:13px}.home .week a{font-size:13px}
  .home .ascent-name{font-size:27px;line-height:1.15}.home .ascent-cue{font-size:12px}
  .home .support{max-width:none;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px;margin:16px 0 0;padding:0;align-items:start}
  .home .why{padding-top:20px}.home .why blockquote{font-size:19px;line-height:1.55;max-width:36ch}
  .home .up-next{padding:24px;border:0;border-radius:18px;background:var(--n-accent-soft)}
  .home .next-list{margin-top:12px}.home .next-item{grid-template-columns:1fr;gap:8px;border:0;padding:0}.home .next-dot{display:none}
  .home .next-name{font:400 27px/1.25 var(--n-font-story)}.home .next-time{font-size:13px;color:var(--n-quiet)}
  .home .next-status:empty{display:none}
  .home :is(.home-community,.home-quick,.home-reset){max-width:none;margin:28px 0 0;padding:20px 0;border-top:1px solid var(--n-line)}
  .home .home-quick a,.home .home-community a{font:400 20px/1.4 var(--n-font-story);color:var(--n-quiet);text-decoration:none}
  .home :is(.home-quick,.home-community) p:not(.eyebrow){font-size:13px;line-height:1.6;max-width:65ch;color:var(--n-muted)}

  /* Growth is direction, relationships and a shared path, not three databases. */
  [data-mobile-page=growth] .overview{gap:28px;margin-bottom:40px}
  [data-mobile-page=growth] .mode-card{padding:20px 0;border:0;border-top:1px solid var(--n-line);border-radius:0;background:none;box-shadow:none;transform:none;min-height:0}
  [data-mobile-page=growth] .mode-card h2{font-size:25px;font-weight:400;line-height:1.25;letter-spacing:-.5px}
  [data-mobile-page=growth] .mode-card p{font:400 13px/1.6 var(--n-font-ui)}
  [data-mobile-page=growth] .mode-preview{display:none}.mode-cue{opacity:1;transform:none;font:400 12px/1.5 var(--n-font-ui)}
  [data-mobile-page=growth] .growth-section{padding-top:32px;margin-top:40px;scroll-margin-top:24px}
  [data-mobile-page=growth] .goal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
  [data-mobile-page=growth] .goal-card{padding:24px 0;border:0;border-top:1px solid var(--n-line);border-radius:0;background:none;box-shadow:none;transform:none}
  [data-mobile-page=growth] .goal-card h3{font-size:27px;line-height:1.2;font-weight:400;letter-spacing:-.5px}
  [data-mobile-page=growth] :is(.goal-next,.goal-progress,.pact-rhythm,.pact-moment,.ascent-detail,.ascent-stats,.ascent-pulse){font:400 13px/1.6 var(--n-font-ui)}
  [data-mobile-page=growth] .goal-progress{font-size:12px;color:var(--n-muted)}
  [data-mobile-page=growth] :is(.pact-card,.ascent-card){box-shadow:none;padding:24px;transform:none}
  [data-mobile-page=growth] .pact-card{background:var(--n-accent-soft)}
  [data-mobile-page=growth] :is(.pact-card,.ascent-card) h3{font-size:26px;font-weight:400;line-height:1.25}
  .detail-grid{gap:32px;align-items:start;grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr)}
  .detail-grid>.soft-panel{padding:24px 0 24px 28px;background:none;border:0;border-left:1px solid var(--n-line);border-radius:0;box-shadow:none}
  .next-step{background:var(--n-accent-soft);padding:24px;gap:20px;box-shadow:none}.next-step h2{font:400 29px/1.25 var(--n-font-story)}
  .goal-history-row time{font-size:12px}.goal-history-row p{font-size:14px}.goal-history-row strong{font-size:14px}
  .pact-today-members{padding:0;list-style:none;display:grid;gap:8px}.pact-member-status{display:flex;gap:20px;justify-content:space-between;font-size:13px}
  .pact-member-status span{color:var(--n-muted)}.pact-member-status strong{font-weight:600}
  .pact-hero{grid-template-columns:minmax(0,1.2fr) minmax(260px,1fr)}.lobby-panel{padding:24px}.shared-reason{font-size:27px;line-height:1.45}
  .circle-grid,.memory-grid{gap:24px}.circle-card{box-shadow:none}.scene-label strong{font-size:12px}.scene-label span{font-size:11px}

  .filter-row{flex-wrap:wrap}.filter-tabs{gap:4px}.filter-tabs button{padding:9px 13px}.category-filter{font-size:12px}
  .activity-feed{gap:24px}.activity-top h3{font-size:23px;line-height:1.3}.activity-description{font-size:14px;line-height:1.65}
  .activity-tags{gap:8px 16px}.activity-tags span{padding:0;background:none;border:0;font-size:12px;line-height:1.6}
  .activity-actions :is(.primary-action,.secondary-action){min-height:40px;font-size:13px;padding:10px 16px}
  .pending-list{grid-template-columns:repeat(2,minmax(0,1fr))}.spots,.creator-badge{font-size:12px}
  .community-section{margin-top:48px}.story-list{gap:28px 40px}
  .community-story{padding:24px 0;border:0;border-top:1px solid var(--n-line);border-radius:0;background:none;box-shadow:none}
  .community-story h3{font-size:27px;line-height:1.25}.story-text{font-size:15px;line-height:1.8;max-width:60ch}
  .story-footer,.story-care{font-size:12px}.reaction-button{border:0;padding:8px 10px;min-height:36px;font-size:12px}
  .line-section{margin-top:48px;padding:32px 0}.featured-line{border-radius:0;background:none;border-left:2px solid #b6bfa8;padding:12px 28px}
  .featured-line blockquote{font-size:30px;line-height:1.45}.vent-section{margin-top:48px;gap:40px}.vent-safety{font-size:12px!important}
  .vent-form-actions{flex-wrap:wrap}.vent-form-actions span{font-size:12px}.vent-form .check-label{font-size:13px}
  .community-caught-up{margin:40px 0 0;padding:28px 0;border-top:1px solid var(--n-line);font:400 24px/1.4 var(--n-font-story);color:var(--n-quiet)}
  .main-wave-inner{padding:32px}.wave-count strong{font-size:22px}.wave-timing,.wave-meta,.wave-phase{font-size:12px}.wave-description{font-size:15px}
  [data-mobile-page=journey] .detail-main{max-width:1250px}.journey-character{gap:40px;margin:24px 0 40px}
  .journey-character .nashwa-character{width:210px;height:245px}.journey-character p{font-size:23px;max-width:30ch}
  [data-mobile-page=journey] .header-meta strong{font-size:24px}.timeline{margin:0;max-width:900px}.timeline-content p{font-size:15px;line-height:1.75;max-width:62ch}
  .timeline-content h2{font-size:27px;line-height:1.25}.timeline-date,.timeline-content>a{font-size:12px}.journey-tools{max-width:760px}
  [data-mobile-page=relax] .main{max-width:1220px}.player{box-shadow:none;gap:40px}.player .album{width:280px;height:280px;flex:0 0 280px}
  [data-mobile-page=messages] .messages-app{padding:0;width:calc(100% - 92px);max-width:none}
  [data-mobile-page=messages] .search input{background:transparent!important;box-shadow:none;border:0!important}
  [data-mobile-page=messages] .message{max-width:75%;overflow-wrap:anywhere}
}
@media (min-width:769px) and (max-width:1100px){
  .home .lobby{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px}.home .journey-center{grid-column:1;grid-row:1/3}.home .week-panel{grid-column:2;grid-row:1;padding-top:28px}.home .ascent-panel{grid-column:2;grid-row:2;padding-top:0}
  .detail-grid{grid-template-columns:minmax(0,1.2fr) minmax(230px,.8fr)}
  [data-mobile-page=growth] :is(.pact-grid,.ascent-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
  .quick-header{flex-wrap:wrap}.pact-hero,.vent-section,.line-section{grid-template-columns:1fr}.line-list,.vent-result{grid-column:auto}
  .player{gap:24px}.player .album{width:220px;height:220px;flex-basis:220px}
}
