/* Weekly review: a compact working guide using the site's existing type and colors. */
.wr-hero { padding: 76px 0 64px; }
.wr-hero-grid { display:grid; grid-template-columns:minmax(0,1.28fr) minmax(0,1fr); gap:72px; align-items:center; }
.wr-hero h1 { font-size:clamp(2.8rem,5.3vw,4.65rem); max-width:11ch; margin-bottom:24px; }
.wr-hero .lede { max-width:43ch; }
.wr-hero .btn-row { gap:22px; align-items:center; margin-top:30px; }
.wr-secondary { font-weight:600; font-size:16px; }
.wr-hero-art { margin:0; min-width:0; }
.wr-hero-art img { width:100%; height:auto; border-radius:3px; background:var(--night); border:1px solid #315160; }
.wr-step-art { margin:0 0 26px; max-width:640px; border:1px solid var(--rule); border-radius:3px; background:#F2F6F4; overflow:hidden; }
.wr-step-art img { display:block; width:100%; height:auto; }
.wr-output { border:1px solid #315160; border-radius:16px; padding:32px; background:rgba(11,26,43,.82); }
.wr-eyebrow { font:600 14px/1.4 var(--mono); text-transform:uppercase; letter-spacing:.06em; color:var(--teal-ink); margin-bottom:12px; }
.wr-output .wr-eyebrow { color:var(--volt); }
.wr-output h2 { font-size:clamp(1.65rem,2.8vw,2.3rem); line-height:1.08; }
.wr-output ol { list-style:none; margin:26px 0 0; padding:0; }
.wr-output li { display:flex; gap:18px; padding:18px 0; border-top:1px solid var(--line-dark); }
.wr-output li>span { color:var(--volt); font:400 14px/1.7 var(--mono); }
.wr-output strong { font-size:18px; color:var(--on-dark); }
.wr-output p { font-size:16px; margin:4px 0 0; }
.wr-prepare { padding:48px 0; }
.wr-prepare-grid { display:grid; grid-template-columns:1fr 1.65fr; gap:64px; }
.wr-prepare h2 { font-size:2rem; max-width:13ch; }
.wr-prepare .kicker { margin-bottom:14px; }
.wr-supplies summary,.wr-assistant summary,.wr-reading summary { font-weight:600; cursor:pointer; color:var(--teal-ink); padding:8px 0; }
.wr-supplies ul { padding-left:22px; }
.wr-supplies li { margin-bottom:9px; }
.wr-workspace { padding:64px 0 80px; }
.wr-layout { display:grid; grid-template-columns:260px minmax(0,1fr); gap:48px; align-items:start; }
.wr-sidebar { position:sticky; top:110px; }
.wr-sidebar h2 { font-size:1.5rem; line-height:1.15; }
.wr-sidebar .kicker { margin-bottom:14px; }
.wr-sidebar nav ol { list-style:none; padding:0; margin:26px 0; }
.wr-sidebar nav a { display:flex; align-items:center; gap:12px; padding:11px 10px; font-size:15px; font-weight:600; color:var(--muted); text-decoration:none; border-left:3px solid transparent; border-radius:0 7px 7px 0; }
.wr-sidebar nav a:hover,.wr-sidebar nav a[aria-current="step"] { color:var(--teal-ink); background:#e1eeeb; border-left-color:var(--teal-ink); }
.wr-nav-number { display:flex; align-items:center; justify-content:center; width:25px; height:25px; border:1px solid var(--rule); border-radius:50%; flex-shrink:0; font:600 14px/1 var(--mono); background:white; }
.wr-nav--reviewed .wr-nav-number { color:white; background:var(--teal-ink); border-color:var(--teal-ink); }
.wr-progress { border-top:1px solid var(--rule); padding-top:20px; margin-bottom:22px; }
.wr-progress label { font-weight:600; font-size:15px; }
.wr-progress progress { width:100%; height:8px; margin:10px 0; accent-color:var(--teal-ink); display:block; }
.wr-progress p { font-size:14px; margin-bottom:7px; }
.wr-reset { border:0; padding:6px 0; background:none; color:var(--teal-ink); font:600 14px var(--sans); text-decoration:underline; cursor:pointer; }
.wr-sidebar>.text-link { font-size:15px; }
.wr-steps { min-width:0; }
.wr-instruction { font-size:15px; color:var(--muted); margin:0 0 22px; }
.wr-step { margin-bottom:16px; border:1px solid #bacbd0; border-radius:12px; background:white; scroll-margin-top:104px; overflow:clip; }
.wr-step>summary { display:grid; grid-template-columns:42px minmax(0,1fr) 20px; align-items:start; gap:16px; padding:25px 28px; cursor:pointer; list-style:none; }
.wr-step>summary::-webkit-details-marker { display:none; }
.wr-step>summary::marker { content:""; }
.wr-step>summary:hover { background:#f8fbfa; }
.wr-step-number { font:400 16px/1.5 var(--mono); color:var(--teal-ink); padding-top:3px; }
.wr-step strong { display:block; font-family:var(--display); font-size:1.5rem; line-height:1.18; letter-spacing:-.02em; }
.wr-step-decision { display:block; font-size:15px; line-height:1.55; color:var(--muted); margin-top:9px; }
.wr-expand { font:400 26px/1 var(--sans); color:var(--teal-ink); padding-top:4px; }
.wr-step[open]>.wr-expand,.wr-step[open]>summary .wr-expand { transform:rotate(45deg); }
.wr-step[open] { border-color:var(--teal-ink); }
.wr-step-body { padding:0 28px 28px 86px; }
.wr-step-body>p:first-child { border-top:1px solid var(--rule); padding-top:22px; }
.wr-step-body ul { padding-left:20px; margin:0 0 24px; }
.wr-step-body li { margin-bottom:12px; }
.wr-step-body strong { display:inline; font:600 1em var(--sans); letter-spacing:normal; }
.wr-action { padding:22px; background:#edf5f3; border-radius:8px; margin:25px 0; }
.wr-action h3 { font-size:1.35rem; line-height:1.2; }
.wr-action p { font-size:16px; }
.wr-action .text-link::after { content:"↗"; }
.wr-related { display:block; font-size:15px; font-weight:600; margin-top:12px; }
.wr-record { background:#f6f7f9; border-left:3px solid var(--teal-ink); padding:16px 18px; font-size:16px; margin:24px 0; }
.wr-small { font-size:14px; color:var(--muted); }
.wr-example { font-size:16px; }
.wr-assistant { border-top:1px solid var(--rule); padding:12px 0; }
.wr-assistant p { font-size:15px; }
.wr-assistant pre,.wr-template pre { font:400 15px/1.65 var(--sans); white-space:pre-wrap; overflow-wrap:anywhere; word-break:normal; color:var(--ink); }
.wr-assistant pre { padding:18px; border:1px solid var(--rule); background:#f7faf9; border-radius:6px; }
.wr-assistant .btn { font-size:14px; padding:10px 14px; }
.wr-step--reviewed>summary .wr-step-number { text-decoration:underline; text-underline-offset:5px; }
.wr-reviewed { font-size:15px; }
.wr-reviewed::after,.wr-export-actions .btn::after,.wr-assistant .btn::after { content:none; }
.wr-finish { scroll-margin-top:100px; }
.wr-finish-grid { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:start; }
.wr-finish h2 { font-size:clamp(2rem,3.5vw,2.8rem); max-width:16ch; }
.wr-template { border:1px solid var(--rule); border-top:4px solid var(--teal-ink); border-radius:8px; padding:28px; background:#f8faf9; }
.wr-template pre { font-size:14px; margin:0; }
.wr-reading { padding:64px 0; }
.wr-reading .wrap { max-width:900px; }
.wr-reading h2 { font-size:2rem; max-width:25ch; }
.wr-reading details { font-size:15px; border-top:1px solid var(--rule); padding-top:12px; margin-top:24px; }
.wr-step [hidden],.wr-progress[hidden],.wr-export-actions [hidden] { display:none; }
@media(max-width:1000px) {
  .wr-hero-grid { gap:36px; }.wr-output { padding:25px; }.wr-layout { grid-template-columns:220px minmax(0,1fr); gap:28px; }.wr-step>summary { padding:22px; grid-template-columns:30px minmax(0,1fr) 18px; gap:12px; }.wr-step-body { padding:0 22px 24px; }.wr-finish-grid { gap:36px; }
}
@media(max-width:760px) {
  .wr-hero { padding:48px 0; }.wr-hero-grid,.wr-prepare-grid,.wr-layout,.wr-finish-grid { grid-template-columns:1fr; gap:30px; }.wr-hero h1 { max-width:13ch; font-size:3.1rem; }.wr-hero .lede { font-size:18px; }.wr-hero .btn-row { align-items:flex-start; }.wr-output { padding:24px; }.wr-output h2 { font-size:1.9rem; }.wr-output li { padding:14px 0; }.wr-prepare { padding:36px 0; }.wr-prepare h2 { max-width:22ch; }.wr-prepare-grid { gap:10px; }.wr-workspace { padding:36px 0 48px; }.wr-sidebar { position:static; }.wr-sidebar h2 br { display:none; }.wr-sidebar nav ol { display:grid; grid-template-columns:1fr 1fr; gap:2px; margin:18px 0; }.wr-sidebar nav a { font-size:14px; padding:9px 6px; gap:8px; }.wr-nav-number { width:23px;height:23px; }.wr-progress { margin-bottom:12px; padding-top:14px; }.wr-progress .wr-small { max-width:45ch; }.wr-sidebar>.text-link { display:none; }.wr-step>summary { padding:20px 16px; grid-template-columns:26px minmax(0,1fr) 18px; gap:9px; }.wr-step strong { font-size:1.3rem; }.wr-step-body { padding:0 18px 24px; }.wr-step-body p,.wr-step-body li { font-size:16px; }.wr-action { padding:18px; }.wr-step-decision { font-size:14px; }.wr-step { scroll-margin-top:90px; }.wr-template { padding:22px; }.wr-finish { padding:48px 0; }.wr-reading { padding:44px 0; }.wr-reading h2 { font-size:1.8rem; }
}
@media(prefers-reduced-motion:reduce) { .wr-step,.wr-sidebar nav a { scroll-behavior:auto; } }
@media print {
  .wr-hero-art,.wr-step-art { display:none!important; }
  .site-header,.site-footer,.analytics-choice,.wr-sidebar,.wr-hero .btn-row,.wr-reviewed,.wr-assistant button,.wr-export-actions,.cta-band,.mobile-cta { display:none!important; }
  .wr-hero { padding:20px 0; background:white!important; color:var(--ink); }.wr-hero h1,.wr-hero h2,.wr-hero p,.wr-output strong { color:var(--ink)!important; }.wr-hero h1 { font-size:32px;max-width:none; }.wr-hero-grid,.wr-layout,.wr-prepare-grid,.wr-finish-grid { display:block; }.wr-output { display:none; }.wr-prepare,.wr-workspace,.wr-finish,.wr-reading { padding:20px 0; }.wr-steps { width:100%; }.wr-step { overflow:visible;break-inside:auto; }.wr-step>summary { padding:16px; }.wr-step-body { padding:0 20px 20px; }.wr-step-body>* { break-inside:avoid; }.wr-template { margin-top:24px; }.wr-reading details>*,.wr-prepare details>* { display:block; }.wr-small { color:var(--ink); }.wr-expand { display:none; }
}
