
:root{
  --nw-navy:#071c26;
  --nw-navy2:#0a2b36;
  --nw-aqua:#58c6e8;
  --nw-aqua2:#9ee6f7;
  --nw-cream:#f7f1e7;
  --nw-gold:#d6b981;
  --nw-ink:#10232c;
  --nw-white:#ffffff;
  --nw-muted:#6f8087;
  --nw-shadow:0 22px 60px rgba(7,28,38,.14);
}

.nwma-shell,.nwma-app{
  font-family:Arial,Helvetica,sans-serif;
  color:var(--nw-ink);
  box-sizing:border-box;
}
.nwma-shell *,.nwma-app *{box-sizing:border-box}
.nwma-app{
  width:100vw;
  position:relative;
  left:50%;
  right:50%;
  margin-left:-50vw;
  margin-right:-50vw;
  background:linear-gradient(180deg,#f7f1e7 0%,#fff 42%,#edf8fb 100%);
  min-height:100vh;
  padding-bottom:95px;
}
.nwma-login-shell{
  min-height:78vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:60px 20px;
  background:
    radial-gradient(circle at 75% 15%,rgba(88,198,232,.16),transparent 32%),
    linear-gradient(135deg,#071c26,#0a2b36 65%,#0d3340);
}
.nwma-card{
  background:#fff;
  border:1px solid rgba(7,28,38,.08);
  border-radius:24px;
  box-shadow:var(--nw-shadow);
  padding:28px;
}
.nwma-login-card{width:min(520px,100%);padding:42px}
.nwma-login-card h1{font-family:Georgia,serif;font-size:42px;line-height:1.05;margin:8px 0 10px;color:var(--nw-navy)}
.nwma-subtitle{font-size:17px;color:var(--nw-muted);margin:0 0 28px}
.nwma-eyebrow{font-size:11px;letter-spacing:.18em;font-weight:800;color:#2689aa;text-transform:uppercase}
.nwma-form label,.nwma-progress-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#34515d}
.nwma-form{display:grid;gap:18px}
.nwma-form input,.nwma-progress-form input,.nwma-progress-form textarea,.nwma-inline-form input{
  width:100%;border:1px solid #d9e5e8;border-radius:14px;padding:14px 15px;font-size:16px;background:#fbfdfd;color:#10232c
}
.nwma-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:14px 22px;font-size:12px;font-weight:900;letter-spacing:.08em;text-decoration:none;cursor:pointer}
.nwma-btn-primary{background:var(--nw-aqua);color:#06212d}
.nwma-btn-primary:hover{background:#102f3d;color:#fff}
.nwma-btn-full{width:100%}
.nwma-login-links{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:20px;font-size:13px}
.nwma-login-links a{color:#247c99}
.nwma-alert{background:#fff0ef;border:1px solid #f2c8c5;color:#8c2f2a;padding:12px 14px;border-radius:12px;margin:0 0 18px}

.nwma-topbar{
  max-width:1240px;margin:auto;padding:20px 26px;display:flex;justify-content:space-between;align-items:center;
}
.nwma-brandmark{font-family:Georgia,serif;font-weight:800;letter-spacing:.08em;color:var(--nw-navy);font-size:22px}
.nwma-brand-sub{font-size:9px;letter-spacing:.18em;font-weight:800;color:#5d7b86;margin-top:3px}
.nwma-user-actions{display:flex;align-items:center;gap:16px;font-size:12px}
.nwma-user-actions a,.nwma-topbar>a{color:#365763;text-decoration:none;font-size:12px;font-weight:700}
.nwma-member-id{background:#e4f6fb;color:#196d89;border-radius:999px;padding:8px 12px;font-weight:900;letter-spacing:.08em}

.nwma-hero{
  max-width:1240px;margin:10px auto 0;padding:54px 48px;border-radius:34px;
  background:
    radial-gradient(circle at 83% 20%,rgba(88,198,232,.28),transparent 28%),
    linear-gradient(135deg,#071c26,#0c3340);
  color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:0 30px 70px rgba(7,28,38,.24)
}
.nwma-hero h1{font-family:Georgia,serif;font-size:50px;line-height:1.02;margin:10px 0 8px;color:#fff}
.nwma-hero p{margin:0;color:#cde2e8;font-size:17px}
.nwma-hero .nwma-eyebrow{color:var(--nw-aqua2)}
.nwma-hero-small{min-height:230px}

.nwma-dayring{
  --p:25;
  width:160px;height:160px;border-radius:50%;
  background:conic-gradient(var(--nw-aqua) calc(var(--p)*1%),rgba(255,255,255,.14) 0);
  padding:10px;flex:0 0 auto;
}
.nwma-dayring>div{
  width:100%;height:100%;border-radius:50%;background:#0b2935;display:flex;flex-direction:column;align-items:center;justify-content:center
}
.nwma-dayring strong{font-size:44px;font-family:Georgia,serif}
.nwma-dayring span{font-size:9px;letter-spacing:.16em;font-weight:800;color:#b7d6df}

.nwma-progress-strip{max-width:1120px;margin:-22px auto 0;background:#fff;border-radius:18px;box-shadow:var(--nw-shadow);padding:20px 24px;position:relative}
.nwma-progress-bar{height:8px;background:#e6eff1;border-radius:999px;overflow:hidden}
.nwma-progress-bar span{display:block;height:100%;background:linear-gradient(90deg,#58c6e8,#9ee6f7);border-radius:999px}
.nwma-progress-copy{display:flex;justify-content:space-between;gap:20px;margin-top:9px;font-size:12px;color:#6e828a}
.nwma-progress-copy strong{color:#173943}

.nwma-stats-grid,.nwma-feature-grid,.nwma-main-grid{max-width:1240px;margin:28px auto 0;display:grid;gap:18px;padding:0 26px}
.nwma-stats-grid{grid-template-columns:repeat(4,1fr)}
.nwma-stat-card{background:#fff;border:1px solid #e5edef;border-radius:20px;padding:22px;box-shadow:0 10px 28px rgba(7,28,38,.07)}
.nwma-stat-card span{display:block;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#78909a;margin-bottom:8px}
.nwma-stat-card strong{font-family:Georgia,serif;font-size:27px;color:#0a2b36}

.nwma-setup-card{max-width:1188px;margin:28px auto 0;display:flex;justify-content:space-between;gap:30px;align-items:center}
.nwma-setup-card h2,.nwma-card h2{font-family:Georgia,serif;color:#0a2b36;font-size:30px;margin:7px 0 8px}
.nwma-setup-card p{margin:0;color:#6b7f87}
.nwma-inline-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.nwma-inline-form input{width:160px}

.nwma-main-grid{grid-template-columns:1.25fr .75fr}
.nwma-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.nwma-day-badge{background:#e7f7fb;color:#1b7391;border-radius:999px;padding:8px 12px;font-size:10px;font-weight:900;letter-spacing:.12em}
.nwma-checklist{display:grid;gap:10px;margin-top:20px}
.nwma-checklist label{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #e8eff1;border-radius:14px;background:#fbfdfd;cursor:pointer}
.nwma-checklist input{width:18px;height:18px;accent-color:#58c6e8}
.nwma-checklist span{font-size:14px;font-weight:700}
.nwma-week-list{display:grid;gap:9px;margin-top:18px}
.nwma-week{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:13px;background:#f7fafb;color:#6f858d}
.nwma-week span{width:22px;text-align:center}
.nwma-week div{display:flex;flex-direction:column}
.nwma-week strong{font-size:13px;color:#36525c}
.nwma-week small{font-size:10px}
.nwma-week em{font-style:normal;font-size:9px;font-weight:900;letter-spacing:.08em;margin-left:auto;color:#1c7d9d}
.nwma-week.done{background:#eff9f5}
.nwma-week.current{background:#e7f7fb;border:1px solid #bde9f5}

.nwma-feature-grid{grid-template-columns:repeat(4,1fr);margin-bottom:35px}
.nwma-feature{background:#fff;border:1px solid #e4edef;border-radius:20px;padding:24px;text-decoration:none;color:#17343f;box-shadow:0 10px 25px rgba(7,28,38,.06);position:relative}
.nwma-feature span{font-family:Georgia,serif;color:#58c6e8;font-size:26px}
.nwma-feature h3{font-family:Georgia,serif;font-size:23px;margin:20px 0 7px}
.nwma-feature p{color:#74878e;font-size:13px;line-height:1.5;margin:0}
.nwma-feature b{display:inline-block;margin-top:14px;font-size:9px;letter-spacing:.13em;color:#b08a47}
.nwma-feature:not(.is-coming):hover{transform:translateY(-2px);transition:.2s ease}

.nwma-bottom-nav{
  position:fixed;z-index:50;bottom:16px;left:50%;transform:translateX(-50%);width:min(680px,calc(100% - 24px));
  background:rgba(7,28,38,.96);backdrop-filter:blur(12px);border-radius:999px;padding:7px;display:grid;grid-template-columns:repeat(5,1fr);box-shadow:0 20px 45px rgba(7,28,38,.25)
}
.nwma-bottom-nav a,.nwma-bottom-nav span{color:#b9d2da;text-decoration:none;text-align:center;padding:12px 6px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.08em}
.nwma-bottom-nav .active{background:#58c6e8;color:#06212d}

.nwma-progress-form{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}
.nwma-progress-form .nwma-full{grid-column:1/-1}
.nwma-table-wrap{overflow:auto;margin-top:16px}
.nwma-table{width:100%;border-collapse:collapse;font-size:13px}
.nwma-table th,.nwma-table td{padding:12px 10px;border-bottom:1px solid #e7eef0;text-align:left}
.nwma-table th{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#70868f}

@media(max-width:900px){
  .nwma-hero{margin:8px 16px 0;padding:36px 28px;border-radius:26px}
  .nwma-hero h1{font-size:39px}
  .nwma-dayring{width:130px;height:130px}
  .nwma-stats-grid{grid-template-columns:repeat(2,1fr)}
  .nwma-main-grid{grid-template-columns:1fr}
  .nwma-feature-grid{grid-template-columns:repeat(2,1fr)}
  .nwma-setup-card{margin:22px 26px 0;flex-direction:column;align-items:flex-start}
  .nwma-progress-strip{margin:-18px 28px 0}
}
@media(max-width:620px){
  .nwma-login-card{padding:30px 22px}
  .nwma-login-card h1{font-size:34px}
  .nwma-topbar{padding:16px}
  .nwma-member-id{display:none}
  .nwma-hero{flex-direction:column;align-items:flex-start;padding:30px 24px}
  .nwma-hero h1{font-size:36px}
  .nwma-dayring{width:118px;height:118px}
  .nwma-dayring strong{font-size:34px}
  .nwma-progress-strip{margin:-12px 24px 0;padding:16px}
  .nwma-progress-copy{flex-direction:column;gap:3px}
  .nwma-stats-grid,.nwma-feature-grid{grid-template-columns:1fr 1fr;padding:0 16px}
  .nwma-stat-card{padding:18px}
  .nwma-stat-card strong{font-size:22px}
  .nwma-main-grid{padding:0 16px}
  .nwma-card{padding:22px;border-radius:20px}
  .nwma-setup-card{margin:22px 16px 0}
  .nwma-inline-form,.nwma-inline-form input{width:100%}
  .nwma-progress-form{grid-template-columns:1fr}
  .nwma-progress-form .nwma-full{grid-column:auto}
  .nwma-feature h3{font-size:20px}
}


/* v1.1 connected member sections */
.nwma-section-grid{
  max-width:1240px;
  margin:28px auto 40px;
  padding:0 26px;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}
.nwma-section-grid-3{grid-template-columns:repeat(3,1fr)}
.nwma-section-grid .nwma-card p{color:#667d86;line-height:1.65}
.nwma-section-grid .nwma-card a{color:#247c99}
.nwma-recipe-category-row{
  max-width:1240px;margin:24px auto 0;padding:0 26px;display:flex;gap:10px;flex-wrap:wrap
}
.nwma-recipe-category-row span{
  background:#fff;border:1px solid #dce9ec;border-radius:999px;padding:10px 14px;
  font-size:9px;font-weight:900;letter-spacing:.09em;color:#637b84
}
.nwma-recipe-category-row .active{background:#58c6e8;border-color:#58c6e8;color:#06212d}
.nwma-placeholder-card{min-height:220px}
@media(max-width:800px){
  .nwma-section-grid,.nwma-section-grid-3{grid-template-columns:1fr;padding:0 16px}
  .nwma-recipe-category-row{padding:0 16px}
}


/* v1.2 real recipe library */
.nwma-recipe-toolbar{
  max-width:1240px;margin:24px auto 0;padding:0 26px;display:flex;align-items:center;justify-content:space-between;gap:20px
}
.nwma-recipe-category-row{
  margin:0;padding:0;display:flex;gap:9px;flex-wrap:wrap
}
.nwma-recipe-category-row button{
  appearance:none;border:1px solid #dce9ec;background:#fff;border-radius:999px;padding:10px 14px;
  font-size:9px;font-weight:900;letter-spacing:.09em;color:#637b84;cursor:pointer
}
.nwma-recipe-category-row button:hover{border-color:#9edff0;color:#1b7391}
.nwma-recipe-category-row button.active{background:#58c6e8;border-color:#58c6e8;color:#06212d}
.nwma-recipe-count{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#6d828a;white-space:nowrap}
.nwma-recipe-count strong{font-family:Georgia,serif;font-size:22px;color:#0a2b36;margin-right:4px}
.nwma-recipe-grid{
  max-width:1240px;margin:22px auto 48px;padding:0 26px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px
}
.nwma-recipe-card{
  background:#fff;border:1px solid rgba(7,28,38,.08);border-radius:24px;overflow:hidden;
  box-shadow:0 14px 34px rgba(7,28,38,.08);transition:transform .2s ease,box-shadow .2s ease
}
.nwma-recipe-card:hover{transform:translateY(-3px);box-shadow:0 22px 46px rgba(7,28,38,.12)}
.nwma-recipe-card[hidden]{display:none!important}
.nwma-recipe-image{height:220px;position:relative;overflow:hidden;background:#edf4f5}
.nwma-recipe-image img{width:100%;height:100%;object-fit:cover;display:block}
.nwma-recipe-image>span{
  position:absolute;left:16px;bottom:14px;background:rgba(7,28,38,.88);color:#fff;border-radius:999px;padding:8px 11px;
  font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase
}
.nwma-favorite-btn{
  position:absolute;right:14px;top:14px;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.65);
  background:rgba(255,255,255,.93);color:#0a2b36;font-size:23px;line-height:1;cursor:pointer;box-shadow:0 5px 18px rgba(7,28,38,.18)
}
.nwma-favorite-btn.is-favorite{background:#0a2b36;color:#9ee6f7;border-color:#0a2b36}
.nwma-recipe-body{padding:22px}
.nwma-recipe-body h2{font-family:Georgia,serif;font-size:26px;line-height:1.08;margin:0 0 8px;color:#0a2b36}
.nwma-recipe-body p{font-size:13px;line-height:1.55;color:#70848c;min-height:40px;margin:0 0 18px}
.nwma-recipe-open{
  border:0;background:transparent;padding:0;color:#1b7898;font-size:10px;font-weight:900;letter-spacing:.12em;cursor:pointer
}
.nwma-recipe-open span{font-size:16px;vertical-align:-1px;margin-left:4px}
.nwma-recipe-empty{
  max-width:700px;margin:20px auto 80px;padding:40px 26px;text-align:center;background:#fff;border-radius:24px;
  border:1px solid #e2ecef;box-shadow:0 12px 30px rgba(7,28,38,.07)
}
.nwma-recipe-empty h2{font-family:Georgia,serif;font-size:30px;color:#0a2b36;margin:8px 0}
.nwma-recipe-empty p{color:#6f858d}
body.nwma-modal-open{overflow:hidden}
.nwma-recipe-modal{display:none;position:fixed;inset:0;z-index:999999}
.nwma-recipe-modal.is-open{display:block}
.nwma-recipe-modal-backdrop{position:absolute;inset:0;background:rgba(3,17,23,.72);backdrop-filter:blur(7px)}
.nwma-recipe-modal-panel{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(920px,calc(100% - 28px));max-height:88vh;
  overflow:auto;background:#fff;border-radius:28px;box-shadow:0 35px 90px rgba(0,0,0,.35)
}
.nwma-recipe-modal-panel>img{width:100%;height:300px;object-fit:cover;display:block;border-radius:28px 28px 0 0}
.nwma-modal-close{
  position:absolute;right:18px;top:18px;z-index:3;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.95);
  color:#0a2b36;font-size:27px;line-height:1;cursor:pointer;box-shadow:0 5px 18px rgba(0,0,0,.18)
}
.nwma-modal-content{padding:30px 34px 34px}
.nwma-modal-content h2{font-family:Georgia,serif;font-size:38px;color:#0a2b36;margin:7px 0 24px}
.nwma-modal-columns{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.nwma-modal-columns h3{font-family:Georgia,serif;font-size:21px;color:#0a2b36;margin:0 0 13px}
.nwma-modal-columns ul,.nwma-modal-columns ol{padding-left:20px;margin:0;display:grid;gap:9px;color:#516a74;font-size:14px;line-height:1.5}
.nwma-recipe-note{margin-top:27px;padding:18px 20px;border-radius:16px;background:#ecf9fc;border:1px solid #c7edf6}
.nwma-recipe-note strong{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#1b7898}
.nwma-recipe-note p{margin:7px 0 0;color:#46616b;line-height:1.55}

@media(max-width:900px){
  .nwma-recipe-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .nwma-recipe-toolbar{padding:0 16px;align-items:flex-start;flex-direction:column}
  .nwma-recipe-grid{grid-template-columns:1fr;padding:0 16px}
  .nwma-recipe-image{height:235px}
  .nwma-recipe-count{align-self:flex-end}
  .nwma-recipe-modal-panel>img{height:220px}
  .nwma-modal-content{padding:24px 22px 28px}
  .nwma-modal-content h2{font-size:31px}
  .nwma-modal-columns{grid-template-columns:1fr;gap:26px}
}


/* v1.3 */
.nwma-name-setup{max-width:1188px;margin:26px auto 0;display:flex;justify-content:space-between;gap:26px;align-items:center;border:1px solid #bde9f5;background:linear-gradient(135deg,#fff,#eefafd)}
.nwma-name-setup h2{margin:7px 0 6px}.nwma-name-setup p{margin:0;color:#6b7f87}
.nwma-plan-grid{max-width:1240px;margin:28px auto 0;padding:0 26px;display:grid;grid-template-columns:1.05fr .95fr;gap:18px}
.nwma-plan-primary{background:linear-gradient(145deg,#fff,#f7fbfc)}
.nwma-plan-lead{font-size:16px;line-height:1.7;color:#536d77}
.nwma-plan-block{margin-top:18px;padding:18px;border-radius:16px;background:#f4f9fa;border:1px solid #e0ecef}
.nwma-plan-block>span{display:block;font-size:9px;letter-spacing:.13em;text-transform:uppercase;font-weight:900;color:#1b7898;margin-bottom:7px}
.nwma-plan-block p{margin:0;color:#536d77;line-height:1.65}
.nwma-week-overview{max-width:1188px;margin:28px auto 0}.nwma-week-overview>p{color:#627b84;line-height:1.7}
.nwma-seven-day-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:9px;margin-top:20px}
.nwma-mini-day{padding:14px 12px;border-radius:14px;background:#f7fafb;border:1px solid #e7eef0;min-height:115px}
.nwma-mini-day>span{display:block;font-size:8px;font-weight:900;letter-spacing:.1em;color:#7e939b}
.nwma-mini-day strong{display:block;font-size:12px;line-height:1.3;margin:10px 0;color:#274650}.nwma-mini-day small{font-size:9px;color:#85979e}
.nwma-mini-day.done{background:#eff9f5;border-color:#d9eee5}.nwma-mini-day.current{background:#e6f7fb;border-color:#9edff0;box-shadow:0 7px 18px rgba(88,198,232,.18)}
.nwma-plan-disclaimer{max-width:1188px;margin:18px auto 40px;padding:16px 20px;border-radius:16px;background:#fffaf0;border:1px solid #ead9b7;color:#6e624b;font-size:12px;line-height:1.55}
.nwma-profile-form{display:grid;gap:12px;margin-top:18px}.nwma-profile-form label{font-size:9px;letter-spacing:.1em;text-transform:uppercase;font-weight:900;color:#607982}
.nwma-profile-form input{display:block;width:100%;margin-top:6px;border:1px solid #d9e5e8;border-radius:12px;padding:12px 13px;font-size:15px;background:#fbfdfd}
@media(max-width:950px){.nwma-plan-grid{grid-template-columns:1fr}.nwma-seven-day-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:620px){.nwma-name-setup{margin:20px 16px 0;flex-direction:column;align-items:flex-start}.nwma-name-setup .nwma-inline-form,.nwma-name-setup .nwma-inline-form input{width:100%}.nwma-plan-grid{padding:0 16px}.nwma-week-overview{margin:22px 16px 0}.nwma-seven-day-grid{grid-template-columns:repeat(2,1fr)}.nwma-plan-disclaimer{margin:16px 16px 36px}}

/* v1.4 — 63-day plan + workout library */
.nwma-workout-feature,.nwma-workout-library{max-width:1188px;margin:28px auto 0}
.nwma-workout-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.nwma-workout-heading h2,.nwma-workout-library h2{margin:6px 0 6px}.nwma-workout-heading p{margin:0;color:#6c828a}
.nwma-workout-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:22px}
.nwma-workout-steps>div{display:flex;gap:13px;align-items:center;padding:15px 16px;border:1px solid #dfeaed;border-radius:15px;background:#f8fbfc;color:#47616b}
.nwma-workout-steps b{font-family:Georgia,serif;font-size:20px;color:#58bde2}.nwma-workout-swap{margin:18px 0 0;padding:14px 16px;border-radius:14px;background:#edf9fc;color:#4c6973;font-size:12px;line-height:1.55}
.nwma-workout-library>p{color:#627b84}.nwma-workout-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin-top:20px}
.nwma-workout-grid details{border:1px solid #dfeaed;border-radius:16px;background:#fbfdfd;overflow:hidden}.nwma-workout-grid summary{list-style:none;cursor:pointer;padding:17px 18px;display:flex;justify-content:space-between;align-items:center;gap:14px}.nwma-workout-grid summary::-webkit-details-marker{display:none}
.nwma-workout-grid summary span{display:grid;gap:4px}.nwma-workout-grid summary b{color:#173d4b;font-size:14px}.nwma-workout-grid summary small{color:#7a8e95;font-size:10px}.nwma-workout-grid summary i{font-style:normal;font-size:22px;color:#58bde2}.nwma-workout-grid details[open] summary i{transform:rotate(45deg)}
.nwma-workout-grid ol{margin:0;padding:0 22px 18px 42px;color:#526c75;font-size:12px;line-height:1.7}
@media(max-width:700px){.nwma-workout-feature,.nwma-workout-library{margin:22px 16px 0}.nwma-workout-steps,.nwma-workout-grid{grid-template-columns:1fr}.nwma-workout-heading{align-items:center}}

/* v1.5 — daily completion + check-in */
.nwma-daily-checkin{max-width:1188px;margin:28px auto 0;background:linear-gradient(145deg,#fff,#f5fbfc)}
.nwma-checkin-form{margin-top:20px}.nwma-checkin-scale{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.nwma-checkin-form label{font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#607982}
.nwma-checkin-form select,.nwma-checkin-form textarea{width:100%;margin-top:7px;border:1px solid #d9e6e9;border-radius:13px;background:#fff;padding:13px;color:#294954;font-size:13px;text-transform:none;letter-spacing:0;font-weight:500}
.nwma-checkin-notes{display:block;margin-top:16px}.nwma-complete-day{width:100%;margin-top:18px;border:0;border-radius:14px;padding:16px 20px;background:#58c6e8;color:#06212d;font-size:11px;font-weight:900;letter-spacing:.12em;cursor:pointer;box-shadow:0 10px 24px rgba(88,198,232,.25)}
.nwma-complete-day:hover{background:#0a2b36;color:#fff}.nwma-complete-day span{font-size:16px;margin-left:5px}.nwma-checkin-hint{text-align:center;color:#84969c;font-size:10px;margin:10px 0 0}
.nwma-complete-message{margin-top:20px;padding:24px;border-radius:18px;background:#eaf9f5;border:1px solid #cfece2}.nwma-complete-message strong{font-family:Georgia,serif;font-size:24px;color:#173d4b}.nwma-complete-message p{margin:7px 0 0;color:#58727a}
.nwma-library-toggle{max-width:1188px;margin:20px auto 0;border:1px solid #dce8eb;border-radius:20px;background:#fff;overflow:hidden}.nwma-library-toggle>summary{list-style:none;cursor:pointer;padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.nwma-library-toggle>summary::-webkit-details-marker{display:none}.nwma-library-toggle>summary span{display:grid;gap:3px}.nwma-library-toggle>summary small{font-size:8px;letter-spacing:.13em;font-weight:900;color:#1b7898}.nwma-library-toggle>summary strong{font-family:Georgia,serif;font-size:22px;color:#173d4b}.nwma-library-toggle>summary>b{font-size:9px;letter-spacing:.1em;color:#688087}.nwma-library-toggle .nwma-workout-library{margin:0;border:0;border-top:1px solid #e4edef;border-radius:0;box-shadow:none}
@media(max-width:800px){.nwma-checkin-scale{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.nwma-daily-checkin,.nwma-library-toggle{margin:22px 16px 0}.nwma-checkin-scale{grid-template-columns:1fr}.nwma-library-toggle>summary{padding:18px}.nwma-library-toggle>summary strong{font-size:18px}}


/* v1.6 server-saved Daily Action Checklist */
.nwma-checklist-title-row{
  display:flex;justify-content:space-between;align-items:flex-start;gap:16px
}
.nwma-checklist-counter{
  min-width:82px;padding:9px 11px;border-radius:14px;background:#e8f8fc;text-align:center;color:#1a7696
}
.nwma-checklist-counter strong{display:block;font-family:Georgia,serif;font-size:22px;line-height:1}
.nwma-checklist-counter span{display:block;margin-top:5px;font-size:8px;font-weight:900;letter-spacing:.1em}
.nwma-checklist-save-status{
  margin:10px 0 4px;font-size:10px;font-weight:800;letter-spacing:.04em;color:#758a92
}
.nwma-checklist-save-status.is-saving{color:#a2762d}
.nwma-checklist-save-status.is-saved{color:#247e62}
.nwma-checklist-save-status.is-error{color:#a33c35}
.nwma-plan-checklist label.is-checked{
  background:#eff9f5;border-color:#cfe9dd
}
.nwma-plan-checklist label.is-checked span{
  color:#4e6c62;text-decoration:line-through;text-decoration-thickness:1px
}
.nwma-plan-checklist input:disabled{cursor:not-allowed}
@media(max-width:620px){
  .nwma-checklist-title-row{align-items:center}
  .nwma-checklist-counter{min-width:72px}
}


/* v1.7 Progress Intelligence */
.nwma-progress-intelligence{max-width:1240px;margin:28px auto 0;padding:0 26px}
.nwma-intel-summary{display:flex;justify-content:space-between;align-items:center;gap:28px;background:linear-gradient(135deg,#071c26,#0d3340);color:#fff}
.nwma-intel-summary h2{color:#fff;font-size:34px;margin:8px 0}.nwma-intel-summary p{color:#c6dde4;max-width:720px;line-height:1.65;margin:0}
.nwma-intel-ring{--p:0;width:120px;height:120px;border-radius:50%;background:conic-gradient(#58c6e8 calc(var(--p)*1%),rgba(255,255,255,.14) 0);padding:9px;flex:0 0 auto}
.nwma-intel-ring>div{height:100%;width:100%;border-radius:50%;background:#0a2b36;display:flex;align-items:center;justify-content:center;flex-direction:column}
.nwma-intel-ring strong{font-family:Georgia,serif;font-size:34px}.nwma-intel-ring span{font-size:10px;color:#bcd7df}
.nwma-intel-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:18px}
.nwma-intel-metric{background:#fff;border:1px solid #e3edef;border-radius:18px;padding:20px;box-shadow:0 10px 26px rgba(7,28,38,.06)}
.nwma-intel-metric>span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.11em;font-weight:900;color:#758b93}
.nwma-intel-metric strong{display:block;font-family:Georgia,serif;font-size:26px;color:#0a2b36;margin:8px 0}.nwma-intel-metric small{font-size:10px;color:#81939a;line-height:1.4}
.nwma-weight-journey,.nwma-63map,.nwma-milestones,.nwma-checkin-history{max-width:1188px;margin:28px auto 0}
.nwma-weight-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:18px;align-items:center;margin-top:20px}
.nwma-weight-flow>div{background:#f5fafb;border:1px solid #e2edef;border-radius:18px;padding:20px;text-align:center}
.nwma-weight-flow span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.11em;color:#71878f;font-weight:900}
.nwma-weight-flow strong{display:block;font-family:Georgia,serif;font-size:28px;color:#0a2b36;margin-top:8px}.nwma-weight-flow em{font-style:normal;font-size:25px;color:#58c6e8}
.nwma-day-map{display:grid;grid-template-columns:repeat(9,1fr);gap:8px;margin-top:22px}
.nwma-map-day{aspect-ratio:1/1;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#f3f7f8;border:1px solid #e5edef;color:#8a9ca3;font-size:10px;font-weight:900}
.nwma-map-day.complete{background:#dff4eb;border-color:#bfe4d4;color:#237258}.nwma-map-day.current{background:#58c6e8;border-color:#58c6e8;color:#06212d;box-shadow:0 6px 16px rgba(88,198,232,.25)}
.nwma-map-day.missed{background:#fff7ea;border-color:#ecd9b7;color:#a07633}.nwma-map-day.upcoming{background:#f3f7f8}
.nwma-map-legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px;font-size:10px;color:#748990}.nwma-map-legend span{display:flex;align-items:center;gap:6px}
.nwma-map-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.nwma-map-legend i.complete{background:#bfe4d4}.nwma-map-legend i.current{background:#58c6e8}.nwma-map-legend i.missed{background:#ecd9b7}.nwma-map-legend i.upcoming{background:#dfe8eb}
.nwma-milestone-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:20px}
.nwma-milestone{display:flex;align-items:center;gap:10px;padding:14px;border-radius:14px;background:#f7fafb;border:1px solid #e7eef0}.nwma-milestone>span{font-size:18px;color:#9badb4}
.nwma-milestone div{display:flex;flex-direction:column}.nwma-milestone strong{font-size:12px;color:#35535e}.nwma-milestone small{font-size:9px;color:#82949b;margin-top:3px}
.nwma-milestone.earned{background:#eff9f5;border-color:#cce7da}.nwma-milestone.earned>span{color:#247e62}
.nwma-checkin-list{display:grid;gap:12px;margin-top:18px}.nwma-checkin-item{border:1px solid #e5edef;border-radius:16px;padding:16px;background:#fbfdfd}
.nwma-checkin-day{display:flex;justify-content:space-between;gap:14px;align-items:center}.nwma-checkin-day strong{font-size:10px;letter-spacing:.1em;color:#1b7898}.nwma-checkin-day span{font-size:10px;color:#7e929a}
.nwma-checkin-data{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.nwma-checkin-data span{background:#fff;border:1px solid #e6eef0;border-radius:12px;padding:10px;font-size:11px;color:#516a74}
.nwma-checkin-data b{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:#83969d;margin-bottom:5px}.nwma-checkin-item p{margin:12px 0 0;color:#647b84;font-size:12px;line-height:1.55}
@media(max-width:950px){.nwma-intel-metrics{grid-template-columns:repeat(2,1fr)}.nwma-day-map{grid-template-columns:repeat(7,1fr)}.nwma-milestone-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.nwma-progress-intelligence{padding:0 16px}.nwma-intel-summary{flex-direction:column;align-items:flex-start}.nwma-intel-metrics{grid-template-columns:1fr 1fr}.nwma-weight-journey,.nwma-63map,.nwma-milestones,.nwma-checkin-history{margin:22px 16px 0}.nwma-weight-flow{grid-template-columns:1fr;gap:10px}.nwma-weight-flow em{transform:rotate(90deg);justify-self:center}.nwma-day-map{grid-template-columns:repeat(7,1fr);gap:6px}.nwma-map-day{border-radius:9px;font-size:9px}.nwma-milestone-grid{grid-template-columns:repeat(2,1fr)}.nwma-checkin-data{grid-template-columns:1fr 1fr}}


/* v1.7.1 — Compact 63-Day Map */
.nwma-63map-compact{
  overflow:hidden;
}
.nwma-week-map{
  display:grid;
  gap:10px;
  margin-top:22px;
}
.nwma-week-map-row{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:16px;
  align-items:center;
  padding:10px 12px;
  border:1px solid #e7eef0;
  border-radius:16px;
  background:#fbfdfd;
}
.nwma-week-map-label{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.nwma-week-map-label strong{
  font-family:Georgia,serif;
  font-size:18px;
  color:#0a2b36;
}
.nwma-week-map-label span{
  font-size:9px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#71878f;
  font-weight:800;
}
.nwma-week-map-label small{
  font-size:9px;
  color:#8a9ca3;
}
.nwma-week-map-days{
  display:grid;
  grid-template-columns:repeat(7,minmax(34px,1fr));
  gap:7px;
}
.nwma-63map-compact .nwma-map-day{
  aspect-ratio:auto;
  height:38px;
  border-radius:10px;
  font-size:10px;
}
.nwma-63map-compact .nwma-map-legend{
  margin-top:16px;
  justify-content:flex-end;
}

@media(max-width:760px){
  .nwma-week-map-row{
    grid-template-columns:1fr;
    gap:10px;
  }
  .nwma-week-map-label{
    flex-direction:row;
    align-items:baseline;
    flex-wrap:wrap;
    gap:8px;
  }
  .nwma-week-map-days{
    grid-template-columns:repeat(7,1fr);
    gap:5px;
  }
  .nwma-63map-compact .nwma-map-day{
    height:34px;
    font-size:9px;
  }
  .nwma-63map-compact .nwma-map-legend{
    justify-content:flex-start;
  }
}


/* v1.7.3 — Meaningful Milestones + Check-In Repair */
.nwma-milestone-intro{
  margin:8px 0 0;
  color:#738891;
  font-size:12px;
  line-height:1.55;
}
.nwma-milestone-grid-rich{
  grid-template-columns:repeat(2,1fr);
  gap:14px;
}
.nwma-milestone-rich{
  align-items:flex-start;
  padding:18px;
  min-height:150px;
}
.nwma-milestone-icon{
  width:38px;
  height:38px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  background:#eef4f6;
  color:#8799a0;
  font-size:18px;
  font-weight:900;
}
.nwma-milestone-copy{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.nwma-milestone-day{
  font-size:8px;
  font-weight:900;
  letter-spacing:.11em;
  color:#7d929a;
}
.nwma-milestone-rich strong{
  font-family:Georgia,serif;
  font-size:19px;
  line-height:1.2;
  color:#173843;
}
.nwma-milestone-rich p{
  margin:0;
  font-size:11px;
  line-height:1.55;
  color:#687f88;
}
.nwma-milestone-rich small{
  margin-top:auto;
  font-size:9px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.nwma-milestone-rich.earned{
  background:linear-gradient(135deg,#eff9f5,#f8fcfa);
  border-color:#cbe7da;
  box-shadow:0 9px 24px rgba(36,126,98,.08);
}
.nwma-milestone-rich.earned .nwma-milestone-icon{
  background:#247e62;
  color:#fff;
}
.nwma-milestone-rich.earned small{color:#247e62}

.nwma-milestone-rich.next{
  background:linear-gradient(135deg,#eefafd,#fbfeff);
  border-color:#b9e7f3;
}
.nwma-milestone-rich.next .nwma-milestone-icon{
  background:#58c6e8;
  color:#06212d;
}
.nwma-milestone-rich.next small{color:#1b7898}

.nwma-milestone-rich.locked{
  background:#fafcfc;
  opacity:.82;
}

@media(max-width:760px){
  .nwma-milestone-grid-rich{grid-template-columns:1fr}
}


/* v1.8.0 — Member Experience & Achievement Layer */
.nwma-experience-strip{max-width:1240px;margin:24px auto 0;padding:0 26px}
.nwma-experience-card{
  display:grid;grid-template-columns:1.4fr auto minmax(220px,.8fr);gap:24px;align-items:center;
  background:linear-gradient(135deg,#fbfefe,#eef9fb);border-color:#d3edf3
}
.nwma-experience-card h2{margin:7px 0 6px}.nwma-experience-card p{margin:0;color:#667d86;line-height:1.55}
.nwma-experience-stats{display:flex;gap:10px}
.nwma-experience-stats>div{min-width:74px;padding:12px 10px;border-radius:14px;background:#fff;border:1px solid #e0ecef;text-align:center}
.nwma-experience-stats span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:#7b9098;font-weight:900}
.nwma-experience-stats strong{display:block;margin:5px 0 2px;font-family:Georgia,serif;font-size:22px;color:#0a2b36}
.nwma-experience-stats small{font-size:8px;color:#8a9ca3}
.nwma-next-achievement{padding:16px;border-radius:16px;background:#0a2b36;color:#fff}
.nwma-next-achievement span{display:block;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#8fd9ed}
.nwma-next-achievement strong{display:block;font-family:Georgia,serif;font-size:17px;margin:7px 0 5px}
.nwma-next-achievement small{font-size:9px;color:#bfd5dc;line-height:1.4}.nwma-next-achievement.earned-all{background:#247e62}
.nwma-checkin-summary{margin-top:10px;padding:9px 11px;border-radius:10px;background:#f2f8fa;color:#58717b;font-size:10px;line-height:1.45}

.nwma-achievement-modal{display:none;position:fixed;inset:0;z-index:1000000}
.nwma-achievement-modal.is-open{display:block}
.nwma-achievement-backdrop{position:absolute;inset:0;background:rgba(3,17,23,.76);backdrop-filter:blur(7px)}
.nwma-achievement-panel{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(520px,calc(100% - 28px));background:linear-gradient(145deg,#071c26,#0d3340);color:#fff;
  border-radius:28px;padding:40px 34px 34px;text-align:center;box-shadow:0 35px 90px rgba(0,0,0,.42)
}
.nwma-achievement-close{
  position:absolute;right:16px;top:14px;width:38px;height:38px;border-radius:50%;
  border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.09);color:#fff;font-size:24px;cursor:pointer
}
.nwma-achievement-kicker{font-size:9px;font-weight:900;letter-spacing:.15em;color:#8fd9ed}
.nwma-achievement-badge{
  width:82px;height:82px;margin:18px auto 12px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:#58c6e8;color:#06212d;font-size:38px;font-weight:900;box-shadow:0 0 0 10px rgba(88,198,232,.12)
}
.nwma-achievement-day{display:block;font-size:10px;letter-spacing:.12em;color:#b9d5dd;font-weight:900}
.nwma-achievement-panel h2{color:#fff;font-family:Georgia,serif;font-size:36px;margin:8px 0 12px}
.nwma-achievement-panel p{margin:0 auto 24px;max-width:410px;color:#c7dce3;line-height:1.65}

@media(max-width:900px){
  .nwma-experience-card{grid-template-columns:1fr}
  .nwma-experience-stats{justify-content:flex-start}
}
@media(max-width:620px){
  .nwma-experience-strip{padding:0 16px}
  .nwma-experience-stats{display:grid;grid-template-columns:repeat(3,1fr);width:100%}
  .nwma-experience-stats>div{min-width:0}
  .nwma-achievement-panel{padding:38px 22px 28px}
  .nwma-achievement-panel h2{font-size:30px}
}


/* v1.8.1 — Daily Home Intelligence */
.nwma-achievement-mini-bar{
  height:7px;
  margin:11px 0 8px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.13);
}
.nwma-achievement-mini-bar i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#58c6e8;
}

.nwma-dashboard-section-heading{
  max-width:1240px;
  margin:24px auto 8px;
  padding:0 26px;
}
.nwma-dashboard-section-heading h2{
  margin:4px 0 0;
  font-family:Georgia,serif;
  color:#173843;
  font-size:22px;
}

.nwma-today-intelligence{overflow:hidden}
.nwma-today-summary{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
  align-items:center;
  margin:14px 0 18px;
  padding:16px;
  border-radius:18px;
  background:linear-gradient(135deg,#f5fbfc,#edf8fb);
  border:1px solid #d8edf2;
}
.nwma-today-ring{
  --today:0;
  width:82px;
  height:82px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:conic-gradient(#58c6e8 calc(var(--today) * 1%), #dcebef 0);
  position:relative;
}
.nwma-today-ring:after{
  content:'';
  position:absolute;
  inset:7px;
  border-radius:50%;
  background:#fff;
}
.nwma-today-ring>div{
  position:relative;
  z-index:2;
  text-align:center;
}
.nwma-today-ring strong{
  display:block;
  font-family:Georgia,serif;
  font-size:25px;
  line-height:1;
  color:#0a2b36;
}
.nwma-today-ring span{
  display:block;
  margin-top:3px;
  font-size:8px;
  color:#7a9098;
  font-weight:900;
}
.nwma-today-copy>span{
  display:block;
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#71909a;
}
.nwma-today-copy>strong{
  display:block;
  margin:4px 0;
  font-family:Georgia,serif;
  font-size:26px;
  color:#173843;
}
.nwma-today-copy p{
  margin:0 0 8px;
  color:#667e87;
  font-size:11px;
  line-height:1.5;
}
.nwma-dashboard-checklist{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.nwma-dashboard-checklist label{
  margin:0;
}
.nwma-today-action-row{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid #e7eef0;
}
.nwma-today-action-row small{
  color:#7a8e96;
  font-size:9px;
  line-height:1.45;
}
.nwma-day-complete-btn{
  display:inline-flex;
  align-items:center;
  min-height:43px;
  padding:0 18px;
  border-radius:999px;
  background:#247e62;
  color:#fff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.06em;
}
@media(max-width:760px){
  .nwma-dashboard-section-heading{padding:0 16px}
  .nwma-dashboard-checklist{grid-template-columns:1fr}
  .nwma-today-summary{grid-template-columns:auto 1fr}
  .nwma-today-action-row{align-items:flex-start;flex-direction:column}
}
@media(max-width:430px){
  .nwma-today-ring{width:72px;height:72px}
  .nwma-today-copy>strong{font-size:22px}
}


/* v1.9.0 — Coaching & Support Center */
.nwma-coaching-page .nwma-hero-small{
  align-items:center;
}
.nwma-coaching-hero{
  display:grid;
  grid-template-columns:1.4fr auto;
  gap:24px;
}
.nwma-coaching-status{
  min-width:220px;
  padding:18px 20px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:rgba(255,255,255,.07);
}
.nwma-coaching-status span{
  display:block;
  color:#8fd9ed;
  font-size:8px;
  font-weight:900;
  letter-spacing:.12em;
}
.nwma-coaching-status strong{
  display:block;
  margin:7px 0 4px;
  color:#fff;
  font-family:Georgia,serif;
  font-size:24px;
}
.nwma-coaching-status small{color:#c3d9df}
.nwma-coaching-saved{
  max-width:1240px;
  margin:18px auto 0;
  padding:13px 18px;
  border-radius:14px;
  border:1px solid #c9e8db;
  background:#eff9f5;
  color:#247e62;
  font-size:11px;
  font-weight:900;
}
.nwma-coaching-grid-top{
  max-width:1240px;
  margin:24px auto 0;
  padding:0 26px;
  display:grid;
  grid-template-columns:1fr 1.12fr;
  gap:20px;
}
.nwma-coaching-focus-card{
  background:linear-gradient(145deg,#071c26,#0d3340);
  color:#fff;
}
.nwma-coaching-focus-card .nwma-eyebrow{color:#8fd9ed}
.nwma-coaching-focus-card h2{
  color:#fff;
  font-size:31px;
  margin:8px 0;
}
.nwma-coaching-lead{
  color:#d0e1e6 !important;
  font-size:13px;
  line-height:1.65;
}
.nwma-coaching-focus-note{
  margin:18px 0;
  padding:15px;
  border-radius:14px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.1);
}
.nwma-coaching-focus-note span{
  display:block;
  color:#8fd9ed;
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
}
.nwma-coaching-focus-note strong{
  display:block;
  margin-top:6px;
  color:#fff;
  font-size:12px;
  line-height:1.5;
}
.nwma-coaching-progress-track{
  height:7px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.12);
}
.nwma-coaching-progress-track i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#58c6e8;
}
.nwma-coaching-focus-card>small{
  display:block;
  margin-top:7px;
  color:#b9d2d9;
}
.nwma-coach-stat-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
  margin:16px 0;
}
.nwma-coach-stat-grid>div{
  padding:12px;
  border:1px solid #e1ecef;
  border-radius:13px;
  background:#f9fcfd;
}
.nwma-coach-stat-grid span{
  display:block;
  font-size:8px;
  font-weight:900;
  color:#7c9098;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.nwma-coach-stat-grid strong{
  display:block;
  margin-top:5px;
  color:#173843;
  font-family:Georgia,serif;
  font-size:17px;
}
.nwma-coach-snapshot>p{
  font-size:10px;
  color:#738890;
  line-height:1.55;
}
.nwma-coaching-prep,
.nwma-coaching-history{
  max-width:1188px;
  margin:20px auto 0;
}
.nwma-coaching-form{
  display:grid;
  gap:13px;
  margin-top:18px;
}
.nwma-coaching-scale-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.nwma-coaching-form label>span{
  display:block;
  margin-bottom:6px;
  color:#45636e;
  font-size:9px;
  font-weight:900;
  letter-spacing:.04em;
}
.nwma-coaching-form textarea,
.nwma-coaching-form select{
  width:100%;
  border:1px solid #d8e5e9;
  border-radius:12px;
  background:#fff;
  color:#173843;
  padding:12px 13px;
  font:inherit;
  box-sizing:border-box;
}
.nwma-coaching-form textarea{
  resize:vertical;
  min-height:84px;
}
.nwma-coaching-form textarea:focus,
.nwma-coaching-form select:focus{
  outline:none;
  border-color:#58c6e8;
  box-shadow:0 0 0 3px rgba(88,198,232,.13);
}
.nwma-coaching-form .nwma-btn{
  justify-self:start;
  margin-top:4px;
}
.nwma-coaching-history-list{
  display:grid;
  gap:10px;
  margin-top:16px;
}
.nwma-coaching-history-item{
  border:1px solid #e0eaed;
  border-radius:14px;
  background:#fbfdfd;
  overflow:hidden;
}
.nwma-coaching-history-item summary{
  list-style:none;
  cursor:pointer;
  padding:14px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.nwma-coaching-history-item summary::-webkit-details-marker{display:none}
.nwma-coaching-history-item summary span{
  display:block;
  color:#78909a;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}
.nwma-coaching-history-item summary strong{
  display:block;
  margin-top:4px;
  color:#173843;
  font-family:Georgia,serif;
  font-size:16px;
}
.nwma-coaching-history-item summary small{color:#879aa1}
.nwma-coaching-history-body{
  padding:0 16px 16px;
  border-top:1px solid #e7eff1;
}
.nwma-coaching-history-body p{
  margin:10px 0 0;
  color:#5e7680;
  font-size:10px;
  line-height:1.55;
}
.nwma-history-mini-stats{
  display:flex;
  gap:9px;
  margin-top:12px;
}
.nwma-history-mini-stats span{
  padding:7px 10px;
  border-radius:999px;
  background:#eef7f9;
  color:#5e7881;
  font-size:9px;
}
.nwma-empty-state{
  margin-top:16px;
  padding:22px;
  border:1px dashed #d2e2e6;
  border-radius:14px;
  text-align:center;
  background:#fafcfd;
}
.nwma-empty-state strong{
  display:block;
  color:#173843;
  font-family:Georgia,serif;
  font-size:17px;
}
.nwma-empty-state p{
  margin:6px 0 0;
  color:#789098;
  font-size:10px;
}
.nwma-support-resource-grid{
  align-items:stretch;
}
.nwma-resource-link{
  display:block;
  margin-top:8px;
  color:#187fa1;
  font-size:10px;
  font-weight:900;
  text-decoration:none;
  word-break:break-word;
}
.nwma-resource-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:13px;
}
.nwma-resource-buttons a{
  display:inline-flex;
  padding:9px 11px;
  border-radius:999px;
  background:#eef7f9;
  color:#176a84;
  font-size:9px;
  font-weight:900;
  text-decoration:none;
}

@media(max-width:900px){
  .nwma-coaching-hero{grid-template-columns:1fr}
  .nwma-coaching-status{min-width:0}
  .nwma-coaching-grid-top{grid-template-columns:1fr}
  .nwma-coach-stat-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .nwma-coaching-grid-top{padding:0 16px}
  .nwma-coaching-saved{margin-left:16px;margin-right:16px}
  .nwma-coaching-prep,.nwma-coaching-history{margin-left:16px;margin-right:16px}
  .nwma-coaching-scale-grid{grid-template-columns:1fr}
}
@media(max-width:480px){
  .nwma-coach-stat-grid{grid-template-columns:1fr 1fr}
  .nwma-coaching-history-item summary{align-items:flex-start}
}


/* v1.9.1 — New Wave AI Coach */
.nwma-ai-coach{
  max-width:1188px;
  margin:20px auto 0;
  position:relative;
  overflow:hidden;
}
.nwma-ai-coach:before{
  content:'';
  position:absolute;
  width:240px;
  height:240px;
  right:-100px;
  top:-110px;
  border-radius:50%;
  background:rgba(88,198,232,.10);
  pointer-events:none;
}
.nwma-ai-coach-head{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:flex-start;
  position:relative;
  z-index:1;
}
.nwma-ai-coach-head h2{
  margin:6px 0 7px;
  font-size:28px;
}
.nwma-ai-coach-head p{
  max-width:760px;
  color:#687f88;
  line-height:1.6;
  margin:0;
}
.nwma-ai-status{
  display:inline-flex;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
  padding:9px 12px;
  border-radius:999px;
  background:#f4f7f8;
  color:#72868d;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}
.nwma-ai-status i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#9caeb4;
}
.nwma-ai-status.is-live{
  color:#247e62;
  background:#eff9f5;
}
.nwma-ai-status.is-live i{
  background:#36a77f;
  box-shadow:0 0 0 4px rgba(54,167,127,.12);
}
.nwma-ai-briefing{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
  margin:18px 0 12px;
}
.nwma-ai-briefing>div{
  padding:12px 13px;
  border-radius:13px;
  border:1px solid #deeaed;
  background:#f9fcfd;
}
.nwma-ai-briefing span{
  display:block;
  font-size:7px;
  font-weight:900;
  letter-spacing:.09em;
  color:#81949b;
}
.nwma-ai-briefing strong{
  display:block;
  margin-top:4px;
  color:#173843;
  font-size:11px;
}
.nwma-ai-quick-prompts{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:12px 0;
}
.nwma-ai-quick-prompts button{
  border:1px solid #cce4ea;
  background:#eef8fa;
  color:#176d88;
  border-radius:999px;
  padding:8px 11px;
  font-size:8px;
  font-weight:900;
  letter-spacing:.04em;
  cursor:pointer;
}
.nwma-ai-quick-prompts button:hover{
  background:#dff3f8;
}
.nwma-ai-chat{
  height:410px;
  overflow-y:auto;
  padding:18px;
  border-radius:18px;
  border:1px solid #dbe8eb;
  background:linear-gradient(180deg,#f8fcfd,#f3f8f9);
}
.nwma-ai-message{
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin:0 0 14px;
}
.nwma-ai-message>div:last-child{
  max-width:78%;
}
.nwma-ai-message span{
  display:block;
  margin-bottom:4px;
  color:#789099;
  font-size:7px;
  font-weight:900;
  letter-spacing:.09em;
}
.nwma-ai-message p{
  margin:0;
  padding:11px 13px;
  border-radius:14px;
  background:#fff;
  border:1px solid #e1ecef;
  color:#405e69;
  font-size:11px;
  line-height:1.6;
}
.nwma-ai-message.user{
  justify-content:flex-end;
}
.nwma-ai-message.user span{text-align:right}
.nwma-ai-message.user p{
  background:#0a2b36;
  border-color:#0a2b36;
  color:#fff;
}
.nwma-ai-avatar{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#58c6e8;
  color:#06212d;
  font-size:9px;
  font-weight:900;
  box-shadow:0 0 0 4px rgba(88,198,232,.12);
}
.nwma-ai-typing{
  display:flex;
  align-items:center;
  gap:4px;
  color:#728991;
  font-size:9px;
  padding:7px 0;
}
.nwma-ai-typing[hidden]{display:none}
.nwma-ai-typing i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#58c6e8;
  animation:nwmaAiPulse 1s infinite alternate;
}
.nwma-ai-typing i:nth-child(2){animation-delay:.15s}
.nwma-ai-typing i:nth-child(3){animation-delay:.3s}
.nwma-ai-typing span{margin-left:5px}
@keyframes nwmaAiPulse{to{opacity:.25;transform:translateY(-2px)}}
.nwma-ai-compose{
  display:grid;
  grid-template-columns:1fr auto;
  gap:9px;
  margin-top:10px;
}
.nwma-ai-compose textarea{
  width:100%;
  min-height:58px;
  resize:vertical;
  box-sizing:border-box;
  border:1px solid #d4e4e8;
  border-radius:14px;
  padding:12px 13px;
  font:inherit;
  color:#173843;
  background:#fff;
}
.nwma-ai-compose textarea:focus{
  outline:none;
  border-color:#58c6e8;
  box-shadow:0 0 0 3px rgba(88,198,232,.12);
}
.nwma-ai-compose .nwma-btn{
  min-width:100px;
  align-self:stretch;
}
.nwma-ai-compose.is-sending{opacity:.72;pointer-events:none}
.nwma-ai-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:9px;
}
.nwma-ai-footer small{
  max-width:760px;
  color:#82959c;
  font-size:8px;
  line-height:1.45;
}
.nwma-ai-footer button{
  border:0;
  background:none;
  color:#738891;
  font-size:8px;
  font-weight:900;
  cursor:pointer;
}
.nwma-ai-footer button:disabled{opacity:.4;cursor:default}
.nwma-ai-not-configured{
  margin-top:12px;
  padding:11px 13px;
  border-radius:12px;
  background:#fff8e8;
  border:1px solid #efdfb8;
  color:#7b6430;
  font-size:9px;
  line-height:1.5;
}

@media(max-width:760px){
  .nwma-ai-coach{margin-left:16px;margin-right:16px}
  .nwma-ai-coach-head{flex-direction:column}
  .nwma-ai-briefing{grid-template-columns:1fr}
  .nwma-ai-chat{height:380px;padding:13px}
  .nwma-ai-message>div:last-child{max-width:88%}
  .nwma-ai-compose{grid-template-columns:1fr}
  .nwma-ai-footer{align-items:flex-start;flex-direction:column}
}


/* v1.9.2 — Coach readability + setup-state fixes */
.nwma-ai-coach .nwma-eyebrow{font-size:11px!important;letter-spacing:.08em}
.nwma-ai-coach-head h2{font-size:31px!important;line-height:1.18!important}
.nwma-ai-coach-head p{font-size:15px!important;line-height:1.65!important}
.nwma-ai-status{font-size:11px!important;padding:10px 14px!important}
.nwma-ai-briefing span{font-size:10px!important}
.nwma-ai-briefing strong{font-size:14px!important;line-height:1.4!important}
.nwma-ai-quick-prompts button{font-size:12px!important;padding:10px 14px!important;line-height:1.25!important}
.nwma-ai-quick-prompts button:disabled{opacity:.45;cursor:not-allowed}
.nwma-ai-message span{font-size:10px!important}
.nwma-ai-message p{font-size:15px!important;line-height:1.65!important;padding:13px 15px!important}
.nwma-ai-avatar{width:38px!important;height:38px!important;flex-basis:38px!important;font-size:11px!important}
.nwma-ai-typing{font-size:12px!important}
.nwma-ai-compose textarea{font-size:16px!important;line-height:1.5!important;min-height:68px!important}
.nwma-ai-compose .nwma-btn{font-size:13px!important;padding-left:18px!important;padding-right:18px!important}
.nwma-ai-footer small{font-size:11px!important;line-height:1.55!important}
.nwma-ai-footer button{font-size:10px!important}
.nwma-ai-not-configured{font-size:13px!important;line-height:1.55!important}
.nwma-coaching-hero .nwma-eyebrow,
.nwma-coaching-grid-top .nwma-eyebrow,
.nwma-coaching-checkin .nwma-eyebrow,
.nwma-coaching-history .nwma-eyebrow{font-size:11px!important}
.nwma-coaching-hero p,
.nwma-coaching-grid-top p,
.nwma-coaching-checkin p,
.nwma-coaching-history p{font-size:14px!important;line-height:1.6!important}
.nwma-coaching-grid-top span,.nwma-coaching-grid-top small{font-size:11px!important}
.nwma-coaching-grid-top strong{font-size:15px!important}
.nwma-coaching-checkin label{font-size:13px!important}
.nwma-coaching-checkin input,.nwma-coaching-checkin textarea,.nwma-coaching-checkin select{font-size:15px!important;line-height:1.5!important}
.nwma-coaching-history summary{font-size:14px!important}
.nwma-coaching-history details p,.nwma-coaching-history details li{font-size:13px!important;line-height:1.6!important}
@media(max-width:760px){
  .nwma-ai-coach-head h2{font-size:27px!important}
  .nwma-ai-quick-prompts button{font-size:12px!important;flex:1 1 calc(50% - 8px)}
  .nwma-ai-message p{font-size:15px!important}
}


/* v1.9.4 — AI accountability intelligence */
.nwma-ai-signal{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:14px;
  align-items:center;
  margin:14px 0;
  padding:15px 16px;
  border:1px solid #cfe5ea;
  border-radius:16px;
  background:linear-gradient(135deg,#f4fbfc,#fbfdfd);
}
.nwma-ai-signal-icon{
  width:42px;
  height:42px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#0a2b36;
  color:#58c6e8;
  font-size:20px;
  font-weight:900;
}
.nwma-ai-signal>div:nth-child(2)>span,
.nwma-ai-usage span{
  display:block;
  font-size:10px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.08em;
  color:#67818a;
}
.nwma-ai-signal>div:nth-child(2)>strong{
  display:block;
  margin:4px 0 3px;
  color:#123845;
  font-size:17px;
  line-height:1.25;
}
.nwma-ai-signal p{
  margin:0 0 5px!important;
  font-size:13px!important;
  line-height:1.5!important;
  color:#58727b!important;
}
.nwma-ai-signal small{
  color:#294f5b;
  font-size:11px;
  line-height:1.4;
}
.nwma-ai-usage{
  min-width:82px;
  text-align:center;
  padding:10px 11px;
  border-left:1px solid #d8e9ed;
}
.nwma-ai-usage strong{
  display:block;
  margin-top:4px;
  font-size:15px;
  color:#0a2b36;
}
.nwma-ai-message p strong{font-weight:800;color:inherit}
.nwma-ai-message p em{font-style:italic}
@media(max-width:760px){
  .nwma-ai-signal{grid-template-columns:auto 1fr}
  .nwma-ai-usage{
    grid-column:1/-1;
    border-left:0;
    border-top:1px solid #d8e9ed;
    padding-top:10px;
    text-align:left;
  }
}


/* v1.9.5 — proactive coach + recipe integration */
.nwma-home-coach-signal{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:18px;
  margin-top:18px;
  border:1px solid #cfe6eb;
  background:linear-gradient(135deg,#f8fcfd,#eef9fb);
}
.nwma-home-coach-icon{
  width:52px;
  height:52px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 52px;
  background:#0a2b36;
  color:#58c6e8;
  font-weight:900;
  letter-spacing:.03em;
}
.nwma-home-coach-copy h2{
  margin:5px 0 5px;
  color:#173843;
  font-size:21px;
  line-height:1.25;
}
.nwma-home-coach-copy p{
  margin:0 0 6px;
  color:#5b747d;
  font-size:14px;
  line-height:1.55;
}
.nwma-home-coach-copy small{
  color:#294f5b;
  font-size:11px;
  line-height:1.45;
}
.nwma-home-coach-signal .nwma-btn{
  white-space:nowrap;
}
.nwma-ai-recipe-link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:8px 0 2px;
  padding:10px 13px;
  border-radius:999px;
  background:#e4f7fb;
  border:1px solid #bfe7ef;
  color:#126c87!important;
  text-decoration:none!important;
  font-size:11px;
  font-weight:900;
  line-height:1.2;
}
.nwma-ai-recipe-link:hover{
  background:#d5f1f7;
}
.nwma-ai-recipe-link span{
  display:inline!important;
  margin:0!important;
  color:inherit!important;
  font-size:inherit!important;
  letter-spacing:0!important;
}
@media(max-width:760px){
  .nwma-home-coach-signal{
    grid-template-columns:auto 1fr;
  }
  .nwma-home-coach-signal .nwma-btn{
    grid-column:1/-1;
    width:100%;
    text-align:center;
  }
}


/* v1.9.6 — deterministic AI recipe picks */
.nwma-ai-recipe-heading{
  display:block!important;
  margin:10px 0 4px!important;
  color:#53717b!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
}
.nwma-ai-message p .nwma-ai-recipe-link{
  display:flex;
  width:max-content;
  max-width:100%;
  box-sizing:border-box;
  margin:7px 0 0;
}


/* v1.9.7 — long-term coaching memory */
.nwma-coach-memory-card{
  max-width:1188px;
  margin:20px auto 0;
}
.nwma-coach-memory-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
}
.nwma-coach-memory-head h2{
  margin:5px 0 6px;
  color:#173843;
  font-size:25px;
  line-height:1.2;
}
.nwma-coach-memory-head p{
  margin:0;
  max-width:760px;
  color:#647c85;
  font-size:14px;
  line-height:1.55;
}
.nwma-coach-memory-head button{
  border:0;
  background:none;
  color:#778c94;
  font-size:10px;
  font-weight:900;
  letter-spacing:.05em;
  cursor:pointer;
}
.nwma-coach-memory-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:16px;
}
.nwma-coach-memory-grid article{
  padding:14px;
  border:1px solid #dce9ec;
  border-radius:14px;
  background:#f9fcfd;
}
.nwma-coach-memory-grid article>span{
  display:block;
  color:#173843;
  font-size:13px;
  font-weight:900;
}
.nwma-coach-memory-grid article>small{
  display:block;
  margin-top:2px;
  color:#80939a;
  font-size:10px;
}
.nwma-coach-memory-grid ul{
  margin:10px 0 0;
  padding-left:18px;
}
.nwma-coach-memory-grid li{
  margin:0 0 6px;
  color:#4f6b75;
  font-size:13px;
  line-height:1.45;
}
.nwma-coach-memory-foot{
  display:flex;
  justify-content:space-between;
  gap:18px;
  margin-top:11px;
  color:#82959c;
}
.nwma-coach-memory-foot span,
.nwma-coach-memory-foot small{
  font-size:10px;
  line-height:1.4;
}
.nwma-coach-memory-empty{
  margin-top:14px;
  padding:15px 16px;
  border-radius:14px;
  background:#f4fafb;
  border:1px solid #dcebed;
}
.nwma-coach-memory-empty strong{
  display:block;
  color:#173843;
  font-size:14px;
}
.nwma-coach-memory-empty p{
  margin:5px 0 0;
  color:#657e87;
  font-size:13px;
  line-height:1.55;
}
@media(max-width:760px){
  .nwma-coach-memory-card{margin-left:16px;margin-right:16px}
  .nwma-coach-memory-head{flex-direction:column}
  .nwma-coach-memory-grid{grid-template-columns:1fr}
  .nwma-coach-memory-foot{flex-direction:column;gap:4px}
}


/* v1.9.8 — AI Weekly Coaching Review */
.nwma-weekly-review-card{
  max-width:1188px;
  margin:20px auto 0;
}
.nwma-weekly-review-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
}
.nwma-weekly-review-head h2{
  margin:5px 0 6px;
  color:#173843;
  font-size:26px;
  line-height:1.2;
}
.nwma-weekly-review-head p{
  max-width:780px;
  margin:0;
  color:#647c85;
  font-size:14px;
  line-height:1.55;
}
.nwma-weekly-review-badge{
  flex:0 0 auto;
  padding:9px 12px;
  border-radius:999px;
  background:#e9f8fb;
  color:#176d88;
  font-size:10px;
  font-weight:900;
  letter-spacing:.06em;
}
.nwma-weekly-review-badge.upcoming{
  background:#f5f7f7;
  color:#748990;
}
.nwma-weekly-review-hero{
  display:grid;
  grid-template-columns:1fr auto;
  gap:20px;
  align-items:center;
  margin-top:17px;
  padding:18px;
  border-radius:16px;
  background:#0a2b36;
  color:#fff;
}
.nwma-weekly-review-hero span{
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  color:#9ee6f7;
}
.nwma-weekly-review-hero h3{
  margin:5px 0 5px;
  font-size:23px;
  line-height:1.2;
  color:#fff;
}
.nwma-weekly-review-hero p{
  margin:0;
  max-width:760px;
  color:#d9e7eb;
  font-size:14px;
  line-height:1.55;
}
.nwma-weekly-review-score{
  min-width:120px;
  text-align:center;
  padding:13px;
  border-radius:14px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
}
.nwma-weekly-review-score strong{
  display:block;
  font-size:28px;
  line-height:1;
  color:#9ee6f7;
}
.nwma-weekly-review-score span{
  display:block;
  margin-top:5px;
  font-size:8px;
  color:#d9e7eb;
}
.nwma-weekly-review-stats{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:8px;
  margin-top:10px;
}
.nwma-weekly-review-stats>div{
  padding:12px;
  border:1px solid #dce9ec;
  border-radius:13px;
  background:#f9fcfd;
}
.nwma-weekly-review-stats span{
  display:block;
  color:#7c9098;
  font-size:9px;
  font-weight:900;
  letter-spacing:.04em;
}
.nwma-weekly-review-stats strong{
  display:block;
  margin-top:4px;
  color:#173843;
  font-size:15px;
}
.nwma-weekly-review-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:10px;
}
.nwma-weekly-review-columns article{
  padding:15px 16px;
  border-radius:14px;
  border:1px solid #dce9ec;
  background:#fff;
}
.nwma-weekly-review-columns article>span,
.nwma-weekly-review-next>span{
  color:#5d7983;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
}
.nwma-weekly-review-columns ul{
  margin:9px 0 0;
  padding-left:18px;
}
.nwma-weekly-review-columns li{
  margin-bottom:7px;
  color:#4f6972;
  font-size:13px;
  line-height:1.5;
}
.nwma-weekly-review-next{
  margin-top:10px;
  padding:15px 16px;
  border-radius:14px;
  background:#eef9fb;
  border:1px solid #cfe7ec;
}
.nwma-weekly-review-next strong{
  display:block;
  margin-top:5px;
  color:#143945;
  font-size:16px;
  line-height:1.4;
}
.nwma-weekly-review-next p{
  margin:6px 0 0;
  color:#5b747d;
  font-size:13px;
  line-height:1.5;
}
.nwma-weekly-review-history{
  margin-top:12px;
  border-top:1px solid #e1eaec;
  padding-top:10px;
}
.nwma-weekly-review-history summary{
  cursor:pointer;
  color:#5c7780;
  font-size:10px;
  font-weight:900;
  letter-spacing:.06em;
}
.nwma-weekly-review-history article{
  margin-top:9px;
  padding:12px 14px;
  border-radius:12px;
  background:#f8fbfc;
}
.nwma-weekly-review-history article span{
  display:block;
  color:#7b9097;
  font-size:9px;
  font-weight:900;
}
.nwma-weekly-review-history article strong{
  display:block;
  margin-top:3px;
  color:#173843;
  font-size:14px;
}
.nwma-weekly-review-history article p{
  margin:4px 0 0;
  color:#657e87;
  font-size:12px;
  line-height:1.5;
}
.nwma-weekly-review-empty{
  display:flex;
  align-items:center;
  gap:16px;
  margin-top:16px;
  padding:16px;
  border-radius:14px;
  background:#f7fbfc;
  border:1px solid #dcebed;
}
.nwma-weekly-review-countdown{
  width:52px;
  height:52px;
  flex:0 0 52px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#0a2b36;
  color:#58c6e8;
  font-size:22px;
  font-weight:900;
}
.nwma-weekly-review-empty strong{
  display:block;
  color:#173843;
  font-size:14px;
}
.nwma-weekly-review-empty p{
  margin:4px 0 0;
  color:#657e87;
  font-size:13px;
  line-height:1.5;
}
@media(max-width:900px){
  .nwma-weekly-review-stats{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  .nwma-weekly-review-card{margin-left:16px;margin-right:16px}
  .nwma-weekly-review-head{flex-direction:column}
  .nwma-weekly-review-hero{grid-template-columns:1fr}
  .nwma-weekly-review-score{text-align:left}
  .nwma-weekly-review-stats{grid-template-columns:repeat(2,1fr)}
  .nwma-weekly-review-columns{grid-template-columns:1fr}
}


/* v1.9.9 — Smart Recovery / Intervention System */
.nwma-recovery-card{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:18px;
  align-items:center;
  margin-top:18px;
  border:1px solid #efd9af;
  background:linear-gradient(135deg,#fffaf0,#fffdf8);
}
.nwma-recovery-card.nwma-recovery-support,
.nwma-recovery-card.nwma-recovery-priority{
  border-color:#e7c99b;
}
.nwma-recovery-mark{
  width:54px;
  height:54px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#8b6326;
  color:#fff4d8;
  font-size:24px;
  font-weight:900;
}
.nwma-recovery-copy h2{
  margin:5px 0 5px;
  color:#4e3b1e;
  font-size:21px;
  line-height:1.25;
}
.nwma-recovery-copy p{
  margin:0 0 7px;
  color:#705b39;
  font-size:14px;
  line-height:1.55;
}
.nwma-recovery-copy ol{
  margin:8px 0 8px 20px;
  padding:0;
}
.nwma-recovery-copy li{
  margin:4px 0;
  color:#665231;
  font-size:12px;
  line-height:1.45;
}
.nwma-recovery-copy small{
  color:#695638;
  font-size:11px;
  line-height:1.45;
}
.nwma-ai-recovery{
  margin:14px 0;
  padding:15px 16px;
  border-radius:16px;
  border:1px solid #ead7b0;
  background:#fffaf0;
}
.nwma-ai-recovery-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
}
.nwma-ai-recovery-head span{
  display:block;
  color:#8b6a35;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
}
.nwma-ai-recovery-head strong{
  display:block;
  margin-top:4px;
  color:#4d3b20;
  font-size:18px;
  line-height:1.3;
}
.nwma-ai-recovery-head em{
  padding:6px 9px;
  border-radius:999px;
  background:#f2e1bf;
  color:#775825;
  font-size:9px;
  font-style:normal;
  font-weight:900;
  letter-spacing:.06em;
}
.nwma-ai-recovery p{
  margin:8px 0!important;
  color:#6d5938!important;
  font-size:13px!important;
  line-height:1.55!important;
}
.nwma-ai-recovery-steps{
  display:grid;
  gap:7px;
  margin:10px 0;
}
.nwma-ai-recovery-steps>div{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:9px;
  align-items:start;
  padding:9px 10px;
  border-radius:11px;
  background:#fff;
  border:1px solid #eee1c7;
}
.nwma-ai-recovery-steps b{
  width:23px;
  height:23px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#8b6326;
  color:#fff;
  font-size:10px;
}
.nwma-ai-recovery-steps span{
  color:#5c4c31;
  font-size:12px;
  line-height:1.45;
}
.nwma-ai-recovery>button{
  border:0;
  border-radius:999px;
  background:#0a2b36;
  color:#fff;
  padding:10px 14px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
  cursor:pointer;
}
.nwma-ai-recovery>button:disabled{opacity:.45;cursor:not-allowed}
.nwma-ai-recovery-human{
  display:block;
  margin-top:9px;
  color:#7a6746;
  font-size:10px;
  line-height:1.45;
}
@media(max-width:760px){
  .nwma-recovery-card{
    grid-template-columns:auto 1fr;
  }
  .nwma-recovery-card .nwma-btn{
    grid-column:1/-1;
    width:100%;
    text-align:center;
  }
}


/* v2.0.0 — New Wave Member Support notifications */
.nwma-notification-center{
  margin-top:18px;
}
.nwma-notification-center .nwma-section-head h2{
  margin:4px 0 3px;
  font-size:22px;
  color:#173843;
}
.nwma-notification-center .nwma-section-head p{
  margin:0;
  color:#657e87;
  font-size:13px;
}
.nwma-notification-count{
  padding:8px 11px;
  border-radius:999px;
  background:#e8f8fb;
  color:#176d88;
  font-size:10px;
  font-weight:900;
}
.nwma-notification-list{
  display:grid;
  gap:8px;
  margin-top:13px;
}
.nwma-notification-item{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:11px;
  align-items:center;
  padding:12px 13px;
  border:1px solid #dce9ec;
  border-radius:13px;
  background:#f9fcfd;
}
.nwma-notification-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:#58c6e8;
  box-shadow:0 0 0 4px rgba(88,198,232,.12);
}
.nwma-notification-item strong{
  display:block;
  color:#173843;
  font-size:13px;
}
.nwma-notification-item p{
  margin:3px 0 0;
  color:#657e87;
  font-size:12px;
  line-height:1.45;
}
.nwma-notification-item>a{
  color:#176d88;
  text-decoration:none;
  font-size:10px;
  font-weight:900;
  white-space:nowrap;
}
.nwma-notification-recovery{
  background:#fffaf0;
  border-color:#ead7b0;
}
.nwma-notification-recovery .nwma-notification-dot{
  background:#c18a35;
  box-shadow:0 0 0 4px rgba(193,138,53,.12);
}
@media(max-width:760px){
  .nwma-notification-item{
    grid-template-columns:auto 1fr;
  }
  .nwma-notification-item>a{
    grid-column:2;
    justify-self:start;
  }
}


/* v2.0.4 — Safety + Human Escalation */
.nwma-safety-support-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:16px;
  align-items:flex-start;
  margin-bottom:18px;
  border:1px solid #e7c5bf;
  background:linear-gradient(135deg,#fff8f6,#fffdfc);
}
.nwma-safety-support-icon{
  width:48px;
  height:48px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#8f3b31;
  color:#fff;
  font-size:22px;
  font-weight:900;
}
.nwma-safety-support-card h2{
  margin:5px 0 6px;
  color:#6f3028;
  font-size:21px;
  line-height:1.25;
}
.nwma-safety-support-card p{
  margin:0;
  color:#705d59;
  font-size:13px;
  line-height:1.55;
}
.nwma-safety-support-links{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
.nwma-safety-support-links a{
  display:inline-flex;
  padding:9px 12px;
  border-radius:999px;
  background:#0a2b36;
  color:#fff!important;
  text-decoration:none!important;
  font-size:10px;
  font-weight:900;
}


/* v2.0.8 — Mobile QA polish
   Keeps the fixed member nav from covering content and gives third-party
   floating widgets room without changing their plugins. */
@media (max-width: 620px) {
  .nwma-shell,
  .nwma-app {
    padding-bottom: 190px !important;
  }

  .nwma-bottom-nav {
    bottom: calc(76px + env(safe-area-inset-bottom)) !important;
    width: calc(100% - 32px) !important;
    max-width: 660px;
    padding: 6px !important;
    z-index: 99990 !important;
    box-shadow: 0 14px 36px rgba(7,28,38,.24) !important;
  }

  .nwma-bottom-nav a,
  .nwma-bottom-nav span {
    min-width: 0;
    padding: 12px 4px !important;
    font-size: 9px !important;
    line-height: 1.15;
    letter-spacing: .05em !important;
  }

  /* Give long AI responses a little more breathing room above the fixed nav. */
  .nwma-ai-coach,
  .nwma-ai-chat,
  .nwma-ai-chat-log,
  .nwma-ai-chat-wrap,
  .nwma-coaching-memory,
  .nwma-weekly-review,
  .nwma-daily-checkin,
  .nwma-profile-card {
    scroll-margin-bottom: 190px;
  }

  /* Prevent textareas / buttons at the end of cards from feeling pinned
     under the navigation on small screens. */
  .nwma-card:last-of-type,
  .nwma-main-grid:last-of-type,
  .nwma-plan-disclaimer,
  .nwma-recipe-grid,
  .nwma-progress-history {
    margin-bottom: 28px;
  }
}

@media (max-width: 390px) {
  .nwma-bottom-nav {
    width: calc(100% - 20px) !important;
  }
  .nwma-bottom-nav a,
  .nwma-bottom-nav span {
    font-size: 8px !important;
    letter-spacing: .03em !important;
  }
}


/* v2.0.11 — Member notification preferences */
.nwma-notification-preferences-card h2{margin-bottom:8px}
.nwma-notification-preferences-card>p{margin-bottom:20px}
.nwma-notification-preferences-form{display:grid;gap:16px}
.nwma-pref-master,
.nwma-pref-options label{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:18px;
  border:1px solid #d9e8ec;
  border-radius:16px;
  background:#f8fcfd;
}
.nwma-pref-master span,
.nwma-pref-options label span{display:grid;gap:4px;flex:1}
.nwma-pref-master strong,
.nwma-pref-options strong{color:#123541;font-size:15px}
.nwma-pref-master small,
.nwma-pref-options small{color:#6f858d;font-size:13px;line-height:1.5}
.nwma-pref-master input,
.nwma-pref-options input{
  width:22px;
  height:22px;
  flex:0 0 22px;
  accent-color:#58c6e8;
  margin-top:2px;
}
.nwma-pref-options{display:grid;gap:10px}
.nwma-pref-options label{justify-content:flex-start}
.nwma-pref-note{font-size:12px!important;line-height:1.55!important;color:#74868d!important;margin:0!important}
.nwma-preferences-saved{
  padding:12px 14px;
  border-radius:12px;
  background:#edf9f4;
  border:1px solid #cce9da;
  color:#247b5d;
  font-weight:700;
  margin-bottom:4px;
}
@media (max-width:620px){
  .nwma-pref-master,
  .nwma-pref-options label{padding:16px;gap:14px}
  .nwma-notification-preferences-card .nwma-btn{width:100%}
}


/* v2.0.12 — Mobile spacing + rolling coaching intelligence */
.nwma-coach-continuity{
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid #e3edf0;
}
.nwma-coach-continuity-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:12px;
}
.nwma-coach-continuity-grid article{
  background:#f7fbfc;
  border:1px solid #dcebed;
  border-radius:16px;
  padding:16px;
  box-shadow:none;
}
.nwma-coach-continuity-grid span{
  display:block;
  color:#7a9098;
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
  margin-bottom:7px;
}
.nwma-coach-continuity-grid strong{
  display:block;
  color:#173943;
  font-family:Georgia,serif;
  font-size:18px;
  line-height:1.25;
  margin-bottom:6px;
}
.nwma-coach-continuity-grid small{
  display:block;
  color:#74878e;
  font-size:11px;
  line-height:1.5;
}

.nwma-notification-preferences-card h2{
  font-size:34px;
  line-height:1.08;
  margin:8px 0 10px;
}
.nwma-notification-preferences-card>p{
  margin:0 0 18px;
  line-height:1.55;
}

@media (max-width:620px){
  .nwma-notification-preferences-card{
    padding:22px !important;
  }
  .nwma-notification-preferences-card h2{
    font-size:30px !important;
    line-height:1.06 !important;
    margin:8px 0 12px !important;
    max-width:none !important;
  }
  .nwma-notification-preferences-card>p{
    font-size:15px !important;
    line-height:1.5 !important;
    margin-bottom:16px !important;
  }
  .nwma-notification-preferences-form{
    gap:12px;
  }
  .nwma-pref-master,
  .nwma-pref-options label{
    padding:14px !important;
    border-radius:14px;
  }
  .nwma-coach-continuity-grid{
    grid-template-columns:1fr;
    gap:10px;
  }
  .nwma-coach-continuity-grid article{
    padding:14px;
  }
  .nwma-coach-continuity-grid strong{
    font-size:17px;
  }
}


/* v2.0.13 — Coach-page mobile heading + fixed-nav clearance repair */
.nwma-coaching-page .nwma-section-head > div{
  min-width:0;
}
.nwma-coaching-page .nwma-section-head h2,
.nwma-coaching-page .nwma-card > h2{
  line-height:1.12;
  word-break:normal;
  overflow-wrap:normal;
  hyphens:none;
}

@media (max-width:620px){
  /* Keep wrapped Coach-page titles together instead of inheriting oversized
     theme line-height/spacing between lines. */
  .nwma-coaching-page .nwma-section-head{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:start !important;
    gap:12px !important;
  }
  .nwma-coaching-page .nwma-section-head > div{
    width:100% !important;
    min-width:0 !important;
  }
  .nwma-coaching-page .nwma-section-head h2,
  .nwma-coaching-page .nwma-coaching-prep h2,
  .nwma-coaching-page .nwma-coaching-history h2,
  .nwma-coaching-page .nwma-support-card h2,
  .nwma-coaching-page .nwma-card > h2{
    font-size:30px !important;
    line-height:1.08 !important;
    margin:9px 0 12px !important;
    padding:0 !important;
    min-height:0 !important;
    height:auto !important;
    letter-spacing:normal !important;
    word-spacing:normal !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
  }
  .nwma-coaching-page .nwma-section-head p{
    margin-top:0 !important;
  }

  /* Give the final Coach-page content enough room to clear the fixed app nav. */
  .nwma-coaching-page{
    padding-bottom:120px !important;
  }
  .nwma-coaching-page .nwma-support-account-grid{
    margin-bottom:80px !important;
  }
}


/* v2.0.14 — Proactive AI Coach */
.nwma-proactive-coach-card{
  border:1px solid #bfe7f1;
  background:linear-gradient(135deg,#ffffff 0%,#f3fbfd 100%);
}
.nwma-proactive-coach-card .nwma-eyebrow{
  color:#188caf;
}
.nwma-proactive-coach-card small{
  display:block;
  margin-top:12px;
  color:#375963;
  line-height:1.55;
}
.nwma-proactive-coach-card .nwma-btn{
  white-space:normal;
  text-align:center;
}
@media (max-width:620px){
  .nwma-proactive-coach-card{
    gap:14px;
  }
  .nwma-proactive-coach-card h2{
    font-size:29px !important;
    line-height:1.08 !important;
  }
}


/* v2.0.15 — Fresh AI coaching session handoff */
.nwma-ai-session-started{
  display:flex;
  align-items:center;
  gap:10px;
  margin:14px 0;
  padding:12px 14px;
  border:1px solid #cce9f0;
  border-radius:14px;
  background:#f2fbfd;
  color:#42636d;
  font-size:12px;
  line-height:1.45;
}
.nwma-ai-session-started strong{
  color:#123b47;
  white-space:nowrap;
}
@media (max-width:620px){
  .nwma-ai-session-started{
    display:grid;
    gap:3px;
  }
  .nwma-ai-session-started strong{
    white-space:normal;
  }
}


/* v2.0.19 — Adaptive Recovery graduation */
.nwma-recovery-transition-card{
  border:1px solid #bfe7f1;
  background:linear-gradient(135deg,#ffffff 0%,#f3fbfd 100%);
}
.nwma-recovery-transition-card .nwma-recovery-mark{
  background:#dff6ec;
  color:#18835f;
}
.nwma-recovery-transition-card .nwma-eyebrow{
  color:#188caf;
}
.nwma-recovery-transition-card small{
  display:block;
  margin-top:12px;
  color:#42636d;
  line-height:1.55;
}


/* v2.0.20 — Separate status from actionable proactive coaching */
.nwma-proactive-coach-card{
  border-top:4px solid #58c6e8;
}
.nwma-proactive-coach-card .nwma-eyebrow{
  letter-spacing:.15em;
}
.nwma-recovery-transition-card + .nwma-proactive-coach-card{
  margin-top:22px;
}


/* v2.0.22 — Member app heading line-height normalization
   Visual-only fix: prevents the WordPress theme from inserting excessive
   vertical space when large member-app headings wrap onto multiple lines. */
.nwma-app .nwma-card h2,
.nwma-app .nwma-section-head h2,
.nwma-app .nwma-checkin-history > h2,
.nwma-app .nwma-milestones > h2,
.nwma-app .nwma-weight-journey h2,
.nwma-app .nwma-63map h2 {
  line-height: 1.08 !important;
  margin-top: 7px !important;
  margin-bottom: 8px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Keep wrapped mobile titles compact and consistent without changing size,
   font, color, content, card layout, or any member functionality. */
@media (max-width: 760px) {
  .nwma-app .nwma-card h2,
  .nwma-app .nwma-section-head h2,
  .nwma-app .nwma-checkin-history > h2,
  .nwma-app .nwma-milestones > h2,
  .nwma-app .nwma-weight-journey h2,
  .nwma-app .nwma-63map h2 {
    line-height: 1.08 !important;
    margin-block: 7px 8px !important;
  }
}
