/* The academic update page (Weekly_Updates.html). One layout, three looks:
   max = warm paper and serif; pace and rising-roads use the palettes and typefaces of pacerecoverycenter.com
   (#120F0E, #BF1E2E, #67ADDA, Kumbh Sans) and risingroadsrecovery.com (#483119, #95ACA4, #F4A24C, #DD7649, #F1E9DD, Montserrat Alternates).
   Loaded after forms.css; everything is scoped to .update-page so the intake keeps its own design. */
body.update-page { --paper:#fbf7f0;--wash:#efe6d9;--ink:#3e2e24;--muted:#74655a;--line:#d9c6ae;--accent:#3e2e24;--mark:#8a5a34;--tint:#efe3d2;
  --hero:#f4ecdf;--hero-ink:#3e2e24;--hero-soft:#74655a;--radius:4px;--display:Georgia,"Times New Roman",serif;--display-weight:400;--field:#fffdf9;
  background:var(--wash);color:var(--ink); }
body.update-page[data-theme="pace"] { --paper:#fff;--wash:#f3f3f3;--ink:#120f0e;--muted:#5e5e5e;--line:#dcdcdc;--sky:#67adda;--accent:#bf1e2e;--mark:#bf1e2e;--tint:#f8e9eb;
  --hero:#120f0e;--hero-ink:#fff;--hero-soft:#e9b5b5;--radius:0px;--display:"Kumbh Sans","Poppins",Arial,sans-serif;--display-weight:800;--field:#fff; }

.update-page .forms-main { max-width:1240px; }
.update-page .form-audiences:empty,.update-page #form-subtitle { display:none; }

/* Hero */
.update-page .update-hero { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px 40px;align-items:end;border:0;margin:0 0 22px;padding:38px 40px;
  background:var(--hero);color:var(--hero-ink);border-radius:var(--radius);position:relative;overflow:hidden; }
.update-page .update-hero .forms-kicker { color:var(--mark);letter-spacing:2.5px;margin-bottom:14px; }
.update-page .update-hero h1 { font-family:var(--display);font-weight:var(--display-weight);font-size:clamp(34px,4.4vw,56px);line-height:1.04;letter-spacing:-.02em;margin:0 0 14px;color:inherit; }
.update-page .update-hero p:not(.forms-kicker) { color:var(--hero-soft);font-size:14.5px;line-height:1.7;max-width:560px;margin:0; }
.update-page .update-hero-text,.update-page .update-switch { position:relative;z-index:1; }
.update-switch { display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px;background:rgba(0,0,0,.07);border-radius:calc(var(--radius) + 4px);min-width:min(430px,100%); }
.update-switch button { all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:3px;padding:12px 16px;border-radius:var(--radius);color:inherit;min-height:44px; }
.update-switch strong { font:600 14px/1.3 "Poppins",sans-serif; }
.update-switch span { font-size:11.5px;line-height:1.45;opacity:.78; }
.update-switch button:hover { background:rgba(255,255,255,.14); }
.update-switch button[aria-pressed="true"] { background:var(--paper);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.18); }
.update-switch button:focus-visible { outline:3px solid var(--mark);outline-offset:2px; }

/* max: an editorial page */
.update-page[data-theme="max"] .update-hero { border:1px solid var(--line);border-bottom:3px double var(--ink); }
.update-page[data-theme="max"] .update-switch { background:rgba(62,46,36,.09); }
.update-page[data-theme="max"] .update-switch button:hover { background:rgba(255,255,255,.5); }

