html{scroll-padding-top:24px}
.hero{padding-bottom:24px}.guide{max-width:820px;color:#60778c;font-size:16px}
.task-index ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 40px;padding-left:24px;margin-bottom:0}
.task-index li{margin:0;padding:5px 0}.task-index a{display:block}
.assignments{max-width:920px;margin:32px auto}.assignment{scroll-margin-top:24px;padding:32px}
.assignment-heading{display:flex;gap:18px;align-items:flex-start;margin-bottom:24px}
.number{display:grid;place-items:center;flex:0 0 52px;height:52px;background:#eaf6ff;border-radius:14px;font-size:20px;font-weight:700;color:#0879c9}
.assignment h2{font-size:26px;margin-bottom:8px}.assignment-intro{color:#536d82}.assignment h3{font-size:18px;line-height:1.4;color:#0b3764;margin:24px 0 12px}
.assignment-details{padding:0 4px}.assignment details{padding:16px 0;border-top:1px solid #dcecf7;border-bottom:1px solid #dcecf7;margin-top:24px}
.assignment details p{margin-top:0}.assignment-note{margin:20px 0 0;color:#536d82;font-size:15px}
.assignment-media{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:24px;margin-top:24px}.assignment-preview{position:relative;display:block;padding:0;border:0;border-radius:12px;overflow:hidden;background:#eaf6ff;box-shadow:0 10px 30px rgba(11,55,100,.15);cursor:pointer}.assignment-preview img{display:block;width:100%;height:auto;transition:transform .25s ease}.assignment-preview span{position:absolute;inset:auto 8px 8px;padding:8px;border-radius:8px;background:rgba(6,45,77,.86);color:#fff;font:600 12px/1.2 inherit}.assignment-preview:hover img{transform:scale(1.025)}
.assignment-download{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px}.assignment-download .btn{border:0;font:inherit;font-weight:700;cursor:pointer}.assignment-download>a:last-child{font-size:14px}
.dialog-open{overflow:hidden}.assignment-dialog{width:min(980px,calc(100% - 24px));height:calc(100dvh - 24px);max-width:none;max-height:none;padding:0;border:0;border-radius:20px;background:#eaf3f8;box-shadow:0 30px 90px rgba(3,32,55,.35)}.assignment-dialog::backdrop{background:rgba(1,23,40,.72);backdrop-filter:blur(4px)}.dialog-shell{display:grid;grid-template-rows:auto 1fr;height:100%}.dialog-head{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;background:#fff;border-bottom:1px solid #d5e5ef}.dialog-head h2{margin:0;color:#0b3764;font-size:clamp(18px,3vw,26px)}.dialog-head p{margin:0 0 3px;color:#0879c9;font-size:13px;font-weight:700}.dialog-close{flex:none;width:44px;height:44px;border:0;border-radius:50%;background:#eaf6ff;color:#0b3764;font-size:30px;line-height:1;cursor:pointer}.dialog-pages{overflow:auto;padding:24px}.dialog-pages figure{max-width:760px;margin:0 auto 24px}.dialog-pages img{display:block;width:100%;height:auto;background:#fff;border-radius:8px;box-shadow:0 12px 35px rgba(11,55,100,.15)}.dialog-pages figcaption{text-align:center;padding:9px;color:#536d82;font-size:13px}
.closing{max-width:920px;margin:0 auto 48px}
@media(max-width:600px){.task-index ol{grid-template-columns:1fr}.assignment{padding:22px}.assignment-heading{gap:12px}.number{flex-basis:42px;height:42px;font-size:17px}.assignment h2{font-size:22px}.assignment-media{grid-template-columns:110px 1fr;gap:16px}.assignment-preview span{display:none}.assignment-download .btn{width:100%}.assignment-dialog{width:100%;height:100dvh;border-radius:0}.dialog-head{padding:14px 16px}.dialog-pages{padding:12px}.dialog-pages figure{margin-bottom:14px}}
