.cp{max-width:1180px;font-family:var(--font-sans);color:hsl(var(--foreground));-webkit-font-smoothing:antialiased;--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #00000014, 0 1px 2px -1px #0000000f;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #0000000d;--duration-base:.2s;--duration-slow:.3s;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--leading-snug:1.3;--leading-relaxed:1.6;--cp-band-from:color-mix(in oklab, hsl(var(--primary)) 30%, #101628);--cp-band-to:color-mix(in oklab, hsl(var(--primary)) 14%, #0c101d);--cp-band-fg:#f1f5f9;--cp-band-fg-dim:#bdccdbb8;--cp-band-line:#f1f5f921;--cp-band-warn:#f7c96e;--cp-band-dim:#bfd1e39e;--cp-band-accent:color-mix(in oklab, hsl(var(--primary)) 48%, #f1f5f9);--cp-warn-fg:#a55c12;--cp-ok-fg:#147b3a;--cp-info-fg:#086591;--cp-fill:hsl(var(--muted));--cp-fill-soft:hsl(var(--muted) / .55);background:radial-gradient(1200px 480px at 100% -10%, hsl(var(--primary) / .05), transparent 60%), hsl(var(--background));margin:0 auto;padding:8px 24px 80px}[data-theme=dark] .cp{--cp-band-from:color-mix(in oklab, hsl(var(--primary)) 30%, #1e2843);--cp-band-to:color-mix(in oklab, hsl(var(--primary)) 18%, #151b2d);--cp-warn-fg:#f5bb47;--cp-ok-fg:#66d68f;--cp-info-fg:#5abeed;--cp-fill:#1b2636;--cp-fill-soft:#1b2636b3}.cp a{color:inherit;text-decoration:none}.cp ::selection{background:hsl(var(--primary) / .18)}.cp *,.cp :before,.cp :after{box-sizing:border-box}.cp .topbar{justify-content:space-between;align-items:center;padding:6px 0 16px;display:flex}.cp .crumb{font-size:var(--text-sm);color:hsl(var(--muted-foreground));transition:color var(--duration-base);align-items:center;gap:8px;font-weight:500;display:inline-flex}.cp .crumb svg{width:15px;height:15px}.cp .crumb:hover{color:hsl(var(--primary))}.cp .hero{border:1px solid hsl(var(--border));border-radius:var(--radius-xl);background:hsl(var(--card));box-shadow:var(--shadow-xs);margin-bottom:16px;padding:26px 28px 28px;position:relative;overflow:hidden}.cp .hero:after{content:"";pointer-events:none;background:linear-gradient(120deg, transparent 30%, hsl(var(--primary) / .05));width:42%;height:100%;position:absolute;top:0;right:0}.cp .hero>*{position:relative}.cp .hero__meta{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.cp .hero__code{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.06em;color:hsl(var(--primary));white-space:nowrap;font-weight:700}.cp .hero__pipe{background:hsl(var(--border));width:1px;height:14px}.cp .hero__metatxt{font-size:var(--text-sm);color:hsl(var(--muted-foreground));white-space:nowrap;font-weight:500}.cp .hero__title{letter-spacing:-.03em;margin:0;font-size:clamp(2.3rem,1.7rem + 2.8vw,3.5rem);font-weight:800;line-height:1.02}.cp .hero__pills{flex-wrap:wrap;align-items:center;gap:9px;margin-top:22px;display:flex}.cp .hpill{font-size:var(--text-sm);color:hsl(var(--foreground));background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-full);white-space:nowrap;align-items:center;gap:8px;padding:7px 15px;font-weight:500;display:inline-flex}.cp .hpill svg{width:15px;height:15px;color:hsl(var(--muted-foreground))}.cp .hpill--live{color:var(--cp-ok-fg);border-color:hsl(var(--success) / .3);background:hsl(var(--success) / .07);font-weight:600}.cp .hpill--done{color:hsl(var(--muted-foreground));font-weight:600}.cp .pulse{background:hsl(var(--success));border-radius:50%;flex-shrink:0;width:8px;height:8px;position:relative}.cp .pulse:after{content:"";border:2px solid hsl(var(--success) / .5);animation:cp-ring 2s var(--ease-out) infinite;border-radius:50%;position:absolute;inset:-4px}@keyframes cp-ring{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}@media (prefers-reduced-motion:reduce){.cp .pulse:after{animation:none}}.cp .now{background:linear-gradient(155deg, var(--cp-band-from), var(--cp-band-to));color:var(--cp-band-fg);border-radius:var(--radius-xl);border:1px solid var(--cp-band-line);box-shadow:0 20px 40px -24px color-mix(in oklab, hsl(var(--primary)) 30%, #000);padding:28px;position:relative;overflow:hidden}.cp .now:before{content:"";pointer-events:none;background:radial-gradient(620px 200px at 88% -40%, hsl(var(--primary) / .32), transparent 70%);position:absolute;inset:0}.cp .now__inner{grid-template-columns:auto 1fr auto;align-items:stretch;gap:32px;display:grid;position:relative}.cp .now__weeknum{text-align:center;border-right:1px solid var(--cp-band-line);flex-direction:column;justify-content:center;padding-right:32px;display:flex}.cp .now__weeklbl{letter-spacing:.07em;text-transform:uppercase;color:var(--cp-band-dim);font-size:10px;font-weight:600}.cp .now__weekval{font-family:var(--font-mono);letter-spacing:-.03em;margin-top:6px;font-size:56px;font-weight:800;line-height:1}.cp .now__eyebrow{letter-spacing:.07em;text-transform:uppercase;color:var(--cp-band-accent);font-size:10px;font-weight:600}.cp .now__title{font-size:var(--text-2xl);letter-spacing:-.01em;margin:7px 0 15px;font-weight:700}.cp .now__rows{flex-direction:column;gap:10px;display:flex}.cp .now__row{font-size:var(--text-sm);align-items:baseline;gap:14px;display:flex}.cp .now__rowk{letter-spacing:.07em;text-transform:uppercase;width:52px;color:var(--cp-band-dim);flex-shrink:0;font-size:10px;font-weight:600}.cp .now__rowv{color:#e2ebf3;line-height:1.5}.cp .now__side{border-left:1px solid var(--cp-band-line);flex-direction:column;justify-content:center;align-items:stretch;gap:12px;min-width:244px;padding-left:32px;display:flex}.cp .now__milestone{border-radius:var(--radius-lg);background:#f1f5f90f;border:1px solid #f1f5f91f;padding:13px 15px 15px}.cp .now__milestone--link{cursor:pointer;text-align:left;color:inherit;width:100%;transition:background-color var(--duration-base), border-color var(--duration-base);flex-direction:column;align-items:flex-start;display:flex}.cp .now__milestone--link:hover{background:#f1f5f91c;border-color:#f1f5f938}.cp .now__milestone--link:focus-visible{box-shadow:0 0 0 2px hsl(var(--ring));outline:none}.cp .now__mk{letter-spacing:.07em;text-transform:uppercase;width:100%;color:var(--cp-band-warn);white-space:nowrap;align-items:center;gap:7px;font-size:10px;font-weight:600;display:flex}.cp .now__mk svg{width:13px;height:13px}.cp .now__mkchev{color:var(--cp-band-dim);transition:transform var(--duration-base), color var(--duration-base);margin-left:auto}.cp .now__milestone--link:hover .now__mkchev{color:#f1f5f9;transform:translate(2px)}.cp .now__mv{font-size:var(--text-sm);margin-top:5px;font-weight:600}.cp .now__md{font-size:var(--text-xs);color:var(--cp-band-dim);margin-top:2px}.cp .now__ratingsub{margin-top:4px}.cp .now__stat{justify-content:space-between;gap:12px;margin-top:6px;display:flex}.cp .now__stat .now__md,.cp .now__stat .now__mv{margin-top:0}.cp .btn-contest{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-radius:var(--radius-lg);font-size:var(--text-sm);white-space:nowrap;box-shadow:0 8px 22px -10px hsl(var(--primary) / .7), inset 0 0 0 1px #f1f5f929;transition:background-color var(--duration-base), transform var(--duration-base);justify-content:center;align-items:center;gap:8px;padding:11px 16px;font-weight:600;display:inline-flex}.cp .btn-contest:hover{background:hsl(var(--primary) / .9)}.cp .btn-contest:active{transform:translateY(1px)}.cp .btn-contest svg{width:15px;height:15px}.cp .now__contesttag{color:#cddbea;white-space:nowrap;align-items:center;gap:7px;font-size:11px;font-weight:600;display:inline-flex}.cp .copychip{border-radius:var(--radius-sm);color:#cddbea;cursor:pointer;width:24px;height:24px;transition:background-color var(--duration-base);background:#f1f5f90f;border:1px solid #f1f5f933;place-items:center;display:inline-grid}.cp .copychip:hover{background:#f1f5f924}.cp .copychip svg{width:12px;height:12px}.cp .now__actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.cp .hubact{color:#e2ebf3;border-radius:var(--radius-lg);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--duration-base), border-color var(--duration-base);background:#f1f5f912;border:1px solid #f1f5f929;align-items:center;gap:8px;padding:9px 14px;font-weight:600;display:inline-flex}.cp .hubact:hover{background:#f1f5f921}.cp .hubact svg{width:15px;height:15px}.cp .notice{border:1px solid hsl(var(--border));border-radius:var(--radius-xl);background:hsl(var(--card));box-shadow:var(--shadow-xs);grid-template-columns:184px 1fr;align-items:stretch;margin-top:16px;display:grid;overflow:hidden}.cp .notice__head{background:hsl(var(--muted) / .4);border-right:1px solid hsl(var(--border));flex-direction:column;justify-content:center;gap:8px;padding:18px 20px;display:flex}.cp .notice__title{letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--foreground));align-items:center;gap:8px;font-size:10px;font-weight:600;display:flex}.cp .notice__title svg{width:15px;height:15px;color:hsl(var(--primary))}.cp .notice__count{min-width:18px;height:18px;font-family:var(--font-mono);color:hsl(var(--primary));background:hsl(var(--primary) / .1);border-radius:var(--radius-full);place-items:center;padding:0 5px;font-size:10px;font-weight:700;display:inline-grid}.cp .notice__updated{font-family:var(--font-mono);color:hsl(var(--muted-foreground));align-items:center;gap:6px;font-size:10.5px;display:flex}.cp .notice__updated svg{width:12px;height:12px}.cp .notice__items{background:hsl(var(--border));flex-direction:column;gap:1px;min-width:0;display:flex}.cp .ncard{background:hsl(var(--card));text-align:left;grid-template-columns:76px 1fr auto auto;align-items:center;gap:14px;width:100%;min-width:0;padding:11px 16px;display:grid}.cp .ncard--link{cursor:pointer;transition:background-color var(--duration-base)}.cp .ncard--link:hover{background:hsl(var(--accent) / .45)}.cp .ncard--link:hover .ncard__go{color:hsl(var(--primary));transform:translate(2px)}.cp .ncard--link:focus-visible{box-shadow:inset 0 0 0 2px hsl(var(--ring));outline:none}.cp .ncard__go{width:15px;height:15px;color:hsl(var(--muted-foreground) / .5);transition:color var(--duration-base), transform var(--duration-base)}.cp .ncard__title{font-size:var(--text-sm);color:hsl(var(--foreground));text-wrap:pretty;min-width:0;font-weight:600;line-height:1.4}.cp .ncard__date{font-family:var(--font-mono);color:hsl(var(--muted-foreground));white-space:nowrap;font-size:10.5px}.cp .secnav{z-index:30;background:hsl(var(--card) / .82);-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);border:1px solid hsl(var(--border));border-radius:var(--radius-full);box-shadow:var(--shadow-xs);justify-content:space-between;align-items:center;gap:8px;margin:8px 0 12px;padding:5px;display:flex;position:sticky;top:10px}.cp .secnav__chips{flex-wrap:wrap;gap:2px;min-width:0;display:flex}.cp .secnav__all{border-left:1px solid hsl(var(--border));font-size:var(--text-xs);color:hsl(var(--muted-foreground));cursor:pointer;white-space:nowrap;transition:color var(--duration-base);flex-shrink:0;align-items:center;gap:6px;margin-left:4px;padding:7px 13px 7px 15px;font-weight:600;display:inline-flex}.cp .secnav__all:hover{color:hsl(var(--primary))}.cp .secnav__all svg{width:14px;height:14px}.cp .secnav__all:focus-visible{border-radius:var(--radius-full);box-shadow:0 0 0 2px hsl(var(--ring));outline:none}.cp .secnav__chip{color:hsl(var(--muted-foreground));border-radius:var(--radius-full);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:background-color var(--duration-base), color var(--duration-base);padding:8px 16px;font-weight:600}.cp .secnav__chip:hover{color:hsl(var(--foreground));background:var(--cp-fill)}.cp .secnav__chip.is-on{background:hsl(var(--primary) / .1);color:hsl(var(--primary))}.cp .secnav__chip:focus-visible{box-shadow:inset 0 0 0 2px hsl(var(--ring));outline:none}.cp .body{grid-template-columns:1fr 304px;align-items:start;gap:36px;margin-top:14px;display:grid}.cp .main{flex-direction:column;gap:16px;min-width:0;display:flex}.cp .sec{border:1px solid hsl(var(--border));border-radius:var(--radius-xl);background:hsl(var(--card));box-shadow:var(--shadow-xs);scroll-margin-top:92px;overflow:hidden}.cp .sec__head{align-items:center;gap:16px;padding:7px 14px 7px 8px;display:flex}.cp .sec.is-open .sec__head{border-bottom:1px solid hsl(var(--border))}.cp .sec__toggle{cursor:pointer;min-width:0;color:inherit;border-radius:var(--radius-lg);transition:background-color var(--duration-base);flex:1;align-items:center;gap:14px;padding:9px 12px;display:flex}.cp .sec__toggle:hover{background:hsl(var(--muted) / .45)}.cp .sec__toggle:focus-visible{box-shadow:0 0 0 2px hsl(var(--ring));outline:none}.cp .sec__num{font-family:var(--font-mono);font-size:var(--text-sm);color:hsl(var(--primary));flex-shrink:0;font-weight:700}.cp .sec__title{font-size:var(--text-2xl);letter-spacing:-.01em;white-space:nowrap;flex-shrink:0;margin:0;font-weight:700}.cp .sec__rule{background:linear-gradient(to right, hsl(var(--border)), transparent);flex:1;min-width:16px;height:1px}.cp .sec__chev{border-radius:var(--radius-full);border:1px solid hsl(var(--border));width:30px;height:30px;color:hsl(var(--muted-foreground));transition:transform var(--duration-slow) var(--ease-in-out), color var(--duration-base), background-color var(--duration-base), border-color var(--duration-base);flex-shrink:0;place-items:center;display:grid}.cp .sec__chev svg{width:16px;height:16px}.cp .sec__toggle:hover .sec__chev{color:hsl(var(--primary));background:hsl(var(--primary) / .08);border-color:hsl(var(--primary) / .3)}.cp .sec.is-open .sec__chev{transform:rotate(180deg)}.cp .sec__action{flex-shrink:0;align-items:center;display:flex}.cp .sec:not(.is-open) .sec__panel{display:none}.cp .sec__pad{padding:20px}.cp .facts{border-radius:var(--radius-lg);background:var(--cp-fill-soft);grid-template-columns:repeat(4,1fr);margin-bottom:24px;display:grid;overflow:hidden}.cp .fact{border-right:1px solid hsl(var(--border));padding:16px 18px}.cp .fact:last-child{border-right:0}.cp .fact__k{letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--muted-foreground));font-size:10px;font-weight:600}.cp .fact__v{font-size:var(--text-lg);letter-spacing:-.01em;margin-top:5px;font-weight:700}.cp .lede{font-size:var(--text-lg);line-height:var(--leading-relaxed);color:hsl(var(--foreground));max-width:64ch;margin:0 0 26px}.cp .outcomes__lbl{letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--muted-foreground));margin-bottom:14px;font-size:10px;font-weight:600}.cp .outcomes{margin:0;padding:0;list-style:none;display:grid}.cp .outcome{border-top:1px solid hsl(var(--border));align-items:baseline;gap:14px;padding:13px 0;display:flex}.cp .outcome:first-child{border-top:0}.cp .outcome__n{font-family:var(--font-mono);font-size:var(--text-xs);color:hsl(var(--primary));flex-shrink:0;font-weight:700}.cp .outcome__t{font-size:var(--text-base);line-height:var(--leading-snug)}.cp .tech{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.cp .tech__tag{font-family:var(--font-mono);font-size:var(--text-xs);color:hsl(var(--muted-foreground));background:hsl(var(--muted));border-radius:var(--radius-sm);padding:4px 10px;font-weight:600}.cp .jumpnow{white-space:nowrap;background:hsl(var(--primary) / .08);color:hsl(var(--primary));border-radius:var(--radius-full);font-size:var(--text-xs);cursor:pointer;transition:background-color var(--duration-base);flex-shrink:0;align-items:center;gap:6px;padding:6px 13px;font-weight:600;display:inline-flex}.cp .jumpnow:hover{background:hsl(var(--primary) / .15)}.cp .jumpnow svg{width:13px;height:13px}.cp .syl{border-top:1px solid hsl(var(--border));border-bottom:1px solid hsl(var(--border));margin:0 -20px;overflow:hidden}.cp .syl__head{background:var(--cp-fill);letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--muted-foreground));grid-template-columns:64px 1.5fr 1.1fr 1.1fr;align-items:center;gap:16px;padding:10px 20px;font-size:10px;font-weight:600;display:grid}.cp .syl__unit{background:hsl(var(--primary) / .05);border-top:1px solid hsl(var(--border));letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--primary));padding:9px 20px;font-size:10px;font-weight:600}.cp .syl__rowwrap{border-top:1px solid hsl(var(--border))}.cp .syl__row{min-height:52px;transition:background-color var(--duration-base);grid-template-columns:64px 1.5fr 1.1fr 1.1fr;align-items:center;gap:16px;padding:0 20px;display:grid}.cp .syl__row:hover{background:hsl(var(--accent) / .35)}.cp .syl__row.is-current{background:linear-gradient(to right, hsl(var(--primary) / .07), transparent 75%);box-shadow:inset 3px 0 0 hsl(var(--primary))}.cp .syl__expand{cursor:pointer;color:inherit;text-align:left;grid-column:1/3;grid-template-columns:64px 1fr;align-items:center;gap:16px;min-width:0;display:grid}.cp .syl__wk{font-family:var(--font-mono);font-size:var(--text-sm);align-items:center;gap:7px;padding:14px 0;font-weight:700;display:flex}.cp .syl__row.is-past .syl__wk{color:hsl(var(--muted-foreground))}.cp .syl__row.is-current .syl__wk{color:hsl(var(--primary))}.cp .syl__now{letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--primary));background:hsl(var(--primary) / .12);border-radius:var(--radius-full);padding:2px 7px;font-size:10px;font-weight:700}.cp .syl__topic{align-items:center;gap:8px;min-width:0;padding:14px 0;display:flex}.cp .syl__chev{width:14px;height:14px;color:hsl(var(--muted-foreground));transition:transform var(--duration-base) var(--ease-in-out);flex-shrink:0}.cp .syl__rowwrap.is-open .syl__chev{transform:rotate(90deg)}.cp .syl__topictext{font-size:var(--text-sm);text-wrap:pretty;font-weight:600;line-height:1.4}.cp .syl__cell{font-size:var(--text-sm);color:hsl(var(--muted-foreground));text-wrap:pretty;padding:14px 0;line-height:1.45}.cp .syl__detail{transition:grid-template-rows var(--duration-slow) var(--ease-in-out);grid-template-rows:0fr;display:grid}.cp .syl__rowwrap.is-open .syl__detail{grid-template-rows:1fr}.cp .syl__detail-inner{min-height:0;overflow:hidden}.cp .syl__mats{flex-wrap:wrap;align-items:center;gap:9px;padding:2px 20px 14px 80px;display:flex}.cp .syl__mats-lbl{letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--muted-foreground));font-size:10px;font-weight:600}.cp .matchip{white-space:nowrap;font-size:var(--text-xs);color:hsl(var(--primary));background:hsl(var(--primary) / .07);border:1px dashed hsl(var(--primary) / .35);border-radius:var(--radius-full);transition:background-color var(--duration-base);align-items:center;gap:6px;padding:5px 12px;font-weight:600;display:inline-flex}.cp a.matchip:hover{background:hsl(var(--primary) / .13)}.cp .matchip--pending{color:hsl(var(--muted-foreground));background:var(--cp-fill-soft);border-style:solid;border-color:hsl(var(--border))}.cp .matchip svg{width:13px;height:13px}.cp .syl__mats-note{color:hsl(var(--muted-foreground));font-size:10.5px;font-style:italic}.cp .sectionsnote{font-size:var(--text-sm);color:hsl(var(--muted-foreground));align-items:center;gap:8px;margin:0 0 16px;display:inline-flex}.cp .sectionsnote svg{width:15px;height:15px;color:hsl(var(--primary));flex-shrink:0}.cp .segtoggle{background:var(--cp-fill);border:1px solid hsl(var(--border));border-radius:var(--radius-full);flex-shrink:0;gap:4px;padding:3px;display:inline-flex}.cp .segtoggle__btn{border-radius:var(--radius-full);font-size:var(--text-xs);color:hsl(var(--muted-foreground));cursor:pointer;white-space:nowrap;transition:background-color var(--duration-base), color var(--duration-base);padding:5px 14px;font-weight:600}.cp .segtoggle__btn.is-on{background:hsl(var(--card));color:hsl(var(--primary));box-shadow:var(--shadow-xs)}.cp .segtoggle__btn:focus-visible{box-shadow:0 0 0 2px hsl(var(--ring));outline:none}.cp .sectbl{border-top:1px solid hsl(var(--border));border-bottom:1px solid hsl(var(--border));border-collapse:collapse;width:calc(100% + 40px);margin:0 -20px}.cp .sectbl caption{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.cp .sectbl thead,.cp .sectbl tbody{display:block}.cp .sectbl tr{grid-template-columns:50px minmax(0,1.7fr) .95fr 1fr 1.05fr 72px;align-items:center;gap:14px;display:grid}.cp .sectbl thead tr{background:var(--cp-fill);padding:10px 20px}.cp .sectbl th{text-align:left;letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--muted-foreground));font-size:10px;font-weight:600}.cp .sectbl tbody tr{border-top:1px solid hsl(var(--border));min-height:54px;transition:background-color var(--duration-base);padding:13px 20px}.cp .sectbl tbody tr:hover{background:hsl(var(--accent) / .35)}.cp .sectbl td{font-size:var(--text-sm);color:hsl(var(--muted-foreground));font-weight:400}.cp .sectbl__sec{font-family:var(--font-mono);color:hsl(var(--primary));font-weight:700}.cp .sectbl__inst{color:hsl(var(--foreground));text-wrap:pretty;min-width:0;font-weight:600}.cp .sectbl__col-time{font-variant-numeric:tabular-nums}.cp .sectbl__col-days{white-space:nowrap}.cp .sectbl__col-room{align-items:center;gap:5px;display:inline-flex}.cp .sectbl__pin{width:12px;height:12px;color:hsl(var(--muted-foreground));flex-shrink:0}.cp .typetag{letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-full);white-space:nowrap;padding:3px 10px;font-size:10px;font-weight:700;display:inline-block}.cp .typetag--theory{color:hsl(var(--muted-foreground));background:var(--cp-fill)}.cp .typetag--lab{color:var(--cp-info-fg);background:hsl(var(--info) / .1)}.cp .sectbl__note{font-size:var(--text-xs);color:hsl(var(--muted-foreground));margin:12px 0 0;font-style:italic}.cp .aschemes{grid-template-columns:1fr 1fr;gap:26px 40px;display:grid}.cp .aschemes--single{grid-template-columns:1fr;max-width:460px}.cp .ascard{min-width:0}.cp .ascard__top{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.cp .ascard__icon{border-radius:var(--radius-md);background:hsl(var(--primary) / .1);width:30px;height:30px;color:hsl(var(--primary));flex-shrink:0;place-items:center;display:grid}.cp .ascard__icon svg{width:16px;height:16px}.cp .ascard__label{font-size:var(--text-base);letter-spacing:-.01em;white-space:nowrap;font-weight:700}.cp .ascard__cr{font-family:var(--font-mono);color:hsl(var(--muted-foreground));background:var(--cp-fill);border-radius:var(--radius-sm);white-space:nowrap;padding:2px 7px;font-size:11px;font-weight:600}.cp .ascheme__draft{letter-spacing:.06em;text-transform:uppercase;color:var(--cp-warn-fg);background:hsl(var(--warning) / .14);border:1px solid hsl(var(--warning) / .3);border-radius:var(--radius-sm);white-space:nowrap;margin-left:auto;padding:3px 8px;font-size:10px;font-weight:700}.cp .asgrade__list{flex-direction:column;display:flex}.cp .asgrade__row{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:6px 0;display:grid}.cp .asgrade__name{font-size:var(--text-sm);color:hsl(var(--foreground));white-space:nowrap}.cp .asgrade__track{border-radius:var(--radius-full);background:hsl(var(--primary) / .1);height:5px;overflow:hidden}.cp .asgrade__fill{border-radius:var(--radius-full);background:hsl(var(--primary) / .78);height:100%;display:block}.cp .asgrade__pct{font-family:var(--font-mono);font-size:var(--text-sm);text-align:right;white-space:nowrap;min-width:32px;font-weight:700}.cp .asgrade__row--total{border-top:1px solid hsl(var(--border));margin-top:5px;padding-top:9px}.cp .asgrade__row--total .asgrade__name{letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--muted-foreground));font-size:10px;font-weight:600}.cp .fchips{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.cp .fchip{border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--muted-foreground));border-radius:var(--radius-full);font-size:var(--text-xs);cursor:pointer;transition:background-color var(--duration-base), color var(--duration-base), border-color var(--duration-base);padding:6px 14px;font-weight:600}.cp .fchip:hover{color:hsl(var(--foreground));border-color:hsl(var(--primary) / .4)}.cp .fchip.is-on{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.cp .fchip:focus-visible{box-shadow:0 0 0 2px hsl(var(--background)), 0 0 0 4px hsl(var(--ring));outline:none}.cp .res-empty{font-size:var(--text-sm);color:hsl(var(--muted-foreground));margin:0;padding:18px 0;font-style:italic}.cp .resgroup{margin-bottom:26px}.cp .resgroup:last-child{margin-bottom:0}.cp .resgroup__lbl{letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--muted-foreground));margin-bottom:12px;font-size:10px;font-weight:600}.cp .res{border-top:1px solid hsl(var(--border));transition:background-color var(--duration-base);align-items:center;gap:16px;padding:14px 0;display:flex}.cp a.res:hover{background:hsl(var(--accent) / .4)}.cp .res__icon{border-radius:var(--radius-md);background:hsl(var(--primary) / .08);width:40px;height:40px;color:hsl(var(--primary));flex-shrink:0;place-items:center;display:grid}.cp .res__icon svg{width:19px;height:19px}.cp .res__body{flex:1;min-width:0}.cp .res__title{font-size:var(--text-base);align-items:center;gap:8px;font-weight:600;display:flex}.cp .res__desc{font-size:var(--text-sm);color:hsl(var(--muted-foreground));margin-top:2px;line-height:1.4}.cp .res__open{font-size:var(--text-sm);color:hsl(var(--primary));flex-shrink:0;align-items:center;gap:5px;font-weight:600;display:inline-flex}.cp .res__open svg{width:14px;height:14px;transition:transform var(--duration-base)}.cp a.res:hover .res__open svg{transform:translate(2px,-2px)}.cp .badge-new{letter-spacing:.06em;text-transform:uppercase;color:var(--cp-ok-fg);background:hsl(var(--success) / .12);border-radius:var(--radius-full);padding:2px 7px;font-size:10px;font-weight:700}.cp .asg{align-items:center;gap:16px;padding:14px 0;display:flex}.cp .asg+.asg{border-top:1px solid hsl(var(--border))}.cp .asg__icon{border-radius:var(--radius-md);background:hsl(var(--card));border:1px solid hsl(var(--border));width:38px;height:38px;color:hsl(var(--muted-foreground));flex-shrink:0;place-items:center;display:grid}.cp .asg__body{flex-direction:column;flex:1;gap:3px;display:flex}.cp .asg__title{font-size:var(--text-base);font-weight:600}.cp .asg__desc{font-size:var(--text-sm);color:hsl(var(--muted-foreground))}.cp .badge-soon{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius-sm);white-space:nowrap;padding:4px 9px;font-size:10px;font-weight:700}.cp .aside{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:hsl(var(--border)) transparent;flex-direction:column;gap:16px;max-height:calc(100vh - 44px);padding-right:2px;display:flex;position:sticky;top:28px;overflow-y:auto}.cp .panel{border:1px solid hsl(var(--border));border-radius:var(--radius-xl);background:hsl(var(--card));box-shadow:var(--shadow-xs);padding:16px 18px}.cp .panel__h{letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--muted-foreground));border-bottom:1px solid hsl(var(--border));white-space:nowrap;align-items:center;gap:8px;margin:0 0 14px;padding-bottom:12px;font-size:10px;font-weight:600;display:flex}.cp .panel__h svg{width:14px;height:14px;color:hsl(var(--primary))}.cp .staff{align-items:center;gap:13px;display:flex}.cp .staff__avatar{border-radius:var(--radius-full);background:linear-gradient(155deg, var(--cp-band-from), var(--cp-band-to));width:46px;height:46px;color:var(--cp-band-fg);letter-spacing:.02em;box-shadow:inset 0 0 0 2px hsl(var(--primary) / .55);flex-shrink:0;place-items:center;font-size:16px;font-weight:700;display:grid}.cp .staff__meta{flex-direction:column;gap:3px;min-width:0;display:flex}.cp .staff__name{font-size:var(--text-base);letter-spacing:-.01em;font-weight:700}.cp .staff__role{font-size:var(--text-xs);color:hsl(var(--muted-foreground))}.cp .staff__mail{background:hsl(var(--muted) / .5);border:1px solid hsl(var(--border));border-radius:var(--radius-md);width:100%;font-family:var(--font-mono);color:hsl(var(--muted-foreground));cursor:pointer;transition:background-color var(--duration-base), color var(--duration-base);align-items:center;gap:8px;margin-top:12px;padding:8px 10px;font-size:11px;display:flex;overflow:hidden}.cp .staff__mail:hover{background:hsl(var(--accent) / .6);color:hsl(var(--foreground))}.cp .staff__mail svg{flex-shrink:0;width:13px;height:13px}.cp .staff__copyic{opacity:.5;margin-left:auto}.cp .staff__mailtext{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cp .staff__consult{border-top:1px solid hsl(var(--border));margin-top:16px;padding-top:14px}.cp .consult__row{border-top:1px solid hsl(var(--border));flex-direction:column;gap:1px;padding:9px 0;display:flex}.cp .consult__row:first-child{border-top:0;padding-top:0}.cp .consult__k{letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--muted-foreground));font-size:10px;font-weight:600}.cp .consult__v{font-size:var(--text-sm);font-weight:600}.cp .consult__note{font-size:var(--text-xs);color:hsl(var(--muted-foreground));margin-top:10px;font-style:italic;line-height:1.4}.cp .qlinks{flex-direction:column;display:flex}.cp .qlink{border-radius:var(--radius-md);align-items:stretch;gap:2px;display:flex}.cp .qlink+.qlink{border-top:1px solid hsl(var(--border))}.cp .qlink__main{border-radius:var(--radius-md);min-width:0;font-size:var(--text-sm);color:hsl(var(--foreground));transition:background-color var(--duration-base), color var(--duration-base);flex:1;align-items:center;gap:11px;padding:10px;font-weight:500;display:flex}.cp .qlink__main svg{width:16px;height:16px;color:hsl(var(--muted-foreground));flex-shrink:0}.cp .qlink__main:hover{background:hsl(var(--accent) / .6)}.cp .qlink__main:hover svg{color:hsl(var(--primary))}.cp .qlink--primary .qlink__main{font-weight:600}.cp .qlink--primary .qlink__main svg{color:hsl(var(--primary))}.cp .qlink__copy{border-radius:var(--radius-md);width:30px;color:hsl(var(--muted-foreground) / .55);cursor:pointer;transition:background-color var(--duration-base), color var(--duration-base);place-items:center;display:grid}.cp .qlink__copy:hover{background:hsl(var(--accent) / .6);color:hsl(var(--primary))}.cp .qlink__copy svg{width:13px;height:13px}.cp .qlink__copy:focus-visible{box-shadow:0 0 0 2px hsl(var(--ring));outline:none}.cp .foot{border-top:1px solid hsl(var(--border));flex-direction:column;gap:20px;margin-top:40px;padding-top:26px;display:flex}.cp .foot__archive{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.cp .foot__lbl{letter-spacing:.07em;text-transform:uppercase;color:hsl(var(--muted-foreground));white-space:nowrap;align-items:center;gap:7px;font-size:10px;font-weight:600;display:inline-flex}.cp .foot__lbl svg{width:13px;height:13px}.cp .foot__terms{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cp .foot__term{font-family:var(--font-mono);font-size:var(--text-xs);color:hsl(var(--muted-foreground));background:var(--cp-fill-soft);border:1px solid hsl(var(--border));border-radius:var(--radius-full);white-space:nowrap;padding:4px 12px;font-weight:600}.cp .foot__archnote{font-size:var(--text-xs);color:hsl(var(--muted-foreground));white-space:nowrap;margin-left:auto;font-style:italic}.cp .foot__colophon{border-top:1px solid hsl(var(--border));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding-top:20px;display:flex}.cp .foot__ident{align-items:center;gap:13px;min-width:0;display:flex}.cp .foot__mark{border-radius:var(--radius-md);background:linear-gradient(155deg, var(--cp-band-from), var(--cp-band-to));width:38px;height:38px;color:var(--cp-band-fg);box-shadow:inset 0 0 0 1.5px hsl(var(--primary) / .5);flex-shrink:0;place-items:center;display:grid}.cp .foot__mark svg{width:19px;height:19px}.cp .foot__identmeta{flex-direction:column;gap:2px;min-width:0;display:flex}.cp .foot__identa{font-size:var(--text-sm);letter-spacing:-.01em;font-weight:700}.cp .foot__identb{font-size:var(--text-xs);color:hsl(var(--muted-foreground))}.cp .foot__top{font-size:var(--text-sm);color:hsl(var(--muted-foreground));cursor:pointer;transition:color var(--duration-base);white-space:nowrap;align-items:center;gap:7px;padding:8px 4px;font-weight:600;display:inline-flex}.cp .foot__top:hover{color:hsl(var(--primary))}.cp .foot__top svg{width:15px;height:15px;transition:transform var(--duration-base)}.cp .foot__top:hover svg{transform:translateY(-2px)}@media print{.cp{max-width:none;padding:0;background:#fff!important}.cp .topbar,.cp .secnav,.cp .now__actions,.cp .copychip,.cp .qlink__copy,.cp .jumpnow,.cp .fchips,.cp .btn-contest,.cp .foot__top,.cp .segtoggle,.cp .sec__chev,.cp .secnav__all{display:none!important}.cp .sec__panel{display:block!important}.cp .sec{box-shadow:none;break-inside:avoid;margin-bottom:18px}.cp .notice{break-inside:avoid}.cp .now{box-shadow:none;border:1.5px solid #000;padding:16px 18px;color:#000!important;background:#fff!important}.cp .now:before{display:none}.cp .now__weekval,.cp .now__title,.cp .now__rowv,.cp .now__mv{color:#000!important}.cp .now__weeklbl,.cp .now__eyebrow,.cp .now__rowk,.cp .now__mk,.cp .now__md,.cp .now__contesttag{color:#444!important}.cp .hero__title{font-size:28pt}.cp .body{margin-top:18px;display:block}.cp .aside{max-height:none;margin-top:18px;display:block;position:static;overflow:visible}.cp .syl__detail{grid-template-rows:1fr!important}.cp .main{gap:0;display:block}.cp *{box-shadow:none!important}.cp .pulse:after{display:none}}@media (max-width:1080px){.cp .ncard{grid-template-columns:72px 1fr auto}.cp .ncard__date{display:none}.cp .sectbl tr{grid-template-columns:54px 1.4fr 1fr 1fr 82px}.cp .sectbl__col-room{display:none}}@media (max-width:860px){.cp{padding:8px 16px 64px}.cp .hero{padding:22px 20px}.cp .notice{grid-template-columns:1fr}.cp .notice__head{border-right:0;border-bottom:1px solid hsl(var(--border));flex-direction:row;justify-content:space-between;align-items:center;padding:12px 16px}.cp .ncard{grid-template-columns:68px 1fr auto}.cp .body{grid-template-columns:1fr}.cp .aside{order:-1;max-height:none;position:static;overflow:visible}.cp .now__inner{grid-template-columns:1fr;gap:20px}.cp .now__weeknum{border-bottom:1px solid #f1f5f924;border-right:0;flex-direction:row;justify-content:center;align-items:baseline;gap:12px;padding-bottom:16px;padding-right:0}.cp .now__side{border-top:1px solid #f1f5f924;border-left:0;padding-top:18px;padding-left:0}.cp .now__weekval{font-size:38px}.cp .facts{grid-template-columns:1fr 1fr}.cp .fact:nth-child(2){border-right:0}.cp .fact:nth-child(-n+2){border-bottom:1px solid hsl(var(--border))}.cp .syl__head,.cp .syl__row,.cp .syl__expand{grid-template-columns:56px 1fr}.cp .syl__col-th,.cp .syl__col-lab{display:none}.cp .syl__mats{padding-left:18px}.cp .sectbl tr{grid-template-columns:46px 1.3fr 1fr 76px;gap:12px}.cp .sectbl__col-days,.cp .sectbl__col-room{display:none}.cp .aschemes{grid-template-columns:1fr;gap:22px}}@media (max-width:560px){.cp{padding:8px 14px 56px}.cp .sec__title{font-size:var(--text-xl);white-space:normal;flex-shrink:1}.cp .sec__rule{display:none}.cp .sec__chev{margin-left:auto}.cp .sec__pad{padding:16px}.cp .hero{padding:20px 16px}.cp .sectbl tr{grid-template-columns:40px 1.4fr 1fr;gap:10px}.cp .sectbl__col-time,.cp .secnav__all{display:none}}
