.page{background:var(--canvas);color:var(--text);min-height:70vh;padding:56px 0 110px}.crumbs{color:var(--muted-d);flex-wrap:wrap;gap:8px;margin:0 0 28px;padding:0;font-size:.95rem;list-style:none;display:flex}.crumbs li+li:before{content:"/";color:var(--line-d);margin-right:8px}.crumbs a{color:var(--ink);text-underline-offset:4px}.page-head{grid-template-columns:7fr 5fr;align-items:end;gap:48px;margin-bottom:48px;display:grid}.page-head p{color:var(--muted-d);margin:0}.page-title{margin-bottom:48px}.page-lead{color:var(--muted-d);max-width:32em;margin:20px 0 0;font-size:clamp(1.1rem,1.8vw,1.35rem)}.course-group+.course-group{margin-top:72px}.course-group h2{color:var(--ink);margin:0 0 20px;font-size:1.5rem;font-weight:760;font-stretch:84%}.card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;display:grid}.course{grid-template-columns:5fr 7fr;align-items:start;gap:64px;display:grid}.course-art{position:sticky;top:110px}.course-art-card{border:1px solid var(--line-d);background:var(--poster-bg);border-radius:20px;position:relative;overflow:hidden}.course-art-card canvas{aspect-ratio:4/5;width:100%;height:auto;display:block}.course-art-card .code{color:var(--navy);font-size:1.9rem;font-weight:820;font-stretch:76%;line-height:1.1;position:absolute;bottom:14px;left:20px}.facts{border-block:1px solid var(--line-d);grid-template-columns:auto 1fr;gap:10px 24px;margin:32px 0;padding:22px 0;display:grid}.facts dt{color:var(--muted-d)}.facts dd{margin:0;font-weight:600}.notice{background:var(--soft);border:1px solid var(--line-d);color:var(--muted-d);border-radius:18px;max-width:40em;margin:36px 0 0;padding:18px 22px;font-size:.95rem}.notice b{color:var(--text)}.others{border-top:1px solid var(--line-d);margin-top:88px;padding-top:28px}.others h2{color:var(--ink);margin:0 0 14px;font-size:1.2rem;font-weight:700}.others ul{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.others a{border:1.5px solid var(--line-d);color:var(--ink);border-radius:999px;align-items:baseline;gap:8px;padding:9px 18px;font-weight:600;text-decoration:none;display:inline-flex}.others a>span{color:var(--muted-d);font-weight:400}.others a:hover{border-color:var(--ink)}.article{max-width:46em}.article-meta{color:var(--muted-d);flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0 36px;display:flex}.article .display{font-size:clamp(2.2rem,4.6vw,4rem)}.back{color:var(--ink);text-underline-offset:4px;margin-top:48px;font-weight:600;display:inline-block}.article[hidden]{display:none}.article .when{color:var(--muted-d);flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0 28px;display:flex}.article .when .kind{color:var(--ink);font-weight:600}.article .when .pinned{color:#5e5a00;background:#faf8c8;border-radius:999px;padding:1px 10px;font-size:.8rem;font-weight:600}.news-title{font-size:clamp(2rem,4.4vw,3.6rem)}.article .news-title,.article .page-lead,.article .prose{overflow-wrap:anywhere;min-width:0}.news-cover{background:var(--soft);border-radius:18px;width:100%;height:auto;margin:0 0 28px}.attachments{border-top:1px solid var(--line-d);margin-top:40px;padding-top:24px}.attachments h2{color:var(--ink);margin:0 0 12px;font-size:1.2rem;font-weight:700}.attachments ul{margin:0;padding:0;list-style:none}.attachments li{border-bottom:1px solid var(--line-d);flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:10px 0;display:flex}.attachments a{color:var(--ink);text-underline-offset:4px;overflow-wrap:anywhere;min-width:0;font-weight:600}.attachments .size{color:var(--muted-d);flex:none;font-size:.9rem}[data-missing][hidden]{display:none}.lost{background:var(--navy-deep);color:#fff;isolation:isolate;align-content:center;min-height:calc(100svh - 76px);padding:80px 0;display:grid;position:relative;overflow:hidden}.lost svg{z-index:-1;width:100%;height:18%;position:absolute;inset:auto 0 6%}.lost polyline{fill:none;stroke:var(--yellow);stroke-width:3px;opacity:.6}.lost .code{color:var(--yellow);margin:0;font-size:clamp(6rem,18vw,12rem);font-weight:880;font-stretch:62.5%;line-height:.9}.lost p{color:#dcebfa;max-width:32em}.lost .ways{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}@media (width<=980px){.page{padding-top:40px}.page-head,.course{grid-template-columns:1fr;gap:32px}.course-art{position:relative;top:0}.course-art-card canvas{aspect-ratio:16/9}}
