.learning-hub-grid,.concept-map-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.learning-hub-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:12px;padding:22px;border:1px solid #cbd0ce;border-radius:16px;background:#faf9f1;color:#283846;cursor:pointer}.learning-hub-card:hover,.concept-node:hover{background:#f5edc7;transform:translateY(-2px)}.learning-hub-card small{font-size:12px;color:#52616a}.learning-hub-card strong{font-size:20px}.learning-hub-card span{font-size:14px;line-height:1.6}.study-tools-page>h1{font-size:clamp(28px,4vw,42px);margin:14px 0}.study-lead{font-size:18px;line-height:1.7;color:#58646b;margin-bottom:28px}.concept-map-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:26px 0}.concept-node{border:1px solid #c7d0cc;background:#f9f8ef;border-radius:16px;padding:22px;text-align:left;display:flex;flex-direction:column;gap:12px;cursor:pointer;color:#223c4a}.concept-node.selected{background:#e9efff;border:2px solid #345bb1;padding:21px}.concept-node small{font-size:12px}.concept-node strong{font-size:20px}.concept-node span{font-size:15px}.concept-detail,.concept-connections,.review-study-card,.graph-result{border:1px solid #cad0cd;border-radius:18px;padding:28px;background:#fffdf5;margin:22px 0}.concept-detail p,.concept-connections p,.study-prose{font-size:20px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere}.concept-detail .button{margin:8px 10px 0 0}.concept-connections summary,.graph-keyboard summary{font-size:17px;font-weight:700;cursor:pointer}.concept-connections p{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:16px;border-top:1px solid #e2e3da;padding:16px 0 0}.concept-connections span{color:#6c6250;font-size:14px}.study-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0}.study-actions select,.note-question-gate select,.graph-task-label select{padding:10px;border:1px solid #bcc6c5;border-radius:8px;background:#fffdf4;font:inherit;max-width:100%}.study-hint{font-size:14px;line-height:1.8;color:#53616c}.study-space .private-card{margin:20px 0}.study-space details summary{font-size:16px;cursor:pointer}.study-counter{font-size:20px;font-weight:700}.study-answer{background:#f1f3e9;border-radius:12px;padding:20px;margin:20px 0}.study-note-link{display:inline-block;margin-top:22px;font-size:15px}.question-form{display:grid;gap:16px;padding:28px}.question-form label:not(.study-check){display:grid;gap:8px;font-size:16px}.question-form textarea,.question-form input:not([type=checkbox]):not([type=hidden]){width:100%;border:1px solid #aebbb7;border-radius:8px;padding:12px;font:inherit;font-size:17px;background:#fffdf8}.question-form .study-check{display:flex;gap:10px;align-items:center;font-size:16px}.question-form input[type=checkbox]{width:19px;height:19px}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:14px}.note-question-gate{padding:18px;background:#f1f2e9;border-radius:12px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0}.note-question-gate label{display:flex;flex-direction:column;gap:6px;font-size:13px;max-width:100%}.note-question-gate select{max-width:340px;width:100%;font-size:14px}.graph-task-label{font-size:16px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.graph-board{border:1px solid #c6cfcd;background:#fffdf8;border-radius:16px;overflow:hidden}.graph-board svg{display:block;width:100%;height:auto;touch-action:none;cursor:crosshair}.graph-board svg text{font:14px sans-serif;fill:#354852}.graph-board [hidden]{display:none}.graph-keyboard{margin:20px 0;padding:18px;background:#f0f1e8;border-radius:12px;font-size:15px;line-height:1.7}#graph-inputs{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}#graph-inputs label{display:flex;flex-direction:column;gap:6px}#graph-inputs input{width:95px;padding:10px;font:inherit;border:1px solid #b9c5c2;border-radius:8px}.graph-result p{font-size:18px;line-height:1.8}.study-tools-page button:focus-visible,.learning-hub button:focus-visible{outline:3px solid #365eac;outline-offset:4px}
@media(max-width:700px){.learning-hub-grid,.concept-map-grid{grid-template-columns:1fr 1fr;gap:10px}.learning-hub-card,.concept-node{padding:17px}.concept-node.selected{padding:16px}.learning-hub-card strong,.concept-node strong{font-size:18px}.learning-hub-card span{font-size:14px}.concept-detail,.concept-connections,.review-study-card,.graph-result{padding:20px}.question-form{padding:18px}.study-actions .button{white-space:normal}.note-question-gate{padding:14px}.study-prose,.concept-detail p{font-size:20px}}
@media(max-width:420px){.learning-hub-grid{grid-template-columns:1fr}.concept-node span{font-size:13px}.graph-board svg text{font-size:16px}}
.learning-tool-groups{display:grid;gap:22px}.learning-tool-group{--tool-accent:#acbb99;padding:24px;border:1px solid #cbd0bf;border-top:3px solid var(--tool-accent);background:#f4f5ed;min-width:0}.tool-group-math{--tool-accent:#92a9cc;background:#f0f3f9}.tool-group-review{--tool-accent:#c8b877;background:#f8f5e9}.tool-group-research{--tool-accent:#b3a1b9;background:#f5f1f5}.learning-tool-heading{display:flex;align-items:center;gap:14px;margin-bottom:20px}.learning-tool-mark{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:1px solid var(--tool-accent);background:#fffef8;font-size:25px;color:#47543e}.learning-tool-heading h3{font-size:22px;line-height:1.4;margin:0 0 5px;color:#30372d}.learning-tool-heading p{font-size:14px;line-height:1.7;margin:0;color:#626958}.learning-tool-group .learning-hub-card{border-radius:4px;background:#fffef8;gap:10px;min-width:0;transition:background .15s,transform .15s}.learning-tool-group .learning-hub-card strong{font-size:19px;line-height:1.55;overflow-wrap:anywhere}.learning-tool-group .learning-hub-card small{font-size:12px;line-height:1.6}.learning-tool-group .learning-hub-card span{font-size:14px;line-height:1.8}.learning-tool-group .learning-hub-card:last-child:nth-child(odd){grid-column:1/-1}.learning-tool-group .learning-hub-card:hover{background:#f6f0d9}.learning-tool-group .learning-hub-card:focus-visible{outline:3px solid #4b68a8;outline-offset:3px}@media(max-width:700px){.learning-tool-group{padding:18px}.learning-tool-heading{gap:12px;margin-bottom:16px}.learning-tool-heading h3{font-size:21px}.learning-tool-group .learning-hub-grid{grid-template-columns:1fr}.learning-tool-group .learning-hub-card{padding:18px}.learning-tool-groups{gap:18px}}@media(prefers-reduced-motion:reduce){.learning-tool-group .learning-hub-card{transition:none;transform:none}}

/* Keep recall controls and note link apart, including button shadows. */
.review-recall-actions{gap:16px 24px;margin:24px 0 0;align-items:center}.review-recall-actions .study-note-link{margin:0;max-width:100%;line-height:1.6;overflow-wrap:anywhere}.review-recall-actions .button{max-width:100%;white-space:normal}

/* Keep the lab selector aligned with the experiment panel, with breathing room. */
.physics-lab-picker{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;max-width:440px;margin:24px 0 28px;align-items:start;font-size:16px;line-height:1.5}.physics-lab-picker #physics-lab-choice{display:block;box-sizing:border-box;width:100%;max-width:none;min-height:48px;margin:0;padding:11px 14px;font:inherit;line-height:1.5;color:inherit;border:1px solid #bcc6c5;border-radius:8px;background:#fffdf4;transform:none;vertical-align:middle}
/* Inset the chevron consistently instead of the browser's edge-aligned arrow. */
.physics-lab-picker{position:relative}.physics-lab-picker #physics-lab-choice{appearance:none;-webkit-appearance:none;padding-right:48px}.physics-lab-picker::after{content:'';position:absolute;right:20px;bottom:24px;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(30%) rotate(45deg);pointer-events:none}
