/* V177 · Responsive System & Desktop Polish
   Long-term responsive layer for Public / Member / Coach.
   No business logic, data, auth, routing, or content changes. */

:root{
  --v177-public-max:1180px;
  --v177-reading:720px;
  --v177-member-max:1180px;
  --v177-coach-max:1440px;
}

/* -----------------------------
   TABLET / SMALL LAPTOP
   768–1199px
   ----------------------------- */
@media (min-width:768px) and (max-width:1199px){
  body[data-surface="public"] .wrap,
  body[data-surface="public"] .about-page,
  body[data-surface="public"] .practice-page,
  body[data-surface="public"] .pp,
  body[data-surface="public"] .gp,
  body[data-surface="public"] .first-step-page-v168,
  body[data-surface="public"] .contact-min-v168{
    width:min(100% - 64px, 980px);
    margin-left:auto;
    margin-right:auto;
  }
  body[data-surface="public"] .hero-copy-grid{grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr);gap:44px;align-items:end}
  body[data-surface="public"] .method-steps-v169{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
  body[data-surface="public"] .practice-decision-v175{grid-template-columns:1fr 1fr;gap:28px}
  body[data-surface="public"] .practice-continuity{grid-template-columns:repeat(4,1fr);gap:12px}
  body[data-surface="public"] .section-grid{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:52px}

  body[data-surface="member"] .member-page{max-width:1040px;padding-left:32px;padding-right:32px}
  body[data-surface="member"] #content{max-width:960px}
  body[data-surface="member"] .member-session-summary{max-width:760px}
  body[data-surface="member"] .movement-map-grid{grid-template-columns:1fr 1fr}

  body[data-surface="coach"] .page{max-width:1180px;margin:0 auto;padding-left:28px;padding-right:28px}
  body[data-surface="coach"] .dashboard-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
  body[data-surface="coach"] .dashboard-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
  body[data-surface="coach"] .library-columns{grid-template-columns:1fr 1fr}
}

/* -----------------------------
   DESKTOP
   1200px+
   Desktop is not enlarged mobile.
   ----------------------------- */
