.sn-socratic-blocks{display:flex;flex-direction:column;gap:12px;line-height:1.65;word-break:keep-all;overflow-wrap:anywhere}
.sn-socratic-blocks section{min-width:0}
.sn-socratic-caption{display:block;font-size:11px;font-weight:750;color:#536789;margin-bottom:5px;line-height:1.5}
.sn-socratic-question{background:#edf5ff;border:1px solid #d5e7ff;border-left:3px solid #2b75f6;border-radius:8px;padding:11px 13px;color:#14335b}
.sn-socratic-question .sn-socratic-caption{color:#2261c2}
.sn-socratic-student{white-space:normal;overflow-wrap:anywhere}
.sn-socratic-blocks .katex-display,.sn-written-dialog .katex-display{max-width:100%;overflow:auto;padding:7px 0;margin:6px 0}
.sn-socratic-blocks .katex,.sn-written-dialog .katex{font-size:1.08em}
.lm-socrates-bubble .sn-socratic-blocks{font-size:inherit}
.sn-socratic-writing-entry{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0}
.sn-socratic-writing-entry button,.sn-written-entry{border:1px solid #bcd8ff;background:#f0f6ff;color:#1755b6;border-radius:8px;padding:9px 13px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.sn-socratic-writing-entry span{font-size:11px;color:#647591}
.summary-footer{flex-wrap:wrap}
.sn-written-overlay{position:fixed;inset:0;background:#10233b70;z-index:100100;display:grid;place-items:center;padding:24px;isolation:isolate}
.sn-written-dialog{box-sizing:border-box;width:min(880px,100%);max-height:92dvh;display:flex;flex-direction:column;border-radius:18px;background:#fff;box-shadow:0 24px 70px #001c433f;color:#172b49;font-family:inherit;text-align:left;line-height:1.6;overflow:hidden}
.sn-written-dialog *{box-sizing:border-box}
.sn-written-dialog>header{display:flex;justify-content:space-between;gap:18px;padding:22px 26px;background:#f0f6ff;border-bottom:1px solid #dfebf9;flex:none}
.sn-written-dialog>header small{color:#1765d8;font-size:10px;font-weight:750;letter-spacing:.12em}
.sn-written-dialog h2{font-size:24px;line-height:1.35;margin:4px 0;font-weight:800}
.sn-written-dialog>header p{margin:0;font-size:13px;color:#5b6e89}
.sn-written-dialog>header button{align-self:start;border:0;background:transparent;font-size:28px;cursor:pointer;padding:0 4px;color:#536887}
.sn-written-body{padding:22px 26px;overflow:auto;min-height:0;overscroll-behavior:contain}
.sn-written-task{padding:14px 16px;border-radius:10px;background:#edf5ff;border:1px solid #d8e8ff;font-size:15px;font-weight:650;margin:0 0 18px}
.sn-written-label{display:block;font-size:14px;font-weight:700;margin-bottom:8px}
.sn-written-dialog textarea{width:100%;min-height:156px;resize:vertical;max-height:50dvh;border:1px solid #b9cae1;border-radius:10px;padding:13px 15px;color:#142948;background:#fff;font:inherit;font-size:15px;line-height:1.7}
.sn-written-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}
.sn-written-actions button{border:0;border-radius:8px;background:#1768ec;color:#fff;padding:10px 16px;cursor:pointer;font:inherit;font-size:13px;font-weight:700}
.sn-written-actions button[data-written-save]{background:#edf3fa;color:#24476e}
.sn-written-actions button:disabled{opacity:.6;cursor:wait}
.sn-written-actions span{font-size:11px;color:#54738f}
.sn-written-dialog [role=alert]{color:#ad303a;background:#fff0f0;border-radius:8px;padding:10px 12px;font-size:13px;margin:10px 0}
.sn-written-result{margin-top:24px;border-top:1px solid #e0e8f3;padding-top:18px}
.sn-written-result h3{font-size:18px;font-weight:800;line-height:1.4;margin:18px 0 10px}
.sn-written-result>p{font-size:14px;margin:0 0 12px}
.sn-written-result ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.sn-written-criterion{border:1px solid #dce6f3;border-radius:10px;padding:13px 15px}
.sn-written-criterion>header{display:flex;align-items:start;justify-content:space-between;gap:10px;font-size:14px}
.sn-written-criterion header span{flex:none;border-radius:20px;background:#eef3fa;color:#54708c;font-size:11px;font-weight:700;padding:2px 9px}
.sn-written-criterion.met header span{background:#e5f5eb;color:#117946}
.sn-written-criterion.incorrect header span{background:#ffe9e9;color:#ae3741}
.sn-written-criterion.partial header span,.sn-written-criterion.missing header span{background:#fff3dc;color:#986008}
.sn-written-criterion p{font-size:13px;margin:9px 0 0}
.sn-written-criterion blockquote{margin:9px 0 0;padding:9px 12px;background:#f4f7fc;border-left:3px solid #bad1f0;font-size:13px}
.sn-written-result details{margin-top:10px;font-size:12px;color:#59708b}
.sn-written-result summary{cursor:pointer;font-weight:650}
.sn-written-result details p{background:#f4f7fb;border-radius:7px;padding:10px;font-size:12px;white-space:pre-wrap}
.sn-written-model{padding:17px 19px;background:#f0f7ff;border:1px solid #c9e0ff;border-radius:10px;font-size:15px;line-height:1.9;overflow-wrap:anywhere;word-break:keep-all}
.sn-written-rewrite{padding:14px 16px;background:#f0f8f4;border-radius:10px;margin-top:17px;font-size:13px;color:#1b6247}
.sn-written-rewrite p{margin:5px 0 0}
.sn-written-notice{font-size:11px!important;color:#718098;margin-top:12px!important}
.sn-written-guide{font-size:13px;color:#647894;margin:14px 0 0}
.sn-written-previous{border-top:1px solid #dee7f3;padding:12px 0}
.sn-written-dialog button:focus-visible,.sn-written-dialog textarea:focus-visible,.sn-written-dialog summary:focus-visible{outline:3px solid #5b9aff;outline-offset:3px}
@media(max-width:600px){.sn-written-overlay{padding:10px}.sn-written-dialog{max-height:96dvh;border-radius:13px}.sn-written-dialog>header{padding:16px}.sn-written-dialog h2{font-size:20px}.sn-written-body{padding:16px}.sn-written-task{font-size:13px}.sn-written-model{padding:13px;font-size:14px}.sn-written-dialog textarea{font-size:16px}.sn-socratic-blocks{gap:10px}.sn-socratic-writing-entry{padding:0 10px}}
