/* Sparse annotations preserve the underlying topic colors. */
:root{--teach-amber:#e2b667;--teach-violet:#bb9fed;--teach-red:#eb8c91;--teach-border:rgba(163,185,218,.2);--teach-text:#e4edf8;--teach-muted:#a9b7ca}
#teachingOpen.has-questions{border-color:rgba(226,182,103,.6);color:var(--teach-amber)}
.teaching-context{margin:16px 0 22px;padding:15px 0 17px;border-top:1px solid var(--teach-border);border-bottom:1px solid var(--teach-border)}
.teaching-context p{line-height:1.7}.teach-eyebrow{font-size:11px;letter-spacing:.08em;color:var(--teach-muted);margin-bottom:10px}.teach-muted{font-size:12px!important;color:var(--teach-muted)!important;line-height:1.7!important}.teach-compact-actions{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:12px}
.teach-button,.teach-choice{font:inherit;font-size:13px;padding:10px 13px;border:1px solid var(--teach-border);border-radius:10px;color:var(--teach-text);background:rgba(101,124,164,.08);cursor:pointer;min-height:40px;transition:border-color .15s,background .15s}.teach-button:hover,.teach-choice:hover{background:rgba(136,162,197,.17);border-color:rgba(182,205,238,.5)}.teach-button.primary{color:#e8dafd;background:rgba(164,129,216,.14);border-color:rgba(164,129,216,.55)}.teach-button:disabled{opacity:.55;cursor:progress}.teach-choice[aria-pressed=true]{background:rgba(164,129,216,.2);border-color:#ba9ddd;color:#f3eafd}.teach-link{border:0;padding:6px 0;background:none;color:#c2adf1;font:inherit;font-size:12px;cursor:pointer;text-align:left;text-decoration:underline;text-underline-offset:4px}
.teach-question{display:block;width:100%;margin:9px 0;padding:13px 14px;border:1px solid var(--teach-border);border-left:2px solid currentColor;border-radius:11px;background:rgba(24,36,60,.65);text-align:left;cursor:pointer;color:var(--teach-text);font:inherit}.teach-question:hover{background:rgba(46,62,91,.8)}.teach-question strong{display:block;color:var(--teach-text);font-size:14px;line-height:1.6;font-weight:550;word-break:keep-all;overflow-wrap:anywhere;margin-top:7px}.teach-question p{color:var(--teach-muted);font-size:12px;line-height:1.6;margin:7px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.teach-question-top{display:flex;align-items:center;justify-content:space-between;gap:7px;flex-wrap:wrap;font-size:11px}.teach-question-top b{font-weight:500}.teach-question-top small{color:var(--teach-muted);font-size:10px}.amber{color:var(--teach-amber)}.violet{color:var(--teach-violet)}.red{color:var(--teach-red)}.teach-question.stale{border-left-color:#7b8b9f;color:#9aabba}
#teachingMarkers{position:fixed;inset:0;pointer-events:none;z-index:12}.teaching-marker{position:absolute;transform:translate(-50%,-50%);width:30px;height:30px;padding:0;border:1px solid currentColor;border-radius:50%;font-size:23px;line-height:26px;background:rgba(10,18,32,.83);pointer-events:auto;cursor:pointer;box-shadow:0 0 0 4px rgba(9,16,27,.55);font-family:system-ui}.teaching-marker.violet{border-radius:7px}.teaching-marker.red{font-size:17px;font-weight:600}.teaching-marker:hover{box-shadow:0 0 0 6px rgba(193,177,225,.16)}.teaching-marker[hidden]{display:none}
.teaching-dialog{color:var(--teach-text);width:min(780px,calc(100vw - 32px));max-width:780px;max-height:calc(100dvh - 42px);height:auto;padding:0;border:1px solid rgba(163,185,218,.32);border-radius:20px;background:linear-gradient(150deg,rgba(23,33,53,.985),rgba(12,21,38,.99));box-shadow:0 24px 90px rgba(0,0,0,.55);overflow:hidden;line-height:1.65;font-family:inherit}.teaching-dialog[open]{display:flex;flex-direction:column}.teaching-dialog::backdrop{background:rgba(3,8,17,.72);backdrop-filter:blur(5px)}.teaching-dialog-head{position:relative;padding:23px 65px 17px 28px;border-bottom:1px solid var(--teach-border);flex-shrink:0}.teaching-dialog-head h2{font-size:22px;font-weight:550;letter-spacing:-.035em;margin:0;word-break:keep-all;overflow-wrap:anywhere}.teach-close{position:absolute;right:17px;top:20px;width:34px;height:34px;border:1px solid var(--teach-border);border-radius:50%;background:transparent;color:var(--teach-muted);font-size:22px;cursor:pointer}.teaching-content{padding:22px 28px 28px;overflow-y:auto;overscroll-behavior:contain;min-height:0;scrollbar-width:thin;scrollbar-color:#38455c transparent}.teaching-footer{border-top:1px solid var(--teach-border);padding:13px 25px;font-size:11px;color:var(--teach-muted);background:rgba(0,0,0,.14);flex-shrink:0}.teach-lead{font-size:14px;line-height:1.85;color:var(--teach-muted);margin:0 0 17px}.teach-legend{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:12px;margin:16px 0 23px}.teach-summary{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:14px 0;border-top:1px solid var(--teach-border);border-bottom:1px solid var(--teach-border);font-size:13px}.teach-summary span{color:var(--teach-muted)}.teach-empty{padding:20px 0;color:var(--teach-muted);line-height:1.9}.teach-badges{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:12px;margin-bottom:20px}.teach-badges>span{padding:5px 11px;border:1px solid var(--teach-border);border-radius:30px}.teach-badges>span:last-child{color:var(--teach-muted)}.teach-section{margin:18px 0}.teach-section h4{font-size:12px;font-weight:550;color:#bbcae0;margin:0 0 6px}.teach-section p{font-size:14px;line-height:1.9;margin:0;white-space:pre-wrap;word-break:keep-all;overflow-wrap:anywhere}.teach-evidence,.teach-history,.teach-progress{border:1px solid var(--teach-border);border-radius:12px;padding:12px 15px;margin:18px 0;background:rgba(3,12,25,.15)}.teach-evidence summary,.teach-history summary,.teach-progress summary{font-size:13px;color:#c4b3e9;cursor:pointer}.teach-source{display:grid;grid-template-columns:100px minmax(0,1fr);gap:5px 12px;border-top:1px solid var(--teach-border);padding:12px 0;font-size:11px}.teach-source small{color:var(--teach-muted);overflow-wrap:anywhere}.teach-source code{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all;color:#bfcee3}.teach-targets{display:flex;gap:15px;flex-wrap:wrap}.teach-steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:0;margin:24px 0}.teach-steps li{font-size:11px;color:#73859e;padding:10px 4px;border-top:2px solid #344157;text-align:center}.teach-steps li.done{color:#d2baf4;border-color:#b094d2}.teach-phone{padding:16px;border:1px solid var(--teach-border);border-radius:12px;margin:20px 0}.teach-phone h4{margin:0;font-size:13px}.teach-phone p{font-size:12px;color:var(--teach-muted)}
.teach-form{margin-top:26px;padding-top:20px;border-top:1px solid var(--teach-border)}.teach-form h3{font-weight:500;font-size:17px;margin:0 0 14px}.teach-actions{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px}.teach-label{display:block;font-size:12px;color:#b8c8dd;margin:15px 0 7px}.teach-form textarea,.teach-form select{display:block;box-sizing:border-box;width:100%;border:1px solid var(--teach-border);border-radius:10px;background:#111e33;color:var(--teach-text);font:inherit;font-size:14px;padding:12px;line-height:1.75;resize:vertical;min-width:0}.teach-form textarea:focus,.teach-form select:focus{outline:2px solid #ac91d0;outline-offset:2px}.teach-form select{min-height:44px}.teach-scope-fields[hidden]{display:none}.teach-submit-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.teach-error{font-size:13px;color:#f0bba8;white-space:pre-wrap;overflow-wrap:anywhere}.teach-error:empty{display:none}.teaching-dialog :focus-visible,.teaching-context :focus-visible,.teaching-marker:focus-visible{outline:2px solid #bfa7e7;outline-offset:3px}
@media(max-width:700px){.teaching-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 18px);border-radius:15px}.teaching-dialog-head{padding:19px 56px 15px 18px}.teaching-dialog-head h2{font-size:19px}.teaching-content{padding:16px 18px 22px}.teaching-footer{padding:11px 17px}.teach-choice{flex:1 1 42%;font-size:12px;padding:9px}.teach-steps{gap:3px}.teach-steps li{font-size:10px}.teach-source{grid-template-columns:1fr;gap:3px}.teach-source small{margin-top:6px}.teach-submit-row .teach-button{flex:1 1 42%}.teach-compact-actions{align-items:flex-start;flex-direction:column}#teachingOpen{font-size:11px;padding:6px 8px}.teach-section p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.teach-button,.teach-choice{transition:none}}
