.remembered-tutor{margin-top:24px;text-align:left}.remembered-tutor>summary{cursor:pointer;font-weight:700;font-size:18px;min-height:42px;align-content:center}.tutor-body{padding-top:16px;max-width:760px}.tutor-body label{display:grid;gap:6px;margin:12px 0}.tutor-body select{max-width:320px}.tutor-log{max-height:420px;overflow:auto;scrollbar-color:var(--muted) transparent;padding:8px 12px;margin:16px 0;border:1px solid var(--line);border-radius:8px}.tutor-log p{white-space:pre-wrap;overflow-wrap:anywhere;max-width:68ch}.tutor-student{font-weight:600}.tutor-reply{padding:12px 0;border-bottom:1px solid var(--line)}.tutor-reply:last-child{border:0}.tutor-reply li{margin-bottom:12px}.tutor-reply li p{margin:4px 0}.tutor-body textarea{width:100%;min-height:88px;resize:vertical}.tutor-actions{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.tutor-check{margin:16px 0}.tutor-choices{display:grid;gap:8px}.tutor-choices .btn{text-align:left;white-space:normal}.tutor-memory{padding-top:16px;border-top:1px solid var(--line)}.tutor-memory summary{cursor:pointer;min-height:42px;align-content:center}.tutor-memory li{overflow-wrap:anywhere;margin-bottom:12px}.tutor-memory li button{margin-left:8px}.tutor-check:empty{display:none}.tutor-body :focus-visible{outline:3px solid var(--green);outline-offset:3px}.tutor-body ::selection{background:var(--green2);color:var(--ink)}@media(max-width:760px){.tutor-log{max-height:340px;padding:8px}.tutor-actions>.btn{flex:1 1 180px}.tutor-body select{max-width:100%}}

/* Website companion: out of document flow, never a page grid item. */
.remembered-tutor.tutor-dock{position:fixed;right:24px;bottom:24px;z-index:1200;margin:0;padding:0;border:0;background:none;box-shadow:none;text-align:left}
.tutor-dock>.tutor-launcher{display:flex;align-items:center;gap:8px;min-height:56px;padding:8px 16px 8px 8px;border:1px solid var(--line);border-radius:32px;background:var(--card,#fffef8);color:var(--ink);box-shadow:0 6px 22px #173c2526;list-style:none;font-size:15px}
.tutor-launcher::-webkit-details-marker{display:none}
.tutor-avatar{display:block;width:48px;height:48px;flex:none;background:url('/assets/forest-characters.png') 100% 0/200% 200% no-repeat}
.tutor-dock>.tutor-body{position:fixed;right:24px;bottom:104px;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 128px);overflow:auto;overscroll-behavior:contain;padding:20px;background:var(--card,#fffef8);color:var(--ink);border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 36px #173c2533}
.tutor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:-20px;background:var(--card,#fffef8);padding:12px 0;z-index:1}
.tutor-body .tutor-log{max-height:260px}
.tutor-dock:not([open])>.tutor-body{display:none}
.tutor-dock[open]>.tutor-body{display:block}
.tutor-dock .tutor-memory small{display:block;overflow-wrap:anywhere}
@media(max-width:600px){.remembered-tutor.tutor-dock{right:12px;bottom:calc(12px + env(safe-area-inset-bottom))}.tutor-dock>.tutor-body{inset:0;width:100%;height:100dvh;max-height:none;border-radius:0;padding:16px;padding-bottom:calc(24px + env(safe-area-inset-bottom))}.tutor-dock[open]>.tutor-launcher{visibility:hidden}.tutor-toolbar{top:-16px}.tutor-body .tutor-log{max-height:38dvh}}

.spelling-tutor-cue{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);margin-bottom:16px}.spelling-tutor-cue p{flex:1;margin:0}.spelling-structure{padding:12px 0}.spelling-structure p{font-size:24px;font-weight:700;letter-spacing:.04em}.spelling-tutor-cue .btn{flex:none}@media(max-width:600px){.spelling-tutor-cue{flex-wrap:wrap}.spelling-tutor-cue .btn{margin-left:auto}.spelling-structure p{font-size:20px}}
