/* Scoped local tutor preview, preserving the Academy's existing components. */
.tutor-wrap{max-width:1200px;margin:24px auto;padding:0 24px;color:#142d47;font:16px/1.6 Arial,sans-serif;scroll-margin-top:90px}
.tutor-wrap *{box-sizing:border-box}.tutor-wrap [hidden]{display:none!important}
.tutor-shell{border:1px solid #d8dce1;border-radius:12px;background:#fff;box-shadow:0 12px 36px #102c4810;overflow:hidden}
.tutor-shell>summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 28px;cursor:pointer;list-style:none;background:linear-gradient(110deg,#fff,#f7f5ed)}.tutor-shell>summary::-webkit-details-marker{display:none}
.tutor-kicker{display:block;color:#806322;letter-spacing:.12em;font-size:11px;font-weight:700;margin:0 0 5px}.tutor-shell strong{display:block;font:28px/1.2 Georgia,serif}.tutor-open{font-size:14px;font-weight:700;color:#183c60;white-space:nowrap}
.tutor-content{padding:0 28px 24px}.tutor-notice{padding:14px 16px;border-left:3px solid #b19546;background:#f8f5eb;font-size:14px}.tutor-start p{max-width:850px;font-size:14px;color:#4e6072}.tutor-wrap button{min-height:44px;border:1px solid #ccd4dd;border-radius:6px;padding:10px 16px;background:#fff;color:#183552;font:600 14px/1.4 Arial,sans-serif;cursor:pointer}.tutor-wrap button:hover{background:#f0f3f6}.tutor-wrap button:disabled{opacity:.55;cursor:wait}.tutor-wrap #tutor-start,.tutor-wrap #tutor-send,.tutor-calculator button{background:#123453;color:#fff;border-color:#123453}.tutor-wrap :is(button,summary,input,textarea,select,a):focus-visible{outline:3px solid #aa8129;outline-offset:3px}
#tutor-status{font-size:13px;min-height:24px;color:#486078;margin:16px 0}.tutor-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:28px;align-items:start}.tutor-dialogue{min-width:0}.tutor-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px}.tutor-tools label{flex:1 0 100%;font-weight:600}.tutor-wrap select,.tutor-wrap input,.tutor-wrap textarea{min-height:48px;padding:10px 12px;color:#132d47;background:#fff;border:1px solid #b8c4d0;border-radius:6px;font:16px/1.5 Arial,sans-serif;max-width:100%}.tutor-wrap textarea{width:100%;resize:vertical}.tutor-tools select{flex:1;min-width:180px}.tutor-wrap label{display:block;font-size:14px;font-weight:600;margin:0 0 6px}
#tutor-chat{max-height:550px;overflow:auto;overscroll-behavior:contain;margin:18px 0;scrollbar-gutter:stable}.tutor-message{padding:16px 18px;margin:12px 0;border-radius:8px;overflow-wrap:anywhere}.tutor-message p{margin:6px 0}.tutor-message-label{font-size:10px;letter-spacing:.1em;font-weight:700;color:#526c84}.tutor-user{margin-left:40px;background:#edf2f6;border:1px solid #e2e8ed}.tutor-answer{background:#faf9f5;border:1px solid #e8e3d5}.tutor-source{margin-top:16px;padding-top:12px;border-top:1px solid #ddd8c9}.tutor-source a{display:block;color:#164671;font-weight:600;text-decoration:underline;text-underline-offset:3px}.tutor-source small{display:block;color:#5e635f;font-size:11px;margin-top:4px}.tutor-source blockquote{margin:10px 0 0;padding:0 0 0 14px;border-left:2px solid #b29345;font-size:14px;line-height:1.7}.tutor-source summary{padding:10px 0;cursor:pointer;font-size:14px;min-height:44px}
.tutor-suggestions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tutor-suggestions button{font-size:12px;border-radius:20px;background:#f8fafb;padding:8px 12px;text-align:left}.tutor-compose{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:8px}.tutor-compose span{font-size:11px;color:#52667b;max-width:260px}.tutor-compose button{flex-shrink:0}
.tutor-calculator{background:#f4f6f7;border:1px solid #e0e5e9;border-radius:8px;padding:22px}.tutor-calculator h3{font:23px/1.3 Georgia,serif!important;color:#142d47!important;margin:4px 0 12px!important}.tutor-calculator p{font-size:13px;color:#435a70}.tutor-field{margin-bottom:12px}.tutor-calculator input,.tutor-calculator select,.tutor-calculator button{width:100%}.tutor-calculator button{margin-top:16px}.tutor-values{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;padding:16px 0;border-top:1px solid #d7dfe6;margin:20px 0 0}.tutor-values dt{font-size:14px}.tutor-values dd{min-width:0;overflow-wrap:anywhere;margin:0;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.tutor-formula{overflow-wrap:anywhere;font-family:monospace;font-size:12px!important}#tutor-calc-result a{font-size:13px;color:#164671;text-decoration:underline}.tutor-footnote{padding-top:20px;margin-top:24px;border-top:1px solid #e1e5e9;color:#53687b;font-size:12px}
@media(max-width:800px){.tutor-wrap{padding:0 16px;margin:20px auto}.tutor-grid{grid-template-columns:1fr;gap:24px}.tutor-shell>summary{padding:20px;gap:12px;align-items:flex-start}.tutor-shell strong{font-size:24px}.tutor-open{font-size:12px;white-space:normal;max-width:90px;text-align:right}.tutor-content{padding:0 18px 20px}.tutor-compose{flex-wrap:wrap}.tutor-compose span{max-width:none}.tutor-compose button{width:100%}.tutor-user{margin-left:20px}.tutor-calculator{padding:18px}.tutor-wrap input,.tutor-wrap select{font-size:16px}}
@media(prefers-reduced-motion:reduce){.tutor-wrap *{scroll-behavior:auto!important}}
#tutor-consent-row{display:flex;align-items:flex-start;gap:10px;max-width:850px;margin:16px 0;font-size:14px;font-weight:400;cursor:pointer}#tutor-consent-row input{flex:0 0 20px;width:20px;min-height:20px;height:20px;margin:3px 0;accent-color:#183c60}#tutor-provider-policy{font-size:13px}.tutor-ai-text{white-space:pre-wrap}.tutor-inline-citation{font-size:12px;color:#164671;text-decoration:underline}.tutor-source[id]{scroll-margin-top:90px}
/* UX refinement: readable sources, deliberate sending and mobile workspace views. */
.tutor-summary-meta{display:flex;align-items:center;gap:20px}.tutor-badge{padding:5px 10px;border:1px solid #dbd9cf;border-radius:20px;background:#fff;color:#53677a;font-size:11px;font-weight:600;white-space:nowrap}.tutor-orientation{display:flex;gap:20px;justify-content:space-between;border-bottom:1px solid #e8e8e2;padding:18px 0 14px;font-size:12px;color:#53677a}.tutor-orientation span{flex:1}.tutor-notice{line-height:1.65}.tutor-mobile-switch{display:none}
.tutor-mode-help{font-size:13px;color:#53677a;line-height:1.55;min-height:40px;margin:10px 0 12px}.tutor-empty{padding:24px;border:1px dashed #ccd5dc;border-radius:8px;background:#fbfcfc;text-align:center;margin:16px 0}.tutor-empty-icon{color:#947535;font-size:22px}.tutor-empty h3{font:22px/1.3 Georgia,serif!important;margin:8px 0!important;color:#183552!important}.tutor-empty p{font-size:14px;color:#53677a;margin:8px auto 0;max-width:420px}.tutor-suggestions-help{font-size:12px;color:#53677a;margin:12px 0 8px}.tutor-compose>span{display:flex;flex-direction:column;gap:4px}.tutor-compose>span>span{display:block}#tutor-count{font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.tutor-count-near{color:#8d3d20!important}.tutor-keyboard{font-size:10px!important}.tutor-clear-confirm{background:#fff8ee;border:1px solid #dcc9aa;border-radius:8px;padding:14px;margin:12px 0}.tutor-clear-confirm p{font-size:14px;margin:0 0 12px}.tutor-clear-confirm button{margin:0 8px 4px 0}#tutor-clear-yes{color:#7d3327;border-color:#c9a69e}
.tutor-calculator #tutor-calc-summary{font-size:14px;color:#344f68;line-height:1.65}.tutor-presets{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0}.tutor-calculator .tutor-presets button{width:auto;margin:0;padding:8px 10px;min-height:44px;font-size:12px;background:#fff;color:#183552;border-color:#c9d2dc}.tutor-assumptions{font-size:13px;margin:8px 0 18px;border-top:1px solid #dfe4e8;border-bottom:1px solid #dfe4e8}.tutor-assumptions summary,.tutor-calculation-method summary{padding:12px 0;min-height:44px;cursor:pointer;color:#344f68}.tutor-assumptions p{margin-top:0}.tutor-values{padding:12px 0;margin:0}.tutor-calculation-context{font-size:12px;color:#53677a;margin:16px 0 6px!important}.tutor-calculation-method{margin:6px 0 14px;font-size:13px}.tutor-calculation-card{padding:14px;border:1px solid #d5e0e6;border-radius:6px;background:#f1f6f8}.tutor-calculation-card>strong{font-size:14px}.tutor-source summary{font-size:12px}.tutor-source small{line-height:1.5;overflow-wrap:anywhere}.tutor-other-lesson{display:inline-block;color:#164671!important;margin-top:22px;font-size:13px;text-decoration:underline;text-underline-offset:3px}.tutor-footnote{margin-top:14px}
#tutor-status[data-state=attention]{padding:10px 12px;background:#fff8ec;border-radius:6px;color:#785326}#tutor-status[data-state=working]::before{content:'';display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:#aa8742;animation:tutor-pulse 1.2s ease-in-out infinite}@keyframes tutor-pulse{50%{opacity:.3}}
@media(max-width:1050px){.tutor-summary-meta{flex-direction:column;align-items:flex-end;gap:8px}.tutor-orientation{gap:12px;font-size:11px}}
@media(max-width:800px){.tutor-orientation{display:none}.tutor-badge{font-size:10px;padding:4px 8px;white-space:normal;text-align:right}.tutor-summary-meta{max-width:125px}.tutor-mobile-switch{display:flex;gap:4px;background:#eef2f4;border-radius:8px;padding:4px;margin:0 0 18px}.tutor-mobile-switch button{flex:1;min-width:0;border-color:transparent;background:transparent;padding:10px;font-size:13px}.tutor-mobile-switch button[aria-pressed=true]{background:#fff;border-color:#d0dbe3;box-shadow:0 2px 5px #1835520b}.tutor-wrap[data-tutor-view=chat] .tutor-calculator{display:none}.tutor-wrap[data-tutor-view=calc] .tutor-dialogue{display:none}#tutor-chat{max-height:480px}.tutor-empty{padding:20px 14px}.tutor-mode-help{min-height:0}.tutor-presets{gap:8px}.tutor-calculator .tutor-presets button{flex:1;min-width:95px}.tutor-keyboard{display:none!important}}
@media(prefers-reduced-motion:reduce){#tutor-status[data-state=working]::before{animation:none}}
/* Isolate tutor buttons from legacy program page controls. */
.mfprogram .tutor-wrap button{border-radius:6px;padding:10px 16px;background:#fff;color:#183552;border:1px solid #ccd4dd;font:600 14px/1.4 Arial,sans-serif;box-shadow:none}.mfprogram .tutor-wrap button:hover{background:#f0f3f6}.mfprogram .tutor-wrap .tutor-suggestions button{font-size:12px;border-radius:20px;background:#f8fafb;padding:8px 12px;text-align:left}.mfprogram .tutor-wrap .tutor-presets button{padding:8px 10px;font-size:12px;background:#fff;color:#183552;border-color:#c9d2dc}.mfprogram .tutor-wrap #tutor-send,.mfprogram .tutor-wrap #tutor-start,.mfprogram .tutor-wrap #tutor-calc>button{background:#123453;color:#fff;border-color:#123453}
@media(max-width:800px){.mfprogram .tutor-wrap .tutor-mobile-switch button{background:transparent;border-color:transparent;font-size:13px;padding:10px}.mfprogram .tutor-wrap .tutor-mobile-switch button[aria-pressed=true]{background:#fff;border-color:#d0dbe3}}
/* Mobile reading and asynchronous draft protection. */
#tutor-latest{margin:0 0 12px;font-size:12px;color:#164671;background:#f5f8fa;border-color:#d0dbe3;min-height:44px}.tutor-draft-note{padding:10px 12px;background:#eef5f3;border-left:3px solid #527d71;font-size:13px;color:#285346}.tutor-answer{scroll-margin-top:110px}.tutor-wrap textarea[aria-invalid=true]{border-color:#9d4c37}.tutor-compose{flex-wrap:wrap}#tutor-retry{background:#fff;color:#183552;border-color:#aabac7}.tutor-wrap button:disabled{cursor:default}
@media(max-width:800px){#tutor-chat{max-height:min(480px,55dvh);overscroll-behavior-y:auto}.tutor-shell>summary{display:block}.tutor-summary-meta{max-width:none;margin-top:14px;flex-direction:row;align-items:center;justify-content:space-between}.tutor-badge{white-space:normal;text-align:left}.tutor-open{max-width:none}.tutor-compose{padding-bottom:env(safe-area-inset-bottom,0px)}#tutor-latest{width:100%;text-align:center}.tutor-wrap textarea{min-height:112px}.tutor-clear-confirm button{width:100%;margin-right:0}.tutor-wrap .tutor-mobile-switch button{min-height:48px}}
.tutor-inline-feedback{padding:10px 12px;margin:10px 0;background:#fff8ec;border-left:3px solid #b18a49;color:#785326;font-size:13px;line-height:1.6}
.tutor-number-help{font-size:12px!important;line-height:1.65;color:#53677a!important;padding:10px 0;margin:0 0 12px;border-bottom:1px solid #dce2e7}.tutor-wrap input[aria-invalid=true]{border-color:#9d4c37;background:#fffaf6}
