:root{--ink:#2d2b2e;--muted:#777579;--accent:#a34159;--soft:#f8f4f6;--line:#e3dfe1}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo',sans-serif;line-height:1.65;word-break:keep-all}header,main,footer{max-width:1280px;margin:auto}header{padding:32px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{font-size:24px;font-weight:750;white-space:nowrap}.brand span{border-left:1px solid #ccc;margin-left:14px;padding-left:18px;font-size:22px}a{color:inherit;text-decoration:none}nav,.actions,.pills{display:flex;gap:12px;align-items:center;flex-wrap:wrap}button,.button{font:inherit;font-size:14px;border:1px solid var(--line);background:white;color:var(--ink);border-radius:5px;padding:10px 19px;cursor:pointer;display:inline-block;text-align:center}button:hover,.button:hover{border-color:var(--accent);color:var(--accent)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #c67f94;outline-offset:3px}button:disabled{cursor:not-allowed;color:#aaa;background:#f6f5f6;border-color:#eeebed}.primary,button.primary:hover{background:var(--accent);color:white;border-color:var(--accent)}.active{color:var(--accent);border-color:var(--accent);background:var(--soft)}h1,h2,h3,p{margin:0}h1{font-size:36px;line-height:1.45;letter-spacing:-1px}h2{font-size:24px;line-height:1.5}h3{font-size:18px}p{margin:12px 0}small,.muted{color:var(--muted)}.eyebrow{font-size:12px;letter-spacing:1px;color:var(--accent);font-weight:700;margin-bottom:12px}.hero{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;padding:48px 0 30px;gap:40px;border-bottom:1px solid var(--line)}.hero .intro{font-size:17px;color:var(--muted)}.accent{color:var(--accent)}.chart{max-width:420px;justify-self:end;width:100%}.chart svg{width:100%;height:240px}.chart text{font-size:12px;fill:#777;font-family:inherit}.chart .chosen{fill:var(--accent);font-weight:bold}.chart-label{font-size:15px}.notes{padding:30px 0}.coach{display:flex;align-items:center;gap:14px;margin-bottom:20px}.coach img{width:48px;height:48px;object-fit:cover;border-radius:50%;object-position:center 20%}.notes-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.note{padding:22px;background:var(--soft);min-height:175px}.note:before{content:'';display:block;width:26px;height:2px;background:#bd8091;margin-bottom:16px}.note p{font-size:14px;color:var(--muted);line-height:1.8}.sectiontitle{display:flex;align-items:center;justify-content:space-between;margin:28px 0 16px}.curriculum{border-top:1px solid var(--ink)}.week-row{display:grid;grid-template-columns:45px minmax(220px,1fr) 90px minmax(430px,1.6fr);gap:16px;padding:16px 12px;align-items:center;border-bottom:1px solid var(--line)}.week-row.current{background:#fcf8fa;border-left:3px solid var(--accent)}.week-row span{font-size:15px;color:var(--muted)}.week-row strong{font-size:17px}.sets{display:grid;grid-template-columns:repeat(10,1fr);gap:9px}.sets button{padding:9px 0;font-size:12px;background:#f5f2f4}.sets button.open{background:var(--accent);color:#fff}.journey{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--line);margin-top:40px;padding:24px 0 40px}.journey a{border-top:1px solid #cfadb8;padding-top:15px}.journey h3{margin:5px 0}.pagehead{padding:35px 0 24px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.pagehead h1{font-size:32px}.tag{font-size:12px;background:var(--soft);color:var(--accent);padding:5px 10px;border-radius:4px}.guide-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:24px}.card{border:1px solid var(--line);padding:28px;border-radius:8px;margin-bottom:20px}.guide-step{display:grid;grid-template-columns:40px 1fr;gap:16px;margin:0 0 24px}.num{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:var(--accent);background:var(--soft);font-weight:bold}.guide-step p{font-size:15px;color:#686368}.video{background:#f2eef0;padding:25px;border-radius:6px;margin:18px 0}.video h3{margin-bottom:14px}.video small{display:block;margin-top:12px}.support{background:#faf8f9}.support p{font-size:14px}.activity-shell{display:grid;grid-template-columns:235px 1fr;gap:26px;margin:20px 0}.side{align-self:start;position:sticky;top:20px}.side button{width:100%;text-align:left;margin-bottom:8px;padding:14px;font-size:14px}.side .label{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.workspace{min-width:0}.workspace .card{padding:32px}.worktop{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:25px}.worktop h2{font-size:28px}.audio-box{padding:20px;background:var(--soft);border:1px solid var(--line);border-radius:6px;margin:22px 0}.audio-box p{font-size:14px;color:var(--muted)}label{display:block;font-size:14px;font-weight:600;margin:18px 0 7px}input[type=text],textarea{display:block;width:100%;border:1px solid #dcd7da;border-radius:5px;background:#fff;padding:12px;font:inherit;font-size:16px;color:var(--ink)}textarea{min-height:125px;resize:vertical;line-height:1.7}textarea:focus,input:focus{outline:2px solid #cf99a9;outline-offset:1px}input:disabled,textarea:read-only{background:#f9f7f8;color:#666}.chunk-grid{display:grid;grid-template-columns:35px 1fr 1.5fr;gap:10px;align-items:center}.chunk-grid label{margin:0;font-weight:400}.chunk-grid input{margin:5px 0}.check{display:flex;gap:10px;align-items:flex-start;font-weight:400;margin:18px 0}.check input{margin-top:7px}.bottom-actions{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-top:28px}.hint{font-size:13px;color:var(--muted);margin:10px 0}.source{white-space:pre-wrap;font-size:17px;line-height:1.85}.compare{display:grid;grid-template-columns:1fr 1fr;gap:20px}.compare section{background:#faf8f9;padding:22px;border-radius:5px}.compare h3{margin-bottom:15px}.counter{display:flex;align-items:center;gap:18px;padding:20px;background:var(--soft);margin:18px 0;flex-wrap:wrap}.counter strong{font-size:28px;color:var(--accent)}details{border-top:1px solid var(--line);padding:15px 0;margin-top:14px}summary{cursor:pointer;list-style:none;font-weight:600}summary::-webkit-details-marker{display:none}summary:after{content:'＋';float:right}details[open]>summary:after{content:'－'}details p{font-size:14px}.record{padding:18px;border:1px dashed #d5bec6;margin-top:18px;border-radius:5px}.record p{font-size:13px;color:var(--muted)}audio{width:100%;margin-top:12px}.statusline{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted);margin:12px 0}.questionbar{display:flex;gap:8px;flex-wrap:wrap}.questionbar button{padding:8px 13px}.questionbar button.active{background:var(--accent);color:white}dialog{border:1px solid var(--line);border-radius:10px;padding:32px;max-width:600px;width:calc(100% - 32px);color:var(--ink)}dialog::backdrop{background:#28202b66}.close{float:right;margin:0 0 15px 15px}dialog h2{margin:15px 0}dialog li{margin-bottom:8px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#383136;color:white;padding:10px 22px;border-radius:5px;display:none;z-index:20}.storage-error{color:#a22!important}.empty{padding:20px;background:var(--soft);font-size:14px}footer{padding:20px 0;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
@media(max-width:1350px){header,main,footer{margin-left:40px;margin-right:40px}.week-row{grid-template-columns:36px minmax(200px,1fr) 85px minmax(370px,1.5fr)}}@media(max-width:1000px){header{align-items:flex-start;flex-direction:column}.week-row{grid-template-columns:35px 1fr 85px}.sets{grid-column:2/4}.guide-layout{grid-template-columns:1fr}.notes-grid{gap:12px}.note{padding:16px}.activity-shell{grid-template-columns:180px 1fr}.compare{grid-template-columns:1fr}.workspace .card{padding:24px}}@media(max-width:650px){header,main,footer{margin-left:20px;margin-right:20px}header{padding:20px 0}.brand{font-size:21px}.brand span{font-size:18px}nav{gap:12px;font-size:12px}nav button{font-size:12px;padding:6px 9px}.hero{grid-template-columns:1fr;padding-top:30px;gap:12px}h1{font-size:28px}.chart{justify-self:center;max-width:350px}.notes-grid{grid-template-columns:1fr 1fr}.note{min-height:180px}.note h3{font-size:16px}.note p{font-size:13px}.week-row{gap:10px;padding:13px 5px}.week-row strong{font-size:15px}.sets{gap:6px;grid-template-columns:repeat(5,1fr)}.journey{gap:15px}.journey h3{font-size:15px}.journey small{font-size:11px}.pagehead{align-items:flex-start;flex-direction:column}.pagehead h1{font-size:27px}.activity-shell{grid-template-columns:1fr}.side{position:static;display:grid;grid-template-columns:1fr 1fr;gap:8px}.side button{margin:0;font-size:12px;padding:10px}.workspace .card,.card{padding:20px}.worktop{align-items:flex-start}.worktop h2{font-size:23px}.chunk-grid{grid-template-columns:22px 1fr 1.3fr;gap:6px}.chunk-grid input{font-size:14px;padding:10px}.guide-step{grid-template-columns:30px 1fr;gap:10px}.bottom-actions{align-items:stretch}.bottom-actions button{flex:1}.source{font-size:15px}.statusline{flex-direction:column}.counter{gap:12px}.questionbar{gap:6px}.questionbar button{padding:7px 11px}}

.course-title{margin-top:45px;font-size:22px}.journey{position:relative;gap:0;margin-top:20px}.journey a{position:relative;padding:24px 15px;border-top:2px solid #cfadb8}.journey a:before{content:'';width:9px;height:9px;border-radius:50%;background:#a34159;position:absolute;top:-6px;left:15px}.expansion{padding:15px;background:var(--soft);margin:20px 0}.expansion-fields{display:grid;grid-template-columns:1fr 1.5fr 2fr;gap:14px}.expansion textarea{min-height:85px}.resource-row{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}[aria-disabled=true]{opacity:.5}.week-row:target{outline:2px solid var(--accent)}@media(max-width:650px){.expansion-fields{grid-template-columns:1fr}.resource-row{align-items:start}.course-title{font-size:20px}}

/* Restore the connected curriculum path from approved-design.png (2026-10-22). */
.curriculum{position:relative;margin-left:82px}.curriculum:before{content:'';position:absolute;left:-18px;top:0;bottom:0;width:1px;background:#d7bec7}.training-group{position:relative}.training-group:before{content:'';position:absolute;left:-39px;top:10px;bottom:10px;width:6px;border:1px solid #c8a7b3;border-left:0}.training-group-label{position:absolute;right:calc(100% + 46px);top:50%;transform:translateY(-50%);width:40px;text-align:center;color:var(--accent);font-size:12px;line-height:1.5}.week-row{position:relative}.week-row:before{content:'';position:absolute;left:-22px;top:50%;width:7px;height:7px;border:1px solid #c8a7b3;background:white;border-radius:50%;transform:translateY(-50%)}.week-row.current:before{border-color:var(--accent);background:var(--accent)}.journey a:before{background:white;border:1px solid var(--accent)}.journey a:after{content:'';position:absolute;top:-5px;left:29px;width:40px;height:6px;background:#d8bdc7;border-radius:2px}@media(max-width:650px){.curriculum{margin-left:58px}.training-group-label{right:calc(100% + 30px);width:30px;font-size:10px}.training-group:before{left:-26px;width:4px}.curriculum:before{left:-12px}.week-row:before{left:-16px}.week-row{grid-template-columns:26px 1fr 65px;gap:6px}.week-row>button{padding:8px 6px}.week-row strong{font-size:14px}.sets{grid-column:1/4}}

.sets button.current-position,.week-row>button.current-position{background:var(--accent);border-color:var(--accent);color:white;box-shadow:0 0 0 2px #ecdce2;}

/* Approved Week 2 / Week 6 guide sequence. */
.guide-order{border:2px dashed #e6b800;border-radius:0;padding:18px;min-width:0}
.guide-order-label{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 16px;font-size:17px;line-height:1.5;color:var(--ink)}
.guide-order-label>span{background:#ffd129;color:#332800;padding:3px 8px;font-size:13px;font-weight:800;white-space:nowrap}
.guide-order-label>small{font-size:12px;font-weight:500;color:var(--muted)}
.guide-order-arrow{text-align:center;color:#b38f00;font-size:27px;font-weight:700;line-height:1;margin:10px 0}
.video.guide-order{margin:0;background:transparent}
.guide-order-activity{flex:0 1 auto;position:relative;margin-top:20px}
.guide-order-activity>.guide-order-arrow{position:absolute;top:-40px;left:0;width:100%;margin:0}
.guide-order-activity .guide-order-label{margin-bottom:12px}
@media(max-width:650px){.guide-order{padding:14px}.guide-order-label{font-size:16px;gap:6px}.guide-order-activity{width:100%}.guide-order-activity .button{width:100%;text-align:center}.guide-order-arrow{margin:9px 0}}
