*{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:light}body{--blue:#0b61e8;--navy:#102a50;--muted:#627791;--line:#d9e4f1;--soft:#f2f6fb;--green:#0aa86e;margin:0;background:var(--soft);color:var(--navy);font-family:"Segoe UI Variable Text","Segoe UI","Microsoft YaHei UI",sans-serif}.top{display:flex;align-items:center;justify-content:space-between;min-height:72px;border-bottom:1px solid var(--line);background:#fff;padding:12px clamp(18px,4vw,58px)}.top a{display:flex;align-items:center;min-height:44px;color:var(--blue);font-size:13px;font-weight:760;text-decoration:none}.top div{display:grid;text-align:right}.top strong{color:var(--blue);font-size:10px}.top small{margin-top:4px;color:var(--muted);font-size:9px}main{max-width:1360px;margin:auto;padding:26px 22px 46px}.hero{display:grid;grid-template-columns:1.35fr .65fr;gap:14px}.hero>div,.hero>aside,.loop,.start,.courses,.practice,.resources,.finish{border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:0 4px 18px rgba(31,69,116,.055)}.hero>div{padding:38px}.hero>div>small,.loop>header small,.start header small,.courses>header small,.practice>header small,.resources>header small,.finish small{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.04em}.hero h1{max-width:850px;margin:10px 0 14px;font-size:clamp(34px,4.5vw,58px);line-height:1.08;letter-spacing:-.035em}.hero p{max-width:800px;margin:0;color:var(--muted);font-size:14px;line-height:1.8}.hero>div>div{display:flex;gap:8px;margin-top:22px}.hero a,.finish a{display:flex;align-items:center;justify-content:center;min-height:46px;border:1px solid var(--blue);border-radius:7px;background:var(--blue);padding:0 16px;color:#fff;font-size:11px;font-weight:780;text-decoration:none}.hero a.quiet{background:#fff;color:var(--blue)}.hero>aside{display:grid;align-content:center;padding:26px;background:#f8fbff}.hero>aside>small{color:var(--blue);font-size:9px;font-weight:780}.hero dl{display:grid;grid-template-columns:repeat(2,1fr);margin:14px 0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.hero dl div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px}.hero dt{font-size:24px;font-weight:800}.hero dd{margin:3px 0 0;color:var(--muted);font-size:9px}.hero aside p{margin:0;color:#3a627a;font-size:10px;line-height:1.65}.loop,.start,.courses,.practice,.resources{margin-top:14px;padding:26px}.loop h2,.start h2,.courses h2,.practice h2,.resources h2,.finish h2{margin:6px 0 0;font-size:24px}.loop>div{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:8px;margin-top:18px}.loop article{display:grid;min-height:132px;border:1px solid var(--line);border-radius:9px;background:#f9fbfe;padding:16px}.loop article b,.course-grid article header>b{display:grid;place-items:center;width:38px;height:38px;border:1px solid #8cb1ec;border-radius:9px;background:#edf4ff;color:var(--blue);font-size:10px}.loop article strong{margin:12px 0 7px;font-size:13px}.loop article span{color:var(--muted);font-size:10px;line-height:1.55}.loop i{color:var(--blue);font-style:normal}.loop>footer,.practice>footer{margin-top:14px;border-left:3px solid var(--green);background:#eef8f4;padding:12px 14px;color:#356453;font-size:10px;line-height:1.65}.start>header,.courses>header,.resources>header{display:flex;align-items:end;justify-content:space-between;gap:24px}.start>header p,.courses>header p{max-width:520px;margin:0;color:var(--muted);font-size:11px}.start-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.start-options button{display:grid;grid-template-columns:34px 1fr;gap:2px 10px;min-height:74px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px;color:var(--navy);text-align:left;cursor:pointer}.start-options b{grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border:1px solid #9bbbf0;border-radius:8px;color:var(--blue);font-size:9px}.start-options strong{font-size:12px}.start-options span{color:var(--muted);font-size:9px}.start-options button.active{border-color:#70a0f4;background:#edf4ff;box-shadow:0 0 0 1px rgba(11,97,232,.08)}#path-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0 0;padding:0;list-style:none;counter-reset:path}#path-steps li{position:relative;min-height:82px;border:1px solid var(--line);border-radius:8px;background:#f9fbfe;padding:14px 14px 14px 48px;font-size:11px;line-height:1.55}#path-steps li:before{counter-increment:path;content:counter(path,decimal-leading-zero);position:absolute;left:13px;top:14px;color:var(--blue);font-size:9px;font-weight:800}#path-steps strong{display:block;margin-bottom:5px}#path-note{margin:10px 0 0;color:var(--muted);font-size:10px}.course-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:18px}.course-grid>article{overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#fff}.course-grid article>header{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);background:#f9fbfe;padding:16px}.course-grid header div{display:grid}.course-grid header small{color:var(--blue);font-size:8px;font-weight:780}.course-grid h3{margin:4px 0 0;font-size:17px}.course-grid>article>p{margin:0;padding:15px 16px 0;color:var(--muted);font-size:11px}.course-grid ol{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin:12px 16px 16px;padding:0;border-top:1px solid var(--line);border-left:1px solid var(--line);list-style:none;counter-reset:unit}.course-grid li{position:relative;min-height:48px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 9px 9px 34px;color:#405b78;font-size:10px;line-height:1.45}.course-grid li:before{counter-increment:unit;content:counter(unit,decimal-leading-zero);position:absolute;left:9px;color:var(--blue);font-size:8px;font-weight:800}.course-grid article>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:13px 16px}.course-grid footer span{color:var(--muted);font-size:9px}.course-grid footer a{display:flex;align-items:center;min-height:44px;color:var(--blue);font-size:10px;font-weight:780;text-decoration:none}.practice>div{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:18px}.practice article{border:1px solid var(--line);border-radius:8px;background:#f9fbfe;padding:15px}.practice article b{color:var(--blue);font-size:9px}.practice article strong{display:block;margin:8px 0;font-size:12px}.practice article p{min-height:66px;margin:0;color:var(--muted);font-size:10px;line-height:1.6}.practice article span{display:block;margin-top:12px;border-top:1px solid var(--line);padding-top:9px;color:var(--blue);font-size:9px;font-weight:740}.resources>header nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.resources nav button{min-height:44px;border:1px solid #9bbbf0;border-radius:6px;background:#fff;padding:0 12px;color:var(--blue);font-size:10px;font-weight:760;cursor:pointer}.resources nav button.active{background:var(--blue);color:#fff}.reading-rule{margin:14px 0 0;border-left:3px solid var(--blue);background:#f4f8ff;padding:11px 13px;color:#4c6683;font-size:10px;line-height:1.6}.resource-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.resource-grid a{display:grid;gap:6px;min-height:150px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:14px;color:var(--navy);text-decoration:none}.resource-grid a:hover,.resource-grid a:focus-visible{border-color:#78a5ee;background:#f5f9ff}.resource-grid a[hidden]{display:none}.resource-grid em{color:var(--blue);font-size:8px;font-style:normal;font-weight:800}.resource-grid strong{font-size:12px}.resource-grid strong:after{content:"↗";float:right;color:var(--blue)}.resource-grid span{color:var(--muted);font-size:10px;line-height:1.55}.resource-grid small{align-self:end;border-top:1px solid var(--line);padding-top:8px;color:#41617f;font-size:9px;line-height:1.5}.resources>footer{display:flex;gap:12px;margin-top:14px;color:var(--muted);font-size:10px;line-height:1.6}.resources>footer strong{color:var(--navy);white-space:nowrap}.finish{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;margin-top:14px;padding:24px}.finish p{margin:8px 0 0;color:var(--muted);font-size:11px}.finish a:last-child{background:#fff;color:var(--blue)}.boundary{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);background:#fff;padding:18px clamp(18px,4vw,58px);color:var(--muted);font:9px/1.5 "Cascadia Mono",Consolas,monospace}.boundary strong{color:var(--blue)}button:focus-visible,a:focus-visible{outline:3px solid rgba(11,97,232,.25);outline-offset:2px}@media(max-width:900px){.loop>div{grid-template-columns:1fr 1fr}.loop i{display:none}.practice>div,.resource-grid{grid-template-columns:repeat(2,1fr)}#path-steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){html{scroll-behavior:auto}.top{align-items:flex-start;padding:10px 14px}.top div{max-width:220px}.top small{line-height:1.4}main{padding:14px 12px 30px}.hero{grid-template-columns:1fr}.hero>div{padding:26px 20px}.hero h1{font-size:34px}.hero>div>div{display:grid}.loop,.start,.courses,.practice,.resources{padding:18px 14px}.loop>div,.start-options,.course-grid,.practice>div,.resource-grid,#path-steps{grid-template-columns:1fr}.start>header,.courses>header,.resources>header{display:block}.start>header p,.courses>header p{margin-top:8px}.resources>header nav{justify-content:flex-start;margin-top:12px}.course-grid ol{grid-template-columns:1fr}.resource-grid a{min-height:auto}.resources>footer{display:block}.resources>footer strong{display:block;margin-bottom:5px}.finish{grid-template-columns:1fr;padding:20px}.finish a{width:100%}.boundary{display:block;overflow-wrap:anywhere}.boundary strong{display:block;margin-bottom:5px}}
/* Keep short filter labels at the same 44 px touch target as the rest of the course UI. */
.resources nav button{min-width:44px}
.terms-entry{display:grid;grid-template-columns:1fr auto;gap:7px 24px;align-items:center;margin-top:14px;border:1px solid #76a5ef;border-left:4px solid var(--blue);border-radius:8px;background:#edf4ff;padding:17px 20px;color:var(--navy);text-decoration:none}.terms-entry strong{font-size:14px}.terms-entry span{grid-column:1;color:var(--muted);font-size:10px;line-height:1.6}.terms-entry em{grid-column:2;grid-row:1/3;color:var(--blue);font-size:10px;font-style:normal;font-weight:780}@media(max-width:680px){.terms-entry{grid-template-columns:1fr}.terms-entry strong,.terms-entry span,.terms-entry em{grid-column:1;grid-row:auto}.terms-entry em{margin-top:5px}}
/* P268: reading provenance and return tasks must remain legible on desktop and mobile. */
.resources>header small,.resources nav button,.reading-rule,.resource-grid em,.resource-grid strong,.resource-grid span,.resource-grid small,.resources>footer{font-size:12px}

/* Student-first lesson: problem -> choice -> feedback -> discovery -> tools. */
.discovery{position:relative;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);overflow:hidden;border:1px solid #dce6f2;border-radius:22px;background:linear-gradient(118deg,#fff 0%,#f8fbff 55%,#eef5fb 100%);box-shadow:0 24px 70px rgba(31,69,116,.1)}
.discovery-copy{position:relative;z-index:2;padding:clamp(34px,5vw,70px)}
.lesson-progress{display:flex;align-items:center;gap:12px;margin:0 0 20px;color:#38536f;font-size:13px}.lesson-progress span{border:1px solid #8db3f5;border-radius:999px;padding:6px 12px;color:var(--blue);font-weight:800}.lesson-progress b{font-weight:650}
.discovery h1{max-width:850px;margin:0;color:#0b2344;font-size:clamp(39px,4.7vw,68px);line-height:1.12;letter-spacing:-.04em}.discovery .lead{max-width:780px;margin:24px 0 0;color:#506b88;font-size:17px;line-height:1.85}
.task-scenes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.task-scenes article{display:grid;grid-template-columns:54px 1fr;align-items:center;gap:3px 12px;min-height:84px;border:1px solid #d7e2ef;border-radius:16px;background:rgba(255,255,255,.86);padding:12px}.task-scenes strong{font-size:14px}.task-scenes small{grid-column:2;color:#6d8297;font-size:12px}.object{grid-row:1/3;display:block;position:relative;width:48px;height:54px}.object.cup{width:36px;height:43px;margin-left:6px;border:3px solid #d8dee6;border-top-width:5px;border-radius:4px 4px 10px 10px;background:#fff;box-shadow:0 8px 12px rgba(31,69,116,.1)}.object.tool{width:50px;height:10px;margin-top:7px;border-radius:8px;background:linear-gradient(90deg,#e1e7ec 0 46%,#f26f3d 47% 100%);transform:rotate(-28deg);box-shadow:0 4px 8px rgba(31,69,116,.12)}.object.tool:after{content:"";position:absolute;right:2px;top:-5px;width:20px;height:20px;border-radius:7px;background:#253e58;z-index:-1}.object.sponge{width:46px;height:34px;margin-top:8px;border-radius:7px;background:linear-gradient(135deg,#ffe36b,#edbd37);box-shadow:inset 0 0 0 4px rgba(255,255,255,.24),0 7px 12px rgba(164,127,22,.15);transform:rotate(-5deg)}
.discovery-copy>h2{margin:30px 0 0;font-size:24px}.choice-hint{margin:7px 0 0;color:#6d8297;font-size:13px}.tool-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px}.tool-choices button{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:3px 14px;min-height:94px;border:1.5px solid #b8cbe1;border-radius:17px;background:#fff;padding:12px 18px;color:#0b2344;text-align:left;cursor:pointer;transition:.2s transform,.2s border-color,.2s box-shadow}.tool-choices button:hover,.tool-choices button:focus-visible{border-color:var(--blue);box-shadow:0 12px 28px rgba(11,97,232,.12);transform:translateY(-2px)}.tool-choices button.selected{border-color:var(--blue);background:#f5f9ff;box-shadow:0 0 0 3px rgba(11,97,232,.1)}.tool-choices button img{grid-row:1/3;width:64px;height:76px;object-fit:contain}.tool-choices button b{font-size:15px}.tool-choices button small{color:#6d8297;font-size:12px}.gripper-mark{grid-row:1/3;position:relative;display:block;width:58px;height:64px;margin:auto;border-radius:0 0 14px 14px;background:linear-gradient(#51677c,#1b3045)}.gripper-mark:before{content:"";position:absolute;left:25px;top:5px;width:8px;height:44px;background:#d8e0e8}.gripper-mark i{position:absolute;top:-8px;width:15px;height:42px;border:5px solid #6f8293}.gripper-mark i:first-child{left:0;border-right:0;border-radius:8px 0 0 8px}.gripper-mark i:last-child{right:0;border-left:0;border-radius:0 8px 8px 0}
.discovery-visual{position:relative;display:grid;align-content:center;justify-items:center;min-height:720px;padding:46px 26px;background:radial-gradient(circle at 45% 45%,rgba(255,255,255,.98),rgba(222,235,246,.75) 52%,rgba(206,224,238,.72));text-align:center}.discovery-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.1),transparent),repeating-linear-gradient(90deg,transparent 0 76px,rgba(66,109,145,.035) 77px),repeating-linear-gradient(0deg,transparent 0 76px,rgba(66,109,145,.035) 77px)}.discovery-visual img{position:relative;width:min(92%,410px);height:470px;object-fit:contain;filter:drop-shadow(0 30px 25px rgba(24,54,82,.17));transition:.25s transform}.discovery-visual p{position:relative;margin:0 0 -30px;color:#536e88;font-size:15px;line-height:1.55}.discovery-visual p strong{color:#0b2344;font-size:20px}.discovery-visual>span{position:relative;border-radius:999px;background:#e8f1ff;padding:8px 14px;color:var(--blue);font-size:12px;font-weight:750}.discovery.has-choice .discovery-visual img{transform:rotate(-3deg) scale(1.03)}.discovery.has-choice .discovery-visual>span{background:#e6f7f1;color:#087a55}
.choice-result{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px;margin-top:18px;border:1px solid #c9d9e9;border-radius:20px;background:#fff;padding:clamp(24px,4vw,44px);box-shadow:0 14px 45px rgba(31,69,116,.08)}.choice-result[hidden]{display:none}.choice-explanation{border-right:1px solid #dfe7f0;padding-right:36px}.choice-explanation>small{color:var(--blue);font-weight:800}.choice-explanation h2,.closed-loop h2{margin:8px 0 10px;font-size:clamp(22px,2.2vw,31px)}.choice-explanation>p,.closed-loop>p{color:#5c738b;font-size:14px;line-height:1.75}.choice-explanation dl{display:grid;gap:9px;margin:22px 0 0}.choice-explanation dl div{border-left:3px solid #0aad7c;background:#f3fbf8;padding:11px 14px}.choice-explanation dt{color:#087a55;font-size:11px;font-weight:800}.choice-explanation dd{margin:4px 0 0;color:#28445e;font-size:13px;line-height:1.55}.closed-loop ol{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:22px 0 0;padding:0;list-style:none}.closed-loop li{display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;min-height:78px;border:1px solid #dbe5ef;border-radius:13px;padding:10px}.closed-loop li b{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#edf4ff;color:var(--blue)}.closed-loop li span{display:grid;gap:4px}.closed-loop li strong{font-size:13px}.closed-loop li small{color:#6d8297;font-size:11px;line-height:1.4}.choice-result>footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:2px;border-radius:14px;background:linear-gradient(90deg,#edf5ff,#f2fbf8);padding:16px 20px}.choice-result>footer p{margin:0;color:#294966;font-size:14px}.choice-result>footer a,.bridge-actions a{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:9px;background:var(--blue);padding:0 18px;color:#fff;font-size:13px;font-weight:780;text-decoration:none}
.project-bridge{display:grid;grid-template-columns:minmax(0,.7fr) minmax(500px,1.3fr);gap:26px;margin-top:18px;border:1px solid #dce6f2;border-radius:20px;background:#f8fbff;padding:clamp(26px,4vw,44px)}.project-bridge>div:first-child small,.learning-tools-intro small{color:var(--blue);font-size:12px;font-weight:800}.project-bridge h2,.learning-tools-intro h2{margin:8px 0 10px;font-size:clamp(26px,3vw,39px);line-height:1.2}.project-bridge p,.learning-tools-intro p{margin:0;color:#617990;font-size:14px;line-height:1.8}.project-bridge ol{display:grid;grid-template-columns:repeat(4,1fr);gap:0;align-items:center;margin:0;padding:0;list-style:none}.project-bridge li{position:relative;display:grid;justify-items:center;gap:9px;text-align:center}.project-bridge li:not(:last-child):after{content:"→";position:absolute;right:-7px;top:18px;color:#7294b6;font-size:20px}.project-bridge li b{display:grid;place-items:center;width:54px;height:54px;border:1px solid #9dbcf0;border-radius:15px;background:#fff;color:var(--blue);font-size:18px}.project-bridge li span{color:#45627e;font-size:12px;line-height:1.45}.bridge-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px}.bridge-actions a.quiet{border:1px solid #9bbbf0;background:#fff;color:var(--blue)}
.learning-tools-intro{max-width:890px;margin:64px auto 8px;text-align:center}.learning-tools-intro p{max-width:700px;margin:auto}.readiness-entry{display:inline-flex;align-items:center;min-height:46px;margin-top:18px;border:1px solid #9bbbf0;border-radius:9px;background:#fff;padding:0 16px;color:var(--blue);font-size:13px;font-weight:780;text-decoration:none}
.lesson-asset{display:block;background-image:url("/robotclaw/ryhand-learning/assets/lesson-one-visuals-v0.1.png");background-repeat:no-repeat;background-size:500% 100%;background-color:#fff}.asset-cup{background-position:0 50%}.asset-tool{background-position:25% 50%}.asset-sponge{background-position:50% 50%}.asset-gripper{background-position:75% 50%}.asset-hand{background-position:100% 50%}.task-scenes .lesson-asset{grid-row:1/3;width:60px;height:60px;border-radius:10px}.tool-choices .lesson-asset{grid-row:1/3;width:74px;height:84px;border-radius:12px}.discovery-visual>.asset-hand{position:relative;width:min(92%,410px);height:470px;border-radius:0;background-image:url("/robotclaw/ryhand-learning/assets/lesson-one-visuals-v0.1.png");background-repeat:no-repeat;background-position:100% 50%;background-size:500% 100%;background-color:transparent;padding:0;filter:drop-shadow(0 30px 25px rgba(24,54,82,.12));transition:.25s transform}.discovery.has-choice .discovery-visual>.asset-hand{background-color:transparent;background-image:url("/robotclaw/ryhand-learning/assets/lesson-one-visuals-v0.1.png");background-repeat:no-repeat;background-position:100% 50%;background-size:500% 100%;color:inherit;transform:rotate(-3deg) scale(1.03)}
@media(max-width:980px){.discovery{grid-template-columns:1fr}.discovery-visual{display:none}.choice-result{grid-template-columns:1fr}.choice-explanation{border-right:0;border-bottom:1px solid #dfe7f0;padding:0 0 24px}.closed-loop ol{grid-template-columns:repeat(2,1fr)}.project-bridge{grid-template-columns:1fr}.bridge-actions{grid-column:1}.project-bridge ol{min-height:110px}}
@media(max-width:680px){.top div strong{font-size:12px}.discovery{border-radius:16px}.discovery-copy{padding:27px 18px}.discovery h1{font-size:36px;line-height:1.15}.discovery .lead{font-size:15px}.task-scenes{grid-template-columns:1fr;gap:8px}.task-scenes article{min-height:70px}.tool-choices{grid-template-columns:1fr}.choice-result{border-radius:16px;padding:22px 16px}.closed-loop ol{grid-template-columns:1fr}.choice-result>footer{display:grid}.choice-result>footer a{width:100%;text-align:center}.project-bridge{padding:24px 17px}.project-bridge ol{grid-template-columns:repeat(2,1fr);gap:18px}.project-bridge li:nth-child(2):after{display:none}.project-bridge li span{min-height:36px}.bridge-actions{display:grid}.learning-tools-intro{margin-top:48px;padding:0 9px}}
