.assist-page{max-width:1100px;margin:0 auto}.assist-page .page-heading h1{letter-spacing:-.035em}.assist-page h2{font-size:1.12rem;line-height:1.45}.assist-form,.assist-context,.assist-report{padding:26px}.assist-context{margin-bottom:20px;background:linear-gradient(120deg,#f6f4fa,#f5f8f6)}.assist-prose{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.assist-muted{color:var(--muted,#6c7079);font-size:.88rem;line-height:1.7}.assist-field{display:flex;flex-direction:column;gap:8px;margin:0 0 20px;font-weight:600;font-size:.9rem}.assist-field input,.assist-field textarea,.assist-field select{width:100%;box-sizing:border-box;min-height:46px;border:1px solid var(--line,#dedde4);border-radius:12px;padding:12px 14px;background:var(--surface,#fff);font:inherit;font-weight:400;color:inherit;font-size:16px;line-height:1.6}.assist-field textarea{resize:vertical}.assist-field input:focus,.assist-field textarea:focus,.assist-field select:focus{outline:3px solid #ded8ee;outline-offset:2px}.assist-error{color:#963d45;background:#fff2f2;border-radius:10px;padding:12px;line-height:1.6}.assist-error[hidden]{display:none}.assist-notice{padding:16px 20px;background:#f0edf6;border:1px solid #e4dfef;border-radius:14px;font-size:.9rem;line-height:1.75;margin:0 0 22px;color:#514966}.assist-empty{text-align:center;padding:42px 24px;margin:20px 0}.assist-empty p{max-width:530px;margin:12px auto;color:var(--muted,#6c7079);line-height:1.8}.assist-report-list{display:grid;gap:18px}.assist-report h2{white-space:pre-wrap;overflow-wrap:anywhere;margin:18px 0}.assist-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.assist-actions .btn,.assist-page button{min-height:44px}.assist-options{padding:0;list-style:none;display:grid;gap:10px}.assist-review{border-top:1px solid #e8e5ed;margin-top:22px;padding-top:22px}.tutor-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px;align-items:start}.tutor-history{padding:20px;display:flex;flex-direction:column;gap:10px}.tutor-history h2,.tutor-history p{margin:0 0 6px}.tutor-history button{width:100%;text-align:left;white-space:normal;overflow-wrap:anywhere}.tutor-history button[aria-current=true]{background:#eee8f6;border-color:#c7b8de;color:#574170}.tutor-conversation{overflow:hidden}.tutor-conversation-head{padding:22px 26px;border-bottom:1px solid #eeebf2}.tutor-conversation-head h2{margin:0 0 7px}.tutor-messages{padding:24px;display:flex;flex-direction:column;gap:20px;min-height:200px}.tutor-message{padding:18px 20px;border-radius:16px;max-width:100%;overflow-wrap:anywhere}.tutor-question{background:#f3f1f7;margin-left:30px}.tutor-answer{background:#f0f5f2;margin-right:20px}.tutor-message-meta{font-size:.75rem;font-weight:700;color:#68736c;letter-spacing:.02em;margin-bottom:10px}.tutor-question .tutor-message-meta{color:#786a8b}.tutor-welcome{padding:25px 6px;color:var(--muted,#6c7079);line-height:1.8}.tutor-sources{border-top:1px solid #dce5de;margin-top:18px;padding-top:12px;display:flex;flex-wrap:wrap;gap:9px 15px;font-size:.8rem}.tutor-sources span{width:100%;font-weight:600}.tutor-sources a{color:#426b58;text-decoration:underline;text-underline-offset:3px}.tutor-conversation form{padding:24px;border-top:1px solid #eeebf2}.tutor-send{display:flex;align-items:center;justify-content:space-between;gap:18px}.tutor-send .assist-muted{max-width:290px}.tutor-send button{flex-shrink:0}.tutor-config{margin-top:26px;padding:22px 26px}.tutor-config summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}.tutor-config form{max-width:650px;margin-top:22px}.tutor-toggle{display:flex;align-items:center;gap:12px;min-height:44px;font-size:.9rem}.tutor-toggle input{width:20px;height:20px;accent-color:#796493}.tutor-config-status{font-size:.9rem;line-height:1.7;color:#53665b}.assist-page button:disabled{cursor:wait;opacity:.6}.assist-page [name=enabled]:disabled{cursor:not-allowed}.assist-page a:focus-visible,.assist-page button:focus-visible,.tutor-config summary:focus-visible{outline:3px solid #c8b8de;outline-offset:3px}@media(max-width:760px){.tutor-layout{grid-template-columns:1fr;gap:16px}.tutor-history{gap:8px}.tutor-history button{max-width:100%}.tutor-history{max-height:240px;overflow:auto}.assist-form,.assist-context,.assist-report{padding:20px}.tutor-conversation-head,.tutor-messages,.tutor-conversation form,.tutor-config{padding:20px}.tutor-send{align-items:stretch;flex-direction:column}.tutor-send .assist-muted{max-width:none}.tutor-question{margin-left:12px}.tutor-answer{margin-right:0}.assist-actions button{flex:1}.assist-notice{padding:15px 17px}.tutor-message{padding:16px}.assist-page .page-heading{gap:16px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){.assist-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.assist-feedback-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line,#e6e8e4)}
.assist-flag-note{margin-top:18px;padding:12px 14px;border-radius:12px;background:#fff7e7;color:#72551d;font-size:.9rem;line-height:1.6}
@media(max-width:600px){.assist-feedback-actions .btn{width:100%;justify-content:center}}
/* Chat workspace: the transcript owns its scroll; navigation and composer stay available. */
.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}
.tutor-page{max-width:1280px}.tutor-page-heading{margin-bottom:20px!important;align-items:center}.tutor-page-heading h1{font-size:30px}.tutor-page-heading p{font-size:13px}.tutor-save-label{font-size:12px;color:#63786a;display:flex;align-items:center;gap:7px}.tutor-save-label:before{content:'';width:6px;height:6px;border-radius:50%;background:#7e9c86}
.tutor-workspace{position:relative;display:grid;grid-template-columns:248px minmax(0,1fr);height:clamp(530px,calc(100dvh - 205px),900px);min-height:0;border:1px solid var(--line);border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 7px 32px #392c5010}.tutor-workspace .tutor-history{border:0;border-radius:0;border-right:1px solid var(--line);padding:20px 16px;background:#f7f6f4;gap:14px;min-height:0;max-height:none;overflow:hidden}.tutor-history-heading{display:flex;align-items:center;justify-content:space-between}.tutor-history-heading h2{font-family:inherit;font-size:13px;font-weight:650;margin:0}.tutor-history>.btn{background:white;justify-content:center}.tutor-search input{width:100%;min-height:42px;padding:10px 12px;border:1px solid #e5e0e8;border-radius:11px;font:inherit;background:#fff;font-size:13px}.tutor-session-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:5px;padding:2px}.tutor-session{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid transparent;border-radius:12px;background:transparent;color:#514a59;min-height:65px!important;flex-shrink:0;transition:background .15s}.tutor-session:hover{background:#eeebf0}.tutor-session span{font-size:13px;font-weight:600;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tutor-session small{font-size:10px;color:#756d7c}.tutor-history-empty{font-size:12px;padding:16px 8px}.tutor-history-foot{font-size:10px!important;color:#7c7481;margin:0!important;padding:10px 8px 0;border-top:1px solid var(--line)}
.tutor-conversation{display:flex;flex-direction:column;min-height:0;min-width:0;background:#fff}.tutor-conversation-head{display:flex;align-items:center;gap:12px;padding:17px 24px;flex-shrink:0;background:#fff}.tutor-title{min-width:0;flex:1}.tutor-conversation-head h2{font-size:14px;font-family:inherit;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 3px}.tutor-title p{font-size:11px;color:#807687;margin:0}.tutor-messages{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:26px clamp(18px,4vw,52px);gap:26px;scrollbar-width:thin;scrollbar-color:#dcd6df transparent}.tutor-message{padding:0;border-radius:0;max-width:100%;margin:0;flex-shrink:0;background:transparent}.tutor-question{align-self:flex-end;max-width:85%;padding:14px 18px;background:#f0ebf5;border-radius:18px 18px 4px 18px}.tutor-question .tutor-message-meta{margin-bottom:5px;font-size:10px;font-weight:500}.tutor-message-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12px;color:#5b7061;margin-bottom:11px}.tutor-model-label{font-size:9px;color:#8d8491;font-weight:400;letter-spacing:0}.tutor-question .assist-prose{font-size:14px;line-height:1.7}.tutor-markdown{font-size:14px;line-height:1.85;overflow-wrap:anywhere;color:#403a45}.tutor-markdown>:first-child{margin-top:0!important}.tutor-markdown>:last-child{margin-bottom:0!important}.tutor-markdown p{margin:0 0 14px;line-height:1.85}.tutor-markdown h1,.tutor-markdown h2,.tutor-markdown h3,.tutor-markdown h4{font-family:inherit!important;font-weight:650;letter-spacing:0;line-height:1.5;margin:22px 0 10px;color:#38303f}.tutor-markdown h1,.tutor-markdown h2{font-size:17px}.tutor-markdown h3,.tutor-markdown h4{font-size:15px}.tutor-markdown ul,.tutor-markdown ol{padding-left:23px;margin:10px 0 16px}.tutor-markdown li{padding-left:3px;margin:6px 0;line-height:1.8}.tutor-markdown li p{margin-bottom:6px}.tutor-markdown strong{font-weight:650}.tutor-markdown blockquote{margin:16px 0;padding:10px 16px;border-left:3px solid #b4a3c3;background:#f8f6fa;color:#69606e}.tutor-markdown pre{max-width:100%;white-space:pre-wrap;background:#f5f3f6;padding:12px;border-radius:10px;overflow:auto;font-size:12px}.tutor-markdown code{background:#f2eef5;border-radius:4px;padding:2px 4px;font-size:.9em}.tutor-markdown table{display:block;overflow-x:auto;max-width:100%;border-spacing:0;margin:16px 0;font-size:12px}.tutor-markdown th,.tutor-markdown td{text-align:left;vertical-align:top;padding:10px 12px;border:1px solid #e9e4ec;min-width:100px}.tutor-markdown th{background:#f5f2f7;font-weight:600}.tutor-markdown a{color:#67517b;text-decoration:underline;text-underline-offset:3px}.tutor-markdown hr{border:0;border-top:1px solid var(--line);margin:22px 0}.tutor-answer .tutor-sources{display:block;border-top:0;padding:0;margin-top:14px;font-size:11px;color:#77847a}.tutor-sources summary{cursor:pointer;min-height:32px;line-height:32px;font-weight:500}.tutor-sources p{font-size:10px;line-height:1.7;margin:6px 0 10px}.tutor-sources a{display:block;width:fit-content;margin:7px 0;overflow-wrap:anywhere}.is-revealing .tutor-sources{visibility:hidden}.tutor-older-row{text-align:center}.tutor-older-row .btn{font-size:11px;padding:7px 13px;min-height:34px}
.tutor-welcome{margin:auto 0;text-align:center;padding:20px 12px;color:#817886}.tutor-welcome h2{font-family:Georgia,serif;font-size:27px!important;font-weight:400;letter-spacing:-.03em;margin:18px 0 12px;color:#51415e}.tutor-welcome p{font-size:13px;max-width:390px;margin:auto;line-height:1.8}.tutor-welcome-symbol{font-size:35px;color:#b3a0c2;display:inline-block;animation:tutor-breathe 4s ease-in-out infinite}.tutor-starters{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:24px auto 0;max-width:440px}.tutor-starters .btn{white-space:normal;line-height:1.6;font-size:11px;padding:10px 13px;min-height:42px;background:#faf9fc;border:1px solid #eae5ef}
.tutor-conversation form.tutor-composer{border:0;padding:12px 22px 4px;background:#fff;flex-shrink:0}.tutor-input-row{display:flex;align-items:flex-end;gap:10px;padding:7px;border:1px solid #ded6e5;border-radius:18px;background:#fcfbfd;box-shadow:0 3px 14px #5d427208}.tutor-input-row:focus-within{border-color:#b8a6ca;box-shadow:0 0 0 3px #eee8f5}.tutor-input-row textarea{min-width:0;flex:1;display:block;border:0;background:transparent;padding:12px;min-height:48px;max-height:150px;resize:none;font:inherit;font-size:15px;line-height:1.6;color:var(--ink);outline:none!important}.tutor-submit{border-radius:12px!important;min-height:44px!important;height:44px;min-width:44px;justify-content:center;padding:8px 13px;font-size:20px;display:flex;gap:6px;align-items:center;margin-bottom:2px}.tutor-submit span{font-size:11px}.tutor-send{display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:center;min-height:28px;padding:3px 5px;gap:8px}.tutor-send .assist-muted{font-size:10px;max-width:none}.tutor-skip{font-size:10px;background:transparent;border:0;padding:4px;color:#79628d;min-height:28px!important}.tutor-skip[hidden]{display:none}.tutor-advisory{font-size:10px;color:#8a808f;line-height:1.6;text-align:center;padding:0 25px 14px;flex-shrink:0}.tutor-typing{display:flex;align-items:center;gap:10px;color:#918496;font-size:11px;padding:4px 0 14px}.tutor-typing-dots{display:flex;gap:4px}.tutor-typing-dots i{display:block;width:6px;height:6px;border-radius:50%;background:#ae99bc;animation:tutor-dot 1.2s infinite}.tutor-typing-dots i:nth-child(2){animation-delay:.16s}.tutor-typing-dots i:nth-child(3){animation-delay:.32s}.tutor-history-toggle,.tutor-new-mobile,.tutor-mobile-close,.tutor-history-backdrop{display:none}.tutor-config{margin-top:20px}.tutor-config summary{font-size:12px}.tutor-composer .assist-error{font-size:12px;margin:8px 0}.tutor-page button:disabled{cursor:not-allowed}
@keyframes tutor-dot{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}@keyframes tutor-breathe{50%{transform:scale(1.08) rotate(10deg)}}
@media(max-width:900px){.tutor-workspace{grid-template-columns:210px minmax(0,1fr)}.tutor-model-label{display:none}.tutor-messages{padding:22px}}
@media(max-width:760px){.tutor-page-heading{margin-bottom:12px!important;gap:8px!important}.tutor-page-heading h1{font-size:25px}.tutor-page-heading p,.tutor-save-label{display:none}.tutor-workspace{display:flex;height:calc(100dvh - 158px);min-height:420px;max-height:1000px;border-radius:17px}.tutor-workspace .tutor-history{display:none;position:absolute;z-index:5;left:0;top:0;bottom:0;width:min(300px,85%);background:#f9f8f6;padding:20px 16px}.history-open .tutor-history{display:flex}.tutor-history-backdrop{position:absolute;inset:0;border:0;background:#30243950;z-index:4}.history-open .tutor-history-backdrop{display:block}.tutor-history-toggle,.tutor-new-mobile,.tutor-mobile-close{display:flex;justify-content:center;align-items:center;background:transparent;border:0;min-width:44px;min-height:44px;flex-shrink:0;color:#756082;font-size:20px;border-radius:10px}.tutor-history-toggle{gap:4px;font-size:17px}.tutor-history-toggle span{font-size:10px}.tutor-new-mobile{font-size:24px}.tutor-conversation{width:100%}.tutor-conversation-head{padding:10px 8px;gap:7px}.tutor-conversation-head h2{font-size:13px}.tutor-title p{font-size:9px}.tutor-title p span{display:none}.tutor-messages{padding:20px 17px;gap:24px}.tutor-question{max-width:90%;padding:12px 15px}.tutor-markdown,.tutor-question .assist-prose{font-size:14px}.tutor-markdown h1,.tutor-markdown h2{font-size:16px}.tutor-welcome h2{font-size:24px!important}.tutor-starters{gap:6px}.tutor-starters .btn{font-size:11px}.tutor-conversation form.tutor-composer{padding:8px 10px 2px}.tutor-advisory{font-size:9px;padding:0 14px 10px}.tutor-send .assist-muted{font-size:9px}.tutor-submit span{display:none}.tutor-input-row textarea{font-size:16px;padding:10px;min-height:44px}.tutor-input-row{padding:5px;border-radius:15px;gap:5px}.tutor-config{padding:14px 18px}}
@media(prefers-reduced-motion:reduce){.tutor-page *{animation:none!important;scroll-behavior:auto!important}}
@media(max-width:760px) and (max-height:600px){.tutor-page-heading{display:none!important}.tutor-workspace{height:calc(100dvh - 110px);min-height:210px}.tutor-advisory{padding-bottom:6px}.tutor-messages{padding:14px 17px}}
@media(min-width:761px){.tutor-workspace{height:clamp(440px,calc(100dvh - 270px),900px)}}
.tutor-history-heading h2{white-space:nowrap}.tutor-history .tutor-mobile-close{width:44px!important;flex:0 0 44px}
.tutor-quota-note{padding:10px 12px;margin:0 0 10px;border-radius:10px;background:#f6f2e9;color:#76633d;font-size:11px;line-height:1.7}.tutor-quota-note a{text-decoration:underline;text-underline-offset:2px}
