.study-page { --study-green:#216e36; --study-soft:#f3f8f4; }
.study-main { width:min(980px,calc(100% - 40px)); margin:auto; padding:118px 0 70px; }
.study-hero h1 { max-width:850px; font-size:clamp(38px,6.6vw,66px); line-height:1.04; letter-spacing:-.05em; }
.study-lead { max-width:760px; margin:24px 0 0; font-size:clamp(19px,2.4vw,24px); color:var(--ink); }
.study-scope { max-width:760px; color:#5c6560; margin:14px 0 0; }
.study-intro-links { display:flex; flex-wrap:wrap; gap:14px 28px; margin-top:23px; }
.study-intro-links a,.study-return { color:var(--study-green); font-weight:600; text-decoration:underline; text-underline-offset:4px; }
.study-session { margin:40px 0 28px; padding:27px 28px; border:1px solid #cfe0d3; border-radius:23px; background:var(--study-soft); }
.study-session h2,.study-record h2 { margin:0 0 10px; font-size:23px; line-height:1.2; letter-spacing:-.025em; }
.study-session-head p { max-width:780px; margin:0; color:#515e54; }
.study-routine { list-style:none; padding:0; margin:25px 0 0; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:20px; counter-reset:routine; }
.study-routine li { counter-increment:routine; min-width:0; }
.study-routine strong { display:block; color:var(--study-green); font-size:15px; }
.study-routine strong::before { content:counter(routine) ". "; }
.study-routine span { display:block; color:#46554a; margin-top:7px; font-size:13px; line-height:1.6; }
.study-session-end { margin:23px 0 0; padding-top:17px; border-top:1px solid #d8e6db; font-size:14px; color:#46554a; }
.study-index { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin:0 0 40px; }
.study-index a { display:flex; align-items:baseline; gap:12px; padding:12px 14px; border:1px solid var(--line); border-radius:12px; font-size:14px; }
.study-index a span { color:var(--study-green); font-weight:650; flex:0 0 67px; font-size:12px; }
.study-index a:hover { background:var(--study-soft); border-color:#a5c5ae; }
.study-topic { border-top:1px solid var(--line); scroll-margin-top:80px; }
.study-topic:last-child { border-bottom:1px solid var(--line); }
.study-topic>summary { display:grid; grid-template-columns:80px minmax(0,1fr) 30px; align-items:center; gap:16px; list-style:none; padding:25px 0; cursor:pointer; }
.study-topic>summary::-webkit-details-marker,.study-activity>summary::-webkit-details-marker { display:none; }
.study-code { color:var(--study-green); font-size:13px; font-weight:700; }
.study-topic h2 { font-size:clamp(21px,3.1vw,28px); line-height:1.2; letter-spacing:-.025em; margin:0; }
.study-count { display:block; margin-top:7px; font-size:13px; color:#606963; }
.study-toggle { color:var(--study-green); font-size:26px; justify-self:end; font-weight:400; transition:transform .15s; }
.study-topic[open]>summary>.study-toggle,.study-activity[open]>summary>.study-toggle { transform:rotate(45deg); }
.study-topic-body { padding:0 0 30px 96px; }
.study-goal { color:#515e54; margin:0 0 19px; }
.study-review { margin:0 0 22px; color:#414e45; font-size:15px; }
.study-review>summary { color:var(--study-green); font-weight:600; cursor:pointer; padding:8px 0; }
.study-review ul { margin:8px 0 0; padding-left:22px; }
.study-review li+li { margin-top:10px; }
.study-activities { display:grid; gap:12px; }
.study-activity { border:1px solid #dde5df; border-radius:18px; overflow:hidden; scroll-margin-top:80px; background:#fff; }
.study-activity>summary { display:grid; grid-template-columns:25px minmax(0,1fr) 23px; align-items:center; gap:12px; padding:19px 22px; list-style:none; cursor:pointer; }
.study-number { align-self:start; padding-top:3px; color:var(--study-green); font-size:12px; font-weight:600; }
.study-activity h3 { font-size:18px; line-height:1.4; letter-spacing:-.015em; margin:0; font-weight:600; }
.study-activity .study-toggle { font-size:23px; }
.study-activity-body { padding:0 22px 22px; font-size:15px; }
.study-fields { margin:0; }
.study-fields>div { display:grid; grid-template-columns:112px minmax(0,1fr); gap:15px; padding:15px 0; border-top:1px solid #edf0ee; }
.study-fields dt { color:var(--study-green); font-weight:650; font-size:13px; }
.study-fields dd { margin:0; min-width:0; }
.study-resource-list { list-style:none; margin:0; padding:0; display:grid; gap:13px; }
.study-resource-list a { color:var(--study-green); font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.study-resource-list p { color:#59655d; font-size:13px; margin:5px 0 0; }
.study-paper { margin:0; }
.study-paper strong { font-weight:600; }
.study-actions { padding:0 0 0 21px; margin:12px 0 20px; }
.study-actions li { padding-left:4px; }
.study-actions li+li { margin-top:13px; }
.study-actions strong { font-weight:650; }
.study-note { background:#f6f6f3; padding:12px 15px; border-radius:10px; color:#525a4c; font-size:13px; margin:0 0 19px; }
.study-check { margin:12px 0 0; padding:15px 17px; border-radius:12px; background:#edf5ef; }
.study-check h4 { margin:0 0 5px; color:var(--study-green); font-size:13px; }
.study-check p { margin:0; color:#304b37; }
.study-record { margin:35px 0 30px; padding:25px 28px; background:var(--study-soft); border-radius:20px; color:#415247; }
.study-record h2 { color:var(--ink); }
.study-record p { margin:12px 0 0; }
.study-return { display:inline-block; padding:8px 0; }
.study-skip { position:absolute; top:0; left:20px; padding:12px 18px; background:#fff; color:#1b602e; z-index:100; transform:translateY(-110%); }
.study-skip:focus { transform:translateY(0); }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.study-page :focus-visible { outline:3px solid #3b9853; outline-offset:4px; }
.study-page .katex { font-size:1.03em; }
.study-page .study-fields p,.study-page .study-actions li,.study-page .study-check p { overflow-wrap:break-word; }
@media(max-width:800px) { .study-routine { grid-template-columns:repeat(3,minmax(0,1fr)); } .study-topic-body { padding-left:0; } }
@media(max-width:600px) {
  .study-main { width:calc(100% - 28px); padding-top:100px; }
  .study-hero h1 { font-size:40px; }
  .study-session { padding:22px 18px; }
  .study-routine { grid-template-columns:1fr; gap:13px; margin-top:20px; }
  .study-routine span { margin-top:3px; font-size:14px; }
  .study-index { grid-template-columns:1fr; gap:7px; }
  .study-topic>summary { grid-template-columns:63px minmax(0,1fr) 19px; gap:10px; padding:23px 0; }
  .study-topic h2 { font-size:21px; }
  .study-code { font-size:12px; }
  .study-activity>summary { padding:17px 15px; grid-template-columns:21px minmax(0,1fr) 18px; gap:9px; }
  .study-activity h3 { font-size:17px; }
  .study-activity-body { padding:0 15px 17px; }
  .study-fields>div { grid-template-columns:1fr; gap:7px; }
  .study-record { padding:22px 18px; }
  .study-page .nav-inner { gap:14px; }
  .study-page .brand { font-size:13px; gap:7px; }
  .study-page .back { font-size:12px; }
}
@media(pointer:coarse) { .study-intro-links a,.study-resource-list a { display:inline-block; min-height:44px; padding-block:8px; } .study-review>summary { min-height:44px; } }
@media print { .study-page .nav,.study-intro-links,.study-index,.study-skip,.study-return,.study-page .legal,.study-page footer { display:none; } .study-main { width:100%; padding:0; } .study-topic-body { padding-left:0; } .study-activity { break-inside:avoid; } }