/* pace: black field, crimson edge, capitals */
.update-page[data-theme="pace"] { font-family:"Kumbh Sans","Poppins",sans-serif; }
.update-page[data-theme="pace"] .update-hero { border-left:14px solid var(--accent);padding-left:34px;padding-bottom:46px; }
.update-page[data-theme="pace"] .update-hero::after { content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:linear-gradient(90deg,var(--accent) 0 50%,var(--sky) 50% 75%,#3a3a3a 75%); }
.update-page[data-theme="pace"] .update-hero h1 { text-transform:uppercase;letter-spacing:-.01em; }
.update-page[data-theme="pace"] .update-hero .forms-kicker { color:#fff;font-weight:700;letter-spacing:3.5px; }
.update-page[data-theme="pace"] .update-switch { background:rgba(255,255,255,.12); }
.update-page[data-theme="pace"] .update-switch strong { font-family:inherit;font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:13px; }
.update-page[data-theme="pace"] .update-switch button[aria-pressed="true"] { background:var(--accent);color:#fff; }

/* rising roads: the sun coming up behind the hero */

/* Category tabs (Max's site only) */
.update-page .form-categories { gap:6px;margin-bottom:22px; }
.update-page .form-categories a { min-height:48px;padding:10px;border-radius:var(--radius);font-weight:500;background:transparent;border-color:var(--line); }
.update-page .form-categories a:hover { background:var(--paper); }
.update-page .form-categories a[aria-current="page"] { background:var(--ink);border-color:var(--ink);color:#fff; }

/* Section cards */
.update-page .form-workspace { grid-template-columns:minmax(0,1fr) 232px;gap:26px; }
.update-page .form-section,.update-page .password-card { border-radius:var(--radius);padding:30px 32px;margin-bottom:16px;border-color:var(--line); }
.update-page .form-section h2,.update-page .password-card h2 { font-family:var(--display);font-weight:var(--display-weight);font-size:25px;letter-spacing:-.01em;display:flex;align-items:center;gap:14px;margin-bottom:8px; }
.update-page .form-section>summary h2 { display:inline-flex;font-size:21px; }
.update-page .form-section>p { font-size:13px;margin:0 0 22px;max-width:640px; }
.update-page .form-section>h2:last-of-type+.form-grid { margin-top:18px; }
.update-page .section-number { margin:0;flex:none;font:600 11px/1 "Poppins",sans-serif;letter-spacing:1.5px;color:var(--mark); }
.update-page[data-theme="max"] .section-number { font:italic 400 17px/1 Georgia,serif;letter-spacing:0;border-bottom:1px solid var(--mark);padding-bottom:3px; }
.update-page[data-theme="pace"] .form-section { border-width:0 0 0 0;border-top:4px solid var(--ink);box-shadow:0 0 0 1px var(--line); }
.update-page[data-theme="pace"] .form-section h2,.update-page[data-theme="pace"] .password-card h2 { text-transform:uppercase;font-size:20px;letter-spacing:.02em; }
.update-page[data-theme="pace"] .section-number { background:var(--accent);color:#fff;font:800 11px/1 "Kumbh Sans",sans-serif;padding:7px 7px 6px;letter-spacing:.5px; }

/* Strengths and areas of focus get a marker so the two read apart at a glance */
.update-page .form-section[data-section="strengths"] { border-left:5px solid #2f7a52; }
.update-page .form-section[data-section="areas-of-focus"] { border-left:5px solid var(--mark); }
.update-page[data-theme="pace"] .form-section[data-section="strengths"] { border-left:5px solid var(--sky); }
.update-page[data-theme="pace"] .form-section[data-section="areas-of-focus"] { border-left:5px solid var(--accent); }

/* Fields */
.update-page .form-grid { gap:20px 22px; }
.update-page .form-field { font-size:13px;font-weight:600;gap:8px; }
.update-page .form-field small { font-size:12px; }
.update-page .form-field input,.update-page .form-field textarea,.update-page .form-field select,.update-page .password-input,
.update-page .row-item input,.update-page .row-item select,.update-page .row-item textarea {
  width:100%;box-sizing:border-box;min-height:46px;background:var(--field);border:1px solid var(--line);border-radius:min(var(--radius),10px);padding:11px 12px;
  font:400 14px/1.5 inherit;font-family:inherit;color:var(--ink); }
.update-page .form-field textarea,.update-page .row-item textarea { min-height:104px;resize:vertical; }
.update-page input::placeholder,.update-page textarea::placeholder { color:var(--muted);opacity:.7; }
.update-page input:focus,.update-page textarea:focus,.update-page select:focus { outline:2px solid var(--mark);outline-offset:1px;border-color:var(--mark); }

/* Repeating rows */
.row-group { grid-column:1/-1;min-width:0; }
.row-head,.row-item { display:grid;gap:8px;align-items:start; }
[data-group="assign"] .row-head,[data-group="assign"] .row-item { grid-template-columns:minmax(0,2.1fr) minmax(0,1fr) 148px 150px 40px; }
[data-group="focus"] .row-head,[data-group="focus"] .row-item { grid-template-columns:minmax(0,1fr) 148px 140px 40px; }
.row-head { font-size:11px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);padding:0 0 8px;border-bottom:1px solid var(--line);margin-bottom:10px; }
.row-item { margin-bottom:8px; }
.row-item .cell { display:block;min-width:0; }
.cell-label { position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap; }
.row-remove { all:unset;box-sizing:border-box;cursor:pointer;width:40px;height:46px;display:grid;place-items:center;font-size:22px;line-height:1;color:var(--muted);border-radius:min(var(--radius),10px); }
.row-remove:hover { color:#a3262f;background:var(--tint); }
.row-remove:focus-visible,.row-add:focus-visible,.row-chip:focus-visible { outline:2px solid var(--mark);outline-offset:2px; }
.row-bar { display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px; }
.row-add { all:unset;box-sizing:border-box;cursor:pointer;min-height:44px;padding:10px 18px;border:1.5px dashed var(--mark);color:var(--mark);font:600 13px/1.3 inherit;font-family:inherit;border-radius:min(var(--radius),999px); }
.row-add:hover { background:var(--tint);border-style:solid; }
.row-add:disabled { opacity:.55;cursor:default;border-color:var(--line);color:var(--muted); }
.row-chip { all:unset;box-sizing:border-box;cursor:pointer;min-height:36px;padding:7px 14px;border:1px solid var(--line);background:var(--field);color:var(--ink);font-size:12.5px;border-radius:999px; }
.row-chip::before { content:"+ ";color:var(--mark);font-weight:700; }
.row-chip:hover { border-color:var(--mark); }
.update-page[data-theme="pace"] .row-chip { border-radius:0; }
.update-page[data-theme="pace"] .row-add { text-transform:uppercase;letter-spacing:.08em;font-weight:800;font-size:12px; }
/* Custom sections: a heading you type, then the update */
.is-custom .row-item { display:block;position:relative;padding:18px 56px 18px 18px;margin-bottom:12px;background:var(--tint);border-radius:min(var(--radius),14px);border-left:4px solid var(--mark); }
.is-custom .row-item .cell { margin-bottom:10px; }
.is-custom .row-item .cell:last-of-type { margin-bottom:0; }
.update-page .is-custom .cell-title input { font-family:var(--display);font-weight:var(--display-weight);font-size:19px;min-height:50px; }
.update-page[data-theme="pace"] .is-custom .cell-title input { text-transform:uppercase;font-size:16px;letter-spacing:.02em; }
.update-page[data-theme="pace"] .is-custom .cell-title input::placeholder { text-transform:none;font-weight:500;letter-spacing:0; }
.is-custom .row-remove { position:absolute;top:18px;right:10px; }

/* Finish card */
.update-page .update-finish { background:var(--ink);color:#fff;border-color:var(--ink); }
body.update-page[data-theme] .update-finish h2 { color:#fff; }
.update-page .update-finish>p { color:rgba(255,255,255,.78); }
.update-page .form-button { border-radius:min(var(--radius),999px);font:600 13px/1.2 inherit;font-family:inherit;padding:13px 22px;min-height:46px; }
.update-page .update-finish .form-button { background:#fff;border-color:#fff;color:var(--ink); }
.update-page .update-finish .form-button.secondary { background:transparent;color:#fff;border-color:rgba(255,255,255,.45); }
.update-page .update-finish .form-button:focus-visible { outline-color:#fff; }
.update-page[data-theme="pace"] .form-button { text-transform:uppercase;letter-spacing:.09em;font-weight:800;font-size:12px; }
.update-page[data-theme="pace"] .update-finish #review-button { background:var(--accent);border-color:var(--accent);color:#fff; }
.update-page .update-finish .form-notice { color:var(--ink); }

/* Side rail */
.update-page .form-outline { background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px 20px;font-size:13px; }
.update-page .form-outline h2 { color:var(--mark); }
.update-page .form-outline ol { list-style:none;padding:0;margin:0 0 18px; }
.update-page .form-outline li { padding:0;border-bottom:1px solid var(--line); }
.update-page .form-outline li a { display:flex;gap:10px;align-items:center;padding:9px 0;min-height:24px; }
.update-page .form-outline li a::before { content:"";flex:none;width:9px;height:9px;border:1.5px solid var(--mark);border-radius:50%; }
.update-page .form-outline li.is-started a::before { background:var(--mark); }
.update-page[data-theme="pace"] .form-outline li a::before { border-radius:0; }
.update-page .form-outline p { font-size:12px;line-height:1.65; }
.update-page #progress-label { font-weight:600;color:var(--ink); }

/* Review */
.review-table { width:100%;border-collapse:collapse;font-size:13px;margin:8px 0 22px; }
.review-table th,.review-table td { text-align:left;padding:8px 10px;border:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere; }
.review-table th { background:var(--tint);font-size:11px;letter-spacing:.8px;text-transform:uppercase; }
.update-page .form-review h3 { font-family:var(--display);font-weight:var(--display-weight);font-size:18px;margin:22px 0 4px; }
.update-page .password-card { margin:28px auto; }

/* rising roads: sage, cream and brown with the orange of the site's buttons; square corners and Montserrat Alternates, as on risingroadsrecovery.com */
body.update-page[data-theme="rising-roads"] { --paper:#fff;--wash:#fdf6ec;--ink:#483119;--muted:#756e67;--line:#e6dccd;--accent:#483119;--mark:#c8603a;--tint:#f1e9dd;--sage:#95aca4;--orange:#f4a24c;--terracotta:#dd7649;
  --hero:#95aca4;--hero-ink:#483119;--hero-soft:#3f3324;--radius:0px;--display:"Montserrat Alternates","Poppins",Arial,sans-serif;--display-weight:500;--field:#fff;
  font-family:"Montserrat Alternates","Poppins",Arial,sans-serif; }
.update-page[data-theme="rising-roads"] .site-nav { border-top-color:var(--orange); }
.update-page[data-theme="rising-roads"] .update-hero { border-bottom:6px solid var(--orange); }
.update-page[data-theme="rising-roads"] .update-hero h1 { color:#fff;letter-spacing:0;text-shadow:0 1px 0 rgba(72,49,25,.25); }
.update-page[data-theme="rising-roads"] .update-hero .forms-kicker { color:var(--ink);font-weight:600;display:flex;align-items:center;gap:12px; }
.update-page[data-theme="rising-roads"] .update-hero .forms-kicker::before { content:"";flex:none;width:44px;height:24px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 24'%3E%3Cpath d='M10 24a12 12 0 0 1 24 0z' fill='%23fff'/%3E%3Cg stroke='%23fff' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M22 8V2M13.5 10.5l-3-5M30.5 10.5l3-5M7.5 16.5l-5.2-3M36.5 16.5l5.2-3'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat; }
.update-page[data-theme="rising-roads"] .update-switch { background:rgba(72,49,25,.16); }
.update-page[data-theme="rising-roads"] .update-switch strong { font-family:inherit; }
.update-page[data-theme="rising-roads"] .update-switch button:hover { background:rgba(255,255,255,.3); }
.update-page[data-theme="rising-roads"] .form-section h2,.update-page[data-theme="rising-roads"] .password-card h2 { font-size:23px; }
.update-page[data-theme="rising-roads"] .section-number { width:32px;height:32px;border:1.5px solid var(--terracotta);color:var(--mark);border-radius:50%;display:inline-grid;place-items:center;letter-spacing:0;font:600 11px/1 "Montserrat Alternates",sans-serif; }
.update-page[data-theme="rising-roads"] .form-section[data-section="strengths"] { border-left:5px solid var(--sage); }
.update-page[data-theme="rising-roads"] .form-section[data-section="areas-of-focus"] { border-left:5px solid var(--terracotta); }
.update-page[data-theme="rising-roads"] .form-button { background:var(--orange);border-color:var(--orange);color:var(--ink);font-weight:600; }
.update-page[data-theme="rising-roads"] .form-button.secondary { background:transparent;border-color:var(--ink);color:var(--ink); }
.update-page[data-theme="rising-roads"] .update-finish .form-button { background:transparent;border-color:rgba(255,255,255,.55);color:#fff; }
.update-page[data-theme="rising-roads"] .update-finish #review-button { background:var(--orange);border-color:var(--orange);color:var(--ink); }
.update-page[data-theme="rising-roads"] .form-categories a[aria-current="page"] { background:var(--sage);border-color:var(--sage);color:var(--ink);font-weight:600; }
.update-page[data-theme="rising-roads"] .row-add { border-color:var(--terracotta); }
.update-page[data-theme="rising-roads"] .row-chip { border-radius:0; }
.update-page[data-theme="rising-roads"] .form-outline li.is-started a::before { background:var(--terracotta);border-color:var(--terracotta); }

@media (max-width:1200px) { .update-page .form-workspace { grid-template-columns:minmax(0,1fr); } }
@media (max-width:900px) {
  .update-page .update-hero { grid-template-columns:1fr;padding:28px 24px; }
  .update-page[data-theme="pace"] .update-hero { padding-left:20px;border-left-width:10px; }
  .update-switch { min-width:0; }
}
@media (max-width:720px) {
  .update-page .form-section,.update-page .password-card { padding:22px 16px; }
  .update-page .form-field input,.update-page .form-field textarea,.update-page .form-field select,.update-page .password-input,
  .update-page .row-item input,.update-page .row-item select,.update-page .row-item textarea { font-size:16px; }
  .row-head { display:none; }
  [data-group="assign"] .row-item,[data-group="focus"] .row-item { grid-template-columns:1fr 1fr;position:relative;padding:14px 12px 12px;margin-bottom:12px;background:var(--tint);border-radius:min(var(--radius),12px);gap:10px; }
  .row-item .cell-what { grid-column:1/-1;padding-right:40px; }
  .row-item .cell-course { grid-column:1/-1; }
  .cell-label { position:static;width:auto;height:auto;clip:auto;display:block;font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--muted);margin-bottom:5px; }
  .row-group:not(.is-custom) .row-remove { position:absolute;top:4px;right:2px;height:40px; }
  .is-custom .row-item { padding:16px 14px; }
  .is-custom .cell-title { padding-right:40px; }
  .is-custom .row-remove { top:8px;right:4px; }
  .update-switch { grid-template-columns:1fr; }
  .update-page .form-categories { grid-template-columns:repeat(2,1fr); }
  .update-page .form-actions .form-button { flex:1 1 100%; }
  .review-table { font-size:12px; }
}
@media print { .update-switch,.row-bar,.row-remove { display:none!important; } }