@media (min-width:1200px){
  /* PUBLIC — editorial composition and controlled reading width */
  body[data-surface="public"] .wrap,
  body[data-surface="public"] .about-page,
  body[data-surface="public"] .practice-page,
  body[data-surface="public"] .pp,
  body[data-surface="public"] .gp,
  body[data-surface="public"] .first-step-page-v168,
  body[data-surface="public"] .contact-min-v168{
    width:min(calc(100% - 96px), var(--v177-public-max));
    margin-left:auto;
    margin-right:auto;
  }

  body[data-surface="public"] header .wrap{width:min(calc(100% - 96px),var(--v177-public-max))}
  body[data-surface="public"] .hero{padding-top:54px}
  body[data-surface="public"] .hero-art{max-height:500px}
  body[data-surface="public"] .hero-copy-grid{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
    gap:76px;
    align-items:end;
    margin-top:48px;
  }
  body[data-surface="public"] .hero-title{font-size:clamp(64px,6vw,92px);line-height:.98}
  body[data-surface="public"] .hero-lead{font-size:18px;line-height:1.6;max-width:25em}
  body[data-surface="public"] .hero-action{max-width:360px;margin-left:auto;width:100%}

  body[data-surface="public"] .method-grid{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:86px;align-items:start}
  body[data-surface="public"] .method-heading{position:sticky;top:110px}
  body[data-surface="public"] .method-intro-v169{max-width:480px}
  body[data-surface="public"] .method-steps-v169{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:0}
  body[data-surface="public"] .method-steps-v169 article{min-height:250px;padding-right:22px;border-right:1px solid rgba(221,208,204,.8)}
  body[data-surface="public"] .method-steps-v169 article:last-child{border-right:0;padding-right:0}

  body[data-surface="public"] .about-page{max-width:1120px}
  body[data-surface="public"] .about-story-v168{max-width:none;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);column-gap:86px;align-items:start}
  body[data-surface="public"] .about-story-v168 > p,
  body[data-surface="public"] .about-story-v168 > .intro-line{grid-column:1}
  body[data-surface="public"] .about-subhead-v172,
  body[data-surface="public"] .credentials-v168,
  body[data-surface="public"] .about-learning-v174,
  body[data-surface="public"] .notsweetin-close-v168{grid-column:2}
  body[data-surface="public"] .about-subhead-v172{grid-row:1;margin-top:0!important}
  body[data-surface="public"] .credentials-v168{grid-row:2 / span 4;align-self:start}
  body[data-surface="public"] .about-learning-v174{grid-row:6}
  body[data-surface="public"] .notsweetin-close-v168{grid-row:7;margin-top:30px!important}
  body[data-surface="public"] .about-story-v168 p{max-width:680px}

  body[data-surface="public"] .practice-page{max-width:1120px}
  body[data-surface="public"] .practice-gateway-hero{max-width:760px}
  body[data-surface="public"] .practice-decision-v175{display:grid;grid-template-columns:1fr 1fr;gap:52px;margin-top:54px}
  body[data-surface="public"] .practice-path{padding:34px 0 28px!important;border-top:1px solid rgba(221,208,204,.92)!important}
  body[data-surface="public"] .practice-path + .practice-path{border-left:1px solid rgba(221,208,204,.92);padding-left:52px!important}
  body[data-surface="public"] .practice-continuity{display:block;margin-top:30px}
  body[data-surface="public"] .continuity-step{padding:24px 26px;border-left:1px solid rgba(221,208,204,.9)}
  body[data-surface="public"] .continuity-step:first-child{border-left:0;padding-left:0}
  body[data-surface="public"] .continuity-arrow{display:none}
  body[data-surface="public"] .practice-start-v175{max-width:540px}

  body[data-surface="public"] .pp,
  body[data-surface="public"] .gp{max-width:1160px}
  body[data-surface="public"] .pp-hero,
  body[data-surface="public"] .gp-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:88px;align-items:end}
  body[data-surface="public"] .pp-hero .lead,
  body[data-surface="public"] .gp-hero .gp-lead{max-width:620px}
  body[data-surface="public"] .section-grid{display:grid;grid-template-columns:minmax(250px,.68fr) minmax(0,1.32fr);gap:90px;align-items:start}
  body[data-surface="public"] .section-grid .section-kicker{position:sticky;top:112px}
  body[data-surface="public"] .section-grid .copy{max-width:720px}
  body[data-surface="public"] .for-list{display:grid;grid-template-columns:1fr 1fr;column-gap:46px}
  body[data-surface="public"] .theme-list{display:grid;grid-template-columns:1fr 1fr;column-gap:52px}

  body[data-surface="public"] .first-step-page-v168{max-width:1000px}
  body[data-surface="public"] .first-step-list-v168{display:grid;grid-template-columns:1fr 1fr;gap:0 56px}
  body[data-surface="public"] .first-step-item-v168{border-top:1px solid rgba(221,208,204,.9)}
  body[data-surface="public"] .first-step-action-v168{max-width:520px;margin-top:40px}

  body[data-surface="public"] .contact-min-v168{max-width:920px}
  body[data-surface="public"] .contact-min-list-v168{display:grid;grid-template-columns:1fr 1fr}
  body[data-surface="public"] .contact-min-row-v168:nth-child(odd){border-right:1px solid rgba(221,208,204,.9);padding-right:34px}
  body[data-surface="public"] .contact-min-row-v168:nth-child(even){padding-left:34px}

  /* MEMBER — two-column practice record: core learning first, secondary reference beside it. */
  body[data-surface="member"] .member-page{max-width:var(--v177-member-max);padding:48px 48px 96px}
  body[data-surface="member"] .member-head{max-width:1100px;margin-bottom:30px}
  body[data-surface="member"] #content{max-width:1100px}
  body[data-surface="member"] .session-detail-card{padding:34px 38px 40px}
  body[data-surface="member"] .member-session-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.46fr);gap:52px;align-items:end}
  body[data-surface="member"] .member-session-summary{max-width:700px}
  body[data-surface="member"] .member-insights,
  body[data-surface="member"] .member-take-home{max-width:720px}
  body[data-surface="member"] .member-session-record{max-width:760px}
  body[data-surface="member"] .member-session-reflection{max-width:760px}
  body[data-surface="member"] .movement-map-grid{grid-template-columns:1fr 1fr}
  body[data-surface="member"] .reflection-chips{flex-wrap:wrap;overflow:visible}
  body[data-surface="member"] .member-insight-item,
  body[data-surface="member"] .member-take-home-row{padding-top:22px;padding-bottom:22px}
  body[data-surface="member"] .member-disclosure-summary{min-height:64px}

  /* COACH — working tool: use horizontal space aggressively, keep dense but readable. */
  body[data-surface="coach"] .page{max-width:var(--v177-coach-max);margin:0 auto;padding-left:36px;padding-right:36px}
  body[data-surface="coach"] .top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px}
  body[data-surface="coach"] .unified-nav{top:0;padding-left:2px;padding-right:2px}
  body[data-surface="coach"] .dashboard-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
  body[data-surface="coach"] .dashboard-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  body[data-surface="coach"] .members-panel .create{grid-template-columns:minmax(260px,1fr) 170px 150px auto;gap:10px}
  body[data-surface="coach"] .members-panel .list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  body[data-surface="coach"] .member-card{min-height:82px}
  body[data-surface="coach"] .member-detail{max-width:1280px}
  body[data-surface="coach"] .member-context-grid{grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr)}
  body[data-surface="coach"] .fast-session-editor{max-width:none}
  body[data-surface="coach"] .library-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  body[data-surface="coach"] .group-rd-grid{grid-template-columns:minmax(0,1.7fr) minmax(320px,.55fr);gap:16px}
  body[data-surface="coach"] .group-rd-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
  body[data-surface="coach"] .form-keygrid,
  body[data-surface="coach"] .raw-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

  body[data-surface="public"] p,
  body[data-surface="member"] p{max-width:72ch}
}

/* Large desktop: preserve readable line lengths instead of stretching content. */
@media (min-width:1600px){
  body[data-surface="public"] .wrap,
  body[data-surface="public"] .about-page,
  body[data-surface="public"] .practice-page,
  body[data-surface="public"] .pp,
  body[data-surface="public"] .gp{max-width:1240px}
  body[data-surface="coach"] .page{max-width:1500px}
}
