
.s1-main{max-width:1220px;margin:0 auto;padding:24px 20px 65px;color:#28313c}.s1-top h1{font-size:clamp(27px,3vw,39px);margin:5px 0}.s1-top>p{margin:0 0 15px}.s1-progress{display:flex;gap:15px;align-items:center;font-size:13px;color:#6b7280}.s1-progress>div{flex:1;height:7px;background:#eadfdd;border-radius:20px;overflow:hidden}.s1-progress i{display:block;height:100%;background:#8d2341}.s1-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:22px;margin-top:23px;align-items:start}.s1-sidebar,.s1-panel{border:1px solid #e9e0dc;background:white;border-radius:15px;padding:18px}.s1-sidebar{position:sticky;top:18px}.s1-sidebar>strong{display:block;margin-bottom:12px}.s1-sidebar>a{display:flex;gap:9px;align-items:center;text-decoration:none;color:#354052;padding:10px;border-radius:8px;font-size:13px}.s1-sidebar>a span{font-size:11px;color:#9b6a38}.s1-sidebar>a:hover,.s1-sidebar>a[data-active="true"]{background:#f8edf0;color:#7a1730;font-weight:700}.s1-sidebar>a.s1-back{border-top:1px solid #eee;margin-top:10px;padding-top:15px}.s1-panel{padding:clamp(18px,3vw,32px)}.s1-panel h2{font-size:23px;margin:20px 0 10px}.s1-panel h3{margin:22px 0 6px}.s1-panel p{line-height:1.65}.s1-guide{background:#f8f3eb;padding:13px 17px;border-radius:10px;border-left:4px solid #c89c5a}.s1-guide p{font-size:13px;margin:4px 0}.s1-example{background:#f7f8fa;border:1px solid #e2e5ea;border-radius:10px;padding:14px 17px;margin:18px 0}.s1-example p{margin:7px 0 0}.s1-panel label:not(.s1-check){display:block;font-weight:650;font-size:14px;margin:15px 0 7px}.s1-panel input:not([type=checkbox]),.s1-panel textarea,.s1-panel select{display:block;box-sizing:border-box;width:100%;padding:12px;border:1px solid #cbd0d8;border-radius:8px;background:white;color:#243040;font:inherit;font-weight:400;margin-top:7px}.s1-panel textarea{min-height:78px;resize:vertical}.s1-panel fieldset{border:1px solid #ddd;border-radius:9px;margin:18px 0;padding:14px}.s1-panel .s1-check{display:block;padding:7px 0}.s1-note{margin:20px 0;padding:13px;border-radius:9px;background:#fff7e8;color:#674d2b;font-size:13px}.s1-primary,.s1-secondary{display:inline-flex;align-items:center;justify-content:center;padding:11px 15px;border-radius:8px;font-weight:650;font-size:13px;cursor:pointer;text-decoration:none;border:1px solid #7a1730}.s1-primary{background:#7a1730;color:white}.s1-secondary{background:white;color:#7a1730}.s1-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #eee;margin-top:28px;padding-top:18px}.s1-actions{display:flex;flex-wrap:wrap;gap:8px}.s1-bottom>span{font-size:12px;color:#697280}.s1-rows{display:grid;gap:12px;margin:15px 0}.s1-record{border:1px solid #e3e5e9;padding:14px;border-radius:10px;background:#fafafa}.s1-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.s1-record label{font-size:12px!important;margin:0!important}.s1-record input,.s1-record textarea{margin-top:4px!important}.s1-remove{border:0;background:none;color:#9c1836;cursor:pointer;margin-top:10px}.s1-preview-section{border-bottom:1px solid #ddd;padding:10px 0}.s1-preview-section h3{margin:8px 0}.s1-preview-section pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:13px}.s1-preview-section p{margin:5px 0;font-size:14px}@media(max-width:750px){.s1-layout{grid-template-columns:1fr}.s1-sidebar{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}.s1-sidebar>strong,.s1-sidebar>.s1-back{grid-column:1/-1}.s1-sidebar>a{font-size:12px;padding:8px}.s1-bottom{align-items:flex-start;flex-direction:column}.s1-record-grid{grid-template-columns:1fr}}@media print{header,.s1-sidebar,.s1-top,.s1-guide,.s1-actions,.s1-bottom,footer{display:none!important}.s1-layout{display:block}.s1-panel{border:0}.s1-main{max-width:none;padding:0}}

.s1-sidebar>a.prompt-toolkit-link{margin:8px 0;padding:9px 10px;border:1px solid #ead8dc;border-radius:8px;background:#fff8f8;color:#7a1730;font-size:12px;font-weight:700}.s1-sidebar>a.prompt-toolkit-link:hover{background:#f8edf0}


/* Stage 1 visual learning guides */
.stage1-visual{max-width:1040px;margin:16px auto 22px;padding:8px;border:1px solid #e4e7eb;border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(25,38,63,.07)}
.stage1-visual img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;border-radius:9px;background:#fff}
.stage1-visual figcaption{padding:8px 8px 2px;color:#566273;font-size:13px;font-weight:600;line-height:1.45}
@media(max-width:700px){.stage1-visual{margin:12px 0 18px;padding:5px;border-radius:10px}.stage1-visual figcaption{font-size:12px;padding:7px 5px 1px}}


/* Stage 1 workspace: step navigation left, image and worksheet right. */
.s1-top{max-width:1180px;margin:0 auto 23px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.s1-layout{max-width:1180px;margin:0 auto;grid-template-columns:260px minmax(0,1fr);gap:22px}
.s1-workarea{display:grid;min-width:0;gap:0}
.s1-workarea .stage1-visual{width:100%;max-width:none;margin:0 0 16px;padding:8px}
.s1-workarea .stage1-visual img{max-height:420px;object-fit:contain}
@media(max-width:750px){.s1-layout{grid-template-columns:1fr}.s1-sidebar{position:static}.s1-workarea .stage1-visual img{max-height:none}}

/* Hands-on time estimate and clear step completion check */
.step-checkpoint{display:grid;grid-template-columns:minmax(150px,.28fr) minmax(0,1fr);gap:14px;align-items:stretch;margin:14px 0 18px;padding:13px 15px;border:1px solid #e7e1d8;border-radius:10px;background:#fcfbf8}.step-checkpoint-time{display:flex;flex-direction:column;justify-content:center;gap:5px;padding-right:14px;border-right:1px solid #e5ded5}.step-checkpoint-time span{font-size:10px;letter-spacing:.07em;font-weight:750;color:#76654c}.step-checkpoint-time strong{font-size:16px;color:#7a1730}.step-checkpoint-ready>strong{display:block;font-size:13px;color:#315846}.step-checkpoint-ready p{font-size:12px;line-height:1.5;margin:4px 0 0;color:#4e535a}.step-checkpoint-ready .step-checkpoint-note{color:#6c5c43;font-size:11px}.s1-handoff{border-color:#ead7ad;background:#fffaf0}.s1-handoff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:12px 0 18px}.s1-handoff-grid>div{padding:13px;border:1px solid #eee3cd;border-radius:9px;background:#fff}.s1-handoff-grid strong{color:#6d1830}.s1-handoff-grid ul{margin:8px 0 0;padding-left:19px;color:#4f5359;font-size:13px;line-height:1.6}.s1-handoff .button{margin-top:2px}@media(max-width:620px){.step-checkpoint{grid-template-columns:1fr;gap:8px}.step-checkpoint-time{border-right:0;border-bottom:1px solid #e5ded5;padding:0 0 8px}.s1-handoff-grid{grid-template-columns:1fr}}
