
:root{--navy:#0b1826;--navy2:#122a3d;--teal:#087e82;--mint:#d8f2ed;--paper:#f5f7f6;--ink:#16222b;--muted:#5b6b75;--line:#dce5e5;--white:#fff;--gold:#e7bf72}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;line-height:1.5}button,select,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #169aab;outline-offset:3px}.frame{max-width:1140px;margin:auto;padding:0 22px}.demo-banner{background:#d6f1ed;color:#164647;font-size:12px;font-weight:750;text-align:center;letter-spacing:.035em;padding:9px 15px}.header{background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.head-inner{max-width:1140px;margin:auto;padding:10px 22px;display:flex;justify-content:space-between;align-items:center;gap:15px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}.brand img{max-width:216px;width:100%;max-height:56px;object-fit:contain;object-position:left}.navigation{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.navbtn{border:0;color:#3a4c55;background:transparent;border-radius:9px;padding:10px 12px;font-size:13px;font-weight:700}.navbtn:hover,.navbtn.active{background:var(--mint);color:#05585b}.navbtn.accent{background:var(--navy);color:white}.page{display:none;min-height:65vh}.page.active{display:block}.hero{background:linear-gradient(120deg,#0b1826 0%,#143249 70%,#12505b 100%);color:white;padding:82px 0 78px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.3fr 0.9fr;gap:50px;align-items:center}.eyebrow{letter-spacing:.17em;text-transform:uppercase;font-size:12px;font-weight:800;color:var(--teal)}.hero .eyebrow{color:#9be0d4}h1{font-size:clamp(36px,5.4vw,65px);line-height:1.07;letter-spacing:-.045em;margin:16px 0 22px}h2{font-size:clamp(26px,3vw,38px);line-height:1.17;letter-spacing:-.035em;margin:12px 0}h3{font-size:20px;letter-spacing:-.02em;margin:0 0 8px}p{margin:0 0 16px}.lead{font-size:19px;line-height:1.65;color:#d5e4e9;max-width:590px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;border-radius:11px;padding:13px 19px;border:1px solid transparent;text-decoration:none;font-weight:800;font-size:14px}.btn.primary{background:#f6fdfc;color:#073a3f}.btn.dark{background:var(--navy);color:white}.btn.teal{background:var(--teal);color:white}.btn.outline{background:transparent;color:inherit;border:1px solid #bfd0d1}.btn.ghost{background:transparent;color:inherit;border-color:#9aadb7}.btn:disabled{cursor:not-allowed;opacity:.45}.hero-art{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.19);border-radius:27px;padding:32px;min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 20px 50px #0003}.hero-art .shield{width:138px;height:138px;object-fit:contain;background:white;border-radius:28px;padding:13px}.hero-art h3{font-size:28px;margin:23px 0 6px}.hero-art small{color:#b9d3d9}.section{padding:62px 0}.section.slate{background:#edf2f1}.section-head{max-width:740px;margin-bottom:28px}.muted{color:var(--muted)}.grid3,.grid2{display:grid;gap:18px}.grid3{grid-template-columns:repeat(3,1fr)}.grid2{grid-template-columns:repeat(2,1fr)}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:25px;box-shadow:0 4px 20px #14314108}.icon{width:40px;height:40px;border-radius:11px;background:var(--mint);display:grid;place-items:center;font-size:20px;margin-bottom:17px}.small{font-size:13px}.tag{display:inline-block;background:var(--mint);color:#07585e;font-size:11px;font-weight:800;letter-spacing:.05em;border-radius:100px;padding:6px 10px}.big-card{padding:34px}.callout{background:#ecf8f5;border:1px solid #c5e6dc;border-radius:14px;padding:17px 20px;color:#155154}.page-title{padding:54px 0 20px;background:white;border-bottom:1px solid var(--line)}.page-title h1{font-size:clamp(30px,4vw,46px);color:var(--ink);margin:8px 0}.page-title p{max-width:720px;color:var(--muted)}label{font-weight:750;font-size:13px;display:block;margin:0 0 8px}select,input[type=email]{width:100%;border:1px solid #bccccc;background:white;color:var(--ink);padding:13px;border-radius:10px;min-height:48px}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.details{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0 19px}.pill{border:1px solid #c5d9d7;background:#f0f8f6;border-radius:100px;padding:5px 10px;font-size:12px;color:#27595c;font-weight:750}.step{border-left:3px solid #1e8c8a;padding:7px 0 7px 15px;margin:0 0 12px}.step strong{display:block}.workout-meta{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.workout-meta span{background:#eff5f4;padding:8px 11px;border-radius:8px;font-weight:700;font-size:12px}.exercise-table{width:100%;border-collapse:collapse;font-size:14px;margin:15px 0 20px}.exercise-table th{text-align:left;color:#52656b;background:#edf5f3;padding:12px}.exercise-table td{padding:13px 12px;border-bottom:1px solid var(--line);vertical-align:top}.exercise-table td:last-child{white-space:nowrap;font-weight:750}.summary{background:var(--navy);color:white;border-radius:16px;padding:26px}.summary b{font-size:35px;display:block}.summary span{color:#c7d7dc;font-size:13px}.price{font-size:43px;font-weight:850;letter-spacing:-.04em;margin:12px 0}.price small{font-size:15px;color:var(--muted);letter-spacing:0}.price-card{display:flex;flex-direction:column}.price-card .btn{margin-top:auto}.price-card.highlight{border:2px solid #147a79}.sep{height:1px;background:var(--line);margin:20px 0}.notice{font-size:12px;color:var(--muted);margin-top:12px}.checkline{display:flex;align-items:flex-start;gap:11px;margin:15px 0;font-size:14px}.checkline input{width:19px;height:19px;flex:0 0 auto;accent-color:var(--teal);margin-top:2px}.faq{margin-top:20px}.faq details{padding:15px 0;border-bottom:1px solid var(--line)}.faq summary{font-weight:750;cursor:pointer}.footer{background:var(--navy);color:#c5d4db;padding:35px 0;margin-top:0}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer strong{color:white}.footer small{font-size:12px}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--navy);color:white;padding:13px 18px;border-radius:12px;box-shadow:0 10px 30px #0004;max-width:calc(100% - 32px);z-index:22;display:none;font-size:14px}.alert{background:#fff5dc;border:1px solid #e8d19d;color:#725217;padding:14px 17px;border-radius:11px;margin-top:14px;font-size:13px}.success{background:#e8f8ee;border:1px solid #afe1be;color:#14582a;padding:15px 17px;border-radius:12px}.hide{display:none!important}.mini-list{padding-left:20px;margin:10px 0}.mini-list li{margin:9px 0}.linkbtn{border:0;background:none;padding:0;color:var(--teal);font-weight:750;text-decoration:underline;cursor:pointer}.choice{border:1px solid #b9cbca;border-radius:14px;padding:17px;cursor:pointer}.choice input{margin-right:10px;accent-color:var(--teal)}.choice:has(input:checked){background:#e6f6f3;border-color:#2f9691}.statrow{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.stat{background:#ecf5f3;border-radius:14px;padding:20px}.stat strong{font-size:30px;display:block}.stat span{color:var(--muted);font-size:13px}.flush{margin-bottom:0}@media(max-width:860px){.head-inner{flex-direction:column;align-items:flex-start}.navigation{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.navbtn{white-space:nowrap}.hero-grid{grid-template-columns:1fr}.hero{padding:55px 0}.hero-art{min-height:250px}.grid3{grid-template-columns:1fr 1fr}}@media(max-width:620px){.frame{padding:0 16px}.hero{padding:46px 0}.hero-art{display:none}.grid3,.grid2,.formgrid,.statrow{grid-template-columns:1fr}.card,.big-card{padding:21px}.section{padding:45px 0}.page-title{padding:35px 0 18px}.btn{width:100%}.actions{flex-direction:column}.navigation{gap:0}.navbtn{padding:10px 11px;font-size:12px}.brand img{width:180px}.exercise-table{font-size:12px}.exercise-table th,.exercise-table td{padding:10px 8px}.price-card .btn{width:100%}}


/* Frontline Vigor preview adjustments */
:root{--navy:#061d35;--navy2:#0d3550;--teal:#087e82;--mint:#ddf5f1;--paper:#f6f9fa;--ink:#102439;--muted:#526a78;--line:#d8e7e9}
.demo-banner{background:#dbf5ee;color:#0b4d4d;letter-spacing:.015em}
.header{box-shadow:0 3px 15px #06223b08}
.brand img{max-width:248px;max-height:60px;object-fit:contain}
.hero{background:radial-gradient(circle at 80% 20%,#114965 0%,transparent 32%),linear-gradient(125deg,#08233d,#061628);}
.hero-art{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px}
.hero-art .shield{object-fit:contain;max-width:80%;max-height:300px;width:290px;height:auto;background:#fff;border-radius:26px;padding:24px;filter:drop-shadow(0 16px 26px #0002)}
.brand-art-note{color:#b8d3dc;font-weight:700;letter-spacing:.045em;font-size:12px;text-align:center}
.brand{min-width:0}.brand img{width:100%;height:52px}
.source-panel{border-radius:22px;padding:29px;background:linear-gradient(120deg,#e8f6f3,#ffffff);border:1px solid var(--line)}
.source-panel h2{margin:9px 0}.source-panel p{max-width:820px}
.source-links{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}
.source-links a{border:1px solid #87c9c0;border-radius:9px;background:white;padding:10px 14px;color:#075c62;text-decoration:none;font-weight:750;font-size:13px}
.source-links a:hover{background:#e2f6f1}
.build-label{color:#9bb2bd;align-self:flex-end}
.timer-box{margin:18px 0 24px;padding:19px;border:1px solid #b4d7d1;border-radius:15px;background:#f1faf8}
.timer-clock{font-size:39px;font-weight:850;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:#062d43}
.timer-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.timer-actions .btn{padding:11px 16px;font-size:13px}
.workout-completion{margin-top:14px}
@media(max-width:860px){.head-inner{gap:8px}.brand img{height:56px;max-width:240px}}
@media(max-width:620px){.brand img{max-width:205px;height:50px}.hero-art{display:flex;min-height:180px;margin-top:20px}.hero-art .shield{max-height:140px;max-width:150px;padding:13px;border-radius:15px}.brand-art-note{display:none}.hero{padding-bottom:25px}.timer-clock{font-size:34px}.timer-actions .btn{flex:1 1 auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.btn.ghost-outline{background:transparent;border:1px solid #91b8b5;color:#1b5156}

/* v1.1 usability and accessibility fixes */
.header .head-inner {align-items:center}
.icon svg {width:23px;height:23px;color:var(--teal)}
.safety-panel {background:#fff8e9;border:2px solid #aa7a1a;border-radius:15px;padding:18px;margin:23px 0 14px;color:#3c3426}
.safety-panel h3 {margin-bottom:9px}
.safety-panel p {font-size:14px;line-height:1.62}
.safety-panel .checkline {background:white;border-radius:9px;padding:11px;border:1px solid #d5c49e;font-size:14px;cursor:pointer}
.workout-warning {background:#fff6e7;border-left:5px solid #aa761d;border-radius:7px;padding:14px 16px;margin:14px 0 20px;font-size:14px;line-height:1.55}
.workout-warning p {margin:7px 0 0}
.btn:disabled {opacity:.62;cursor:not-allowed}
.toast[data-error="true"] {background:#76291d}
.needs-setup {color:#ffe3a7!important}
.footer-contact {flex-basis:100%;border-top:1px solid #355266;padding-top:14px}
.footer-contact .small {margin-top:5px}
h1:focus, h2:focus {outline:none}
.navbtn {min-height:39px}
@media (max-width:860px) {
 .navigation {overflow:visible;flex-wrap:wrap;padding-bottom:0;justify-content:center}
 .navbtn {flex:0 0 auto;white-space:normal}
}
@media (max-width:620px) {
 .header {position:static}
 .head-inner {padding:7px 12px;gap:5px}
 .brand {align-self:center}
 .brand img {height:39px;max-width:174px}
 .navigation {width:100%;display:grid;grid-template-columns:1fr 1fr;gap:3px}
 .navbtn {min-width:0;min-height:34px;padding:5px 5px;font-size:12px}
 .demo-banner {font-size:10px;padding:7px 11px;letter-spacing:0}
 .safety-panel {padding:14px}
 .exercise-table {font-size:12px}
 .exercise-table td {overflow-wrap:anywhere}
 .footer-contact .small {overflow-wrap:anywhere}
}
@media (max-width:355px) {.navbtn{font-size:11px}.hero h1{font-size:35px}}


/* v1.2: workout clarity, responsive navigation, and accessible timer */
:root { --teal:#087e82; }
#workoutResult { scroll-margin-top:105px; }
.workout-rule { background:#e8f5f3; border:1px solid #a8d4cb; border-radius:12px; padding:16px 17px; margin:16px 0; }
.workout-rule p {margin:8px 0 0; font-size:14px; line-height:1.6;}
.workout-steps {list-style:none; padding:0; margin:15px 0 24px; display:grid; gap:12px;}
.workout-step {background:white; border:1px solid #c8dcdb; border-left:4px solid var(--teal); border-radius:10px; padding:15px; overflow-wrap:anywhere;}
.workout-step h3 {font-size:17px; margin:5px 0 7px;}
.workout-step p {font-size:13px; line-height:1.55; margin:9px 0 0;}
.step-range {font-size:11px; font-weight:800; color:#165e60; letter-spacing:.055em;}
.workout-step .step-prescription {font-weight:800; background:#dbf1ec; color:#0c5757; border-radius:7px; padding:9px 11px; font-size:14px;}
.workout-step .step-rest {border-top:1px solid #e1e9e8; padding-top:9px;}
.current-step-box {padding:12px; background:white; border:1px solid #b9d9d2; border-radius:10px; margin:12px 0;}
.current-step-box strong {display:block; color:#0e3f52; margin-bottom:5px;}
.block-countdown {display:inline-block; font-weight:800; font-variant-numeric:tabular-nums; color:#0e3f52;}
.no-js-warning {color:#5e251f; background:#fff4df; border:2px solid #bb7833; padding:15px 20px; text-align:center; font-weight:750;}
.eyebrow {color:#087377;}
@media(max-width:860px) {
 .header {position:static;}
 .navigation .navbtn {min-height:44px;}
 #workoutResult {scroll-margin-top:12px;}
}
@media(max-width:620px) {
 .navbtn {min-height:44px; padding:10px 8px; font-size:12px;}
 .workout-step {padding:12px;}
 #workoutResult {scroll-margin-top:9px;}
}

.navbtn {min-height:44px;}

/* v1.3: easier phone workout flow, clearer timer and readable contact link */
.footer-email{color:#b7fff1;font-weight:750;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:44px;font-size:15px;overflow-wrap:anywhere;word-break:break-word}
.footer-email:focus-visible,.linkbtn:focus-visible,.btn:focus-visible,.navbtn:focus-visible{outline:3px solid #f6b953;outline-offset:3px}
.footer .linkbtn{min-height:44px;display:inline-flex;align-items:center;padding:10px 3px}
.timer-box{margin:15px 0 18px;padding:18px;background:#ecf7f5;border:2px solid #92c9c0}
.timer-clock{font-size:clamp(37px,7vw,48px)}
.current-step-box{background:#fff;border:1px solid #9bbfb9}
.step-live-plan{margin:7px 0 3px;font-size:15px;font-weight:800;color:#0d5558}
.step-live-how{margin:5px 0 8px;font-size:14px;line-height:1.55;color:#273c47}
.timer-actions .btn{min-height:44px}
.workout-rule{margin:14px 0}
@media(max-width:620px){.timer-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.timer-actions .btn{padding:11px 6px;font-size:12px;width:auto}.timer-box{padding:13px}}

/* v1.4: visible focus, workout-controls-first mobile layout, verified social profiles */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,
.btn:focus-visible,.navbtn:focus-visible,.linkbtn:focus-visible,.footer-email:focus-visible,.social-link:focus-visible {
  outline:3px solid #087e82;
  outline-offset:3px;
}
.footer a:focus-visible,.footer button:focus-visible {outline-color:#f6b953;}
.workout-summary{margin:12px 0;color:#405c6b;line-height:1.55}
.workout-warning{margin:9px 0 10px;padding:11px 14px}
.workout-warning strong{font-size:14px}
.workout-warning p{font-size:13px;line-height:1.45;margin-top:5px}
.timer-box{margin:6px 0 14px}
.footer-social{flex-basis:100%;border-top:1px solid #355266;padding-top:16px}
.footer-social[hidden]{display:none!important}
.social-list{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.social-link{min-height:44px;display:inline-flex;align-items:center;border:1px solid #78b4b2;color:#dbfff9;border-radius:9px;padding:9px 13px;text-decoration:none;font-weight:700}
.social-link:hover{background:#235168}
@media(max-width:620px){
 #workoutResult > h2 {font-size:24px;margin:7px 0}
 #workoutResult > .tag {font-size:10px}
 .timer-box{padding:11px 12px;margin:5px 0 12px}
 .timer-clock{font-size:37px;line-height:1.12}
 .timer-actions{margin-top:6px}
 .timer-actions .btn{min-height:44px}
}


/* v1.5: free PDF publication, cover preview, and archive */
.brief-page-title {background:linear-gradient(145deg,#ffffff 0%,#edf8f5 100%);}
.brief-feature {display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.75fr);align-items:center;gap:34px;background:white;border:1px solid var(--line);border-radius:22px;padding:clamp(22px,4vw,45px);box-shadow:0 12px 32px #061d3509;}
.brief-feature h2 {font-size:clamp(29px,3.4vw,42px);margin:12px 0 17px;}
.brief-metadata {display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:13px 0;}
.brief-date,.brief-format {font-size:12px;letter-spacing:.04em;font-weight:800;color:#2f666b;}
.brief-topics {display:flex;gap:8px;flex-wrap:wrap;margin:20px 0;}
.brief-topics span {background:#edf6f5;border:1px solid #d0e7e5;border-radius:50px;padding:6px 10px;font-size:12px;font-weight:750;color:#215b5e;}
.brief-actions {margin:23px 0 0;}
.brief-status {background:#edf5f4;border-left:4px solid var(--teal);border-radius:8px;padding:15px 17px;margin:22px 0 6px;display:flex;flex-direction:column;gap:5px;}
.brief-status strong {color:#15545c;font-size:14px;}
.brief-status span {font-size:13px;color:#4d626b;}
.brief-cover-wrap {text-align:center;}
.brief-cover {max-width:100%;height:auto;width:min(100%,380px);border:1px solid #dce5e5;border-radius:8px;box-shadow:0 18px 42px #0b243526;display:block;margin:0 auto;}
.brief-cover-caption {color:var(--muted);font-size:12px;margin-top:12px;}
.brief-archive-list {display:grid;gap:14px;max-width:870px;}
.brief-archive-card {background:white;border:1px solid var(--line);border-radius:15px;padding:22px;display:flex;gap:20px;align-items:flex-start;}
.brief-archive-number {display:grid;place-items:center;background:var(--mint);color:#07585e;width:56px;height:56px;flex:0 0 auto;border-radius:13px;font-size:22px;font-weight:850;}
.brief-archive-description h3 {margin:5px 0 8px;}
.brief-archive-description p {margin:0 0 8px;}
.brief-archive-meta {color:#087e82;font-weight:850;letter-spacing:.04em;}
.brief-archive-status {color:#5c6971;font-size:13px;font-style:italic;}
.brief-archive-link {display:inline-flex;min-height:44px;align-items:center;font-size:14px;color:#075c62;font-weight:850;text-decoration:underline;text-underline-offset:3px;}
@media(max-width:800px){.brief-feature{grid-template-columns:1fr}.brief-cover {width:min(100%,340px)}}
@media(max-width:620px){.brief-feature{padding:19px;gap:24px}.brief-archive-card{padding:15px;gap:12px}.brief-feature h2{font-size:29px}.navigation{grid-template-columns:repeat(3,minmax(0,1fr))}.brief-actions .btn{width:100%;}}

/* Keep missing-PDF action links hidden even when their container is flex. */
[hidden] {display:none!important;}

/* v1.5.4 — save warning and free-site legal drafts */
.progress-save-reminder{background:#fff6e7;border:2px solid #b17a24;border-radius:13px;padding:15px 17px;margin:18px 0 12px;color:#43351e}
.progress-save-reminder strong{display:block;font-size:15px;line-height:1.45}
.progress-save-reminder p{font-size:14px;line-height:1.55;margin:7px 0 0}
.workout-completion{min-height:48px}
.save-dialog{border:0;border-radius:20px;width:min(570px,calc(100% - 28px));max-height:min(92dvh,800px);padding:0;box-shadow:0 22px 80px #001c2c77;color:var(--ink);background:white}
.save-dialog::backdrop{background:rgba(5,20,32,.68)}
.save-dialog-body{padding:clamp(20px,4vw,30px)}
.save-dialog-eyebrow{text-transform:uppercase;letter-spacing:.075em;color:#095f63;font-size:12px;font-weight:850}
.save-dialog h2{font-size:clamp(24px,4vw,31px);margin:10px 0 13px}
.save-dialog p{font-size:15px;line-height:1.55}
.save-dialog-list{background:#f5f9f8;border:1px solid #d2e7e3;border-radius:12px;padding:14px 16px 14px 35px;margin:14px 0}
.save-dialog-list li{font-size:14px;line-height:1.5;margin:8px 0}
.save-dialog-confirm{font-weight:800;color:#48371b}
.save-dialog-actions{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.save-dialog-actions .btn{min-height:49px;width:100%}
.save-dialog-policy{margin-top:15px!important;font-size:12px!important}
.save-dialog-error{background:#ffebe6;color:#7e2119;border-radius:8px;padding:12px}
.inline-link{border:0;padding:0;background:none;color:#07676d;font:inherit;text-decoration:underline;text-underline-offset:2px;font-weight:800;cursor:pointer}
.inline-link:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.legal-content{max-width:950px;display:grid;gap:20px}
.legal-content .card h2{font-size:clamp(22px,3vw,28px)}
.legal-content .card p{line-height:1.65;color:#31464e}
.legal-content .progress-save-reminder p{color:#43351e}
.legal-date{font-weight:700;font-size:13px}
.legal-note{font-size:13px;background:#fff7e6;border-left:4px solid #a77527;padding:14px;color:#50442e}
.footer-link-separator{padding:0 10px;color:#8ad0c5}
@media(max-width:620px){.save-dialog{max-height:90dvh}.save-dialog-body{padding:18px}.save-dialog-list{padding-right:10px}}


/* v1.5.5 — accessible on-page reader and small-phone save dialog */
.save-dialog { overflow-y:auto; overscroll-behavior:contain; }
.save-dialog h2:focus {outline:none}
@media(max-height:600px){
  .save-dialog{max-height:94dvh}
  .save-dialog-body{padding:14px 18px}
  .save-dialog h2{font-size:22px;margin:5px 0 7px}
  .save-dialog p{font-size:14px;line-height:1.42;margin:7px 0}
  .save-dialog-list{padding:8px 10px 8px 30px;margin:7px 0}
  .save-dialog-list li{font-size:13px;line-height:1.38;margin:6px 0}
  .save-dialog-actions{margin-top:10px;gap:7px}
  .save-dialog-actions .btn{min-height:44px}
}
.brief-read-section{background:#f5faf9}
.brief-reader{background:#fff;border:1px solid #b5d1cd;border-radius:18px;overflow:hidden;box-shadow:0 12px 34px #09273513;}
.brief-reader-summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:23px 26px;font-weight:850;color:#0d4955;font-size:clamp(18px,3vw,24px);list-style:none;min-height:60px}
.brief-reader-summary::-webkit-details-marker{display:none}
.brief-reader-summary:focus-visible{outline:3px solid var(--teal);outline-offset:-4px}
.brief-reader[open]>.brief-reader-summary{background:#e7f5f2;border-bottom:1px solid #b5d1cd}
.brief-reader[open]>.brief-reader-summary span{transform:rotate(45deg)}
.brief-reader-inner{max-width:850px;padding:clamp(16px,4vw,38px);margin:auto;color:#243c4b}
.brief-reader-intro{padding:4px 0 18px}
.brief-reader-intro h2{font-size:clamp(26px,4.4vw,38px);line-height:1.16;margin:12px 0}
.brief-reader-intro h2:focus{outline:none}
.brief-reader-page{border-top:1px solid #d1e1df;padding:25px 0 28px;scroll-margin-top:16px}
.brief-page-number{letter-spacing:.08em;font-size:12px;font-weight:850;color:#10666b;margin:0 0 11px}
.brief-reader-page h3{font-size:clamp(23px,3.5vw,30px);margin:0 0 14px;color:#123549}
.brief-reader-page h4{font-size:17px;margin:22px 0 8px;color:#0e5560}
.brief-reader-page p,.brief-reader-page li{font-size:16px;line-height:1.7}
.brief-reader-page ul,.brief-reader-page ol{padding-left:25px}
.brief-reader-page li{padding-left:3px;margin:6px 0}
.brief-reader-page a{color:#075c6f;text-decoration:underline;overflow-wrap:anywhere}
.brief-reader-page .brief-emphasis{font-weight:850;color:#0a6067;font-size:17px}
.brief-safety{background:#fff5e9;border-left:4px solid #b47d29;padding:14px 17px;border-radius:7px}
.brief-safety p{margin:6px 0 0}
.brief-walk-grid{display:grid;gap:13px;margin:15px 0}
.brief-walk-grid>div{border:1px solid #c5ddda;background:#f2f8f7;border-radius:10px;padding:15px}
.brief-walk-grid strong{font-size:17px;color:#104e55}
.brief-walk-grid p{margin-bottom:0}
.brief-guideline-metrics{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:9px;align-items:stretch;margin:22px 0}
.brief-guideline-metrics>div:not(.brief-guideline-or){background:#edf8f5;border:1px solid #a8d6d0;border-radius:11px;padding:15px 9px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px}
.brief-guideline-metrics strong{font-size:38px;color:#086c71;line-height:1}
.brief-guideline-metrics span{font-size:13px;line-height:1.4;font-weight:800}
.brief-guideline-or{display:flex;align-items:center;font-size:12px;font-weight:850;color:#28545a}
.brief-guideline-examples{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:18px 0}
.brief-guideline-examples>div{background:#f4f8f8;padding:8px 16px;border-radius:11px}
.brief-reader-footer{display:flex;gap:12px;flex-wrap:wrap;padding-top:15px}
.brief-reader-footer .btn{min-height:44px}
.brief-archive-link{border:none;background:transparent;cursor:pointer;padding:8px 0;text-align:left;font:inherit;font-weight:850;color:#075c62;text-decoration:underline}
@media(max-width:620px){
 .brief-reader-summary{padding:15px;font-size:18px}
 .brief-reader-page{padding:18px 0 23px}
 .brief-reader-page p,.brief-reader-page li{font-size:15px;line-height:1.65}
 .brief-guideline-metrics{grid-template-columns:1fr 1fr;gap:8px}
 .brief-guideline-or{grid-column:1 / -1;justify-content:center;padding:0}
 .brief-guideline-metrics>div:last-child{grid-column:1 / -1}
 .brief-guideline-examples{grid-template-columns:1fr}
 .brief-reader-footer .btn{width:100%}
}

/* Keep owner-approved numbered movement instructions on separate lines. */
.workout-step .step-how, .step-live-how { white-space: pre-line; }

/* v1.5.7: keep online reader title visible under sticky desktop header. */
#brief-online-title {scroll-margin-top:100px;}
@media(max-width:860px){#brief-online-title{scroll-margin-top:15px;}}
