/* Isolated 4WD manual; existing lessons and Scratch pages keep their layout. */
.project-shell{max-width:1440px;margin:auto;display:grid;grid-template-columns:285px minmax(0,1fr);gap:48px;padding:30px 36px 64px;align-items:start}
.project-sidebar{position:sticky;top:20px;max-height:calc(100dvh - 40px);overflow:auto;scrollbar-width:thin;padding:22px 18px;border:1px solid #dce8e3;border-radius:20px;background:#f5f9f7}
.project-back{font-size:12px;color:#52756b}.project-identity{margin:24px 0}.project-identity>span,.project-kicker{font-size:11px;font-weight:750;letter-spacing:1.7px;color:#087f83}.project-identity h2{font-size:21px;margin:8px 0 4px}.project-identity p{font-size:12px;color:#6d8279;margin:0}
.project-progress>div{display:flex;justify-content:space-between;gap:8px;font-size:12px}.project-progress progress{display:block;width:100%;height:8px;accent-color:#087f83;border:0;border-radius:6px;overflow:hidden;margin:9px 0}.project-progress progress::-webkit-progress-bar{background:#dae8e2}.project-progress progress::-webkit-progress-value{background:#087f83}.project-progress small{font-size:10px;color:#70897e}
.project-step-menu{margin-top:24px}.project-step-menu>summary{display:flex;justify-content:space-between;list-style:none;font-size:12px;font-weight:700;padding-bottom:16px;color:#597368;cursor:pointer}.project-step-menu>summary::-webkit-details-marker{display:none}.project-search-label{display:block}.project-step-menu .gooey-search{margin-bottom:14px}.project-step-menu nav ol{list-style:none;padding:0;margin:0}.project-step-menu li{margin:3px 0}.project-step-menu li[hidden]{display:none}.project-step-menu a{display:flex;gap:10px;padding:11px 9px;border-radius:11px;font-size:13px;align-items:center;color:#46645c}.project-step-menu a:hover{background:#e7f1ec}.project-step-num{display:grid;place-items:center;flex-shrink:0;width:29px;height:29px;border:1px solid #d2e3dc;background:white;border-radius:9px;font-size:11px;font-weight:700}.project-step-menu a small{display:block;font-size:10px;color:#85988d;line-height:1.5;margin-top:3px}.project-step-menu a[aria-current=step]{background:#087f83;color:white}.project-step-menu a[aria-current=step] small{color:#c4e5dc}.project-step-menu a[aria-current=step] .project-step-num{background:#ffffff22;border-color:#ffffff50;color:white}.project-source-all{display:block;font-size:12px;margin-top:20px;padding-top:18px;border-top:1px solid #dce8e0;color:#087f83}
.project-article{min-width:0;max-width:960px}.project-article .breadcrumb{font-size:12px;margin-bottom:30px}.project-heading h1{font-size:42px;margin:12px 0}.project-heading>p{font-size:18px;color:#647e77;margin-bottom:28px}.project-context{padding:16px 20px;background:#eff7f3;border-radius:12px;border-left:3px solid #6daf9e;font-size:13px;line-height:1.8}.project-context p{margin:4px 0 0;color:#527269}
.project-visuals{margin:24px 0}.project-visuals figure{margin:0 0 16px}.project-zoom{display:block;width:100%;padding:0;position:relative;border:1px solid #e0e9e6;border-radius:18px;overflow:hidden;background:#f6fafb;cursor:zoom-in}.project-zoom img{display:block;width:100%;height:auto}.project-zoom>span{position:absolute;right:14px;bottom:12px;padding:6px 11px;border-radius:20px;background:#183e45e6;color:white;font-size:11px}.project-visuals figcaption{font-size:12px;color:#6b8079;line-height:1.8;margin:10px 4px 0}
.project-materials{padding:22px 24px;border:1px solid #dce8e0;border-radius:16px;background:#fcfdfc}.project-materials h2,.project-section h2,.project-checklist h2,.project-caution h2{font-size:22px;margin:0 0 15px}.project-materials ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;padding-left:18px;margin:0;font-size:14px;color:#496b5f}
.project-section{margin:36px 0}.project-section>p{font-size:14px;color:#647c73}.project-actions{list-style:none;padding:0;margin:0}.project-actions>li{display:flex;align-items:flex-start;gap:16px;padding:20px 0;border-bottom:1px solid #edf1ef}.project-actions>li>span{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;background:#eaf4ef;border-radius:50%;color:#087f83;font-weight:700;font-size:13px}.project-actions h3{font-size:18px;margin:0 0 8px}.project-actions p{font-size:15px;line-height:1.95;color:#516b61;margin:0}
.project-caution{padding:22px 24px;background:#fff7e9;border:1px solid #f1ddba;border-radius:16px;color:#815d27}.project-caution h2{font-size:19px}.project-caution ul{padding-left:20px;margin:0;font-size:14px;line-height:1.9}.project-caution li+li{margin-top:8px}
.project-table-wrap{overflow:auto;border:1px solid #dce8e3;border-radius:12px}.project-table-wrap table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.8}.project-table-wrap th,.project-table-wrap td{padding:13px 14px;text-align:left;vertical-align:top;border-bottom:1px solid #e6eeea;min-width:110px}.project-table-wrap thead{background:#edf5f1;color:#3f6658}.project-table-wrap tbody th{font-weight:650;color:#315d4e}.project-table-wrap tr:last-child td,.project-table-wrap tr:last-child th{border-bottom:0}.project-table-wrap td:last-child{min-width:230px}
.project-note{margin-top:20px;background:#f3f7f8;padding:18px 20px;border-radius:12px;font-size:14px;color:#526f74}.project-note p{margin:8px 0 0;line-height:1.9}.project-pending{list-style:none;padding:0}.project-pending li{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid #edf1ef;font-size:14px}.project-pending li>span{flex-shrink:0;font-size:10px;background:#fff1db;color:#9a6018;border:1px solid #f0d4a6;border-radius:5px;padding:2px 5px;margin-top:2px}
.project-checklist{padding:26px;background:#eff8f3;border:1px solid #cce4d8;border-radius:18px}.project-checklist>p{font-size:13px;color:#5d7e6c}.project-checklist>label:not(.project-note-label){display:flex;align-items:flex-start;gap:12px;padding:13px 0;border-bottom:1px solid #dcece2;font-size:14px;cursor:pointer}.project-checklist input[type=checkbox]{width:19px;height:19px;margin:3px 0 0;flex-shrink:0;accent-color:#087f83}.project-checklist #project-completion-status{font-weight:700;color:#087f83;margin:14px 0 24px}.project-note-label{display:block;font-size:14px;font-weight:700}.project-note-label small{display:block;font-weight:400;font-size:12px;color:#6c8778;margin:6px 0 10px}.project-checklist textarea{display:block;resize:vertical;width:100%;border:1px solid #bad3c5;border-radius:9px;background:white;padding:12px;font:inherit;font-size:14px;min-height:100px}.project-checklist #project-save-status{font-size:11px;margin:10px 0 0}
.project-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:30px 0}.project-pagination>span{font-size:12px;color:#72887c}.project-pagination .button{font-size:14px;padding:12px 18px}
.project-disclosure{margin:24px 0;border:1px solid #e0e8e3;border-radius:12px;padding:17px 20px;font-size:13px;color:#6d8278;line-height:1.9}.project-disclosure summary{color:#416254;font-weight:650;cursor:pointer}.project-disclosure .project-table-wrap{margin-top:16px}.project-references p{margin:16px 0}.project-references a{color:#087f83;text-decoration:underline;text-underline-offset:3px}.project-page-links{display:flex;flex-wrap:wrap;gap:8px}.project-page-links a{font-size:12px;background:#f0f6f2;padding:5px 9px;border-radius:6px}.project-code{position:relative;background:#142e35;border-radius:12px;overflow:hidden}.project-code>button{display:block;margin:12px 14px 0 auto;background:#28515b;border:1px solid #447580;color:white;border-radius:7px;padding:7px 12px;font-size:12px}.project-code pre{margin:0;background:transparent}.project-code+ p{font-size:12px;color:#087f83}
.project-entry{display:flex;align-items:center;gap:22px;padding:22px 25px;margin:26px 0;border:1px solid #c8e4d8;border-radius:18px;background:linear-gradient(120deg,#eef8f0,#f4f9fc);color:#274e41}.project-entry>span:first-child{font-size:36px}.project-entry strong{font-size:20px;display:block}.project-entry small{font-size:13px;display:block;margin-top:6px;color:#688474}.project-entry>span:last-child{margin-left:auto;font-size:24px}.project-entry:hover{border-color:#74bba3;color:#087f83}
@media(max-width:1100px){.project-shell{grid-template-columns:255px minmax(0,1fr);gap:28px;padding:25px 24px 50px}.project-heading h1{font-size:36px}.project-materials ul{grid-template-columns:1fr}}
@media(max-width:800px){.project-shell{display:block;padding:20px}.project-sidebar{position:static;max-height:none;padding:18px;margin-bottom:26px}.project-identity{margin:15px 0}.project-identity h2{font-size:22px}.project-step-menu{margin-top:18px}.project-step-menu>summary{padding:4px 0}.project-step-menu[open]>summary{margin-bottom:18px}.project-step-menu>summary:after{content:'⌄';margin-left:10px}.project-step-menu>summary>span{margin-left:auto}.project-source-all{margin-top:14px;padding-top:12px}.project-heading h1{font-size:34px}.project-article .breadcrumb{margin-bottom:22px}.project-visuals{margin:20px 0}.project-table-wrap th,.project-table-wrap td{padding:10px 12px}.project-step-menu nav{max-height:340px;overflow:auto}}
@media(max-width:560px){.project-shell{padding:16px 14px 35px}.project-heading h1{font-size:32px}.project-heading>p{font-size:16px}.project-context{padding:14px 16px;font-size:12px}.project-zoom>span{font-size:10px;right:7px;bottom:7px;padding:4px 8px}.project-visuals figcaption{font-size:11px}.project-materials,.project-checklist,.project-caution{padding:18px}.project-section h2,.project-materials h2,.project-checklist h2{font-size:20px}.project-actions>li{gap:12px}.project-actions h3{font-size:17px}.project-actions p{font-size:14px}.project-pending li{font-size:13px;gap:8px}.project-pagination{gap:6px}.project-pagination .button{font-size:12px;padding:11px 12px}.project-pagination>span{font-size:11px}.project-entry{padding:18px;gap:14px}.project-entry strong{font-size:17px}.project-entry small{font-size:12px}.project-disclosure{padding:15px}}
@media print{.project-sidebar,.project-pagination,.project-code>button{display:none}.project-shell{display:block;padding:0}.project-checklist{break-inside:avoid}.project-zoom>span{display:none}}

.project-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.project-photo-grid .project-zoom{background:white}.project-photo-grid .project-zoom img{height:280px;object-fit:contain;padding:12px}.project-photo-grid figcaption strong{font-weight:600;color:#395d50}.project-translations .project-caution{font-size:13px;margin:16px 0}.project-translations .project-disclosure{color:#395d50}.project-translations a{color:#087f83;text-decoration:underline}@media(max-width:560px){.project-photo-grid{grid-template-columns:1fr}.project-photo-grid .project-zoom img{height:260px}}
