
.grade-control{display:flex;align-items:center;gap:10px;color:#79847d;font-size:10px;font-weight:800}.grade-control select{width:100%;height:40px;padding:0 10px;border:1px solid #e7eae2;border-radius:10px;background:#fbfcf8;color:#35443b;font:inherit;font-size:11px}.book-controls{grid-template-columns:minmax(220px,1fr) 145px 210px auto}.book-heading{gap:5px}.book-grade-label{color:#88804f;font-size:8px;font-weight:900;letter-spacing:.04em}.book-lesson[data-grade="1"] .book-number,.book-lesson[data-grade="2"] .book-number{background:#f9f0dd;color:#9a7045}.book-lesson[data-grade="4"] .book-number,.book-lesson[data-grade="5"] .book-number{background:#edf1e2;color:#637548}.book-lesson[data-grade="6"] .book-number{background:#e8eef3;color:#59778b}.book-lab-link{display:inline-flex;align-items:center;gap:7px;margin-top:11px;padding:8px 10px;border:1px solid #e0e5d0;border-radius:10px;background:#f5f6ea;color:#687444;font-size:10px;font-weight:900;text-decoration:none}.book-lab-link:hover{background:#eef1dc}.book-source-note p>a{display:inline-block;margin-left:5px}
@media(max-width:1000px){.book-controls{grid-template-columns:minmax(180px,1fr) 135px 190px}.book-controls .incomplete-control{grid-column:1/-1;padding:4px 5px}}
@media(max-width:650px){.book-controls{grid-template-columns:1fr;gap:9px;padding:10px}.book-controls .incomplete-control{grid-column:auto}.grade-control,.book-controls .branch-control{display:grid;grid-template-columns:60px 1fr}}

.book-grade-overview{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:15px}.book-grade-tile{display:grid;grid-template-columns:31px minmax(0,1fr) 12px;align-items:start;gap:9px;min-width:0;min-height:142px;padding:12px;border:1px solid #e5e8dc;border-radius:15px;background:#fffefa;color:#344238;text-align:left;cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s}.book-grade-tile:hover,.book-grade-tile:focus-visible{transform:translateY(-2px);border-color:#bec89c;box-shadow:0 8px 18px rgba(57,70,45,.08);outline:none}.grade-tile-number{display:grid;width:31px;height:31px;place-items:center;border-radius:11px;background:#eef0df;color:#647044;font-size:13px;font-weight:900}.book-grade-tile:nth-child(1) .grade-tile-number,.book-grade-tile:nth-child(2) .grade-tile-number{background:#f8f0e1;color:#9a7045}.book-grade-tile:nth-child(5) .grade-tile-number,.book-grade-tile:nth-child(6) .grade-tile-number{background:#e9eff3;color:#59778b}.grade-tile-copy{display:flex;min-width:0;flex-direction:column;gap:6px}.grade-tile-copy>b{color:#344238;font-size:11px;line-height:1.5}.grade-tile-copy>small{color:#737f74;font-size:8.5px;line-height:1.55}.grade-tile-copy>.grade-tile-source{color:#8a7955}.grade-tile-copy>.grade-tile-count{color:#627448;font-size:9px;font-weight:900}.grade-tile-arrow{align-self:center;color:#82906d;font-size:13px}.book-source-details{max-width:850px;margin-top:10px;color:#6a756b;font-size:10px;line-height:1.8}.book-source-details>summary{width:max-content;max-width:100%;color:#66734a;font-weight:900;cursor:pointer}.book-source-details ul{display:grid;gap:6px;margin:8px 0 0;padding-left:17px}.book-source-details li{padding-left:1px}.book-source-details a{color:#61724b;font-weight:800;text-decoration:underline;text-decoration-color:#c8d0ae;text-underline-offset:2px}.book-source-details a:hover{color:#3f5937}
@media(max-width:1050px){.book-grade-overview{grid-template-columns:repeat(3,minmax(0,1fr))}.book-grade-tile{min-height:128px}}
@media(max-width:650px){.book-grade-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.book-grade-tile{grid-template-columns:27px minmax(0,1fr) 10px;gap:7px;min-height:148px;padding:10px}.grade-tile-number{width:27px;height:27px;font-size:11px}.grade-tile-copy>b{font-size:10px}.grade-tile-copy>small{font-size:8px}.book-source-details{font-size:9px}.book-source-details ul{gap:7px}}

.book-source-attribution{margin:0 0 12px;padding:8px 10px;border-left:2px solid #d7ddc8;border-radius:0 8px 8px 0;background:#f7f8f2;color:#72796d;font-size:10px;line-height:1.6}.book-source-attribution b{color:#536247}

.textbook-page .book-prerequisite{font-size:var(--book-reading);line-height:var(--book-line)}
.textbook-page .book-prerequisite-link{color:#49653d;font-weight:800;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.textbook-page .book-prerequisite-link:focus-visible{outline:3px solid #9eae71;outline-offset:2px;border-radius:3px}

/* 等可能卡片：每张卡同样大小，以文字和颜色共同区分事件。 */
.book-probability-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;list-style:none;margin:18px 0;padding:0}
.book-probability-card{display:flex;min-width:0;min-height:92px;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px 6px;border:2px solid #6681a4;border-radius:12px;background:#edf3fa;color:#29486d;text-align:center;overflow-wrap:anywhere}
.book-probability-card.is-favorable{border-color:#b35f5a;background:#fff0ec;color:#853a35}
.book-probability-card b{font-size:18px}.book-probability-card span{font-size:13px}
@media(max-width:650px){.book-probability-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.book-probability-card b{font-size:17px}}

/* 加乘计数：每格为一种完整方案；原生展开控件支持键盘和触屏。 */
.book-choice-grid .book-choice-instruction{color:#52654d;font-weight:700}
.book-choice-branches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.book-choice-branch{min-width:0;padding:12px;border:1px solid #b9cbb3;border-radius:12px;background:#f4f8ef;overflow-wrap:anywhere}
.book-choice-branch>summary,.book-choice-total>summary{min-height:44px;padding:8px 0;color:#34513c;font-weight:800;cursor:pointer;line-height:1.7}
.book-choice-branch>summary:focus-visible,.book-choice-total>summary:focus-visible{outline:3px solid #718e64;outline-offset:3px;border-radius:4px}
.book-choice-branch ul{display:grid;gap:10px;list-style:none;margin:12px 0;padding:0}
.book-choice-branch li{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:10px 6px;border:1px solid #c6d4bd;border-radius:8px;background:white;text-align:center}
.book-choice-branch p{margin-bottom:0}.book-choice-total{padding:8px 14px;border:2px solid #afbd97;border-radius:12px;background:#fcfcf3;overflow-wrap:anywhere}
@media(max-width:650px){.book-choice-branches{grid-template-columns:1fr;gap:10px}.book-choice-branch{padding:10px 12px}}
