.enhanced-textbook{display:grid;gap:1rem}.textbook-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.15rem}.textbook-intro h2{margin:.25rem 0}.textbook-intro p{margin:.35rem 0 0;max-width:800px}.textbook-tools{display:flex;gap:.5rem;flex-wrap:wrap}.textbook-tools span{padding:.45rem .65rem;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);font-size:.78rem}.enhanced-textbook-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.enhanced-textbook-main>.worked-example{grid-column:1/-1}.enhanced-chapter{position:relative;overflow:visible}.term-link{display:inline;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px;cursor:pointer}.term-link:hover,.term-link:focus-visible{color:#8bd2ff;outline:none;text-decoration-style:solid}.chapter-term-row{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.8rem}.chapter-term-pill,.related-term{border:1px solid rgba(110,194,255,.22);background:rgba(67,151,219,.08);color:inherit;border-radius:999px;padding:.35rem .55rem;cursor:pointer;font-size:.76rem}.chapter-term-pill:hover,.related-term:hover{background:rgba(67,151,219,.16)}.textbook-diagram-gallery,.terminology-section{padding:1.1rem}.textbook-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.textbook-section-head h2{margin:.2rem 0}.textbook-section-head p{margin:.3rem 0 0}.diagram-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1rem}.textbook-diagram{display:grid;gap:.45rem;text-align:left;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);border-radius:18px;padding:.7rem;color:inherit;cursor:pointer}.textbook-diagram:hover,.textbook-diagram:focus-visible{border-color:rgba(108,193,255,.38);background:rgba(70,144,205,.08);outline:none}.textbook-diagram>span{display:block;border-radius:14px;background:rgba(3,13,24,.55);overflow:hidden;min-height:180px}.textbook-diagram svg{width:100%;height:auto;display:block}.textbook-diagram strong{font-size:.95rem}.textbook-diagram small{opacity:.7}.diagram-node{fill:rgba(93,181,255,.08);stroke:rgba(93,181,255,.35);stroke-width:2}.diagram-membrane{fill:rgba(82,211,154,.07);stroke:rgba(82,211,154,.35);stroke-width:3}.diagram-particle{fill:#ffc96b;stroke:none}.diagram-line,.diagram-axis,.diagram-boundary,.diagram-normal,.diagram-ray,.diagram-arrow{stroke:rgba(210,232,248,.72);stroke-width:3;fill:none}.diagram-normal{stroke-dasharray:8 6;opacity:.6}.diagram-ray{stroke:#ffc96b}.diagram-curve{stroke:#6cc1ff;stroke-width:4;fill:none}.diagram-curve.alt{stroke:#52d39a}.diagram-grid{fill:rgba(255,255,255,.02);stroke:rgba(255,255,255,.24);stroke-width:2}.arrow-fill{fill:rgba(210,232,248,.72)}.diagram-label{font-size:14px;fill:currentColor}.textbook-diagram svg text,.diagram-modal-visual svg text{fill:currentColor;font-size:14px}.term-search-label{display:grid;gap:.35rem;min-width:220px;font-size:.78rem}.term-search{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(4,14,26,.72);color:inherit;padding:.65rem .75rem}.term-chip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:1rem}.term-chip{display:grid;gap:.35rem;text-align:left;padding:.8rem;border-radius:15px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);color:inherit;cursor:pointer}.term-chip:hover,.term-chip:focus-visible{border-color:rgba(82,211,154,.38);background:rgba(82,211,154,.07);outline:none}.term-chip strong{font-size:.95rem}.term-chip span{font-size:.8rem;opacity:.76;line-height:1.45}.term-modal,.diagram-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:1rem}.term-modal[hidden],.diagram-modal[hidden]{display:none}.term-modal-backdrop,.diagram-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68);backdrop-filter:blur(5px)}.term-modal-card,.diagram-modal-card{position:relative;z-index:1;width:min(760px,100%);max-height:88vh;overflow:auto;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:#0b1725;padding:1.15rem 1.2rem;box-shadow:0 24px 80px rgba(0,0,0,.42)}.term-modal-card h2,.diagram-modal-card h2{margin:.3rem 0}.term-definition{font-size:1.05rem;line-height:1.6;padding:.85rem;border-radius:14px;background:rgba(93,181,255,.07);border-left:3px solid #6cc1ff}.term-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1rem}.term-modal-grid article{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:.8rem;background:rgba(255,255,255,.025)}.term-modal-grid article p{margin:.45rem 0 0;line-height:1.5}.term-modal-grid .term-warning{border-color:rgba(255,201,107,.2);background:rgba(255,201,107,.045)}.term-modal-close{position:absolute;right:.8rem;top:.7rem;border:0;background:rgba(255,255,255,.07);color:inherit;width:36px;height:36px;border-radius:50%;font-size:1.3rem;cursor:pointer}.term-related{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.55rem}.diagram-modal-card{width:min(900px,100%)}.diagram-modal-visual{margin-top:.8rem;border-radius:16px;background:rgba(3,13,24,.65);padding:.7rem}.diagram-modal-visual svg{width:100%;max-height:480px}.term-modal-open{overflow:hidden}@media(max-width:900px){.enhanced-textbook-main{grid-template-columns:1fr}.diagram-gallery-grid{grid-template-columns:1fr 1fr}.term-chip-grid{grid-template-columns:1fr 1fr}.textbook-intro,.textbook-section-head{flex-direction:column}.term-search-label{min-width:0;width:100%}}@media(max-width:620px){.diagram-gallery-grid,.term-chip-grid,.term-modal-grid{grid-template-columns:1fr}.textbook-diagram>span{min-height:150px}.textbook-diagram-gallery,.terminology-section{padding:.85rem}.term-modal-card,.diagram-modal-card{padding:1rem}.textbook-tools{width:100%}}