.tclol{--rose:#a8465c;--grid-op:.03;--tc-rail-h:60px}.tclol .course,.tclol .band{scroll-margin-top:calc(var(--tc-header-h) + var(--tc-rail-h) + 12px)}.tclol .course[data-course=civics],.tclol .now-card[data-course=civics]{--accent:#7a3b8f;--accent-soft:#f3edf6;--accent-line:#d3bedc}.tclol .course[data-course=hota],.tclol .now-card[data-course=hota]{--accent:#2f5d62;--accent-soft:#eaf1f1;--accent-line:#b6cfd1}.tclol[data-course=civics]{--accent:#7a3b8f;--accent-soft:#f3edf6;--accent-line:#d3bedc}.tclol[data-course=hota]{--accent:#2f5d62;--accent-soft:#eaf1f1;--accent-line:#b6cfd1}.tclol ul,.tclol ol,.tclol li{margin:0;padding:0;list-style:none}.tclol button{font:inherit;color:inherit;cursor:pointer;letter-spacing:normal;appearance:none;line-height:inherit;background:0 0;border:0;border-radius:0;margin:0}.tclol input{font:inherit;color:inherit;appearance:none}.tclol .rail{top:var(--tc-header-h);z-index:6;backdrop-filter:blur(6px);border-bottom:1px solid var(--rule);background:#f0f3f2f0;position:sticky}.tclol .rail-in{padding:11px var(--gutter);flex-wrap:wrap;align-items:center;gap:14px;display:flex}.tclol .brand{flex:none;align-items:center;gap:9px;display:flex}.tclol .brand .code{font-family:var(--mono);letter-spacing:.1em;background:var(--ink);color:#fff;border-radius:var(--r-xs);padding:4px 7px;font-size:11px;font-weight:700}.tclol .brand .name{font-family:var(--display);font-size:14px;font-weight:600}.tclol .jump{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.tclol .jump a{font-family:var(--mono);color:var(--muted);border-radius:var(--r-sm);white-space:nowrap;transition:background .14s var(--ease), color .14s var(--ease), border-color .14s var(--ease);border:1px solid #0000;padding:6px 9px;font-size:11px}.tclol .jump a:hover{color:var(--accent);border-color:var(--rule-soft);background:var(--white)}.tclol .find{flex:none;align-items:center;gap:8px;margin-left:auto;display:flex}.tclol .find label{background:var(--white);border:1px solid var(--rule-soft);border-radius:var(--r-sm);min-height:38px;transition:border-color .14s var(--ease);align-items:center;gap:8px;padding:0 10px;display:flex}.tclol .find label:focus-within{border-color:var(--accent-line)}.tclol .find .mag{font-family:var(--mono);color:var(--muted);flex:none;font-size:11px;font-weight:700}.tclol .find input{font-family:var(--mono);background:0 0;border:0;outline:0;width:min(30vw,210px);padding:8px 0;font-size:12px}.tclol .find input::placeholder{color:#94a3a8}.tclol .clear{font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);border-radius:var(--r-xs);visibility:hidden;padding:4px 6px;font-size:10px}.tclol .clear:hover{color:var(--accent);background:var(--white)}.tclol.searching .clear{visibility:visible}.tclol .hero{padding:clamp(24px, 3.2vw, 36px) var(--gutter) 24px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:clamp(24px,3.2vw,44px);display:grid}.tclol .hero h1{letter-spacing:-.035em;max-width:16ch;margin-top:8px;font-size:clamp(30px,4.4vw,50px);line-height:1.02}.tclol .hero .lede{color:var(--muted);max-width:52ch;margin-top:14px;font-size:18px;line-height:1.5}.tclol .hero .lede b{color:var(--text);font-weight:500}.tclol .tagrow{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.tclol .tag{font-family:var(--mono);border:1px solid var(--rule-soft);background:var(--white);border-radius:var(--r-xs);color:var(--muted);padding:5px 9px;font-size:11px}.tclol .tag b{color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.tclol .now{flex-direction:column;gap:8px;display:flex}.tclol .now-head{align-items:center;gap:10px;margin-bottom:2px;display:flex}.tclol .now-head .ln{background:var(--rule);flex:1;height:1px}.tclol .now-card{background:var(--white);border:1px solid var(--rule-soft);border-left:3px solid var(--accent);border-radius:var(--r);transition:background .14s var(--ease), border-color .14s var(--ease);align-items:center;gap:12px;padding:12px 14px;display:flex}.tclol .now-card:hover{background:var(--accent-soft);border-color:var(--accent-line);border-left-color:var(--accent)}.tclol .now-card .txt{flex:1;min-width:0}.tclol .now-card .k{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-size:10px;font-weight:700;display:block}.tclol .now-card .v{font-family:var(--display);color:var(--text);margin-top:4px;font-size:15px;font-weight:600;line-height:1.3;display:block}.tclol .now-card .arw{font-family:var(--mono);color:var(--accent);flex:none;font-size:14px}.tclol .course{padding:0 var(--gutter)}.tclol .course+.course{margin-top:clamp(14px,1.8vw,26px)}.tclol .chead{flex-wrap:wrap;align-items:center;gap:12px;padding:26px 0 14px;display:flex}.tclol .chead .code{font-family:var(--mono);letter-spacing:.1em;color:#fff;background:var(--accent);border-radius:var(--r-xs);flex:none;padding:6px 8px 5px;font-size:10px;font-weight:700;line-height:1}.tclol .chead h2{letter-spacing:-.03em;flex:none;font-size:clamp(19px,2.1vw,25px);line-height:1}.tclol .chead .sub{font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);flex:none;padding-top:1px;font-size:10px;line-height:1}.tclol .chead .ln{background:var(--rule);flex:1;min-width:20px;height:1px}.tclol .chead .n{font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-variant-numeric:tabular-nums;flex:none;padding-top:1px;font-size:10px;line-height:1}.tclol .gcols{columns:3;column-gap:clamp(16px,2vw,24px);padding-bottom:clamp(18px,2vw,26px)}.tclol .gcol{display:contents}.tclol .grp{border:1px solid var(--rule-soft);background:var(--white);border-radius:var(--r);break-inside:avoid;margin-bottom:clamp(16px,2vw,24px);overflow:hidden}.tclol .grph{align-items:center;gap:10px;padding:12px 16px 8px;display:flex}.tclol .course .grph{border-bottom:1px solid var(--rule-soft);background:#f4f7f6;padding:9px 16px}.tclol .grph .eyebrow{color:var(--text);letter-spacing:.1em;flex:none}.tclol .grph .ln{background:var(--rule-soft);flex:1;height:1px}.tclol .grph .n{font-family:var(--mono);color:var(--muted);font-variant-numeric:tabular-nums;flex:none;margin-left:auto;font-size:10px}.tclol .linklist{border-top:1px solid var(--rule-soft)}.tclol .course .grph+.linklist{border-top:0}.tclol .linklist li+li{border-top:1px solid var(--rule-soft)}.tclol .linklist a{transition:background .14s var(--ease);align-items:flex-start;gap:10px;padding:10px 16px;display:flex}.tclol .linklist a:hover{background:var(--accent-soft)}.tclol .linklist .ic{font-family:var(--mono);color:#fff;background:var(--muted);letter-spacing:.04em;text-align:center;border-radius:3px;flex:none;min-width:46px;margin-top:4px;padding:3px 5px;font-size:9px;font-weight:700}.tclol .linklist a[data-ic=UNIT] .ic{background:var(--accent)}.tclol .linklist a[data-ic=PLAN] .ic{background:var(--ink)}.tclol .linklist a[data-ic=LESSON] .ic{background:var(--rose)}.tclol .linklist a[data-ic=EXAM] .ic{background:var(--warm)}.tclol .linklist a[data-ic=READ] .ic{background:var(--cool)}.tclol .linklist a[data-ic=SYL] .ic{background:var(--ink)}.tclol .linklist .fn{font-family:var(--display);color:var(--text);font-size:14px;font-weight:600;line-height:1.35}.tclol .linklist .fm,.tclol .now-card .fm{font-family:var(--mono);color:var(--muted);margin-top:3px;font-size:10.5px;font-weight:400;line-height:1.4;display:block}.tclol .linklist .ext{font-family:var(--mono);color:var(--muted);flex:none;margin-left:auto;padding-top:4px;font-size:10px}.tclol .band{background:#ffffff80;margin-top:clamp(14px,1.8vw,26px)}.tclol .band-in{padding:18px var(--gutter) 22px}.tclol .bandh{align-items:center;gap:12px;margin-bottom:12px;display:flex}.tclol .bandh .ln{background:var(--rule-soft);flex:1;height:1px}.tclol .bandh p{font-family:var(--display);color:var(--muted);flex:none;max-width:44ch;font-size:13px}.tclol .acc-btn{text-align:left;border-radius:var(--r-sm);width:100%;min-height:46px;transition:background .14s var(--ease);align-items:center;gap:12px;padding:13px 16px;display:flex}.tclol .acc-btn:hover{background:var(--white)}.tclol .acc-btn:hover .acc-t{color:var(--accent)}.tclol .acc.open>.acc-btn:hover{background:0 0}.tclol .acc-btn .plus{font-family:var(--mono);color:var(--accent);text-align:center;width:18px;transition:transform .28s var(--ease);flex:none;font-size:16px;line-height:1}.tclol .acc-btn[aria-expanded=true] .plus{transform:rotate(135deg)}.tclol .acc.open{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:#ffffff80}.tclol .acc.open>.acc-btn{border-bottom:1px solid var(--rule-soft);border-radius:var(--r-sm) var(--r-sm) 0 0}.tclol .acc-t{font-family:var(--display);transition:color .14s var(--ease);font-size:16.5px;font-weight:600}.tclol .acc-c{font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);flex:none;margin-left:auto;font-size:10px}.tclol .acc-p{padding:14px 16px;display:none}.tclol .acc.open>.acc-p{animation:tclol-in .22s var(--ease);display:block}@keyframes tclol-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.tclol .archlist{columns:2;column-gap:22px}.tclol .archlist li{break-inside:avoid}.tclol .archlist a{font-family:var(--display);color:var(--accent);align-items:baseline;gap:8px;padding:5px 0;font-size:13.5px;line-height:1.4;display:flex}.tclol .archlist a:hover{color:var(--text);text-decoration:underline;text-decoration-color:var(--accent-line);text-underline-offset:3px}.tclol .archlist .d{font-family:var(--mono);color:var(--muted);flex:none;font-size:9px}.tclol .archlist .ic{font-family:var(--mono);letter-spacing:.04em;color:#fff;background:var(--muted);text-align:center;border-radius:3px;flex:none;min-width:38px;padding:2px 4px;font-size:8.5px;font-weight:700}.tclol .archlist a[data-ic=UNIT] .ic{background:var(--accent)}.tclol .archlist a[data-ic=EXAM] .ic{background:var(--warm)}.tclol .archlist a[data-ic=READ] .ic{background:var(--cool)}.tclol .hidden{display:none!important}.tclol .nores{padding:22px var(--gutter) 28px;font-family:var(--display);color:var(--muted);font-size:15px;display:none}.tclol .nores b{color:var(--text);font-weight:600}.tclol.no-results .nores{display:block}.tclol.searching .now,.tclol.searching .hero .lede,.tclol.searching .hero .tagrow{opacity:.35}.tclol.searching .chead .n{visibility:hidden}.tclol .count{font-family:var(--mono);color:var(--accent);border:1px solid var(--accent-line);background:var(--accent-soft);border-radius:var(--r-sm);font-variant-numeric:tabular-nums;padding:6px 9px;font-size:11px;display:none}.tclol.searching .count{display:block}.tclol .foot{border-top:1px solid var(--rule-soft);padding:16px var(--gutter) 20px;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:14px;display:flex}.tclol .foot p{font-family:var(--mono);color:var(--muted);letter-spacing:.04em;font-size:10.5px}.tclol .foot a{font-family:var(--mono);color:var(--accent);font-size:10.5px}@media (width<=1080px){.tclol .gcols{columns:2}.tclol .hero{grid-template-columns:minmax(0,1fr);align-items:start}}@media (width<=720px){.tclol .gcols,.tclol .archlist{columns:1}.tclol .jump{display:none}.tclol .find{width:100%;margin-left:0}.tclol .find label{flex:1}.tclol .find input{width:100%}}@media (prefers-reduced-motion:reduce){.tclol *,.tclol :before,.tclol :after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
