/* Week 2: technical, teacher-led motion studio. */
.w2-panel{background:#fff;border:1px solid #c6dce3;border-radius:14px;overflow:hidden;min-width:0}
.w2-question{padding:18px 24px;border-bottom:1px solid var(--line)}
.w2-question h2{font-size:clamp(21px,1.9vw,28px);font-weight:650;line-height:1.35;letter-spacing:-.4px;margin:0}
.w2-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px}
.w2-visual{background:#f0f7f9;min-width:0;display:flex;flex-direction:column}
.w2-scene-heading{padding:17px 22px 4px;display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:12px;font-weight:650;color:#385e6c}
.w2-scene-heading>span:last-child{background:#dcecf1;border-radius:5px;padding:6px 10px;text-align:right}
.w2-scene{position:relative;min-height:250px;flex:1;display:flex;align-items:center;background-image:radial-gradient(#00658015 1px,transparent 1px);background-size:22px 22px}
.w2-scene svg{display:block;width:100%;max-height:440px;touch-action:pan-y;font-family:"Segoe UI",Arial,sans-serif}
.w2-scene svg:has([data-point]){touch-action:none}
.w2-scene [data-point]{cursor:ns-resize}
.w2-graph-track{padding:0 10px;background:#e9f3f6;border-top:1px solid var(--line)}
.w2-graph-track svg{display:block;width:100%;max-height:115px}
.w2-intervals{display:flex;gap:8px;justify-content:center;padding:10px 15px 0}
.w2-intervals button{background:white;border:1px solid #91b3c0;border-radius:6px;font-size:16px;padding:6px 16px;color:var(--ink)}
.w2-intervals button[aria-pressed=true]{border:2px solid var(--brand-red);background:#fff0f2;color:#82212c}
.w2-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;background:#e3f0f3;border-top:1px solid #bfd7e0;padding:14px 20px}
.w2-stats span{display:block;font-size:11px;letter-spacing:.6px;color:#385c69}
.w2-stats strong{font-size:24px;font-weight:650;display:block;color:#174855}
.w2-transport{display:flex;align-items:center;gap:9px;padding:13px 18px;border-top:1px solid #bfd7e0;background:#edf5f7}
.w2-transport button,.w2-transport select{border:1px solid #8fb2c0;border-radius:6px;background:#fff;color:var(--ink);padding:8px 11px;min-height:42px;font-size:16px}
.w2-transport input{min-width:40px;flex:1;accent-color:var(--brand)}
.w2-transport output{font-size:14px;white-space:nowrap;min-width:72px;font-variant-numeric:tabular-nums}
.w2-transport select{padding:8px 4px;font-size:14px;max-width:67px}
.w2-primary,.w2-transport .w2-primary{background:var(--brand);color:#fff;border:2px solid var(--brand);border-radius:7px;min-height:44px;font-size:16px;font-weight:650;padding:10px 13px}
.w2-primary:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-red)}
.w2-primary:disabled{background:#e0e9ed;border-color:#b6cbd4;color:#506c76}
.w2-transport .w2-primary{min-width:128px}
.w2-model-note{font-size:12px;line-height:1.5;color:#416370;margin:0;padding:0 20px 14px;background:#edf5f7}
.w2-controls{padding:21px;border-left:1px solid var(--line);background:#fff;min-width:0}
.w2-description{font-size:17px;line-height:1.5;color:var(--muted);margin:0 0 17px}
.w2-field{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px;font-weight:600;margin:12px 0 5px}
.w2-field output{color:var(--brand);font-size:18px;white-space:nowrap}
.w2-controls select{width:100%;padding:10px 9px;border:1px solid #8fb2c0;border-radius:6px;background:#f5fafb;color:var(--ink);font-size:16px}
.w2-settings{margin-top:12px;padding:11px 12px;border:1px solid #b8d0d9;background:#f4f9fa;border-radius:7px}
.w2-settings summary{cursor:pointer;font-size:14px;font-weight:650;color:var(--brand);line-height:1.5}
.w2-range{width:100%;margin:0;accent-color:var(--brand);min-height:28px;cursor:pointer}
.w2-step{font-weight:650;font-size:17px;margin:21px 0 10px}
.w2-step b{display:inline-grid;place-items:center;width:26px;height:26px;background:#e1eff3;color:var(--brand);border-radius:50%;margin-right:5px;font-size:14px}
.w2-choices{display:flex;flex-direction:column;gap:8px}
.w2-choices button{display:flex;text-align:left;align-items:center;gap:10px;border:2px solid #a0bdc8;background:#fff;border-radius:7px;padding:10px;font-size:16px;line-height:1.4;color:var(--ink);min-height:52px}
.w2-choices button>b{color:var(--brand);font-size:14px}
.w2-choices button[aria-pressed=true]{border-color:var(--brand-red);background:#edf5f7;box-shadow:inset 0 0 0 1px var(--brand-red)}
.w2-choices button:hover{border-color:var(--brand-red)}
.w2-choices button[aria-disabled=true]{cursor:default}
.w2-link{border:0;background:none;color:var(--brand);font-weight:600;font-size:14px;padding:9px 0;text-decoration:underline;text-underline-offset:4px}
.w2-reveal{width:100%;margin-top:5px}
.w2-hint{margin:0 0 10px;font-size:15px;background:#edf5f7;border-left:3px solid var(--brand);padding:10px}
.w2-small{font-size:14px;color:#486671;line-height:1.5;margin:7px 0}
.w2-result{border-left:4px solid var(--brand);background:#edf5f7;border-radius:0 8px 8px 0;padding:13px;font-size:16px;line-height:1.5}
.w2-result>strong{font-size:18px;color:var(--brand)}
.w2-result p{margin:9px 0}
.w2-equations{font-size:17px;font-variant-numeric:tabular-nums}
.w2-equations p{margin:8px 0}
.w2-discuss{border-top:1px solid #bcd4dd;padding-top:12px}
.w2-plan-label{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:12px;margin-top:13px;font-size:15px;font-weight:650}
.w2-plan-label b{background:var(--brand);color:white;border-radius:5px;padding:2px 7px}
.w2-plan-label.is-b b{background:#b5212c}
@media(min-width:751px){
 .presenting #week-extension,.presenting .w2-week{display:flex;flex-direction:column;flex:1;min-height:0}
 .presenting .w2-panel{display:flex;flex-direction:column;flex:1;min-height:0}
 .presenting .w2-question{padding:13px 21px;flex-shrink:0}
 .presenting .w2-question h2{font-size:23px}
 .presenting .w2-layout{flex:1;min-height:0}
 .presenting .w2-controls{overflow-y:auto;scrollbar-width:thin;padding:18px}
 .presenting .w2-visual{min-height:0}
 .presenting .w2-scene{min-height:120px;overflow:hidden}
 .presenting .w2-scene svg{position:absolute;inset:0;width:100%;height:100%;max-height:100%}
 .presenting .w2-graph-track svg{max-height:90px}
 .presenting .w2-scene-heading,.presenting .w2-intervals,.presenting .w2-stats,.presenting .w2-transport,.presenting .w2-graph-track,.presenting .w2-model-note{flex-shrink:0}
 .presenting .w2-stats{padding:10px 18px}
 .presenting .w2-stats strong{font-size:24px}
 .presenting .w2-scene-heading{padding-top:12px}
}
@media(min-width:751px) and (max-width:1150px){
 .w2-layout{grid-template-columns:minmax(0,1fr) 290px}
 .w2-controls{padding:16px}
 .w2-transport{flex-wrap:wrap}
 .w2-transport input{min-width:90px}
 .w2-stats strong{font-size:21px}
 .w2-scene-heading{font-size:10px;padding-left:16px;padding-right:16px}
}
@media(max-width:750px){
 .w2-layout{grid-template-columns:1fr}
 .w2-question{padding:16px}
 .w2-question h2{font-size:22px}
 .w2-controls{padding:20px;border-left:0;border-top:1px solid var(--line)}
 .w2-scene{min-height:220px}
 .w2-stats{padding:13px 12px;gap:8px}
 .w2-stats strong{font-size:20px}
 .w2-stats span{font-size:10px}
 .w2-transport{padding:12px;flex-wrap:wrap;gap:8px}
 .w2-transport input{min-width:80px}
 .w2-transport output{min-width:66px}
 .w2-scene-heading{font-size:10px;padding:13px 13px 3px}
 .w2-scene svg{min-height:220px}
 .w2-graph-track svg{max-height:95px}
 .w2-intervals button{font-size:15px;padding:7px 12px}
}
