/* Course-wide student notebook. Notes persist across all AQA topics on this device. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.notebook-backdrop{position:fixed;inset:0;z-index:89;background:rgba(2,7,13,.48);backdrop-filter:blur(2px)}
.notebook-panel{position:fixed;top:0;right:0;z-index:90;width:min(520px,97vw);height:100dvh;background:#09131f;border-left:1px solid var(--line);box-shadow:-22px 0 60px rgba(0,0,0,.4);display:flex;flex-direction:column;transform:translateX(104%);transition:transform .2s ease}
.notebook-panel.open{transform:translateX(0)}
.notebook-head{padding:15px 16px 12px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line-soft)}
.notebook-head h2{margin:4px 0 3px;font-size:1.24rem}.notebook-head p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.45}
.notebook-context{padding:9px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line-soft);background:#0b1623}
.notebook-context strong{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notebook-context select{min-width:145px;max-width:220px;height:34px;border:1px solid var(--line);border-radius:8px;background:#0e1b2a;color:var(--text);padding:5px 8px;font-size:.72rem;font-weight:750}
.notebook-tools{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:9px 16px;border-bottom:1px solid var(--line-soft);background:#08131f}
.notebook-search input{width:100%;height:34px;border:1px solid var(--line);border-radius:8px;background:#07111c;color:var(--text);padding:5px 9px;font:inherit;font-size:.72rem}.notebook-search input:focus{outline:2px solid rgba(102,217,208,.14);border-color:rgba(102,217,208,.5)}
.notebook-count{font-size:.62rem;color:#7f94a8;white-space:nowrap}.notebook-export{font-size:.65rem!important;white-space:nowrap}
.notebook-compose{padding:12px 16px;border-bottom:1px solid var(--line-soft)}
.notebook-compose label{display:grid;gap:6px}.notebook-compose label>span{font-size:.64rem;text-transform:uppercase;letter-spacing:.07em;color:#758a9e;font-weight:800}.notebook-compose textarea{width:100%;resize:vertical;min-height:92px;max-height:220px;border:1px solid var(--line);border-radius:10px;background:#07111c;color:var(--text);padding:10px 11px;font:inherit;font-size:.82rem;line-height:1.45}
.notebook-compose textarea:focus,.notebook-edit-input:focus{outline:2px solid rgba(102,217,208,.14);border-color:rgba(102,217,208,.5)}
.notebook-compose-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}.notebook-compose-row small{color:#6f8499;font-size:.64rem}.notebook-save{white-space:nowrap}
.notebook-list{flex:1;overflow:auto;padding:12px 16px 24px;display:flex;flex-direction:column;gap:9px}
.notebook-empty{padding:20px 14px;border:1px dashed var(--line);border-radius:11px;color:var(--muted);font-size:.78rem;line-height:1.55;text-align:center}
.notebook-group-label{display:flex;align-items:center;justify-content:space-between;margin:4px 1px 0;color:#b6c8d8;font-size:.63rem;font-weight:850;text-transform:uppercase;letter-spacing:.065em}.notebook-group-label small{color:#6f8499;font-size:.58rem}
.notebook-topic-group{display:flex;flex-direction:column;gap:8px}.notebook-topic-label{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 2px 1px;color:#7890a5;font-size:.62rem;font-weight:800}.notebook-topic-label span{display:grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:rgba(255,255,255,.04);color:#8ea1b3;font-size:.56rem}
.notebook-card{border:1px solid var(--line-soft);border-radius:12px;background:#0e1a28;padding:10px 11px;display:grid;gap:7px;transition:border-color .15s ease,background .15s ease}.notebook-card.pinned{border-color:rgba(102,217,208,.28);background:linear-gradient(180deg,rgba(102,217,208,.055),rgba(14,26,40,.96))}.notebook-card.editing{border-color:rgba(125,170,240,.35)}
.notebook-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.notebook-meta{min-width:0;display:grid;gap:2px}.notebook-meta strong{color:var(--accent);font-size:.68rem}.notebook-meta span{color:#7f94a8;font-size:.63rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notebook-card p{margin:0;color:#d7e2ec;font-size:.79rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.notebook-card-actions{display:flex;align-items:center;gap:2px;flex:0 0 auto}.notebook-card-actions button{appearance:none;border:0;background:transparent;color:#8ea1b3;padding:3px 4px;border-radius:6px;cursor:pointer;font-size:.68rem}.notebook-card-actions button:hover{background:rgba(255,255,255,.05);color:#d7e6f2}.notebook-card-actions .notebook-pin{font-size:.84rem;color:#7890a5}.notebook-card-actions .notebook-pin[aria-pressed="true"]{color:#9be8e2}.notebook-card-actions .notebook-delete:hover{color:#ffb1b1}
.notebook-card-foot{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.notebook-source,.notebook-pinned-label{display:inline-flex;align-items:center;width:max-content;padding:3px 6px;border-radius:999px;background:rgba(255,255,255,.035);color:#7890a5;font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.045em}.notebook-pinned-label{background:rgba(102,217,208,.07);color:#8ddbd5}
.notebook-inline-edit{display:grid;gap:8px}.notebook-edit-input{width:100%;resize:vertical;min-height:96px;max-height:260px;border:1px solid var(--line);border-radius:9px;background:#07111c;color:var(--text);padding:9px 10px;font:inherit;font-size:.78rem;line-height:1.5}.notebook-inline-edit>div{display:flex;justify-content:flex-end;align-items:center;gap:8px}.notebook-inline-edit .button{padding:6px 9px;font-size:.68rem}
.notebook-button{white-space:nowrap;background:rgba(102,217,208,.055);border-color:rgba(102,217,208,.16);font-size:.76rem;padding:8px 10px}.notebook-button span{color:#9be8e2}
.notebook-toast{position:fixed;left:50%;bottom:20px;z-index:120;transform:translate(-50%,18px);opacity:0;pointer-events:none;background:#102236;color:#e9f4fb;border:1px solid rgba(102,217,208,.24);border-radius:10px;padding:8px 11px;font-size:.74rem;font-weight:750;box-shadow:0 12px 32px rgba(0,0,0,.3);transition:opacity .15s ease,transform .15s ease}.notebook-toast.show{opacity:1;transform:translate(-50%,0)}
.coach-save-note{appearance:none;border:0;background:transparent;color:#8fcfc9;padding:3px 0;margin-top:6px;font:inherit;font-size:.66rem;font-weight:800;cursor:pointer}.coach-save-note:hover{color:#c9f4ef;text-decoration:underline}
@media(max-width:760px){.notebook-panel{width:100vw}.notebook-head{padding-top:max(15px,env(safe-area-inset-top))}.notebook-context{align-items:flex-start;flex-direction:column}.notebook-context select{width:100%;max-width:none}.notebook-tools{grid-template-columns:minmax(0,1fr) auto}.notebook-count{grid-column:1/2;grid-row:2}.notebook-export{grid-column:2;grid-row:1/3}.notebook-button{width:36px!important;height:36px!important;padding:0!important;font-size:0!important;display:grid!important;place-items:center!important}.notebook-button span{font-size:.9rem!important}.notebook-compose-row{align-items:flex-end}.notebook-toast{bottom:12px;max-width:calc(100vw - 24px);text-align:center}.notebook-card-head{gap:6px}.notebook-card-actions button{padding:4px 5px}.notebook-meta span{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}
@media(prefers-reduced-motion:reduce){.notebook-panel,.notebook-toast,.notebook-card{transition:none!important}}
