.activity-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:1rem;overflow:hidden;background-color:var(--color-overlay);z-index:1007}.activity-overlay-panel{display:flex;flex-direction:column;width:100%;min-width:0;max-width:40rem;max-height:100%;outline:none}@media (max-width:640px){.activity-overlay{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);align-items:stretch}.activity-overlay-panel{max-width:none;height:100%}}@media (max-height:480px){.activity-overlay{padding:0;align-items:stretch}.activity-overlay-panel{height:100%}}.activity-skeleton-shape{border-radius:.375rem;background-color:rgba(var(--primary-rgb),.25);position:relative;overflow:hidden}.activity-skeleton-card{background-color:rgba(var(--background-white-rgb),.8)}.activity-skeleton-accent{background-color:rgba(var(--primary-rgb),.5)}.activity-skeleton-shape:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,rgba(var(--background-white-rgb),0) 20%,rgba(var(--background-white-rgb),.35) 50%,rgba(var(--background-white-rgb),0) 80%);animation:activity-skeleton-sweep 1.6s ease-in-out infinite}@keyframes activity-skeleton-sweep{to{transform:translateX(100%)}}.activity-skeleton-line{height:.75rem;margin-bottom:.625rem}.activity-skeleton-line-tall{height:1rem}.activity-skeleton-button{height:2.75rem;width:5.5rem;border-radius:.25rem}.activity-skeleton-option{height:3.25rem;margin-bottom:.5rem;border-radius:.375rem}.activity-skeleton-submit{height:2.75rem;margin-top:1rem;border-radius:.25rem}.activity-skeleton-answer-box{height:5.5rem;border-radius:.5rem}.activity-skeleton-status{margin-top:1rem;text-align:center;font-size:.875rem}@media (prefers-reduced-motion:reduce){.activity-skeleton-shape:after{animation:none}}.quiz-container{width:100%;min-width:0;max-height:100%;display:flex;flex-direction:column;border:1px solid;border-radius:.5rem;overflow:hidden;position:relative}.quiz-container-with-close .quiz-header{padding-right:3rem}.quiz-completion-container{padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:12rem}.quiz-completion-container,.quiz-feedback-container{width:100%;max-height:100%;overflow-y:auto;border:1px solid;border-radius:.5rem;position:relative}.quiz-feedback-container{-webkit-overflow-scrolling:touch;padding:1.5rem}.quiz-completion-spacing{gap:1rem}.quiz-close-btn{position:absolute;top:.25rem;right:.25rem;z-index:10;color:#6b7280;border:none;background:none;cursor:pointer;width:2.75rem;height:2.75rem;display:flex;align-items:center;justify-content:center;border-radius:9999px;transition:all .2s}.quiz-close-btn:hover{color:#374151;background-color:#f3f4f6}.quiz-completed-title{font-size:1.25rem;font-weight:700;text-align:center}.quiz-results-container{text-align:center}.quiz-score-circle{width:6rem;height:6rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;border:4px solid;flex-shrink:0}.quiz-score-text{font-size:1.25rem;font-weight:700}.quiz-final-score{font-size:1.125rem;font-weight:500;margin-bottom:.5rem}.quiz-feedback{margin-bottom:1rem}.quiz-retake-btn{flex:1 1 auto;padding:.5rem 1rem;font-weight:500;border-radius:.5rem;transition:all .2s;border:none;cursor:pointer}.quiz-retake-btn:hover{opacity:.9}.quiz-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.quiz-header{flex-shrink:0;padding:1rem;border-bottom:1px solid}.quiz-navigation{justify-content:space-between;gap:.5rem;margin-bottom:.5rem;min-width:0}.quiz-nav-btn,.quiz-navigation{display:flex;align-items:center}.quiz-nav-btn{justify-content:center;gap:.25rem;padding:.25rem .75rem;border:1px solid;border-radius:.25rem;transition:all .2s;font-size:.875rem;background:none;cursor:pointer;flex-shrink:0}.quiz-nav-btn:disabled{opacity:.5;cursor:not-allowed}.quiz-counter{font-size:.875rem;font-weight:500;min-width:0}.quiz-counter,.quiz-score-display{text-align:center}.quiz-score-current{font-size:.875rem;font-weight:600}.quiz-content{flex:1 1 auto;min-height:0;min-width:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1rem}.quiz-question{font-weight:600;margin-bottom:1rem;overflow-wrap:anywhere}.quiz-options{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;border:0;padding:0;margin-inline:0;min-width:0}.quiz-option{padding:.75rem;border:2px solid;border-radius:.375rem;cursor:pointer;transition:all .2s;font-size:.875rem;overflow-wrap:anywhere}.quiz-option[aria-disabled=true]{cursor:default}.quiz-option-content{display:flex;align-items:center;gap:.5rem}.quiz-option-icon{width:1.25rem;height:1.25rem;flex-shrink:0;display:flex;align-items:center;justify-content:center}.quiz-option-radio{width:1rem;height:1rem;border-radius:9999px;border:2px solid var(--color-primary);box-sizing:border-box}.quiz-option-radio-selected{border-width:5px}.quiz-submit-btn{width:100%;padding:.5rem 1rem;font-weight:500;border-radius:.25rem;transition:all .2s;font-size:.875rem;border:none;cursor:pointer}.quiz-submit-btn:disabled{opacity:.5;cursor:not-allowed}.quiz-result-tag{margin-left:.5rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}@media (max-width:640px){.quiz-completion-container,.quiz-container,.quiz-feedback-container{border-radius:0;border-left:0;border-right:0;height:100%}.quiz-feedback-container{padding:1rem}.quiz-content,.quiz-header{padding:.75rem}.quiz-container-with-close .quiz-header{padding-right:3rem}.quiz-navigation{gap:.25rem}.quiz-nav-btn{padding:.25rem .5rem}.quiz-nav-btn-label{display:none}.quiz-option{font-size:1rem;padding:.875rem .75rem}.quiz-score-circle{width:5rem;height:5rem}.quiz-actions{flex-direction:column}.quiz-retake-btn{width:100%}}.flashcard-container{width:100%;min-width:0;max-height:100%;display:flex;flex-direction:column;border:1px solid;border-radius:.5rem;overflow:hidden;position:relative}.flashcard-container-with-close .flashcard-header{padding-right:3rem}.flashcard-close-btn{position:absolute;top:.25rem;right:.25rem;z-index:10;color:#6b7280;border:none;background:none;cursor:pointer;width:2.75rem;height:2.75rem;display:flex;align-items:center;justify-content:center;border-radius:9999px;transition:all .2s}.flashcard-close-btn:hover{color:#374151;background-color:#f3f4f6}.flashcard-header{flex-shrink:0;padding:1rem;border-bottom:1px solid}.flashcard-navigation{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem;min-width:0}.flashcard-nav-btn{display:flex;align-items:center;justify-content:center;gap:.25rem;padding:.25rem .75rem;border:1px solid;border-radius:.25rem;transition:all .2s;font-size:.875rem;background:none;cursor:pointer;flex-shrink:0}.flashcard-nav-btn:disabled{opacity:.5;cursor:not-allowed}.flashcard-counter{font-size:.875rem;font-weight:500;text-align:center}.flashcard-content{flex:1 1 auto;min-height:0;min-width:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1.5rem}.flashcard-card-container{display:flex;flex-direction:column;min-width:0;padding:2rem;border-radius:.75rem;background-color:var(--color-secondary-light)}.flashcard-question{font-size:1.25rem;font-weight:600;margin-bottom:2rem;overflow-wrap:anywhere}.flashcard-answer-section{margin-top:auto}.flashcard-answer-label{font-size:1.125rem;font-weight:500;margin-bottom:1rem}.flashcard-answer-box{padding:1rem;border:1px solid;border-radius:.5rem;transition:filter .3s ease;overflow-wrap:anywhere;min-height:4rem}.flashcard-answer-hidden{filter:blur(8px);user-select:none;pointer-events:none}.flashcard-toggle-btn{width:100%;margin-top:1.5rem;padding:.75rem 1.5rem;font-weight:500;border-radius:.5rem;transition:opacity .2s;border:none;cursor:pointer}.flashcard-toggle-btn:hover{opacity:.9}@media (max-width:640px){.flashcard-container{border-radius:0;border-left:0;border-right:0;height:100%}.flashcard-header{padding:.75rem}.flashcard-container-with-close .flashcard-header{padding-right:3rem}.flashcard-content{padding:.75rem}.flashcard-navigation{gap:.25rem}.flashcard-nav-btn{padding:.25rem .5rem}.flashcard-nav-btn-label{display:none}.flashcard-card-container{padding:1rem}.flashcard-answer-section{margin-top:2rem}.flashcard-question{font-size:1.125rem;margin-bottom:1.5rem}.flashcard-answer-label{font-size:1rem;margin-bottom:.5rem}}.lai{display:flex;flex-direction:column;height:100vh;max-width:min(100vh,90vw);width:100%;margin:0 auto;background-color:var(--color-background)}.lai-header{padding:12px 16px;text-align:center}.lai-header h1{font-size:1.3rem;font-weight:900;color:var(--color-primary)}.lai-messages{flex:1;overflow-y:auto;padding:16px}.lai-footer{padding:8px 1.3rem}.lai-error{color:var(--color-error);padding:8px 0}.lai-input{position:relative;margin-bottom:20px;border:1px solid var(--color-primary);border-radius:12px;background-color:white;box-shadow:0 10px 15px -3px rgba(0,0,0,.1)}.lai-input:focus-within{box-shadow:0 0 0 4px var(--color-primary-light)}.lai-input-field{width:100%;height:6rem;padding:16px;border:none;border-radius:12px;outline:none;resize:none;font:inherit;color:inherit;background:transparent}.lai-input-field::placeholder{color:rgb(75,85,99)}.lai-input-field:disabled{cursor:not-allowed}.lai-input-field:disabled::placeholder{color:rgb(156,163,175)}.lai-input-send{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background-color:var(--color-primary);color:white;cursor:pointer;transition:filter .15s ease}.lai-input-send:active:not(:disabled){filter:brightness(1.25)}.lai-input-send:disabled{cursor:not-allowed;opacity:.6}.lai-row{display:flex;flex-direction:column;margin-bottom:16px}.lai-row-user{align-items:flex-end}.lai-row-assistant{align-items:flex-start}.lai-avatar{background-image:var(--image-tutor-avatar);background-size:contain;background-repeat:no-repeat;background-position:50%;width:56px;height:56px;margin-bottom:-10px}.lai-bubble{padding:16px;max-width:90%;font-size:16px;animation:lai-fade-in .5s;color:rgb(var(--foreground-rgb))}.lai-bubble-user{background-color:rgb(var(--background-white-rgb));border-radius:20px 20px 0 20px}.lai-bubble-assistant{background-color:rgb(var(--primary-light-rgb));border-radius:0 20px 20px 20px}@keyframes lai-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.lai-block{display:block}.lai-block>:first-child{margin-top:0}.lai-block>:last-child{margin-bottom:0}.lai-block p{margin-bottom:8px}.lai-block ol,.lai-block ul{padding-left:20px;list-style:revert}.lai-block h1,.lai-block h2,.lai-block h3,.lai-block h4{font-weight:600;margin:12px 0 8px}.lai-block table{border-collapse:collapse;width:100%;margin-bottom:12px}.lai-block td,.lai-block th{border:1px solid rgba(var(--foreground-rgb),.2);padding:8px;text-align:left}.lai-block code{font-family:monospace;background-color:rgba(var(--foreground-rgb),.06);border-radius:4px;padding:0 4px}.lai-mark{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:14px;height:14px;margin-left:4px}button.lai-mark{cursor:pointer;border-radius:4px}button.lai-mark:hover{background-color:rgba(var(--foreground-rgb),.08)}button.lai-mark:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.lai-mark-verified{color:var(--color-success)}.lai-mark-unverified{color:var(--color-text-muted)}.lai-citations-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:1rem;background-color:var(--color-overlay);z-index:1008}.lai-citations-modal{display:flex;flex-direction:column;width:100%;max-width:600px;max-height:85vh;background-color:white;border-radius:12px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);overflow:hidden}.lai-citations-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem;border-bottom:1px solid}.lai-citations-header--full{--citations-accent:rgb(22 101 52);--citations-badge:rgb(220 252 231);background-color:rgb(240 253 244);border-color:rgb(22 163 74)}.lai-citations-header--partial{--citations-accent:rgb(154 52 18);--citations-badge:rgb(255 237 213);background-color:rgb(255 247 237);border-color:rgb(154 52 18)}.lai-citations-header--none{--citations-accent:rgb(153 27 27);--citations-badge:rgb(254 226 226);background-color:rgb(254 242 242);border-color:rgb(153 27 27)}.lai-citations-header-content{display:flex;align-items:center;gap:.5rem}.lai-citations-badge{padding:.375rem;border-radius:9999px;background-color:var(--citations-badge);color:var(--citations-accent)}.lai-citations-title{font-weight:700;color:var(--citations-accent)}.lai-citations-close{padding:.5rem;border-radius:9999px;color:rgb(75 85 99)}.lai-citations-close:hover{background-color:rgba(0,0,0,.05)}.lai-citations-body{flex:1;overflow-y:auto;padding:.75rem}.lai-citations-body>*+*{margin-top:1.5rem}.lai-citations-quote{font-size:1.125rem;font-weight:500;font-style:italic;color:rgb(15 23 42);background-color:rgb(248 250 252);border-left:4px solid rgb(203 213 225);padding:.5rem 0 .5rem 1rem;border-radius:0 .25rem .25rem 0}.lai-citations-description{color:rgb(30 41 59);line-height:1.625}.lai-citations-cards{display:flex;flex-direction:column;gap:1rem}.lai-citations-card{position:relative;padding:1.25rem;background-color:white;border:1px solid rgb(226 232 240);border-radius:.5rem;box-shadow:0 1px 2px 0 rgba(0,0,0,.05);overflow:hidden}.lai-citations-page{position:absolute;top:0;right:0;padding:.375rem .75rem;font-size:.75rem;font-weight:700;color:rgb(30 58 138);background-color:rgb(219 234 254);border-left:1px solid rgb(191 219 254);border-bottom:1px solid rgb(191 219 254);border-bottom-left-radius:.5rem}.lai-citations-card-text{font-size:1rem;line-height:1.625;color:rgb(15 23 42);padding-top:.75rem}.lai-citations-caption{font-size:.75rem;font-style:italic;color:var(--color-text-muted)}.lai-thinking{display:flex;flex-direction:column;align-items:center;width:100%;margin-top:8px}.lai-thinking svg{max-width:100%;height:auto}.lai-thinking-text{max-width:80%;margin-top:8px;text-align:center;font-size:1.2rem;font-weight:700;color:var(--color-primary)}@media (prefers-reduced-motion:reduce){.lai-bubble{animation:none}.lai-thinking animate{display:none}}.lai-activity-buttons{display:flex;gap:8px;margin-bottom:8px}.lai-activity-button{display:flex;align-items:center;gap:4px;height:32px;padding:0 10px;font-size:14px;border:1px solid var(--color-primary);border-radius:8px;background-color:var(--color-white);box-shadow:0 1px 3px rgba(0,0,0,.15)}.lai-activity-button:disabled{color:#9ca3af;border-color:#9ca3af;cursor:not-allowed}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}