*{box-sizing:border-box}body,html{margin:0}body{font-family:Hiragino Sans,Noto Sans JP,system-ui,sans-serif;color:#1f2933;background:#f5f7f9;line-height:1.7}a{color:#c2511d}.wrap{max-width:560px;margin:0 auto;padding:24px 16px 48px}.card{background:#fff;border-radius:16px;padding:22px 18px;box-shadow:0 1px 3px rgba(0,0,0,.08);margin-bottom:16px}.brand{margin:0 0 4px;font-size:13px;color:#52606d}h1{margin:0 0 12px;font-size:22px}h1,h2{line-height:1.4}h2{margin:6px 0 8px;font-size:19px}h3{margin:18px 0 8px;font-size:16px}.hero{padding:8px 4px 16px}.hero h1{font-size:26px}.hero.small h1{font-size:21px}.badge{display:inline-block;font-size:12px;font-weight:700;color:#c2511d;background:#fdeee6;border-radius:999px;padding:2px 10px}.lead{font-size:15px}.meta,.small{font-size:13px;color:#52606d}.big{font-size:20px;font-weight:700;margin:6px 0}.body{white-space:pre-wrap}.lecturer{background:#f7f8fa;border-radius:12px;padding:10px 12px;margin-top:12px;font-size:14px}.lecturer p{margin:4px 0 0}.button,.cta{display:block;width:100%;text-align:center;text-decoration:none;border:0;cursor:pointer;background:#06c755;color:#fff;font-weight:700;font-size:16px;border-radius:12px;padding:14px 12px;margin-top:14px}.button.secondary{background:#fff;color:#1f2933;border:1px solid #cfd6dd}.cta{background:#e96d2f;font-size:17px;line-height:1.4}.cta small{display:block;font-size:13px;font-weight:600;opacity:.95}.day{margin:8px 0}.day summary,.day-label{font-weight:700;font-size:14px;margin:0 0 6px;cursor:pointer}.times{display:flex;flex-wrap:wrap;gap:8px}.time{display:inline-flex;flex-direction:column;align-items:center;min-width:76px;padding:6px 10px;border-radius:10px;border:1px solid #cfd6dd;text-decoration:none;color:#1f2933;font-weight:700}.time small{font-size:11px;font-weight:500;color:#52606d}.time.full{opacity:.45}.choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-gap:8px;gap:8px;margin-bottom:8px}.choice{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #cfd6dd;border-radius:10px;font-weight:600}.choice small{margin-left:auto;font-size:11px;font-weight:500;color:#52606d}.choice.disabled{opacity:.45}.question{border:0;padding:0;margin:14px 0}.question legend{font-weight:700}.question .choice,.question legend{margin-bottom:6px}.error{background:#fdecea;color:#a8321e}.error,.info{border-radius:12px;padding:10px 12px}.info{background:#eef6ff;color:#1d4f91;font-size:14px}.notes{font-size:13px;color:#52606d;padding:0 4px}.notes p{margin:4px 0}.notice-body p{margin:8px 0}@media (hover:hover){.button:hover,.cta:hover,.time:hover{filter:brightness(.96)}}.watch-wrap{max-width:960px;margin:0 auto;padding:12px 0 40px}.watch-head{padding:8px 16px 12px}.watch-head h1{font-size:19px;margin:0 0 4px}.watch{padding:0}.stage{position:relative;background:#000}.stage mux-player{display:block}.overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:rgba(10,16,24,.82);color:#fff;text-align:center;padding:16px}.overlay p{margin:0;font-weight:700}.overlay .button{width:auto;min-width:220px}.countdown{font-size:44px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.04em}.small-light{font-size:13px;font-weight:500!important;opacity:.9}.watch .small,.watch-wrap .notes{padding:8px 16px}.preview-banner{background:#fff4cc;color:#6b4e00;font-size:13px;text-align:center;padding:6px 10px}.cue-buttons{display:flex;flex-direction:column;gap:8px;padding:12px 16px 0}.button.cue{background:#e96d2f;margin-top:0}.comments{margin:12px 16px 0;background:#fff;border-radius:12px;padding:10px 12px;box-shadow:0 1px 3px rgba(0,0,0,.06);max-height:220px;overflow-y:auto}.comments-title{margin:0 0 6px;font-size:12px;font-weight:700;color:#52606d}.comment{margin:6px 0;font-size:14px}.comment .at{display:inline-block;min-width:42px;font-size:11px;color:#9aa5b1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.watch-below{padding-top:12px;padding-bottom:0}.question-box textarea{width:100%;font:inherit;font-size:16px;border:1px solid #cfd6dd;border-radius:10px;padding:10px}.my-questions{margin-top:12px;border-top:1px solid #eef1f4;padding-top:8px}.my-question{margin:4px 0;font-size:14px;background:#f5f7f9;border-radius:8px;padding:6px 10px;white-space:pre-wrap}.overlay .button{margin-top:6px}