@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--ink: #1f3250;--muted: #5b6785;--primary: #5b3fd0;--primary-tint: #efeaff;--surface: #ffffff;--background: #f7f4ee;--outline: #1f3250;--shadow: #1f3250;--xp-gold: #ffb938;--on-gold: #1f3250;--danger: #d63f46;--success: #0f6b4d;--success-fill: #12805c;--success-accent: #5fd3a5;--danger-surface: #fff5f5;--danger-border: #ead3d3;--danger-ink: #b4232c;--danger-strong: #9f1d25;--success-surface: #e3f6ec;--success-ink: #176345;--success-border: #d8e8df;--success-soft: #f1faf5;--warning-surface: #fff0d5;--warning-ink: #80500b;--neutral-surface: #f4f1f8;--neutral-border: #e7e7ec;--neutral-soft: #e9e7f0;--on-primary: #ffffff;--overlay: rgb(20 24 36 / 58%);--shadow-modal: rgb(0 0 0 / 24%);font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body{overflow-x:clip}body{margin:0;min-width:320px;min-height:100vh;background:var(--background)}img{display:block}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0;text-align:left}button:disabled{cursor:not-allowed;background-color:var(--background);color:var(--muted);border-color:var(--muted);box-shadow:none}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.generation-modal-backdrop{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:max(20px,env(safe-area-inset-top)) 20px max(20px,env(safe-area-inset-bottom));background:var(--overlay);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);animation:generation-modal-fade .16s ease-out both;overscroll-behavior:contain}.generation-modal{display:flex;flex-direction:column;align-items:center;width:min(100%,360px);max-height:min(88dvh,560px);overflow-y:auto;overscroll-behavior:contain;padding:26px 24px 22px;border:1px solid var(--neutral-border);border-radius:18px;background:var(--surface);box-shadow:0 20px 60px var(--shadow-modal);text-align:center;animation:generation-modal-rise .18s ease-out both;scrollbar-width:thin}.generation-modal .loading-mascot{display:block;width:84px;height:84px;margin:0 auto 14px;object-fit:contain}.generation-modal-eyebrow{margin:0 0 8px;color:var(--muted);font-size:11px;font-weight:600}.generation-modal h2{max-width:100%;margin:0;color:var(--ink);font-size:clamp(20px,5vw,23px);line-height:1.25;letter-spacing:-.035em;text-wrap:balance}.generation-modal-description{min-height:24px;margin:10px 0 18px;color:var(--muted);font-size:13px;line-height:1.55;text-wrap:pretty}.generation-modal-progress{width:100%;height:4px;margin-bottom:14px;overflow:hidden;border-radius:4px;background:var(--neutral-soft)}.generation-modal-progress span{display:block;width:32%;height:100%;border-radius:inherit;background:var(--primary);animation:generation-modal-sweep 1.8s ease-in-out infinite}.generation-modal-stage{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;color:var(--ink);font-size:12px;font-weight:600;line-height:1.5}.generation-modal-live-dot{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:var(--success-fill)}.generation-modal-context{margin:8px 0 20px;color:var(--muted);font-size:11px;line-height:1.4}.generation-modal-cancel{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:0 16px;border:1px solid var(--neutral-border);border-radius:11px;background:var(--surface);color:var(--ink);font-size:13px;font-weight:650;text-align:center;transition:background .15s ease,border-color .15s ease,color .15s ease;touch-action:manipulation}.generation-modal-cancel:hover{border-color:var(--danger-ink);background:var(--danger-surface);color:var(--danger-ink)}.generation-modal-cancel:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.generation-modal-cancel:active{background:var(--neutral-surface)}@keyframes generation-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes generation-modal-rise{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes generation-modal-sweep{0%{transform:translate(-120%)}to{transform:translate(340%)}}@media(max-width:420px){.generation-modal{padding:23px 20px 19px;border-radius:16px}.generation-modal .loading-mascot{width:76px;height:76px}}@media(max-width:360px){.generation-modal-backdrop{padding-left:14px;padding-right:14px}.generation-modal{padding:20px 16px 16px}.generation-modal h2{font-size:20px}.generation-modal-description{font-size:12px}}@media(max-height:620px){.generation-modal{padding-top:16px;padding-bottom:14px}.generation-modal .loading-mascot{width:58px;height:58px;margin-bottom:8px}.generation-modal-description{margin:7px 0 12px}.generation-modal-context{margin-bottom:12px}}@media(prefers-reduced-motion:reduce){.generation-modal-backdrop,.generation-modal,.generation-modal-progress span{animation:none}.generation-modal-progress span{width:100%}}.shell{position:relative;max-width:430px;min-height:100dvh;margin:0 auto;background:var(--background);padding:0 22px 116px}.shell.study-session-shell{position:fixed;z-index:80;inset:0;width:100%;max-width:none;height:100dvh;min-height:100dvh;margin:0;padding:env(safe-area-inset-top,0px) max(22px,env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0px) max(22px,env(safe-area-inset-left,0px));overflow-x:clip;overflow-y:auto;overscroll-behavior:contain}.study-session-shell>.appbar,.study-session-shell>.tabbar{display:none!important}.study-session-shell .quiz-study-page,.study-session-shell .flashcard-study-page{width:100%;max-width:760px;min-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));margin:0 auto;padding-top:10px;padding-bottom:18px}.study-session-shell .quiz-study-nav,.study-session-shell .flashcard-study-nav{position:sticky;top:0;z-index:4;padding:4px 0 10px;background:var(--background)}.study-session-shell .quiz-next-btn{bottom:calc(16px + env(safe-area-inset-bottom,0px))}.study-session-shell .quiz-question-card:has(.quiz-next-btn){padding-bottom:86px}.appbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:20px 0 16px;background:var(--background)}.appbar-logo{font-size:23px;font-weight:700;letter-spacing:-.03em}.appbar-left,.appbar-right{display:flex;align-items:center;gap:8px}.appbar-credits{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:0 8px;border:1.5px solid var(--outline);border-radius:6px;background:var(--surface);color:var(--primary);font-size:11px;font-weight:750;box-shadow:2px 2px 0 var(--shadow);font-variant-numeric:tabular-nums}.appbar-credits svg{flex-shrink:0}.appbar-credit-tooltip{z-index:60}.appbar-credit-tooltip .appbar-credits{cursor:pointer;font-family:inherit;font-size:11px}.appbar-credit-tooltip .credit-help-popover{left:auto;right:0;top:calc(100% + 9px);bottom:auto;width:min(260px,calc(100vw - 32px));transform:none}.appbar-credit-tooltip .credit-help-popover:after{top:-5px;bottom:auto;border:0;border-top:1px solid var(--outline);border-left:1px solid var(--outline);transform:rotate(45deg)}.appbar-credit-tooltip:not(.is-open) .credit-help-popover,.chat-credit-tooltip:not(.is-open) .credit-help-popover{display:none}.appbar-credit-tooltip.is-open .credit-help-popover,.chat-credit-tooltip.is-open .credit-help-popover{display:block}.appbar-back{display:grid;place-items:center;width:36px;height:36px;background:var(--surface);border:2px solid var(--outline);border-radius:6px;box-shadow:2px 2px 0 var(--shadow);color:var(--ink)}.appbar-back:active{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--shadow)}.kicker{margin:6px 0 0;font-size:13px;font-weight:600}.screen-title{margin:28px 0 6px;font-size:25px;font-weight:700;letter-spacing:-.03em;line-height:1.2}.screen-sub{margin:0 0 22px;font-size:12.5px;color:var(--muted)}.section-kicker{margin:26px 0 10px;font-size:11px;font-weight:600;color:var(--muted)}.small{font-size:12px;line-height:1.45;margin:0}.muted-strong{color:var(--muted)}.card{position:relative;background:var(--surface);border:2px solid var(--outline);border-radius:6px;box-shadow:3px 3px 0 var(--shadow);overflow:hidden}.card-kicker{margin:0 0 2px;font-size:11px;font-weight:600;color:var(--muted)}.accent{position:absolute;top:0;left:0;bottom:0;width:4px;border-radius:2px}.accent-success{background:var(--success-accent)}.accent-gold{background:var(--xp-gold)}.btn-gold{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:56px;background:var(--xp-gold);border:2px solid var(--outline);border-radius:8px;box-shadow:3px 3px 0 var(--shadow);color:var(--on-gold);font-size:14px;font-weight:600}.btn-gold:active{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--shadow)}.btn-gold.btn-small{width:auto;height:44px;padding:0 20px;border-radius:6px}.btn-secondary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;background:var(--surface);border:2px solid var(--outline);border-radius:8px;box-shadow:3px 3px 0 var(--shadow);color:var(--ink);font-size:14px;font-weight:600}.btn-secondary:active{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--shadow)}.text-btn{font-size:13px;font-weight:600;color:var(--muted)}.link-btn{padding:0;font-size:inherit;font-weight:600;text-decoration:underline;color:inherit}.chip-row{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 0}.chip{display:inline-flex;align-items:center;height:26px;padding:0 14px;background:var(--surface);border:2px solid var(--outline);border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--muted)}.chip-active{background:var(--primary);color:var(--on-primary)}.chip-suggest{background:var(--primary-tint);color:var(--primary)}.welcome{position:relative;max-width:430px;min-height:100dvh;margin:0 auto;padding:90px 28px 32px;overflow-x:clip}.welcome-art{width:184px;height:184px;margin:0 auto;border:2px solid var(--outline);border-radius:32px;background:var(--primary-tint)}.welcome-art img{width:100%;height:100%;border-radius:30px;object-fit:cover}.welcome-title{margin:34px 0 0;font-size:27px;font-weight:700;letter-spacing:-.03em;line-height:1.25}.welcome-sub{margin:0 0 14px;font-size:14px;color:var(--muted)}.welcome-dot{position:absolute;border-radius:50%}.dot-green{left:56px;top:96px;width:15px;height:15px;background:var(--success-accent)}.dot-red{right:66px;top:64px;width:7px;height:7px;background:var(--danger)}.dot-gold{left:58px;top:268px;width:10px;height:10px;background:var(--xp-gold)}.feature-row{display:flex;align-items:center;gap:14px;min-height:74px;margin-top:10px;padding:0 14px}.feature-row strong{font-size:14px;font-weight:600}.feature-row small{display:block;font-size:11px;color:var(--muted);margin-top:2px}.feature-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;flex-shrink:0}.tint-primary-purple{background:var(--primary-tint);color:var(--primary)}.tint-success-green{background:var(--success-surface);color:var(--success)}.welcome-actions{margin-top:19px}.welcome-auth-open{padding-top:36px}.welcome-auth-open .welcome-art{width:112px;height:112px;border-radius:24px}.welcome-auth-open .welcome-art img{border-radius:22px}.welcome-auth-open .welcome-title{margin-top:20px;font-size:24px}.welcome-auth-open .welcome-sub{margin-bottom:14px}.social-auth,.email-form{display:flex;flex-direction:column;gap:12px}.email-input{height:52px;padding:0 16px;background:var(--surface);border:2px solid var(--outline);border-radius:8px;box-shadow:3px 3px 0 var(--shadow);color:var(--ink);font-size:15px;font-weight:500}.email-input::placeholder{color:var(--muted);font-weight:500}.auth-back-button{display:inline-flex;align-self:flex-start;align-items:center;justify-content:flex-start;gap:6px;width:auto;padding:0 10px;font-size:12px;font-weight:600}.social-note{margin:0;font-size:13px;font-weight:500;color:var(--muted)}.signin-line{margin:12px 0 0;text-align:center;font-size:12px;font-weight:500;color:var(--muted)}.legal-line{margin:14px 0 0;text-align:center;font-size:9px;color:var(--muted)}.auth-error{margin:0;padding:10px 14px;border:2px solid var(--danger);border-radius:6px;background:#fdf0f0;font-size:12px}.brand-mark{display:grid;place-items:center;width:56px;height:56px;overflow:hidden;background:transparent;border:0;border-radius:14px;box-shadow:none}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.loading,.config-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:28px;text-align:center;color:var(--ink)}.config-screen{max-width:640px;margin:0 auto}.config-screen code{background:var(--primary-tint);padding:1px 6px;border-radius:4px}.config-screen pre{margin:0;padding:14px 18px;background:var(--ink);color:#e8ecf5;border-radius:6px;font-size:12px;text-align:left;overflow-x:auto}.eyebrow{margin:0;font-size:11px;font-weight:600;color:var(--muted)}.row-list{display:flex;flex-direction:column;gap:14px;margin-top:18px}.row-list+.btn-gold{margin-top:18px}.file-row{display:flex;align-items:center;gap:12px;min-height:76px;padding:14px}.file-badge{display:grid;place-items:center;width:44px;height:48px;border:2px solid var(--outline);border-radius:6px;font-size:9px;font-weight:800;letter-spacing:.05em;color:#fff;flex-shrink:0}.badge-danger{background:var(--danger)}.badge-violet{background:var(--primary)}.badge-success{background:var(--success-fill)}.badge-gold{background:var(--xp-gold);color:var(--on-gold)}.file-meta{display:flex;flex-direction:column;gap:4px;min-width:0}.file-meta strong{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-meta small{font-size:10px;color:var(--muted)}.empty-row{display:flex;flex-direction:column;gap:6px;padding:18px 16px}.empty-row strong{font-size:14px}.empty-row small{font-size:12px;color:var(--muted)}.search-card{display:flex;align-items:center;gap:10px;height:44px;margin-top:18px;padding:0 14px;color:var(--muted);cursor:text}.search-card input{flex:1;border:0;background:transparent;font-size:13px;color:var(--ink)}.search-card input::placeholder{color:var(--muted)}.search-card input:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:3px}.editor-card{display:flex;flex-direction:column;gap:12px;margin-top:6px;padding:18px 16px}.editor-title{border:0;background:transparent;font-size:25px;font-weight:700;letter-spacing:-.03em}.editor-title::placeholder,.editor-body::placeholder{color:var(--muted);opacity:.7}.editor-title:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:4px}.editor-body{border:2px solid var(--outline);border-radius:6px;background:var(--surface);padding:12px 14px;font-size:13.5px;line-height:1.6;resize:vertical}.private-note-toggle{display:flex;align-items:center;gap:10px;padding:12px;margin:12px 0;border:2px solid var(--outline);border-radius:6px;background:var(--primary-tint);font-size:12px}.private-note-toggle input{width:18px;height:18px;accent-color:var(--primary);flex-shrink:0}.private-note-toggle svg{flex-shrink:0;color:var(--primary)}.private-note-toggle span{display:flex;flex-direction:column;gap:3px}.private-note-toggle small{color:var(--muted);line-height:1.35}.sync-line{font-size:11px;font-weight:500;color:var(--success)}.editor-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.ai-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ai-heading-row>div:first-child{min-width:0;flex:1}.ai-heading-row .screen-title{margin-bottom:6px}.ai-session-actions{display:flex;align-items:center;gap:6px;padding-top:7px;flex-shrink:0}.ai-action-btn{display:grid;place-items:center;width:36px;height:36px;border:2px solid var(--outline);border-radius:8px;background:var(--surface);color:var(--ink);box-shadow:2px 2px 0 var(--shadow);transition:transform .15s ease,background .15s ease}.ai-action-btn:disabled{cursor:not-allowed;background:var(--background);color:var(--muted);border-color:var(--muted);box-shadow:none}.ai-action-delete{color:var(--danger, #c2413b)}.context-card{padding:12px 18px 12px 20px}.context-card strong{display:block;font-size:12.5px;font-weight:700;color:var(--success)}.context-card small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.chat{display:flex;flex-direction:column;gap:14px;margin-top:20px}.ai-placeholder{display:flex;align-items:center;gap:10px;padding:16px;color:var(--muted);font-size:13px}.ai-placeholder img{width:38px;height:38px;object-fit:contain;flex-shrink:0}.bubble-user{align-self:flex-end;max-width:82%;background:var(--primary-tint);border:2px solid var(--outline);border-radius:6px 6px 18px;box-shadow:3px 3px 0 var(--shadow);padding:12px 14px}.bubble-user p{margin:0;font-size:13px;font-weight:500;line-height:1.5}.bubble-ai{max-width:92%;padding:14px}.bubble-ai-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.bubble-ai-head strong{font-size:12px;font-weight:700;color:var(--success)}.bubble-ai-orb{display:grid;place-items:center;width:30px;height:30px;border:2px solid var(--outline);border-radius:50%;background:var(--primary-tint);color:var(--primary);overflow:hidden;flex-shrink:0}.bubble-ai-orb img{display:block;width:100%;height:100%;object-fit:contain}.bubble-ai p{margin:0 0 10px;font-size:13px;line-height:1.65;color:var(--ink)}.bubble-ai p:last-child{margin-bottom:0}.bubble-ai.thinking{color:var(--muted);font-size:13px}.assistant-markdown{min-width:0;overflow-wrap:anywhere}.assistant-markdown h3,.assistant-markdown h4,.assistant-markdown h5{margin:15px 0 7px;color:var(--ink);line-height:1.35;letter-spacing:-.015em}.assistant-markdown h3{font-size:16px}.assistant-markdown h4{font-size:14px}.assistant-markdown h5{font-size:13px}.assistant-markdown ul,.assistant-markdown ol{display:flex;flex-direction:column;gap:6px;margin:7px 0 13px;padding-left:22px;color:var(--ink);font-size:13px;line-height:1.6}.assistant-markdown li::marker{color:var(--primary)}.assistant-markdown strong{font-weight:750}.assistant-markdown code{padding:2px 5px;border:1px solid var(--outline);border-radius:5px;background:var(--primary-tint);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.92em;overflow-wrap:anywhere}.assistant-markdown pre{max-width:100%;margin:8px 0 12px;padding:12px;overflow-x:auto;border:1px solid var(--outline);border-radius:8px;background:var(--neutral-surface);color:var(--ink);white-space:pre}.assistant-markdown pre code{padding:0;border:0;background:transparent}.composer{display:flex;align-items:center;gap:10px;margin-top:22px}.composer input{flex:1;height:48px;padding:0 16px;background:var(--surface);border:2px solid var(--outline);border-radius:6px;box-shadow:3px 3px 0 var(--shadow);font-size:13px}.composer input::placeholder{color:var(--muted)}.composer input:focus-visible{outline-offset:0}.send-btn{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;background:var(--primary);border:2px solid var(--outline);border-radius:50%;color:#fff}.send-btn:disabled{cursor:not-allowed;background:var(--background);color:var(--muted);border-color:var(--muted);box-shadow:none}.tabbar{position:fixed;bottom:12px;left:50%;transform:translate(-50%);z-index:30;display:flex;width:min(386px,calc(100% - 28px));margin:0;padding:2px;background:var(--surface);border:2px solid var(--outline);border-radius:6px;box-shadow:3px 3px 0 var(--shadow)}.tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:54px;border-radius:4px;font-size:10px;font-weight:500;color:var(--muted)}.tab-active{background:var(--primary);color:#fff;font-weight:600}.settings-link{display:flex;align-items:center;gap:10px;width:100%;min-height:56px;margin-bottom:6px;padding:7px 10px;text-align:left}.settings-link>svg{color:var(--muted);flex-shrink:0}.help-contact-link{color:inherit;text-decoration:none}.help-contact-link:hover{background-color:var(--primary-tint)}.settings-link-icon{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border:2px solid var(--outline);border-radius:6px;background:var(--primary-tint);color:var(--primary)}.settings-link-copy{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.settings-link-copy strong{font-size:12px;font-weight:700}.settings-link-copy small{font-size:10px;color:var(--muted);line-height:1.35}.settings-version{margin:14px 0 0;text-align:center;font-size:9px;color:var(--muted)}.settings-note{margin:14px 0 0;line-height:1.5}.settings-toggle-row,.settings-time-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0 12px}.settings-toggle-row>span{display:flex;flex-direction:column;gap:4px}.settings-toggle-row strong,.settings-time-row span{font-size:12px;font-weight:700}.settings-toggle-row small{color:var(--muted);font-size:10px}.settings-toggle-row input{width:22px;height:22px;accent-color:var(--primary)}.settings-time-row{padding:12px 0 2px;border-top:1px solid rgba(31,50,80,.12)}.settings-time-row input{min-height:38px;padding:0 8px;border:1px solid var(--outline);border-radius:6px;background:var(--surface)}.help-heading{display:block;margin-bottom:7px;font-size:13px}.help-heading:not(:first-child){margin-top:20px}.settings-card{padding:14px 16px}.settings-flex{display:flex;align-items:center;gap:12px}.profile-identity{align-items:center}.profile-avatar-button{position:relative;padding:0;overflow:hidden;cursor:pointer}.profile-avatar-button:disabled{cursor:not-allowed;background:var(--background);color:var(--muted);border-color:var(--muted);box-shadow:none}.profile-avatar-edit{position:absolute;right:-1px;bottom:-1px;display:grid;place-items:center;width:22px;height:22px;border:2px solid var(--surface);border-radius:50%;background:var(--ink);color:var(--surface)}.profile-status{display:inline-flex;align-items:center;gap:4px;margin-top:4px;font-size:10px;color:var(--muted)}.profile-status svg{flex-shrink:0}.profile-form{display:flex;flex-direction:column;gap:13px;margin-top:12px}.profile-form .section-kicker{margin:0 0 1px}.profile-field{display:flex;flex-direction:column;gap:6px}.profile-field>span{font-size:11px;font-weight:700;color:var(--muted)}.profile-field input{width:100%;min-width:0;min-height:44px;padding:0 12px;border:1.5px solid var(--outline);border-radius:7px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px}.profile-field input:focus{outline:2px solid var(--primary);outline-offset:1px}.profile-field input[readonly]{background:var(--surface-muted, rgba(128, 128, 128, .08));color:var(--muted)}.profile-save{margin-top:3px}.profile-save:disabled{cursor:not-allowed;background:var(--background);color:var(--muted);border-color:var(--muted);box-shadow:none}.profile-feedback{margin:0;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.profile-feedback-error{color:#b42318}.profile-feedback-success{color:#16794b}.visually-hidden{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}.settings-avatar{display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;background:var(--xp-gold);border:2px solid var(--outline);border-radius:50%;color:var(--on-gold);font-size:15px;font-weight:800}.settings-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}.settings-person{display:flex;flex-direction:column;gap:3px;min-width:0}.settings-person strong{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-person small{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0}.settings-row+.settings-row{border-top:1px solid rgba(31,50,80,.12)}.settings-row span{font-size:12px;font-weight:500;color:var(--muted)}.settings-row strong{font-size:13px;font-weight:700}.settings-signout{margin-top:30px}.chat-context-picker{display:flex;flex-direction:column;gap:10px}.chat-context-picker:not(.is-open){gap:7px}.chat-context-heading{display:flex;align-items:center;justify-content:flex-start;gap:10px}.chat-material-header-btn{color:var(--primary);border-color:#cfc3f2;background:#f4f0ff}.chat-material-hint{display:flex;align-items:flex-start;gap:6px;margin:0;color:var(--muted);font-size:10px;line-height:1.45}.chat-material-hint svg{flex-shrink:0;margin-top:1px;color:var(--primary)}.chat-context-heading>div{display:flex;min-width:0;flex-direction:column;gap:4px}.chat-context-heading small,.chat-context-picker>small{color:var(--muted);font-size:11px;line-height:1.45}.chat-context-toggle{flex:0 0 auto;min-height:36px;padding:0 10px;font-size:11px}.chat-context-options{display:flex;flex-direction:column;gap:8px;padding-top:8px}.chat-context-options>strong{margin-top:5px;font-size:12px}.chat-context-limit{margin:0;padding:10px;border-radius:8px;background:var(--surface-soft, var(--primary-tint));color:var(--muted);font-size:10px;line-height:1.5}.quiz-builder{display:flex;flex-direction:column;gap:14px}.quiz-setup{display:flex;flex-direction:column;gap:12px;padding:16px}.quiz-builder-simple{gap:0}.quiz-builder-simple>.quiz-setup{gap:12px}.quiz-count-picker{display:flex;flex-direction:column;gap:9px}.quiz-count-picker-heading{display:flex;flex-direction:column;gap:3px}.quiz-count-picker-heading strong{font-size:12px}.quiz-count-picker-heading small{color:var(--muted);font-size:11px}.quiz-count-picker .quiz-count-options button{min-height:66px;align-items:center;justify-content:center;border-radius:10px;transition:border-color .15s ease,background .15s ease}.quiz-count-picker .quiz-count-options button strong{font-size:18px}.quiz-count-picker .quiz-count-options button small{font-size:10px;text-align:center}.quiz-count-picker .quiz-count-options button.selected{border-color:var(--primary);background:var(--primary-tint);box-shadow:inset 0 0 0 1px var(--primary)}.quiz-simple-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:2px}.quiz-simple-heading>div{display:flex;flex-direction:column;gap:4px}.quiz-simple-heading strong{font-size:16px;letter-spacing:-.02em}.quiz-simple-heading small{color:var(--muted);font-size:11px;line-height:1.45}.quiz-simple-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 auto;border-radius:12px;background:var(--primary-tint);color:var(--primary)}.quiz-quick-count{display:flex;flex-direction:column;gap:8px;margin-top:4px}.quiz-generate-simple{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;margin-top:4px}.button-spinner{display:inline-block;width:15px;height:15px;flex:0 0 auto;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:generation-spin .75s linear infinite}.generation-panel{display:flex;flex-direction:column;align-items:center;gap:9px;margin-top:14px;padding:20px 16px 16px;overflow:hidden;border:1px solid var(--outline);border-radius:14px;background:linear-gradient(180deg,var(--surface),var(--primary-tint));text-align:center;animation:generation-enter .28s ease-out both}.generation-panel>strong{max-width:100%;color:var(--ink);font-size:13px;line-height:1.4}.generation-panel>p{max-width:290px;margin:0;color:var(--muted);font-size:11px;line-height:1.55}.generation-visual{position:relative;display:grid;place-items:center;width:92px;height:82px;margin-bottom:2px;color:var(--primary)}.generation-core{position:relative;z-index:2;display:grid;place-items:center;width:48px;height:48px;border:1px solid color-mix(in srgb,var(--primary) 28%,transparent);border-radius:15px;background:var(--surface);box-shadow:0 5px 18px color-mix(in srgb,var(--primary) 14%,transparent);animation:generation-bob 2s ease-in-out infinite}.generation-orbit{position:absolute;width:68px;height:68px;border:1px dashed color-mix(in srgb,var(--primary) 42%,transparent);border-radius:50%;animation:generation-spin 8s linear infinite}.generation-orbit-two{width:84px;height:54px;border-style:solid;opacity:.55;transform:rotate(-28deg);animation:generation-orbit 4s ease-in-out infinite alternate}.generation-float{position:absolute;z-index:3;display:grid;place-items:center;width:27px;height:27px;border:1px solid var(--outline);border-radius:9px;background:var(--surface);box-shadow:0 3px 8px var(--shadow);animation:generation-bob 2.4s ease-in-out infinite}.generation-float-one{top:4px;left:2px;animation-delay:-.7s}.generation-float-two{right:0;bottom:4px;animation-delay:-1.2s}.generation-progress{width:min(100%,300px);height:5px;margin-top:3px;overflow:hidden;border-radius:99px;background:color-mix(in srgb,var(--primary) 12%,var(--surface))}.generation-progress span{display:block;width:38%;height:100%;border-radius:inherit;background:var(--primary);animation:generation-progress 1.65s ease-in-out infinite}.generation-steps{display:flex;justify-content:space-between;width:min(100%,300px);margin-top:3px;color:var(--muted);font-size:10px}.generation-steps span{display:inline-flex;align-items:center;gap:5px}.generation-steps i{width:6px;height:6px;border-radius:50%;background:var(--outline)}.generation-steps span.active{color:var(--primary);font-weight:800}.generation-steps span.active i{background:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent);animation:generation-pulse 1.1s ease-in-out infinite}.generation-steps span.complete i{background:var(--success-fill)}@keyframes generation-spin{to{transform:rotate(360deg)}}@keyframes generation-orbit{0%{transform:rotate(-28deg) scale(.94)}to{transform:rotate(28deg) scale(1.04)}}@keyframes generation-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes generation-progress{0%{transform:translate(-115%)}to{transform:translate(370%)}}@keyframes generation-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes generation-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.upload-progress-panel{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:12px;margin:14px 0;padding:16px;overflow:hidden;border:1px solid var(--outline);border-radius:16px;background:linear-gradient(135deg,var(--surface),var(--primary-tint));animation:generation-enter .28s ease-out both}.upload-progress-icon{position:relative;display:grid;place-items:center;width:58px;height:58px;overflow:visible;border-radius:16px;background:transparent}.upload-progress-mascot{display:block;width:100%;height:100%;object-fit:contain}.upload-icon-orbit{position:absolute;inset:5px;border:1px dashed color-mix(in srgb,var(--primary) 48%,transparent);border-radius:12px;animation:generation-spin 7s linear infinite}.upload-icon-spark{position:absolute;top:-4px;right:-4px;display:grid;place-items:center;width:23px;height:23px;border:1px solid var(--outline);border-radius:8px;background:var(--surface);animation:generation-bob 1.8s ease-in-out infinite}.upload-progress-copy{min-width:0}.upload-progress-copy strong{display:block;color:var(--ink);font-size:13px;line-height:1.4}.upload-progress-copy p{overflow:hidden;margin:3px 0;color:var(--ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.upload-progress-copy small{display:block;color:var(--muted);font-size:10px;line-height:1.5}.upload-progress-track{grid-column:1 / -1;height:5px;overflow:hidden;border-radius:99px;background:color-mix(in srgb,var(--primary) 12%,var(--surface))}.upload-progress-track span{display:block;width:35%;height:100%;border-radius:inherit;background:var(--primary);animation:generation-progress 1.5s ease-in-out infinite}.upload-progress-footer{grid-column:1 / -1;display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:10px;font-weight:600}.upload-progress-footer>span{display:inline-flex;align-items:center;gap:6px}.upload-live-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);animation:generation-pulse 1.2s ease-in-out infinite}@media(max-width:360px){.upload-progress-panel{grid-template-columns:44px minmax(0,1fr);gap:9px;padding:12px}.upload-progress-icon{width:42px;height:42px;border-radius:12px}.upload-progress-copy small{font-size:9px}}@media(prefers-reduced-motion:reduce){.upload-icon-orbit,.upload-icon-spark,.upload-progress-track span,.upload-live-dot,.upload-progress-panel{animation:none}}@media(prefers-reduced-motion:reduce){.button-spinner,.generation-orbit,.generation-core,.generation-float,.generation-progress span,.generation-steps span.active i,.generation-panel{animation:none}}.quiz-credit-hint{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--muted);font-size:10px}.quiz-credit-hint>span:first-child{display:inline-flex;align-items:center;gap:5px}.credit-help-wrap{position:relative;display:inline-flex;align-items:center}.credit-help-button{display:grid;place-items:center;width:23px;height:23px;padding:0;border:1px solid var(--outline);border-radius:50%;background:var(--surface);color:var(--muted);font-size:12px;font-weight:800;touch-action:manipulation;transition:background .15s,color .15s,border-color .15s}.credit-help-button:hover,.credit-help-button.is-open{border-color:var(--primary);background:var(--primary-tint);color:var(--primary)}.credit-help-button:focus-visible{border-color:var(--primary);background:var(--primary-tint);color:var(--primary);outline:2px solid var(--primary);outline-offset:3px}.credit-help-popover{position:absolute;z-index:50;left:auto;right:0;bottom:calc(100% + 9px);width:min(260px,calc(100vw - 32px));max-width:calc(100vw - 32px);box-sizing:border-box;padding:11px 12px;border:1px solid var(--outline);border-radius:10px;background:var(--surface);color:var(--ink);box-shadow:0 8px 24px var(--shadow);font-size:11px;font-weight:600;line-height:1.5;text-align:left;white-space:normal;overflow-wrap:break-word;word-break:normal;transform:none}.credit-help-popover:after{position:absolute;left:auto;right:14px;bottom:-5px;width:8px;height:8px;border-right:1px solid var(--outline);border-bottom:1px solid var(--outline);background:var(--surface);content:"";transform:rotate(45deg)}.credit-inline-trigger{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation}.credit-inline-trigger:focus-visible{border-radius:4px;outline:2px solid var(--primary);outline-offset:3px}.chat-credit-tooltip .credit-help-popover{left:0;right:auto;bottom:calc(100% + 9px);width:min(260px,calc(100vw - 32px));max-width:calc(100vw - 32px);transform:none}.chat-credit-tooltip .credit-help-popover:after{left:14px;right:auto}.quiz-setup label{font-size:12px;font-weight:700}.quiz-setup label span{margin-left:5px;font-size:10px;font-weight:500;color:var(--muted)}.quiz-setup input{width:100%;min-height:48px;padding:0 12px;border:2px solid var(--outline);border-radius:8px;background:var(--surface);font-size:13px}.quiz-step-heading{display:flex;align-items:flex-start;gap:11px;margin-bottom:3px}.quiz-step-heading>span{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:8px;background:var(--primary-tint);color:var(--primary);font-size:11px;font-weight:800}.quiz-step-heading>div,.quiz-material-copy{display:flex;min-width:0;flex-direction:column;gap:4px}.quiz-step-heading strong{font-size:14px}.quiz-step-heading small{color:var(--muted);font-size:11px;line-height:1.45}.quiz-material-picker{padding:16px}.quiz-material-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:12px 0 8px}.quiz-material-actions small{color:var(--muted);font-size:11px}.quiz-material-list{display:flex;flex-direction:column;gap:8px}.quiz-material-option{display:flex;align-items:center;gap:10px;width:100%;min-width:0;padding:12px;border:1.5px solid var(--outline);border-radius:9px;background:var(--surface);color:var(--ink);text-align:left}.quiz-material-option.selected{border-color:var(--primary);background:var(--primary-tint)}.quiz-material-option>svg{flex:0 0 auto;color:var(--muted)}.quiz-material-check{display:grid;place-items:center;flex:0 0 20px;color:var(--primary)}.quiz-material-check>span{width:17px;height:17px;border:1.5px solid var(--outline);border-radius:5px}.quiz-material-copy{flex:1}.quiz-material-copy strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.quiz-material-copy small{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:10px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.quiz-material-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 12px;color:var(--muted);text-align:center}.quiz-material-empty strong{color:var(--ink);font-size:12px}.quiz-material-empty small{font-size:11px;line-height:1.5}.quiz-pdf-picker{display:flex;flex-direction:column;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--outline)}.quiz-pdf-picker-title{display:grid;grid-template-columns:18px 1fr;align-items:center;gap:4px 8px}.quiz-pdf-picker-title svg{grid-row:span 2;color:var(--primary)}.quiz-pdf-picker-title strong{font-size:12px}.quiz-pdf-picker-title small{color:var(--muted);font-size:10px}.quiz-pdf-notice{display:flex;align-items:flex-start;gap:8px;margin:6px 0 0;padding:10px;border-radius:8px;background:var(--surface-soft, var(--primary-tint));color:var(--muted);font-size:10px;line-height:1.5}.quiz-pdf-notice svg{flex:0 0 auto}.quiz-count-options,.quiz-difficulty-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.quiz-count-options button,.quiz-difficulty-options button{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:4px;padding:11px 9px;border:1.5px solid var(--outline);border-radius:8px;background:var(--surface);color:var(--ink);text-align:left}.quiz-count-options button{align-items:center}.quiz-count-options button.selected,.quiz-difficulty-options button.selected{border-color:var(--primary);background:var(--primary-tint)}.quiz-count-options strong{font-size:17px}.quiz-count-options small,.quiz-difficulty-options small{color:var(--muted);font-size:9px;line-height:1.35}.quiz-difficulty-options strong{font-size:11px}.quiz-settings-summary{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:10px}.quiz-settings-summary span{display:inline-flex;align-items:center;gap:5px}.quiz-study-page{display:flex;flex-direction:column;gap:0;min-height:calc(100dvh - 44px);padding:2px 0 12px}.quiz-study-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;color:var(--muted);font-size:10px;font-weight:750}.quiz-study-back{display:inline-flex;align-items:center;gap:4px;min-height:34px;padding:0 10px 0 7px;border:1px solid var(--outline);border-radius:9px;background:var(--surface);color:var(--ink);font-size:11px;font-weight:700}.quiz-study-heading{margin-bottom:12px}.quiz-study-heading .kicker{margin:0 0 4px;font-size:9px}.quiz-study-heading h1{margin:0;font-size:clamp(21px,5.8vw,27px);line-height:1.12;letter-spacing:-.04em;overflow-wrap:anywhere}.quiz-study-heading p:last-child{margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.4}.quiz-study-page .quiz-question-card{flex:0 0 auto;display:flex;flex-direction:column;padding:13px;border-radius:14px}.quiz-study-page .quiz-progress-track{height:4px;margin:8px 0 14px}.quiz-study-page .quiz-question-card h2{margin:0 0 15px;font-size:clamp(18px,4.8vw,23px);line-height:1.28;letter-spacing:-.025em;overflow-wrap:anywhere}.quiz-study-page .quiz-answer-list{gap:7px}.quiz-study-page .quiz-answer{min-height:46px;padding:9px 10px;border-width:1.5px;border-radius:10px;font-size:11px;line-height:1.35}.quiz-study-page .quiz-answer>span{width:25px;height:25px;border-radius:7px}.quiz-study-page .quiz-feedback{margin-top:11px;padding-top:10px}.quiz-study-page .quiz-feedback strong{font-size:12px}.quiz-study-page .quiz-feedback p{margin:4px 0 8px;font-size:11px;line-height:1.45}.quiz-study-page .quiz-result{margin-bottom:12px;padding:18px 14px}.quiz-study-page .quiz-review{margin-bottom:9px;padding:12px}.quiz-study-page .quiz-next-btn{position:fixed;z-index:90;left:max(16px,calc((100% - 528px)/2));right:auto;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:min(528px,calc(100% - 32px));min-height:46px}.quiz-study-page .quiz-question-card:has(.quiz-next-btn){padding-bottom:14px;margin-bottom:68px}@media(max-height:720px){.quiz-study-page{min-height:auto}.quiz-study-nav{margin-bottom:7px}.quiz-study-heading{margin-bottom:9px}.quiz-study-heading p:last-child{display:none}.quiz-study-page .quiz-question-card h2{margin-bottom:11px}.quiz-study-page .quiz-answer{min-height:42px;padding:7px 9px}.quiz-study-page .quiz-progress-track{margin-bottom:11px}}@media(max-width:360px){.quiz-study-page .quiz-question-card{padding:11px}.quiz-study-page .quiz-question-card h2{font-size:18px}.quiz-study-page .quiz-answer{gap:8px;padding:8px}}@media(min-width:760px){.quiz-study-page .quiz-next-btn{left:auto;right:max(24px,calc((100% - 528px)/2))}}.quiz-question-card{padding:16px}.quiz-progress-line{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:10px;font-weight:600}.quiz-progress-track{display:block;height:6px;margin:12px 0 22px;overflow:hidden;border-radius:8px;background:var(--primary-tint)}.quiz-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.quiz-question-card h2{margin:0 0 18px;font-size:19px;line-height:1.35;letter-spacing:-.025em}.quiz-answer-list{display:flex;flex-direction:column;gap:9px}.quiz-feedback{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;column-gap:13px;row-gap:12px;margin-top:16px;padding:13px;border:1px solid #d8e8df;border-radius:14px;background:#f1faf5;animation:quiz-feedback-enter .22s ease-out both}.quiz-feedback-incorrect{border-color:#f0d7d7;background:#fff6f5}.quiz-feedback-content{min-width:0}.quiz-feedback-content strong{display:block;margin-bottom:4px;color:#176345;font-size:15px;line-height:1.25}.quiz-feedback-incorrect .quiz-feedback-content strong{color:#a23d43}.quiz-feedback-content p{margin:0;color:var(--ink);font-size:12px;line-height:1.55}.quiz-feedback .quiz-next-btn{grid-column:1 / -1;width:100%;justify-content:center;margin:0}@keyframes quiz-feedback-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:360px){.quiz-feedback{gap:10px;padding:10px}}.quiz-answer{display:flex;align-items:center;gap:10px;width:100%;min-height:54px;padding:10px;border:2px solid #ded9e3;border-radius:8px;background:var(--surface);font-size:12px;line-height:1.4}.quiz-answer>span{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border:1.5px solid var(--outline);border-radius:6px;font-size:11px;font-weight:800}.quiz-answer>svg{margin-left:auto;flex-shrink:0}.quiz-answer.answer-correct{border-color:var(--success);background:#e5f8ef;color:#124e3b}.quiz-answer.answer-wrong{border-color:var(--danger);background:#fff0f0;color:#7e2028}.quiz-feedback{margin-top:16px;padding-top:14px;border-top:1px solid rgba(31,50,80,.16)}.quiz-feedback strong{font-size:13px}.quiz-next-btn{position:fixed;z-index:35;left:max(16px,calc((100% - 528px)/2));bottom:calc(82px + env(safe-area-inset-bottom));width:min(528px,calc(100% - 32px));box-shadow:3px 3px 0 var(--shadow)}.quiz-question-card:has(.quiz-next-btn){padding-bottom:92px}@media(min-width:760px){.quiz-next-btn{left:auto;right:max(24px,calc((100% - 528px)/2))}}.quiz-feedback p{margin:6px 0 14px;color:var(--muted);font-size:12px;line-height:1.55}.credits-balance{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:-4px 0 16px;color:var(--text);font-size:12px;font-weight:650}.credits-balance span{color:var(--muted);font-weight:400}.quiz-settings-summary{flex-wrap:wrap}.quiz-settings-summary span{line-height:1.4}.quiz-result{display:flex;flex-direction:column;gap:14px;padding:18px;text-align:left;overflow:hidden}.quiz-result-celebration{display:flex;align-items:center;gap:14px}.quiz-result-celebration>img{width:88px;height:88px;flex:0 0 88px;object-fit:contain}.quiz-result-celebration>div{min-width:0}.quiz-complete-pill{display:inline-flex;align-items:center;gap:5px;margin-bottom:6px;color:var(--primary);font-size:9px;font-weight:800;letter-spacing:.07em}.quiz-result h2{margin:0;font-size:clamp(22px,5vw,29px);line-height:1.15;letter-spacing:-.035em}.quiz-result-celebration p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.quiz-score-panel{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:10px;padding:13px 12px;border:1px solid var(--outline);border-radius:14px;background:var(--surface)}.quiz-score-panel>div:not(.quiz-score-divider){display:grid;gap:4px;min-width:0}.quiz-score-panel span{color:var(--muted);font-size:10px}.quiz-score-panel strong{font-size:clamp(18px,4vw,24px);line-height:1.1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.quiz-score-panel strong small{font-size:11px;font-weight:650;letter-spacing:0}.quiz-score-divider{width:1px;height:34px;background:var(--outline)}.quiz-result-progress{height:7px;overflow:hidden;border-radius:999px;background:var(--outline)}.quiz-result-progress span{display:block;height:100%;border-radius:inherit;background:var(--primary);transition:width .55s cubic-bezier(.2,.7,.2,1)}.quiz-result-tip{margin:-5px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.quiz-result .btn-gold{align-self:stretch;justify-content:center}@media(max-width:360px){.quiz-result{padding:14px}.quiz-result-celebration{gap:8px}.quiz-result-celebration>img{width:68px;height:68px;flex-basis:68px}.quiz-score-panel{gap:7px;padding:11px 8px}.quiz-score-panel span{font-size:9px}}@media(prefers-reduced-motion:reduce){.quiz-result-progress span{transition:none}}.quiz-review{padding:14px;margin-top:12px}.quiz-review .card-kicker{margin-bottom:8px}.quiz-review>strong{display:block;font-size:13px;line-height:1.45}.quiz-review>p{margin:8px 0;font-size:12px;font-weight:700}.quiz-review>small{display:block;color:var(--muted);font-size:11px;line-height:1.5}.offline-notice{position:sticky;top:0;z-index:70;display:flex;align-items:center;gap:11px;padding:10px 16px;border-bottom:1px solid #ded8fb;background:#f7f5ff;color:var(--ink)}.offline-notice-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:12px;background:#e9e4ff;color:#5b3fd0}.offline-notice-copy{display:grid;gap:3px;min-width:0;flex:1}.offline-notice-copy strong{font-size:12px;line-height:1.3}.offline-notice-copy>span{color:#686382;font-size:11px;line-height:1.45}.offline-notice-pill{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:#e9e4ff;color:#5b3fd0;font-size:10px;font-weight:750}@media(max-width:380px){.offline-notice{gap:8px;padding:10px 12px}.offline-notice-pill{display:none}}.toast{position:fixed;bottom:86px;left:50%;transform:translate(-50%);z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;width:min(386px,calc(100% - 28px));padding:11px 16px;background:var(--ink);color:#fff;border-radius:6px;font-size:12px;font-weight:500;box-shadow:3px 3px #1f325040}.toast button{color:#fff;opacity:.8;flex-shrink:0}.library-tip{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;margin:0 0 14px;border:1px solid #d8d0f4;border-radius:8px;background:var(--primary-tint)}.library-tip-icon{display:grid;place-items:center;width:25px;height:25px;flex-shrink:0;border-radius:6px;color:var(--primary);background:var(--surface)}.library-tip p{display:flex;flex-direction:column;gap:4px;margin:0;min-width:0}.library-tip strong{font-size:11px}.library-tip p>span{display:flex;flex-wrap:wrap;align-items:center;gap:3px;font-size:10px;line-height:1.5;color:var(--muted)}.library-tip p>span svg{flex-shrink:0}.library-offline-status{display:flex;align-items:center;gap:8px;margin:-5px 0 14px;padding:9px 11px;border:1px solid var(--border);border-radius:8px;color:var(--muted);background:var(--surface);font-size:11px;line-height:1.45}.library-offline-status svg{flex:0 0 auto;color:var(--primary)}.file-row-manage{display:flex;align-items:center;gap:8px;padding:8px}.file-row-open{display:flex;align-items:center;gap:12px;flex:1;min-width:0;padding:4px}.file-row-open .file-meta{min-width:0}.file-row-open .file-meta strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delete-icon-btn{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border:1px solid #ead3d3;border-radius:10px;color:#b4232c;background:#fff5f5}.delete-icon-btn:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.library-more-btn{color:var(--ink);border-color:var(--outline);background:var(--surface)}.library-action-sheet{align-self:end;width:min(100%,430px);padding:12px 18px 22px;border:2px solid var(--outline);border-bottom:0;border-radius:20px 20px 0 0;background:var(--background);box-shadow:0 -4px 18px #131b2a26}.action-sheet-grip{width:38px;height:4px;margin:0 auto 18px;border-radius:8px;background:var(--muted);opacity:.45}.library-action-sheet h2{margin:7px 0;font-size:17px;line-height:1.35;overflow-wrap:anywhere}.library-action-hint{margin:0 0 14px;color:var(--muted);font-size:11px;line-height:1.5}.library-action-option{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;padding:10px 8px;border-top:1px solid rgba(31,50,80,.14);text-align:left}.library-action-option>svg:first-child{flex-shrink:0;color:var(--primary)}.library-action-option>svg:last-child{margin-left:auto;flex-shrink:0;color:var(--muted)}.library-action-option span{display:flex;flex-direction:column;gap:4px;min-width:0}.library-action-option strong{font-size:12px}.library-action-option small{color:var(--muted);font-size:10px}.library-action-delete>svg:first-child,.library-action-delete strong{color:#b4232c}.action-sheet-cancel{margin-top:12px}.confirm-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:22px;background:#131b2a8c}.confirm-dialog{width:min(100%,360px);padding:22px;border:2px solid var(--outline);border-radius:16px;background:var(--background);box-shadow:5px 5px #1f32504d}.confirm-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;color:#b4232c;background:#ffe7e7}.confirm-dialog h2{margin:16px 0 8px;font-size:20px;line-height:1.25}.confirm-dialog p{margin:0;color:var(--muted);font-size:13px;line-height:1.5;overflow-wrap:anywhere}.confirm-dialog p strong{color:var(--ink)}.confirm-actions{display:flex;gap:10px;margin-top:22px}.confirm-actions button{display:flex;align-items:center;justify-content:center;min-height:46px;padding:0 12px;border-radius:8px;font-size:12px;font-weight:700}.confirm-actions .btn-secondary{flex:1;border:2px solid var(--outline);background:#fff}.btn-danger{flex:1.3;border:2px solid #9f1d25;background:#b4232c;color:#fff}.btn-danger:disabled{cursor:not-allowed;background:var(--background);color:var(--muted);border-color:var(--muted);box-shadow:none}.onboarding{width:min(100%,430px);min-height:100dvh;margin:0 auto;padding:18px 22px 28px;display:flex;flex-direction:column;overflow-x:clip}.onboarding-top{display:flex;align-items:center;justify-content:space-between;min-height:38px}.onboarding-progress{display:flex;gap:6px;margin:18px 0 20px}.onboarding-progress span{flex:1;height:4px;border-radius:99px;background:#e5e0e9}.onboarding-progress span.is-active{background:var(--primary)}.onboarding-art{width:76px;height:76px;margin-bottom:18px;border:2px solid var(--outline);border-radius:22px;background:var(--primary-tint);overflow:hidden}.onboarding-art img{width:100%;height:100%;object-fit:cover}.onboarding .kicker{margin:0 0 8px;font-size:11px;font-weight:600;color:var(--primary)}.onboarding .screen-title{margin:0 0 8px;font-size:clamp(25px,7vw,31px);line-height:1.15;letter-spacing:-.04em}.onboarding .screen-sub{margin:0 0 22px;font-size:13px;line-height:1.5;color:var(--muted)}.preference-options{display:flex;flex-direction:column;gap:10px}.preference-option{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 15px;border:2px solid #ded9e3;border-radius:12px;background:var(--surface);font-size:13px;font-weight:600}.preference-option span{display:grid;place-items:center;width:23px;height:23px;border:1.5px solid #d8d2e1;border-radius:50%;color:var(--muted);flex-shrink:0}.preference-option.selected,.duration-option.selected,.subject-option.selected{border-color:var(--primary);background:var(--primary-tint)}.preference-option.selected span{background:var(--primary);color:#fff;border-color:var(--primary)}.duration-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.duration-option{min-height:106px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:2px solid #ded9e3;border-radius:14px;background:var(--surface)}.duration-option strong{font-size:28px;letter-spacing:-.04em}.duration-option span{color:var(--muted);font-size:12px}.subject-options{display:flex;flex-wrap:wrap;gap:9px}.subject-option{min-height:42px;padding:0 14px;border:2px solid #ded9e3;border-radius:999px;background:var(--surface);font-size:12px;font-weight:600}.subject-option.selected{color:var(--primary)}.onboarding-actions{display:flex;gap:10px;margin-top:auto;padding-top:28px}.onboarding-actions .btn-gold{flex:1;justify-content:center}.onboarding-actions .btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0 14px}.onboarding .legal-line{margin-top:15px;line-height:1.5}:root{scroll-behavior:smooth}html{-webkit-tap-highlight-color:transparent}body{overscroll-behavior-y:contain}.shell{padding-bottom:calc(116px + env(safe-area-inset-bottom,0px))}.appbar{padding-top:max(16px,env(safe-area-inset-top,0px));-webkit-backdrop-filter:saturate(1.15);backdrop-filter:saturate(1.15)}.appbar-back{width:42px;height:42px;border-radius:10px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.card{border-radius:12px;box-shadow:2px 3px 0 var(--shadow);transition:transform .15s ease,box-shadow .15s ease}button,input,textarea{touch-action:manipulation}button:active:not(:disabled){-webkit-tap-highlight-color:transparent}.btn-gold,.btn-secondary{min-height:50px;border-radius:10px}.btn-gold:focus-visible,.btn-secondary:focus-visible,.chip:focus-visible,.tab:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.chip{min-height:36px;border-radius:999px}.chip-active{color:var(--on-primary)}.tabbar{bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:4px;border-radius:16px;box-shadow:0 8px 28px #1f325024,2px 2px 0 var(--shadow)}.tab{min-height:54px;border-radius:11px;gap:4px;transition:background .16s ease,color .16s ease}.tab-active{background:var(--primary);color:#fff}.quick-grid{gap:12px}.quick-card{min-height:78px;border-radius:12px;justify-content:center;gap:10px}.quick-card svg{width:20px;height:20px}.file-row,.resume-card,.settings-link,.quiz-material-option,.quiz-answer{transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.file-row-open{min-height:48px}.delete-icon-btn{width:44px;height:44px;border-radius:12px}.search-card{border-radius:12px}.search-card input{min-height:42px}.editor-body{min-height:52vh;padding:18px 16px;border:1px solid #e2deea;border-radius:12px;background:#fffefa;color:#26344a;font-family:Inter,system-ui,sans-serif;font-size:16px;font-weight:400;line-height:1.9;letter-spacing:.008em;white-space:pre-wrap;overflow-wrap:anywhere;resize:vertical;caret-color:var(--primary);-webkit-text-size-adjust:100%}.editor-title{min-height:54px;padding:8px 2px 12px;font-size:22px;font-weight:750;line-height:1.35;letter-spacing:-.025em}.editor-card{gap:16px;padding:20px 16px}.editor-body::placeholder{line-height:1.6}@media(max-width:360px){.editor-body{padding:15px 13px;font-size:15.5px;line-height:1.85}.editor-title{font-size:20px}}.composer{position:sticky;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:10;padding:8px 0;background:linear-gradient(to bottom,rgba(247,244,238,0),var(--background) 22%)}.composer input{min-width:0;height:50px;border-radius:12px}.send-btn{width:44px;height:44px;border-radius:12px}.profile-field input,.quiz-setup input,.email-input{min-height:48px;border-radius:10px}.empty-row{border-style:dashed;border-width:1.5px;box-shadow:none;background:#ffffffb8}:focus:not(:focus-visible){outline:none}@media(hover:hover)and (pointer:fine){.card:hover{transform:translateY(-1px);box-shadow:3px 5px 0 var(--shadow)}.tab:hover:not(.tab-active){background:var(--primary-tint);color:var(--ink)}.settings-link:hover,.file-row-open:hover,.library-action-option:hover{background-color:var(--primary-tint)}}@media(max-width:360px){.shell{padding-right:16px;padding-left:16px}.tabbar{width:calc(100% - 20px)}.tab{font-size:10px}.quick-grid{gap:8px}.quick-card{padding:10px 8px;font-size:12px}.ai-session-actions{gap:4px}.ai-action-btn{width:34px;height:34px}}.note-reader{margin:4px 0 24px}.note-reader-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px}.note-reader-back,.note-reader-icon{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid #e7e3eb;background:#ffffffd1;color:#38445a;border-radius:11px;min-height:42px}.note-reader-back{padding:0 12px 0 8px;font-size:13px;font-weight:650}.note-reader-actions{display:flex;gap:8px}.note-reader-icon{width:42px}.note-reader-paper{width:100%;max-width:760px;margin-inline:auto;background:#fffefa;border:1px solid #e8e2d9;border-radius:16px;padding:22px 19px 30px;box-shadow:0 4px 18px #2d27370b}.note-reader-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;color:#7c7a83;font-size:11px;line-height:1.5}.note-reader-meta span:first-child{display:inline-flex;align-items:center;gap:5px;font-weight:600;color:var(--muted)}.note-reader-title{margin:20px 0 22px;color:#202a3c;font-size:clamp(25px,7vw,32px);font-weight:780;letter-spacing:-.04em;line-height:1.2;overflow-wrap:anywhere}.note-reader-content{color:#30394b;font-size:16px;line-height:1.9;letter-spacing:.005em;overflow-wrap:anywhere}.note-reader-content .assistant-markdown{display:flex;flex-direction:column;gap:0}.note-reader-content .assistant-markdown p{margin:0 0 1.15em;white-space:pre-wrap}.note-reader-content .assistant-markdown h3,.note-reader-content .assistant-markdown h4,.note-reader-content .assistant-markdown h5{color:#202a3c;line-height:1.35;letter-spacing:-.025em;margin:1.35em 0 .55em}.note-reader-content .assistant-markdown h3{font-size:23px}.note-reader-content .assistant-markdown h4{font-size:20px}.note-reader-content .assistant-markdown h5{font-size:17px}.note-reader-content .assistant-markdown ul,.note-reader-content .assistant-markdown ol{padding-left:1.4em;margin:0 0 1.2em}.note-reader-content .assistant-markdown li{padding-left:.2em;margin:.3em 0}.note-reader-content .assistant-markdown pre{max-width:100%;overflow-x:auto;white-space:pre;padding:14px;margin:.5em 0 1.2em;border-radius:10px;background:#f2f0f6;font-size:13px;line-height:1.65;-webkit-overflow-scrolling:touch}.note-reader-content .assistant-markdown code{padding:.12em .3em;border-radius:4px;background:#f0edf4;font-size:.9em}.note-reader-content .assistant-markdown pre code{padding:0;background:transparent;white-space:pre;overflow-wrap:normal}.note-reader-content .assistant-markdown a{color:var(--primary);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.note-reader-content .assistant-markdown table{display:block;width:100%;max-width:100%;overflow-x:auto;border-collapse:collapse}.note-reader-content .assistant-markdown th,.note-reader-content .assistant-markdown td{padding:8px 10px;border:1px solid var(--outline);text-align:left;vertical-align:top}.note-reader-content .assistant-markdown strong{color:#202a3c;font-weight:750}.note-reader-empty{color:#85818b;font-style:italic}@media(max-width:360px){.note-reader-paper{padding:19px 15px 25px}.note-reader-content{font-size:15.5px;line-height:1.85}.note-reader-title{font-size:24px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.shell{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}.appbar{padding-top:max(16px,env(safe-area-inset-top,0px))}.screen-title{font-size:clamp(27px,7vw,32px);line-height:1.16;letter-spacing:-.04em}.screen-sub{font-size:13px;line-height:1.6;margin-bottom:20px}.section-kicker{margin-top:25px}.tabbar{width:min(410px,calc(100% - 20px));bottom:max(10px,env(safe-area-inset-bottom,0px));padding:3px;gap:2px}.tab{min-width:0;height:52px;gap:4px;font-size:9px}.tab svg{flex-shrink:0}.card{scroll-margin-bottom:110px}input,textarea{scroll-margin-bottom:130px}@media(max-width:360px){.tabbar{width:calc(100% - 16px)}.tab{font-size:9px;height:49px}.tab svg{width:17px;height:17px}.screen-title{font-size:26px}}.pdf-reader{display:flex;flex-direction:column;gap:14px;min-width:0;margin:4px 0 24px}.pdf-reader-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.pdf-reader-tools{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:3px;border:1px solid var(--outline);border-radius:12px;background:var(--surface-soft, var(--surface))}.pdf-reader-tools button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:32px;padding:0 9px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:11px;line-height:1;font-weight:650;white-space:nowrap;flex:0 1 auto}.pdf-reader-tools button svg{flex:0 0 auto}.pdf-reader-tools button span{overflow:hidden;text-overflow:ellipsis}.pdf-reader-tools button.pdf-tool-active{border-color:var(--outline);color:var(--ink);background:var(--background);box-shadow:0 1px 2px #14141e0f}.pdf-reader-tools button:active{transform:scale(.98)}@media(max-width:390px){.pdf-reader-tools{gap:2px;padding:3px}.pdf-reader-tools button{gap:4px;min-height:31px;padding:0 6px;font-size:10px}.pdf-reader-tools button svg{width:13px;height:13px}}.pdf-reader-focus{position:fixed;z-index:1000;inset:0;overflow-y:auto;padding:max(12px,env(safe-area-inset-top)) 14px max(16px,env(safe-area-inset-bottom));margin:0;background:var(--background)}.pdf-reader-focus .pdf-page-stage{min-height:65dvh;flex:1}.pdf-reader-focus .pdf-reader-heading{padding-top:6px}.pdf-page-zoomed{cursor:grab;touch-action:none}.pdf-page-zoomed:active{cursor:grabbing}.pdf-page-stage:not(.pdf-page-zoomed){touch-action:pan-y pinch-zoom}.pdf-page-stage canvas{touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none}.pdf-reader-zoom{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;font-weight:700}.pdf-reader-zoom .note-reader-icon{font-size:22px;line-height:1}.pdf-reader-heading{display:flex;align-items:center;gap:11px;min-width:0;padding:2px 1px 6px}.pdf-reader-heading>div{min-width:0}.pdf-reader-heading h1{margin:0 0 4px;color:var(--ink);font-size:17px;line-height:1.35;overflow-wrap:anywhere}.pdf-reader-heading small{color:var(--muted);font-size:11px}.pdf-page-stage{display:flex;justify-content:center;align-items:flex-start;width:100%;min-width:0;max-width:100%;overflow:auto;padding:12px;border:1px solid #e6e1eb;border-radius:14px;background:#e9e6ed;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.pdf-page-stage canvas{display:block;flex:0 0 auto;max-width:none;height:auto;background:#fff;box-shadow:0 2px 12px #1f203024}.pdf-image-stage{display:flex;justify-content:center;align-items:center;overflow:auto;min-height:240px;max-height:70dvh;padding:12px;border-radius:14px;background:#e9e6ed}.pdf-image-stage img{max-width:100%;max-height:68dvh;object-fit:contain;transform-origin:center center}.document-text-preview{max-height:70dvh;overflow:auto;padding:18px;border:1px solid var(--outline);border-radius:14px;background:var(--surface);color:var(--ink);-webkit-overflow-scrolling:touch}.document-text-preview pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:14px;line-height:1.85}.ppt-slide-list{display:grid;gap:16px;min-width:0}.ppt-slide-card{overflow:hidden;min-width:0;border:1px solid var(--outline);border-radius:15px;background:var(--surface);box-shadow:0 4px 14px #1f20300d}.ppt-slide-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 15px;border-bottom:1px solid var(--outline);background:var(--surface-soft, var(--surface));color:var(--muted);font-size:11px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.ppt-slide-card-top small{flex:0 0 auto;font-size:10px;font-weight:650}.ppt-slide-card-body{min-height:120px;padding:22px 18px;color:var(--ink);line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}.ppt-slide-card-body:empty{min-height:100px}@media(max-width:480px){.ppt-slide-list{gap:12px}.ppt-slide-card-body{min-height:100px;padding:18px 15px}}.pdf-reader-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:45dvh;color:var(--muted);font-size:13px}.pdf-reader-error{padding:18px;border:1px solid #f0d6d6;border-radius:13px;background:#fff8f8;color:#793d43}.pdf-reader-error p{overflow-wrap:anywhere;font-size:12px;line-height:1.55}.pdf-reader-pagination{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0 8px}.pdf-reader-pagination .btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-height:40px;padding:0 10px;font-size:12px}.pdf-reader-pagination>span{color:var(--muted);font-size:11px;white-space:nowrap}.pdf-reader-pagination>span strong{color:var(--ink)}@media(max-width:360px){.pdf-page-stage{padding:5px}.pdf-reader-heading h1{font-size:15px}.pdf-reader-pagination .btn-secondary{padding:0 7px}}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-card{min-height:76px;justify-content:center;align-items:flex-start;gap:9px;padding:14px;line-height:1.35}.quick-card span{overflow-wrap:anywhere}.tab{font-size:11px}.tab-active{box-shadow:inset 0 0 0 1px #ffffff29}.section-switch{display:flex;width:fit-content;max-width:100%;gap:4px;padding:4px;margin:0 0 20px;border:1px solid rgba(31,50,80,.14);border-radius:13px;background:#eeebf4}.section-switch button{min-height:34px;padding:0 16px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.section-switch button.section-switch-active{background:#fff;color:var(--ink);box-shadow:0 1px 3px #0f172a1a}.welcome-auth-open{box-sizing:border-box;min-height:100dvh;padding:max(18px,env(safe-area-inset-top,0px)) 22px max(20px,env(safe-area-inset-bottom,0px));overflow-x:clip;overflow-y:auto}.welcome-auth-open .welcome-art{flex:0 0 auto;width:82px;height:82px;margin:0 auto 12px;border-radius:20px}.welcome-auth-open .welcome-art img{border-radius:18px}.welcome-auth-open .welcome-title{margin-top:8px;font-size:clamp(22px,6vw,26px);line-height:1.16;overflow-wrap:anywhere}.welcome-auth-open .welcome-sub{margin:5px 0 14px;font-size:12px}.welcome-auth-open .feature-row{display:none}.welcome-auth-open .welcome-actions{margin-top:16px}.welcome-auth-open .welcome-actions>.text-btn{margin-bottom:10px}.welcome-auth-open .social-auth,.welcome-auth-open .email-form{width:100%;min-width:0}.email-form{gap:10px}.email-input{box-sizing:border-box;display:block;width:100%;min-width:0;max-width:100%}.email-form .btn-gold{width:100%;min-width:0;white-space:normal}.auth-back-button{box-sizing:border-box;display:inline-flex;position:relative;align-self:flex-start;align-items:center;justify-content:flex-start;gap:8px;width:auto;min-width:0;min-height:40px;max-width:100%;margin:0 0 2px;padding:0 12px 0 8px;line-height:1.25;white-space:nowrap;flex:0 0 auto;overflow:visible}.auth-back-button svg{display:block;flex:0 0 20px;width:20px;height:20px}.auth-back-button span{display:block;min-width:0;line-height:1.25;white-space:nowrap}.email-code-auth-code .social-note{margin:0 0 2px;padding:12px 14px;border:1px solid var(--outline);border-radius:12px;background:var(--surface);line-height:1.55}.email-code-auth-code .social-note strong{display:inline-block;max-width:100%;margin-top:3px;color:var(--ink);overflow-wrap:anywhere;word-break:break-word}.social-note{max-width:100%;line-height:1.5;overflow-wrap:anywhere;word-break:normal}.social-note strong{overflow-wrap:anywhere}.auth-error{box-sizing:border-box;width:100%;max-width:100%;margin-top:10px;line-height:1.5;overflow-wrap:anywhere;word-break:break-word}.email-code-auth .legal-line{margin-top:12px;line-height:1.55}.onboarding{box-sizing:border-box;min-height:100dvh;padding-top:max(14px,env(safe-area-inset-top,0px));padding-bottom:max(20px,env(safe-area-inset-bottom,0px));overflow-x:clip}.onboarding .screen-title,.onboarding .screen-sub{overflow-wrap:anywhere}.onboarding-actions{flex-shrink:0}.onboarding-actions button{min-width:0;white-space:normal}.onboarding .auth-error{flex-shrink:0}@media(max-width:380px){.welcome-auth-open{padding-right:18px;padding-left:18px}.welcome-auth-open .welcome-art{width:70px;height:70px;margin-bottom:10px}.welcome-auth-open .welcome-title{font-size:22px}.welcome-auth-open .welcome-sub{margin-bottom:11px}.welcome-auth-open .welcome-actions{margin-top:12px}.auth-back-button{padding-right:8px;padding-left:8px}.onboarding{padding-right:18px;padding-left:18px}.onboarding-progress{margin:14px 0 16px}.onboarding-art{width:64px;height:64px;margin-bottom:13px;border-radius:18px}.onboarding .screen-sub{margin-bottom:16px}.preference-options{gap:8px}.preference-option{min-height:54px;padding-right:12px;padding-left:12px;font-size:12px}.duration-options{gap:9px}.duration-option{min-height:88px}.subject-options{gap:7px}.subject-option{min-height:39px;padding:0 11px;font-size:11px}.onboarding-actions{padding-top:18px}}.notes-search-card{display:flex;align-items:center;gap:10px;min-height:48px;margin:14px 0 0;padding:0 13px;border:1px solid #dcd7e6;border-radius:13px;background:#fff;color:var(--muted);box-shadow:0 2px 8px #1f325008}.notes-search-card:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #5b3fd01a}.notes-search-card input{width:100%;min-width:0;height:46px;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:13px}.notes-search-card input:focus-visible{outline:0}.notes-search-card input::placeholder{color:#9290a0}.notes-search-clear{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:8px;color:var(--muted)}.notes-search-clear:hover{background:var(--primary-tint);color:var(--primary)}.notes-list-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:14px 2px 0;color:var(--muted);font-size:10px}.notes-list-meta span:first-child{color:var(--ink);font-size:11px;font-weight:750}.notes-list-meta span:last-child{font-size:10px;font-weight:600}.notes-search-card+.notes-list-meta+.chip-row{margin-top:10px}.notes-empty-state{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:22px 18px;border:1.5px dashed #d8d1e5;border-radius:15px;background:#ffffffad;box-shadow:none}.notes-empty-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:2px;border-radius:13px;background:var(--primary-tint);color:var(--primary)}.notes-empty-state>strong{font-size:15px;line-height:1.3}.notes-empty-state>small{color:var(--muted);font-size:12px;line-height:1.55}.notes-empty-state .btn-gold{width:auto;min-height:42px;height:42px;margin-top:5px;padding:0 14px;font-size:12px}.screen-title{margin-top:16px}.section-switch{margin-bottom:16px}.card,.btn-gold,.btn-secondary,.tab,.chip{-webkit-tap-highlight-color:transparent;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease}.btn-gold:active,.btn-secondary:active,.quick-card:active,.home-stat:active,.file-row-open:active{transform:translateY(1px) scale(.99)}.chip{padding:0 13px;border:1px solid #e0dbe9;background:#ffffffb8;color:var(--muted);font-size:10px;font-weight:750;letter-spacing:.035em}.chip-active{border-color:#cfc2ff;background:var(--primary-tint);color:var(--primary)}@media(max-width:380px){.notes-search-card{min-height:46px}.notes-list-meta{margin-top:12px}.notes-empty-state{padding:18px 15px}}@media(prefers-reduced-motion:reduce){.card,.btn-gold,.btn-secondary,.tab,.chip{transition:none}}:where(button,a,input,textarea,select):focus-visible{outline:3px solid var(--primary);outline-offset:3px}:where(button,a,input,textarea,select):disabled{cursor:not-allowed}.quiz-question-card h2{font-size:clamp(19px,5vw,24px);line-height:1.45;overflow-wrap:anywhere}.quiz-answer{min-height:52px;line-height:1.45;text-align:left}.quiz-feedback-content p{font-size:13px;line-height:1.6}.note-reader-content{max-width:68ch;margin-inline:auto}.note-reader-content .assistant-markdown p{overflow-wrap:anywhere}@media(max-width:380px){.quiz-answer{min-height:48px;padding:10px}.note-reader-paper{padding:20px 16px 26px}}@media(prefers-reduced-motion:reduce){.quiz-feedback{animation:none}}@media(max-height:700px){.welcome-auth-open{padding-top:max(10px,env(safe-area-inset-top,0px))}.welcome-auth-open .welcome-art{width:58px;height:58px;margin-bottom:8px;border-radius:15px}.welcome-auth-open .welcome-art img{border-radius:13px}.welcome-auth-open .welcome-title{margin-top:5px;font-size:21px}.welcome-auth-open .welcome-sub{margin-bottom:8px}.welcome-auth-open .welcome-actions{margin-top:10px}.onboarding{padding-top:max(10px,env(safe-area-inset-top,0px))}.onboarding-progress{margin:10px 0 12px}.onboarding-art{width:56px;height:56px;margin-bottom:10px}.onboarding .screen-sub{margin-bottom:12px}.preference-options{gap:7px}.preference-option{min-height:48px}.duration-option{min-height:76px}.onboarding-actions{padding-top:14px}}.generation-modal-eyebrow,.section-kicker,.card-kicker,.chip,.eyebrow,.level-pill,.home-quest-label,.home-quest-reward,.file-badge,.upload-progress-footer,.quiz-progress-line,.onboarding .kicker,.note-reader-meta span:first-child,.notes-list-meta span:last-child{letter-spacing:normal;text-transform:none;font-variant:normal}.generation-modal-eyebrow{font-size:11px;font-weight:600}.section-kicker,.card-kicker{font-size:11px}.home-quest-label,.home-quest-reward,.file-badge{font-size:10px}.upload-progress-footer,.quiz-progress-line,.notes-list-meta span:last-child{font-size:10px}.study-session-shell .quiz-study-nav,.study-session-shell .flashcard-study-nav{position:relative;top:auto}.facebook-brand-icon{color:#1877f2!important;background:color-mix(in srgb,#1877f2 11%,var(--surface))!important}.reminder-preview-card{display:grid;grid-template-columns:76px minmax(0,1fr);gap:13px;align-items:center;padding:15px;margin-bottom:14px;border-color:#d7cdf7;background:linear-gradient(135deg,#f8f5ff,#fffdf8)}.reminder-preview-card>img{display:block;width:76px;height:76px;object-fit:contain;border-radius:20px;background:#eee8ff}.reminder-preview-copy{min-width:0}.reminder-preview-label{display:block;margin-bottom:5px;color:#6950bd;font-size:9px;font-weight:800;letter-spacing:.04em}.reminder-preview-copy>strong{display:block;color:var(--ink);font-size:13px;line-height:1.35}.reminder-preview-copy p{margin:5px 0 7px;color:var(--muted);font-size:11px;line-height:1.45}.reminder-preview-copy>small{color:var(--muted);font-size:9px}.reminder-settings-card{margin-bottom:22px}.reminder-science-kicker{margin:0 0 10px}.reminder-science-list{display:grid;gap:9px;margin-bottom:16px}.reminder-science-list article{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start;padding:12px;border:1px solid var(--outline);border-radius:13px;background:var(--surface)}.reminder-science-number{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#eee8ff;color:#5b3bc4;font-size:10px;font-weight:800}.reminder-science-list article strong{display:block;margin:1px 0 4px;font-size:12px}.reminder-science-list article p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}@media(max-width:360px){.reminder-preview-card{grid-template-columns:58px minmax(0,1fr);gap:10px;padding:11px}.reminder-preview-card>img{width:58px;height:58px;border-radius:15px}.reminder-preview-copy p{font-size:10px}}.quiz-insights{display:grid;gap:12px;margin:18px 0 24px}.quiz-insights-heading{display:flex;align-items:end;justify-content:space-between;gap:12px}.quiz-insights-heading .section-kicker{margin:0 0 5px}.quiz-insights-heading h2,.quiz-review-heading h2{margin:0;font-size:20px;line-height:1.3;letter-spacing:-.025em}.quiz-insights-subtitle{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.quiz-insights-heading>span{flex-shrink:0;padding:6px 9px;border:1px solid var(--outline);border-radius:999px;color:var(--muted);font-size:10px;font-weight:650}.quiz-topic-list{display:grid;gap:10px}.quiz-topic-card{padding:14px}.quiz-topic-top{display:flex;justify-content:space-between;align-items:start;gap:12px}.quiz-topic-status{display:inline-flex;align-items:center;gap:4px;margin-bottom:5px;color:var(--primary);font-size:9px;font-weight:800;letter-spacing:.04em}.quiz-topic-top h3{margin:0;font-size:15px;line-height:1.4}.quiz-topic-top>strong{color:var(--danger-ink, #9f1d25);font-size:18px;font-variant-numeric:tabular-nums}.quiz-topic-meter{height:6px;margin:12px 0 10px;overflow:hidden;border-radius:999px;background:var(--outline)}.quiz-topic-meter span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.quiz-topic-card>p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.quiz-topic-card ul{display:grid;gap:6px;margin:10px 0 0;padding-left:18px;font-size:12px;line-height:1.5}.quiz-topic-card li{padding-left:2px}.quiz-strength-card{display:flex;align-items:start;gap:10px;padding:14px}.quiz-strength-card>svg{flex-shrink:0;color:var(--primary)}.quiz-strength-card strong{display:block;margin-bottom:4px;font-size:13px}.quiz-strength-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.quiz-strength-summary{display:flex;align-items:start;gap:8px;padding:11px 12px;border:1px solid var(--success-border, #d8e8df);border-radius:12px;background:var(--success-soft, #f1faf5);color:var(--success-ink, #176345);font-size:12px;line-height:1.5}.quiz-strength-summary>svg{flex-shrink:0;margin-top:1px}.quiz-insights-note{margin:0;color:var(--muted);font-size:10px;line-height:1.5}.quiz-review-heading{margin:24px 0 10px}.quiz-review-heading p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.quiz-review .quiz-your-answer{color:var(--danger-ink, #9f1d25);font-weight:600}@media(max-width:380px){.quiz-insights-heading h2,.quiz-review-heading h2{font-size:18px}.quiz-topic-card{padding:12px}}@media(prefers-reduced-motion:reduce){.quiz-topic-meter span{transition:none}}.ppt-viewer{display:grid;gap:14px;min-width:0;padding:clamp(10px,2.5vw,22px);border:1px solid var(--outline);border-radius:18px;background:var(--surface-soft, var(--surface));overflow:hidden}.ppt-viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px}.ppt-viewer-toolbar>span{display:flex;align-items:baseline;gap:4px;white-space:nowrap}.ppt-viewer-toolbar>span strong{color:var(--ink);font-size:19px;font-variant-numeric:tabular-nums}.ppt-viewer-toolbar>div{display:flex;gap:6px}.ppt-viewer-toolbar .btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:34px;padding:0 9px;font-size:11px}.ppt-canvas{position:relative;display:flex;flex-direction:column;gap:16px;width:100%;min-height:340px;aspect-ratio:16 / 9;transform-origin:top center;overflow:hidden;padding:clamp(18px,4vw,42px);border:1px solid rgba(30,34,48,.12);border-radius:5px;background:#fff;color:#202332;box-shadow:0 12px 35px #1418261f}.ppt-canvas-heading{display:grid;gap:10px}.ppt-canvas-heading>span{color:#777e91;font-size:9px;font-weight:800;letter-spacing:.14em}.ppt-canvas-heading>strong{font-size:clamp(20px,3vw,34px);line-height:1.15;overflow-wrap:anywhere}.ppt-canvas-text{flex:1;overflow:auto;color:#363b4b;font-size:clamp(14px,1.7vw,19px);line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.ppt-canvas-images{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;max-height:44%;overflow:auto}.ppt-canvas-images img{display:block;max-width:min(100%,420px);max-height:220px;object-fit:contain;border-radius:4px}.ppt-canvas-empty{color:#777e91;font-size:13px}.ppt-canvas>footer{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:10px;border-top:1px solid #e8eaf0;color:#858b9b;font-size:10px}.ppt-slide-strip{display:flex;gap:8px;padding:2px 1px 7px;overflow-x:auto;scroll-snap-type:x mandatory}.ppt-slide-strip button{display:grid;flex:0 0 124px;gap:5px;min-width:0;padding:9px;border:1px solid var(--outline);border-radius:10px;background:var(--surface);color:var(--muted);text-align:left;scroll-snap-align:start}.ppt-slide-strip button.active{border-color:var(--accent, #b98a32);box-shadow:inset 0 0 0 1px var(--accent, #b98a32);color:var(--ink)}.ppt-slide-strip button>span{font-size:10px;font-weight:800;letter-spacing:.08em}.ppt-slide-strip button small{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;min-height:28px;font-size:11px;line-height:1.35;overflow-wrap:anywhere}.ppt-download-original{display:inline-flex;align-items:center;justify-content:center;gap:7px;justify-self:start;min-height:36px;padding:0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:12px;font-weight:650;text-decoration:none;cursor:pointer}.ppt-download-original:hover{color:var(--ink)}.ppt-empty-state{display:grid;justify-items:center;gap:10px;padding:36px 18px;color:var(--muted);text-align:center}.ppt-empty-state strong{color:var(--ink)}.ppt-empty-state p{max-width:360px;font-size:12px;line-height:1.6}.ppt-empty-state a{color:var(--ink);font-weight:700}@media(max-width:480px){.ppt-viewer{gap:10px;padding:10px;border-radius:14px}.ppt-canvas{min-height:300px;padding:18px;gap:12px}.ppt-viewer-toolbar .btn-secondary{padding:0 7px}.ppt-canvas-images img{max-height:150px}}.lucide{flex:0 0 auto;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}button>.lucide,a>.lucide{vertical-align:-.16em}.btn-gold>.lucide,.btn-secondary>.lucide,.generation-modal-cancel>.lucide{width:17px;height:17px}.tab>.lucide{width:20px;height:20px}.settings-link-icon>.lucide,.home-stat-icon>.lucide,.powerup-icon>.lucide,.home-quest-icon>.lucide,.flashcard-heading-icon>.lucide,.flashcard-deck-icon>.lucide{width:19px;height:19px}.settings-link>.lucide:last-child,.home-recent-item>.lucide,.quick-card>.lucide{width:17px;height:17px;opacity:.72}.note-reader-icon,.delete-icon-btn,.saved-study-delete,.ai-action-btn,.sidebar-toggle,.appbar-back{transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease;-webkit-tap-highlight-color:transparent}.note-reader-icon,.delete-icon-btn,.saved-study-delete,.ai-action-btn{display:inline-grid;place-items:center}.note-reader-icon>.lucide,.delete-icon-btn>.lucide,.saved-study-delete>.lucide,.ai-action-btn>.lucide,.sidebar-toggle>.lucide,.appbar-back>.lucide{width:18px;height:18px}@media(hover:hover)and (pointer:fine){.note-reader-icon:hover,.saved-study-delete:hover,.ai-action-btn:hover,.sidebar-toggle:hover,.appbar-back:hover{border-color:color-mix(in srgb,var(--primary) 38%,var(--outline));background-color:var(--primary-tint);color:var(--primary)}.delete-icon-btn:hover{border-color:var(--danger);background-color:var(--danger-surface);color:var(--danger-ink)}}.note-reader-icon:active,.delete-icon-btn:active,.saved-study-delete:active,.ai-action-btn:active,.sidebar-toggle:active,.appbar-back:active{transform:scale(.96)}@media(prefers-reduced-motion:reduce){.note-reader-icon,.delete-icon-btn,.saved-study-delete,.ai-action-btn,.sidebar-toggle,.appbar-back{transition:none}}.home-quest-icon,.home-stat-icon,.home-recent-icon,.powerup-icon,.quiz-simple-icon,.saved-quiz-row-icon,.flashcard-heading-icon,.flashcard-deck-icon,.notes-empty-icon,.settings-link-icon,.chat-context-icon{border:2px solid var(--outline);border-radius:9px;box-shadow:2px 2px 0 var(--shadow);transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}.home-quest-icon{background:#dbeafe;color:#1d4ed8}.home-stat-icon.stat-notes,.powerup-note .powerup-icon,.home-recent-note{background:#ffe2d8;color:#b94b2c}.home-stat-icon.stat-pdfs,.powerup-pdf .powerup-icon,.home-recent-file{background:#d9f0f7;color:#17677f}.home-stat-icon.stat-cards{background:#d8f4ed;color:#08785f}.powerup-ai .powerup-icon,.powerup-quiz .powerup-icon,.quiz-simple-icon,.saved-quiz-row-icon{background:#e9e1ff;color:#6741c8}.notes-empty-icon{background:#ffe2d8;color:#b94b2c}.settings-link-icon{background:#fff0d9;color:#94500c}.chat-context-icon{background:#e9e1ff;color:#6741c8}.home-quest-icon,.home-stat-icon,.home-recent-icon,.powerup-icon{display:grid;place-items:center}.home-stat-icon,.powerup-icon{width:38px;height:38px;flex:0 0 auto}.home-quest-icon{width:46px;height:46px;flex:0 0 auto}.home-recent-icon{width:42px;height:42px;flex:0 0 auto}.home-stat:hover .home-stat-icon,.quick-card:hover .powerup-icon,.saved-quiz-row:hover .saved-quiz-row-icon,.flashcard-deck-row:hover .flashcard-deck-icon{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--shadow)}.quiz-simple-icon{width:40px;height:40px;flex:0 0 auto}.notes-empty-icon{width:44px;height:44px}.settings-link-icon{width:40px;height:40px}.chat-context-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 auto}.tabbar .tab:nth-child(1) svg{color:#2f80ed}.tabbar .tab:nth-child(2) svg{color:#e8795b}.tabbar .tab:nth-child(3) svg{color:#0891b2}.tabbar .tab:nth-child(4) svg{color:#805ad5}.tabbar .tab:nth-child(5) svg{color:#7c5ce7}@media(prefers-reduced-motion:reduce){.home-stat-icon,.powerup-icon,.saved-quiz-row-icon,.flashcard-deck-icon{transition:none}}.auth-divider{display:flex;align-items:center;gap:12px;margin:2px 0;color:var(--muted);font-size:11px;font-weight:600}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--outline)}@media(min-width:1100px){.welcome{box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;width:min(calc(100% - 64px),500px);max-width:500px;min-height:100svh;margin-inline:auto;padding:24px 0;overflow:visible}.welcome-art{width:112px;height:112px;margin-bottom:0;border-radius:24px}.welcome-art img{border-radius:22px}.welcome-title{margin-top:18px;font-size:clamp(30px,3.2vw,38px);line-height:1.12}.welcome-sub{margin:8px 0 12px;font-size:14px}.feature-row{min-height:62px;margin-top:8px;padding-inline:12px}.feature-icon{width:32px;height:32px}.feature-row strong{font-size:13px}.feature-row small{font-size:11px}.welcome-actions{margin-top:14px}.welcome-actions>.btn-gold{height:50px}.welcome-auth-open{justify-content:center;padding:20px 0;overflow-x:visible;overflow-y:auto}.welcome-auth-open .welcome-art{width:72px;height:72px;margin-bottom:0;border-radius:18px}.welcome-auth-open .welcome-art img{border-radius:16px}.welcome-auth-open .welcome-title{margin-top:10px;font-size:26px}.welcome-auth-open .welcome-sub{margin:5px 0 10px}.welcome-auth-open .welcome-actions{margin-top:10px}.welcome-auth-open .welcome-actions>.text-btn{margin-bottom:6px}.welcome-auth-open .social-auth,.welcome-auth-open .email-form{gap:9px}.welcome-auth-open .btn-gold,.welcome-auth-open .btn-secondary{height:48px;min-height:48px}.welcome-auth-open .email-input{height:46px}.welcome-auth-open .auth-error{margin-top:6px;padding:8px 10px}.welcome-auth-open .legal-line{margin-top:8px}}@media(min-width:1100px)and (max-height:760px){.welcome{padding-block:14px}.welcome-art{width:88px;height:88px}.welcome-title{margin-top:12px;font-size:30px}.welcome-sub{margin:5px 0 8px}.feature-row{min-height:54px;margin-top:6px}.welcome-actions{margin-top:10px}.welcome-auth-open{padding-block:12px}.welcome-auth-open .welcome-art{width:58px;height:58px}.welcome-auth-open .welcome-title{margin-top:7px;font-size:23px}.welcome-auth-open .welcome-sub{margin-bottom:7px}.welcome-auth-open .welcome-actions{margin-top:7px}}.crammy-card{display:block;position:relative;min-height:168px;padding:0}.crammy-img{position:absolute;top:30px;left:8px;width:68px;height:68px;padding:5px;box-sizing:border-box;border-radius:20px;background:#cfe5ff;object-fit:contain;flex-shrink:0}.crammy-info{position:absolute;top:14px;left:84px;right:12px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.crammy-info h2{margin:0;font-size:20px;font-weight:700;letter-spacing:-.02em}.crammy-eyebrow{color:var(--primary-text);font-size:10px;font-weight:800;letter-spacing:.08em;line-height:1.2}.crammy-tagline{position:absolute;left:14px;right:12px;bottom:12px;margin:0;font-size:12px;line-height:1.35;font-weight:500;color:var(--ink)}.level-pill{display:inline-flex;align-items:center;height:26px;padding:0 12px;margin-top:4px;background:var(--xp-gold);border:2px solid var(--outline);border-radius:6px;font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--on-gold)}.quest-card{display:flex;align-items:flex-start;gap:14px;padding:16px}.quest-orb{position:relative;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;color:var(--success);flex-shrink:0}.quest-orb-bg{position:absolute;inset:0;width:42px;height:42px}.quest-orb svg{position:relative;z-index:1}.quest-info{display:flex;flex-direction:column;gap:6px;flex:1}.quest-info strong{font-size:16px;font-weight:700}.quest-info small{font-size:12px;color:var(--muted);margin:0}.quest-track{display:block;height:8px;margin:6px 0 2px;border:0;border-radius:4px;background:#e4dfea;overflow:hidden}.quest-fill{display:block;height:100%;border-radius:inherit;background:var(--success-accent)}.resume-card{display:flex;align-items:center;gap:14px;width:100%;min-height:70px;padding:12px 16px}.resume-badge{display:grid;place-items:center;width:44px;height:46px;border:2px solid var(--outline);border-radius:6px;background:var(--primary-tint);color:var(--primary);flex-shrink:0}.resume-info{display:flex;flex-direction:column;gap:3px;min-width:0}.resume-info strong{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resume-info small{font-size:10.5px;color:var(--muted)}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.quick-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:12px;min-height:60px;padding:10px 12px;font-size:13px;font-weight:600}.quick-card svg{color:var(--primary)}.home-mascot-card{min-height:176px;overflow:hidden;background:#f3f7ff;border-color:#a8c7f0}.home-mascot-glow{position:absolute;width:150px;height:150px;border-radius:50%;right:-42px;top:-52px;background:#d7e9ff}.home-mascot-card .crammy-img{z-index:1;top:34px;left:12px;width:76px;height:76px}.home-mascot-card .crammy-info{z-index:1;left:100px;top:17px;gap:5px}.home-mascot-card .crammy-info h2{font-size:19px}.home-mascot-card .crammy-info .small{margin:0}.home-mascot-card .level-pill{height:24px;font-size:10px;margin-top:2px}.home-mascot-card .crammy-tagline{z-index:1;font-size:11.5px}.home-mascot-card{margin-bottom:20px}.home-quest{margin:0 0 18px;padding:18px;border-color:#d7c8ff;background:#fbf9ff}.home-quest-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px}.home-quest-label{display:inline-flex;align-items:center;gap:6px;color:var(--primary);font-size:10px;font-weight:650}.home-quest-reward{color:var(--muted);font-size:10px;font-weight:600}.home-quest-body{display:flex;align-items:center;gap:12px}.home-quest-icon{display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;border:1px solid #d8caff;border-radius:14px;background:#eee7ff;color:#7046bc}.home-quest-copy{min-width:0}.home-quest-copy h2{margin:0 0 5px;font-size:16px;line-height:1.25}.home-quest-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.home-quest-action{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:18px;min-height:44px}.home-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 30px}.home-stat{display:flex;align-items:center;flex-direction:column;gap:5px;min-width:0;padding:12px 6px}.home-stat-icon{display:grid;place-items:center;width:34px;height:34px;margin-bottom:2px;border-radius:11px}.stat-notes{color:#3168ad;background:#e5f0ff}.stat-pdfs{color:#167a68;background:#dcf6ee}.stat-cards{color:#80500b;background:#fff0d5}.home-stat strong{font-size:20px;line-height:1.1;font-variant-numeric:tabular-nums}.home-stat small{color:var(--muted);font-size:11px}.home-section-heading{display:flex;align-items:end;justify-content:space-between;margin:0 0 15px}.home-section-heading h2{margin:0;font-size:18px;letter-spacing:-.02em}.home-powerups{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-powerups .quick-card{display:grid;grid-template-columns:36px minmax(0,1fr) 16px;align-items:center;justify-content:initial;gap:9px;min-height:78px;padding:11px 10px;text-align:left}.home-powerups .quick-card>span:nth-child(2){display:flex;flex-direction:column;gap:4px;min-width:0}.home-powerups .quick-card strong{font-size:11.5px;line-height:1.25}.home-powerups .quick-card small{color:var(--muted);font-size:10px;line-height:1.25;font-weight:450}.home-powerups .quick-card>svg{width:15px;color:var(--muted)}.powerup-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#e7efff}.powerup-note .powerup-icon{color:#27568f;background:#e5f0ff}.powerup-pdf .powerup-icon{color:#116354;background:#dcf6ee}.powerup-ai .powerup-icon{color:#6037a6;background:#eee7ff}.powerup-quiz .powerup-icon{color:#80500b;background:#fff0d5}.home-powerups{margin-bottom:8px}.home-resume-heading{margin:30px 0 12px}@media(max-width:360px){.home-mascot-card .crammy-img{left:8px;width:64px;height:64px}.home-mascot-card .crammy-info{left:82px}.home-mascot-card .crammy-info h2{font-size:17px}.home-powerups .quick-card{grid-template-columns:30px minmax(0,1fr) 12px;gap:6px;padding:9px 7px}.powerup-icon{width:30px;height:30px}}.home-welcome{margin-bottom:22px}.home-welcome .screen-title{max-width:340px;margin-top:10px;font-size:clamp(25px,6vw,31px);line-height:1.14;letter-spacing:-.045em;overflow-wrap:anywhere}.home-welcome .screen-sub{margin-top:8px;max-width:340px;line-height:1.5}.home-overview{display:grid;grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr) 1px minmax(0,1fr);align-items:center;gap:8px;padding:15px 10px;border:1px solid var(--line, #e8e4ed);border-radius:14px;background:#fff}.home-overview-item{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:9px;padding:3px 5px;text-align:left;border-radius:8px}.home-overview-item:focus-visible,.home-text-action:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.home-overview-label{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:11px;font-weight:550;white-space:nowrap}.home-overview-label svg{color:#777184}.home-overview-item strong{color:var(--ink);font-size:24px;line-height:1;font-weight:700;font-variant-numeric:tabular-nums}.home-overview-divider{width:1px;height:38px;background:#ebe7f0}.home-work-section{margin-top:29px}.home-section-heading{align-items:center;margin-bottom:12px}.home-section-heading .section-kicker{margin-bottom:5px}.home-section-heading h2{font-size:17px;font-weight:700;letter-spacing:-.025em}.home-text-action{display:inline-flex;align-items:center;gap:2px;flex-shrink:0;padding:6px 0 6px 8px;color:var(--primary);font-size:11px;font-weight:650}.home-recent-item{display:flex;align-items:center;gap:12px;width:100%;min-height:78px;padding:13px;border-radius:13px;text-align:left}.home-recent-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:11px}.home-recent-note{background:#eef2ff;color:#4f5f9c}.home-recent-file{background:#e8f5ef;color:#28735c}.home-recent-copy,.home-action-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}.home-recent-copy strong,.home-action-copy strong{color:var(--ink);font-size:13px;font-weight:650;line-height:1.35;overflow-wrap:anywhere}.home-recent-copy small,.home-action-copy small{color:var(--muted);font-size:11px;line-height:1.4}.home-recent-item>svg,.home-action-row>svg{flex-shrink:0;color:#898494}.home-empty-library{padding:18px;border-radius:13px;box-shadow:none}.home-empty-library>strong{font-size:14px}.home-empty-library p{margin:7px 0 13px;color:var(--muted);font-size:12px;line-height:1.5}.home-empty-action{display:inline-flex;width:auto;min-height:38px;height:38px;align-items:center;gap:5px;padding:0 11px;font-size:12px}.home-action-list{display:flex;flex-direction:column;gap:9px}.home-action-row{display:flex;align-items:center;gap:11px;width:100%;min-height:70px;padding:12px;border-radius:13px;text-align:left}.home-action-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px}.home-action-notes{background:#f0edff;color:#6547ae}.home-action-material{background:#e7f4ee;color:#28735c}.home-action-chat{background:#edf2fb;color:#48648f}.home-action-practice{background:#fff3df;color:#8c641e}.home-action-row:active,.home-recent-item:active{transform:scale(.995)}@media(max-width:360px){.home-overview{gap:4px;padding:13px 6px}.home-overview-item{padding:3px}.home-overview-label{gap:4px;font-size:10px}.home-overview-label svg{width:13px;height:13px}.home-overview-item strong{font-size:22px}.home-action-row{min-height:66px;padding:10px;gap:9px}}@media(prefers-reduced-motion:reduce){.home-action-row,.home-recent-item{transition:none}}.loading-hint{max-width:260px;margin:-3px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.offline-recovery{box-sizing:border-box;width:100%;max-width:640px;min-height:100dvh;margin:0 auto;padding:max(22px,env(safe-area-inset-top)) 20px max(28px,env(safe-area-inset-bottom));color:var(--ink);background:var(--surface, #fff)}.offline-welcome{position:relative;isolation:isolate;overflow:hidden;margin:-2px -4px 26px;padding:19px 18px 18px;border:1px solid #ded8fb;border-radius:26px;background:linear-gradient(145deg,#fcfbff,#f4f1ff 58%,#eae6ff);box-shadow:0 16px 42px #43308b12}.offline-welcome:before{position:absolute;z-index:-1;top:150px;right:-95px;width:245px;height:245px;border:1px solid #d8d0fb;border-radius:50%;content:""}.offline-welcome:after{position:absolute;z-index:-1;top:176px;right:-69px;width:193px;height:193px;border:1px solid #e3ddff;border-radius:50%;content:""}.offline-welcome-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.offline-recovery-brand{display:grid;place-items:center;width:88px;height:88px;flex:0 0 88px;margin:0;padding:5px;overflow:hidden;border:1px solid #ded7ff;border-radius:50%;background:radial-gradient(circle at 35% 25%,#fff,#f5f1ff 58%,#e8e1ff);box-shadow:0 7px 20px #5740b314,inset 0 1px #fff}.offline-recovery-brand img{display:block;width:100%;height:100%;object-fit:contain;border-radius:50%}.offline-hero-copy{max-width:440px;padding:30px 0 12px}.offline-kicker{margin:0 0 10px;color:#5b3fd0;font-size:10px;font-weight:800;letter-spacing:.11em}.offline-welcome .offline-recovery h1,.offline-welcome h1{max-width:390px;margin:0 0 11px;color:#252044;font-size:clamp(31px,8vw,42px);font-weight:760;line-height:1.04;letter-spacing:-.055em;overflow-wrap:break-word}.offline-welcome .offline-recovery-copy{max-width:385px;margin:0;color:#5e5a78;font-size:14px;line-height:1.65}.offline-hero-proof{position:relative;display:flex;align-items:center;gap:12px;min-height:100px;margin:18px -3px 0;padding:10px 13px;border:1px solid #e0dbfb;border-radius:19px;background:#ffffffc7;box-shadow:0 5px 18px #43308b0a}.offline-hero-illustration{position:relative;display:grid;place-items:center;width:76px;height:76px;flex:0 0 76px}.offline-orbit{position:absolute;border:1px solid #dcd5fb;border-radius:50%}.offline-orbit-one{width:72px;height:72px}.offline-orbit-two{width:55px;height:55px;border-style:dashed}.offline-hero-book{display:grid;place-items:center;width:48px;height:48px;border:1px solid #d7cffb;border-radius:16px;background:#eeeaff;color:#5b3fd0;transform:rotate(-5deg)}.offline-hero-spark{position:absolute;display:grid;place-items:center;width:19px;height:19px;border-radius:7px;background:#fff;color:#6a53d8;font-size:13px;box-shadow:0 2px 8px #43308b12}.offline-spark-one{top:3px;right:3px}.offline-spark-two{bottom:3px;left:1px}.offline-hero-proof-copy{display:grid;gap:5px;min-width:0;flex:1}.offline-hero-proof-copy strong{color:#30275f;font-size:14px;letter-spacing:-.02em}.offline-hero-proof-copy span{max-width:185px;color:#686382;font-size:11px;line-height:1.45}.offline-hero-check{display:grid;place-items:center;width:29px;height:29px;flex:0 0 29px;border-radius:50%;background:#e9e4ff;color:#5b3fd0}.offline-welcome .offline-capability-grid>div{border-color:#e0dbfb;background:#ffffffc7}.offline-welcome .offline-capability-grid svg{color:#6650d2}.offline-welcome .offline-capability-grid strong{color:#30275f;font-size:22px}.offline-welcome .offline-capability-grid span{color:#686382;font-size:11px}.offline-welcome h1{margin-top:15px}.offline-status-dot{display:block;width:7px;height:7px;border-radius:50%;background:#b88937;box-shadow:0 0 0 3px #b889371c}.offline-capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:20px}.offline-capability-grid>div{display:grid;justify-items:start;gap:5px;min-width:0;padding:12px;border:1px solid var(--outline);border-radius:14px;background:var(--surface)}.offline-capability-grid svg{color:var(--muted)}.offline-capability-grid strong{font-size:20px;line-height:1.1}.offline-capability-grid span{color:var(--muted);font-size:10px;line-height:1.3}.offline-recovery-status{display:inline-flex;align-items:center;justify-content:center;gap:7px;max-width:calc(100% - 100px);padding:8px 11px;border:1px solid var(--outline);border-radius:999px;color:var(--muted);font-size:11px;line-height:1.35;font-weight:700}.offline-recovery-status svg{flex:0 0 auto}.offline-recovery h1{margin:16px 0 8px;font-size:clamp(25px,6vw,32px);line-height:1.15;letter-spacing:-.035em}.offline-recovery-copy{max-width:460px;margin:0 0 24px;color:var(--muted);font-size:14px;line-height:1.6}.offline-recovery-section{margin:18px 0;padding:17px;border:1px solid var(--outline);border-radius:20px;background:var(--surface-raised, #fff);box-shadow:0 5px 20px #10182806}.offline-recovery-section h2{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px;font-size:15px}.offline-recovery-section h2 span{display:inline-grid;place-items:center;min-width:25px;height:25px;padding:0 6px;border-radius:9px;background:var(--surface-secondary, var(--outline));color:var(--muted);font-size:11px;font-weight:750}.offline-recovery-section h2 span{color:var(--muted);font-size:12px;font-weight:600}.offline-list-item{display:flex;width:100%;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border:0;border-bottom:1px solid var(--outline);background:transparent;color:inherit;text-align:left;cursor:pointer}.offline-list-item>span{display:grid;min-width:0;gap:4px}.offline-list-item strong{overflow-wrap:anywhere;font-size:14px}.offline-list-item small{overflow:hidden;color:var(--muted);font-size:12px;line-height:1.45;text-overflow:ellipsis}.offline-list-item>svg{flex-shrink:0;color:var(--muted)}.offline-list-item:disabled{opacity:.62;cursor:not-allowed}.offline-file-preview{display:block;width:100%;height:min(72dvh,900px);border:1px solid var(--outline);border-radius:12px;background:#fff}.offline-pdf-viewer{min-width:0;margin:18px 0 28px}.offline-pdf-toolbar{position:sticky;top:8px;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;padding:10px;border:1px solid var(--outline);border-radius:14px;background:var(--surface-raised, #fff);box-shadow:0 4px 16px #1018280a}.offline-pdf-toolbar span{color:var(--muted);font-size:12px;font-weight:650}.offline-pdf-toolbar .btn-secondary{min-height:34px;padding:0 10px}.offline-pdf-stage{display:flex;justify-content:center;overflow:auto;max-height:72dvh;margin-top:12px;padding:12px;border:1px solid var(--outline);border-radius:12px;background:#e9edf2;-webkit-overflow-scrolling:touch}.offline-pdf-stage canvas{display:block;max-width:none;height:auto;background:#fff;box-shadow:0 2px 14px #10182824}.offline-pdf-error{padding:14px;border:1px solid #e5b6b6;border-radius:12px;color:#9b3030;font-size:13px;line-height:1.5}.offline-office-text{margin-bottom:16px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.75}.offline-image-preview{display:grid;gap:14px}.offline-image-stage{display:grid;place-items:center;min-height:180px;max-height:72dvh;overflow:auto;padding:10px;border:1px solid var(--outline);border-radius:14px;background:var(--surface-secondary, #f2f4f7)}.offline-image-stage img{display:block;max-width:100%;max-height:68dvh;width:auto;height:auto;object-fit:contain}.offline-recovery-section .btn-gold{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border-radius:10px;text-decoration:none}.offline-empty{margin:0;padding:15px 13px;border:1px dashed var(--outline);border-radius:12px;color:var(--muted);background:var(--surface);font-size:13px;line-height:1.55}.offline-recovery-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0 22px;font-size:13px;font-weight:650}.offline-note-content{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.75}.offline-study-card{display:grid;width:100%;min-height:260px;place-content:center;gap:18px;margin:20px 0;padding:26px 22px;border:1px solid var(--outline);border-radius:20px;background:var(--surface-raised, #fff);color:var(--ink);text-align:center;box-shadow:0 8px 30px #1018280a}.offline-study-card>span,.offline-study-card>small{color:var(--muted);font-size:11px;font-weight:650;letter-spacing:.06em}.offline-study-card strong{font-size:clamp(20px,5vw,27px);line-height:1.45;overflow-wrap:anywhere}.offline-study-controls{display:flex;align-items:center;justify-content:space-between;gap:10px}.offline-study-controls>span{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.offline-retry{display:inline-flex;align-items:center;gap:8px;margin-top:6px}.offline-help-card{display:flex;align-items:flex-start;gap:12px;margin:24px 0 0;padding:15px;border:1px solid var(--outline);border-radius:16px;background:var(--surface-raised, #fff)}.offline-help-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:11px;background:#eeeaff;color:#5b3fd0}.offline-help-card>div:last-child{min-width:0}.offline-help-card strong{font-size:13px}.offline-help-card p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.offline-recovery-footnote{margin:16px 0 0;color:var(--muted);font-size:11px;line-height:1.55}@media(max-width:380px){.offline-welcome{padding:15px 13px;border-radius:22px}.offline-hero-copy{padding-top:25px}.offline-hero-proof{gap:8px;padding:8px}.offline-hero-illustration{width:65px;height:65px;flex-basis:65px}.offline-orbit-one{width:62px;height:62px}.offline-orbit-two{width:48px;height:48px}.offline-hero-book{width:42px;height:42px}.offline-hero-proof-copy strong{font-size:13px}.offline-hero-proof-copy span{font-size:10px}.offline-capability-grid{gap:6px}.offline-capability-grid>div{padding:10px 8px}.offline-recovery-section{padding:13px}}@media(prefers-reduced-motion:reduce){.offline-hero-book{transform:none}}.offline-quiz-score{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:18px 0;padding:18px;border:1px solid var(--outline);border-radius:14px;background:var(--surface-raised, #fff)}.offline-quiz-score strong{font-size:28px;letter-spacing:-.04em}.offline-quiz-score span{color:var(--muted);font-size:13px}.offline-quiz-progress{height:5px;margin:18px 0;overflow:hidden;border-radius:999px;background:var(--outline)}.offline-quiz-progress span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.offline-quiz-question{margin:0 0 18px;font-size:clamp(20px,5vw,27px);line-height:1.35;overflow-wrap:anywhere}.offline-quiz-options{display:grid;gap:9px}.offline-quiz-option{display:flex;align-items:center;gap:11px;width:100%;min-height:50px;padding:11px;border:1.5px solid var(--outline);border-radius:12px;background:var(--surface-raised, #fff);color:var(--ink);text-align:left;font-size:14px;line-height:1.45}.offline-quiz-option>span{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border:1px solid var(--outline);border-radius:8px;font-size:11px;font-weight:750}.offline-quiz-option.is-correct{border-color:var(--success, #16835d);background:var(--success-soft, #effaf4)}.offline-quiz-option.is-wrong{border-color:var(--danger, #c24141);background:var(--danger-soft, #fff2f2)}.offline-quiz-feedback{display:grid;gap:8px;margin-top:16px;padding:15px;border:1px solid var(--outline);border-radius:14px}.offline-quiz-feedback p{margin:0;font-size:13px;line-height:1.55}.offline-quiz-feedback .btn-gold{justify-content:center;margin-top:5px}.offline-quiz-review{display:grid;gap:7px;margin:10px 0;padding:14px;border:1px solid var(--outline);border-radius:12px}.offline-quiz-review strong{font-size:13px;line-height:1.5}.offline-quiz-review p,.offline-quiz-review small{margin:0;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.offline-quiz-review small{color:var(--muted)}.saved-quiz-library{margin:18px 0 20px;padding:14px;border:1px solid var(--outline);border-radius:16px;background:var(--surface-raised, #fff)}.saved-quiz-library-heading>span{display:grid;place-items:center;min-width:25px;height:25px;padding:0 6px;border-radius:8px;background:var(--surface-secondary, var(--outline));color:var(--muted);font-size:11px;font-weight:750}.saved-quiz-row{display:flex;align-items:center;gap:10px;width:100%;padding:12px 0;border:0;border-top:1px solid var(--outline);background:transparent;color:var(--ink);text-align:left}.saved-quiz-row-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:10px;background:var(--surface-secondary, var(--outline))}@media(max-width:380px){.offline-recovery{padding-right:16px;padding-left:16px}.offline-study-card{min-height:220px;padding:20px 16px}.offline-quiz-score{padding:14px}}.offline-search{display:flex;align-items:center;gap:11px;min-height:52px;margin:0 0 12px;padding:0 15px;border:1px solid var(--outline);border-radius:15px;background:var(--surface-raised, var(--surface));color:var(--muted)}.offline-search>svg{flex:0 0 auto;color:var(--primary)}.offline-search input{width:100%;min-width:0;min-height:50px;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:14px}.offline-search input::placeholder{color:var(--muted);opacity:.9}.offline-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}.offline-library-summary{margin:0 0 18px;padding:13px 15px;border:1px solid var(--outline);border-radius:14px;background:var(--surface)}.offline-library-summary>div{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:12px;font-weight:750}.offline-library-summary>div>svg{flex:0 0 auto;color:var(--primary)}.offline-library-summary p{margin:6px 0 0 23px;color:var(--muted);font-size:12px;line-height:1.55}.offline-recovery-section{scroll-margin-top:16px}.offline-recovery-section h2{letter-spacing:-.025em}.offline-list-item{min-height:62px;transition:background-color .16s ease,border-color .16s ease}.offline-list-item:last-child{border-bottom:0}.offline-list-item:not(:disabled):hover{background:color-mix(in srgb,var(--surface-secondary, var(--surface)) 68%,transparent)}.offline-list-item:focus-visible,.offline-study-card:focus-visible,.offline-quiz-option:focus-visible,.offline-search input:focus-visible,.offline-recovery button:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.offline-notice{gap:12px;padding:10px max(16px,env(safe-area-inset-left));border-color:var(--outline);background:var(--surface)}.offline-notice-copy strong{font-size:12px;letter-spacing:-.01em}.offline-notice-copy>span{max-width:620px;font-size:12px;line-height:1.5}.offline-notice-pill{padding:6px 9px;letter-spacing:.02em}.offline-empty{border-style:solid;border-color:var(--outline);background:var(--surface)}@media(max-width:480px){.offline-search{min-height:50px;border-radius:13px}.offline-search input{font-size:16px}.offline-library-summary{padding:12px}.offline-recovery-section{margin:14px 0}.offline-list-item{gap:10px;padding:13px 0}}@media(prefers-reduced-motion:reduce){.offline-list-item{transition:none}}.offline-recovery{padding-top:max(18px,env(safe-area-inset-top))}.offline-welcome{margin-bottom:20px}.offline-recovery-status{border-color:#ded8fb;background:#ffffffb8;color:#5542b7}.offline-recovery-status svg{color:#5b3fd0}.offline-status-dot{background:#5b3fd0;box-shadow:0 0 0 3px #5b3fd01c}.offline-capability-grid>div{border-color:#e6e2f2;box-shadow:0 3px 12px #30275f08}.offline-recovery-section{padding:16px;border-color:#e8e4f2;border-radius:18px;box-shadow:0 4px 16px #30275f07}.offline-recovery-section h2{margin-bottom:7px;font-size:14px}.offline-recovery-section h2 span{border:1px solid #e3def7;background:#f4f1ff;color:#5b3fd0;font-variant-numeric:tabular-nums}.offline-list-item{min-height:64px;padding:13px 2px;border-bottom-color:#eeebf5;border-radius:9px}.offline-list-item strong{color:var(--ink);font-size:13px;line-height:1.4}.offline-list-item small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal}.offline-list-item>svg{width:17px;height:17px;padding:3px;box-sizing:content-box;border-radius:8px;background:#f1edff;color:#6650d2}.offline-list-item:not(:disabled):hover{background:#f8f6ff}.offline-list-item:disabled{opacity:.72}.offline-empty{padding:15px;border-color:#e4def8;border-radius:13px;background:#faf9ff;color:#686382}.offline-library-summary{border-color:#e1dcf8;background:linear-gradient(135deg,#faf9ff,#fff)}.offline-library-summary>div>svg{color:#5b3fd0}.offline-help-card{border-color:#e2dcfa;background:#faf9ff}.offline-help-icon{background:#e9e4ff;color:#5b3fd0}.offline-help-card strong{color:#30275f}.offline-retry{min-height:44px}@media(max-width:380px){.offline-recovery{padding-right:14px;padding-left:14px}.offline-welcome{margin-right:-2px;margin-left:-2px}.offline-capability-grid>div{padding:10px 7px}.offline-recovery-section{padding:12px}.offline-list-item{min-height:60px}}.ppt-view-mode-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px}.ppt-view-mode-tools .btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 10px;font-size:11px}.ppt-list-slide-title{display:block;margin-bottom:10px;font-size:clamp(15px,2.5vw,22px);line-height:1.25;overflow-wrap:anywhere}.ppt-slide-card-body p{margin:0 0 12px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6}.ppt-list-slide-images{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;margin:8px 0 14px}.ppt-list-slide-images img{max-width:min(100%,260px);max-height:190px;object-fit:contain;border-radius:6px}.ppt-open-slide{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:5px 9px;border:1px solid var(--outline);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:11px;font-weight:650;cursor:pointer}.ppt-open-slide:hover{border-color:var(--primary)}.ppt-fit-control{display:inline-flex;align-items:center;justify-content:center}.ppt-canvas{transform-origin:top center;box-sizing:border-box}.ppt-canvas-heading{min-width:0;gap:8px}.ppt-canvas-heading>strong{max-width:100%;font-size:clamp(15px,2.35vw,27px);line-height:1.2;font-weight:750;overflow-wrap:anywhere;word-break:normal}.ppt-canvas-text{min-width:0;font-size:clamp(12px,1.35vw,16px);line-height:1.5;overflow-wrap:anywhere}.ppt-canvas-images{flex-shrink:1;min-height:0}@media(max-width:600px){.ppt-canvas{min-height:0;aspect-ratio:16 / 9;gap:8px;padding:14px}.ppt-canvas-heading>strong{font-size:clamp(13px,4vw,20px);line-height:1.15}.ppt-canvas-heading>span{font-size:8px}.ppt-canvas-text{font-size:clamp(11px,2.8vw,14px);line-height:1.35}.ppt-canvas-images img{max-height:100px}.ppt-canvas>footer{padding-top:5px;font-size:9px}}:root{--flashcard-border-input: #d9d6e1;--flashcard-border-choice: #dedbe6;--flashcard-border-source: #e2dfea;--flashcard-border-check: #c7c2d5;--flashcard-border-divider: #ebe8f0;--flashcard-surface-selected: #f5f2ff;--flashcard-surface-deck: #f7f4ff;--flashcard-surface-progress: #ece9f2;--flashcard-surface-flipped: #f6f3ff}.flashcard-study-page{display:flex;flex-direction:column;min-height:calc(100dvh - 42px);padding:4px 0 22px}.flashcard-study-nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.flashcard-back-link{display:inline-flex;align-items:center;gap:5px;min-height:40px;padding:0 12px 0 8px;border:1px solid var(--outline);border-radius:10px;background:var(--surface);color:var(--ink);font-size:12px;font-weight:700}.flashcard-study-count{color:var(--muted);font-size:11px;font-weight:750;font-variant-numeric:tabular-nums}.flashcard-study-heading{margin:22px 0 18px}.flashcard-study-heading .kicker{margin:0 0 8px}.flashcard-study-heading h1{margin:0;font-size:clamp(24px,6.5vw,30px);line-height:1.2;letter-spacing:-.04em;overflow-wrap:anywhere}.flashcard-study-heading p:last-child{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.flashcard-study-progress{height:6px;margin-bottom:18px;overflow:hidden;border-radius:99px;background:var(--outline)}.flashcard-study-progress span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.flashcard-study-face{flex:1;min-height:clamp(280px,42dvh,430px);max-height:470px;gap:20px;padding:24px 20px;border-radius:20px;box-shadow:4px 5px 0 var(--shadow);transition:background .2s ease,border-color .2s ease,transform .2s ease}.flashcard-study-face:active{transform:scale(.99)}.flashcard-study-face .flashcard-face-content{font-size:clamp(23px,6.5vw,32px)}.flashcard-study-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:16px 2px 14px;color:var(--muted);font-size:11px}.flashcard-study-meta span:first-child{display:inline-flex;align-items:center;gap:5px}.flashcard-study-meta svg{color:var(--success-fill)}.flashcard-study-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.flashcard-step-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;border:1px solid var(--outline);border-radius:11px;background:var(--surface);font-size:12px;font-weight:700}.flashcard-step-btn:disabled{cursor:not-allowed;background:var(--background);color:var(--muted);border-color:var(--muted);box-shadow:none}.flashcard-study-rating{display:grid;grid-template-columns:1fr 1fr;gap:10px}.flashcard-again-btn,.flashcard-known-btn{display:flex;align-items:center;justify-content:center;gap:9px;min-width:0;min-height:60px;padding:10px;border:1px solid var(--outline);border-radius:12px;background:var(--surface)}.flashcard-again-btn{color:var(--ink)}.flashcard-known-btn{border-color:var(--primary);background:var(--primary);color:var(--surface)}.flashcard-known-btn:disabled{cursor:not-allowed;background:var(--background);color:var(--muted);border-color:var(--muted);box-shadow:none}.flashcard-again-btn span,.flashcard-known-btn span{display:flex;flex-direction:column;gap:3px;text-align:left}.flashcard-again-btn strong,.flashcard-known-btn strong{font-size:12px}.flashcard-again-btn small,.flashcard-known-btn small{font-size:10px;opacity:.75}.flashcard-study-tip{margin:14px 8px 0;color:var(--muted);font-size:10px;line-height:1.6;text-align:center}.flashcard-study-empty{padding-top:10px}@media(max-height:720px){.flashcard-study-heading{margin:12px 0}.flashcard-study-face{min-height:235px}.flashcard-study-page{min-height:auto}}@media(max-width:360px){.flashcard-study-face{min-height:250px;padding:18px 14px}.flashcard-again-btn,.flashcard-known-btn{gap:6px;padding:8px 6px}.flashcard-again-btn strong,.flashcard-known-btn strong{font-size:11px}}.flashcard-builder{display:grid;gap:14px}.flashcard-setup{padding:16px;border-radius:12px;box-shadow:2px 3px 0 var(--shadow)}.flashcard-section-heading{display:flex;align-items:center;gap:11px;margin-bottom:18px}.flashcard-heading-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 auto;border:2px solid var(--outline);border-radius:9px;background:#d9f0f7;color:#17677f;box-shadow:2px 2px 0 var(--shadow)}.flashcard-heading-icon svg{width:19px;height:19px;stroke-width:2.25}.flashcard-section-heading strong,.flashcard-section-heading small{display:block}.flashcard-section-heading strong{font-size:14px;letter-spacing:-.01em}.flashcard-section-heading small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45}.flashcard-setup label{display:block;margin:14px 0 8px;font-size:12px;font-weight:700}.flashcard-setup label span{color:var(--muted);font-weight:500}.flashcard-setup input{width:100%;min-height:48px;padding:0 13px;border:1.5px solid var(--flashcard-border-input);border-radius:9px;background:var(--surface);font-size:14px}.flashcard-count-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.flashcard-count-options button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:65px;padding:8px 4px;border:1.5px solid var(--flashcard-border-choice);border-radius:9px;background:var(--surface);text-align:center}.flashcard-count-options button strong{font-size:18px}.flashcard-count-options button small{font-size:9px;color:var(--muted)}.flashcard-count-options button.selected{border-color:var(--primary);background:var(--primary-tint);box-shadow:inset 0 0 0 1px var(--primary)}.flashcard-source-list{display:grid;gap:7px}.flashcard-source{display:flex;align-items:flex-start;gap:10px;width:100%;min-width:0;padding:11px;border:1px solid var(--flashcard-border-source);border-radius:9px;background:var(--surface)}.flashcard-source.selected{border-color:var(--primary);background:var(--flashcard-surface-selected)}.flashcard-source-check{display:grid;place-items:center;width:20px;height:20px;flex:0 0 auto;margin-top:1px;border:1.5px solid var(--flashcard-border-check);border-radius:6px;color:var(--surface)}.flashcard-source.selected .flashcard-source-check{border-color:var(--primary);background:var(--primary)}.flashcard-source>span:last-child{min-width:0}.flashcard-source strong,.flashcard-source small{display:block;overflow-wrap:anywhere}.flashcard-source strong{font-size:12px;line-height:1.45}.flashcard-source small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.45}.flashcard-pdf-list{margin-top:8px;padding-top:12px;border-top:1px solid var(--flashcard-border-divider)}.flashcard-source-note,.flashcard-source-empty{margin:12px 0;color:var(--muted);font-size:10px;line-height:1.6}.flashcard-submit-row{display:grid;gap:9px;margin-top:12px}.flashcard-submit-row>.btn-gold{width:100%;margin-top:0;min-height:50px;height:auto;padding:12px;font-size:13px}.flashcard-deck-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px}.flashcard-deck-heading .section-kicker{margin-top:0}.flashcard-deck-heading .screen-sub{margin-bottom:10px}.flashcard-deck-count{display:grid;place-items:center;min-width:32px;height:32px;padding:0 8px;border:2px solid var(--outline);border-radius:8px;background:var(--xp-gold);color:var(--on-gold);font-size:13px;font-weight:800;line-height:1;box-shadow:3px 3px 0 var(--shadow)}.flashcard-deck-list{display:grid;gap:8px}.saved-study-row{display:flex;align-items:stretch;gap:6px;min-width:0}.saved-study-row>:first-child{flex:1;min-width:0}.saved-study-delete{display:grid;place-items:center;align-self:center;width:42px;height:42px;flex:0 0 42px;border:1px solid var(--outline);border-radius:10px;background:var(--surface);color:var(--muted)}.saved-study-delete:hover,.saved-study-delete:focus-visible{border-color:var(--danger, #c24141);color:var(--danger, #c24141)}.flashcard-saved-row .flashcard-deck-row{min-width:0}.flashcard-saved-row .saved-study-delete{margin-right:2px}.saved-study-delete{border-radius:9px}.document-text-preview{max-height:70dvh;overflow:auto;padding:16px;border:1px solid var(--outline);border-radius:14px;background:var(--surface);color:var(--ink);-webkit-overflow-scrolling:touch}.document-text-preview pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:13px;line-height:1.75}.flashcard-deck-row{display:flex;align-items:center;gap:11px;width:100%;padding:12px;text-align:left;border-radius:11px;box-shadow:1px 2px 0 var(--shadow)}.flashcard-deck-row.selected{border-color:var(--primary);background:var(--flashcard-surface-deck)}.flashcard-deck-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border:2px solid var(--outline);border-radius:9px;background:#d9f0f7;color:#17677f;box-shadow:2px 2px 0 var(--shadow)}.flashcard-deck-icon svg{width:19px;height:19px;stroke-width:2.25}.flashcard-deck-row:hover .flashcard-deck-icon{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--shadow)}.flashcard-deck-copy{flex:1;min-width:0}.flashcard-deck-copy strong,.flashcard-deck-copy small{display:block;overflow-wrap:anywhere}.flashcard-deck-copy strong{font-size:12px;line-height:1.4}.flashcard-deck-copy small{margin-top:4px;color:var(--muted);font-size:10px}.flashcard-deck-progress,.flashcard-progress-track{display:block;height:5px;overflow:hidden;border-radius:10px;background:var(--flashcard-surface-progress)}.flashcard-deck-progress{margin-top:8px}.flashcard-deck-progress span,.flashcard-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--success-fill)}.flashcard-empty{display:flex;flex-direction:column;align-items:center;gap:9px;margin-top:18px;padding:25px 20px;text-align:center;border-style:dashed;box-shadow:none}.flashcard-empty-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--primary-tint);color:var(--primary)}.flashcard-empty strong{font-size:14px}.flashcard-empty p{max-width:270px;margin:0;color:var(--muted);font-size:11px;line-height:1.6}.flashcard-review{margin-top:18px;padding-bottom:14px}.flashcard-review-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;color:var(--muted);font-size:11px;font-weight:650}.flashcard-review-top span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flashcard-progress-track{height:6px;margin-bottom:14px}.flashcard-progress-track span{background:var(--primary)}.flashcard-face{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:290px;padding:22px 20px;border:2px solid var(--outline);border-radius:16px;background:var(--surface);box-shadow:4px 5px 0 var(--shadow);text-align:center}.flashcard-face.is-flipped{background:var(--flashcard-surface-flipped);border-color:var(--primary)}.flashcard-face-label{align-self:flex-start;color:var(--muted);font-size:10px;font-weight:650}.flashcard-face-content{display:grid;place-items:center;width:100%;flex:1;color:var(--ink);font-size:clamp(20px,5.5vw,27px);font-weight:700;line-height:1.45;letter-spacing:-.025em;overflow-wrap:anywhere}.flashcard-tap-hint{color:var(--muted);font-size:11px}.flashcard-review-meta{display:flex;justify-content:space-between;gap:10px;margin:16px 2px 12px;color:var(--muted);font-size:10px}.flashcard-review-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.flashcard-review-actions .btn-secondary,.flashcard-review-actions .btn-gold{min-width:0;height:50px;padding:0 8px;font-size:11px}.flashcard-review-tip{margin:14px 2px 0;color:var(--muted);font-size:10px;line-height:1.65}@media(max-width:360px){.flashcard-setup{padding:13px}.flashcard-face{min-height:260px;padding:18px 14px}.flashcard-review-actions{gap:7px}.flashcard-review-actions .btn-secondary,.flashcard-review-actions .btn-gold{font-size:10px}}@media(prefers-reduced-motion:reduce){.flashcard-study-face{transition:none}}:where(.flashcard-study-page,.flashcard-builder,.flashcard-deck-list) :is(button,input):focus-visible{outline:3px solid var(--primary);outline-offset:3px}:root{--chat-surface-muted: #f4f2f8;--chat-surface-code: #171923;--chat-ink-code: #f4f4f5;--chat-label-code: #c4b5fd;--chat-border-soft: #e3e8f6;--chat-surface-user: #f5f7fc;--chat-border-avatar: #e2e8ff;--chat-surface-avatar: #f1f4ff;--chat-border-panel: #dce4ff;--chat-surface-panel: #ebf0ff;--chat-ink-panel: #252f48;--chat-ink-heading: #202b48;--chat-ink-subheading: #29385a;--chat-primary-soft: #6479bd;--chat-border-code: #d6def7;--chat-border-chip: #e1e5f0;--chat-ink-secondary: #4d5871;--chat-border-composer: #e1e5ef;--chat-ink-placeholder: #9299a9;--chat-ink-muted: #69748d;--chat-primary-action: #465db5;--chat-surface-white: #fff;--chat-border-code-head: rgba(255,255,255,.12);--chat-shadow-soft: rgba(20,15,40,.09);--chat-shadow-picker: rgba(20,15,40,.2);--chat-shadow-composer: rgba(25,20,45,.08);--chat-shadow-composer-compact: rgba(33,45,77,.08);--chat-overlay: rgba(18,16,27,.28);--chat-shadow-sheet: rgba(20,15,40,.24);--chat-surface-code-inline: rgba(255,255,255,.62)}.chat-context-picker{gap:12px;padding:13px;border-radius:13px;box-shadow:1px 2px 0 var(--shadow)}.chat-context-picker.is-open{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 10%,transparent)}.chat-context-heading{align-items:center;gap:10px}.chat-context-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:10px;background:var(--primary-tint);color:var(--primary)}.chat-context-title{flex:1;min-width:0}.chat-context-heading .chat-context-title strong{display:block;color:var(--ink);font-size:13px}.chat-context-heading .chat-context-title small{display:block;margin-top:3px;color:var(--muted);font-size:10px}.chat-context-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:38px;padding:0 11px;border:1px solid var(--outline);border-radius:9px;background:var(--surface);color:var(--ink);font-size:11px;font-weight:700;white-space:nowrap}.chat-context-toggle.is-done{border-color:var(--primary);background:var(--primary-tint);color:var(--primary)}.chat-context-hint{padding-left:48px;color:var(--muted);font-size:10px;line-height:1.55}.chat-context-selected{display:flex;flex-wrap:wrap;gap:6px}.chat-context-chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;min-height:29px;padding:5px 8px;border:1px solid var(--outline);border-radius:7px;background:var(--primary-tint);color:var(--primary);font-size:10px}.chat-context-chip span{max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-context-options{display:flex;flex-direction:column;gap:9px;padding-top:11px;border-top:1px solid var(--outline)}.chat-context-limit{display:flex;align-items:flex-start;gap:7px;margin:0;padding:10px;border-radius:9px;background:var(--surface-soft, var(--primary-tint));color:var(--muted);font-size:10px;line-height:1.55}.chat-context-limit svg{flex:0 0 auto;color:var(--primary)}.chat-material-search{display:flex;align-items:center;gap:8px;min-height:43px;padding:0 11px;border:1px solid var(--outline);border-radius:9px;background:var(--surface);color:var(--muted)}.chat-material-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 12%,transparent)}.chat-material-search input{width:100%;min-width:0;height:40px;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:12px}.chat-material-search input:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:3px}.chat-material-search>span{flex:0 0 auto;font-size:9px}.chat-material-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:4px;border-radius:9px;background:var(--surface-soft, var(--chat-surface-muted))}.chat-material-filters button{min-height:40px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:11px;font-weight:650;touch-action:manipulation}.chat-material-filters button.selected{background:var(--surface);color:var(--primary);box-shadow:0 1px 3px var(--chat-shadow-soft)}.chat-material-group-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px}.chat-material-group-title span{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.1em}.chat-material-group-title small{color:var(--muted);font-size:9px}.chat-material-option{padding:10px;border-radius:9px}.chat-material-option .quiz-material-copy strong{white-space:normal;line-height:1.4}.chat-material-option:disabled{cursor:not-allowed;background:var(--background);color:var(--muted);border-color:var(--muted);box-shadow:none}.chat-material-option>svg:last-child{flex:0 0 auto;color:var(--primary)}.chat-material-empty{padding:12px 5px;color:var(--muted);font-size:11px;line-height:1.5}.chat-material-shortcuts{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding-top:8px;border-top:1px solid var(--outline)}.chat-material-shortcuts button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:0 9px;border:1px solid var(--outline);border-radius:8px;background:var(--surface);color:var(--ink);font-size:10px;font-weight:650}.chat-material-shortcuts button svg{color:var(--primary)}.chat-material-shortcuts .chat-material-clear{margin-left:auto;border-color:transparent;color:var(--muted);background:transparent}.chat-material-clear{align-self:flex-start;min-height:30px;padding:0 7px;font-size:10px}.chat-context-picker.is-open{position:fixed;z-index:30;left:50%;bottom:calc(190px + env(safe-area-inset-bottom,0px));width:min(386px,calc(100% - 32px));max-height:min(48dvh,410px);margin:0;padding:10px;overflow:hidden;transform:translate(-50%);border:1px solid var(--outline);border-radius:16px;background:var(--surface);box-shadow:0 12px 40px var(--chat-shadow-picker)}.chat-context-picker.is-open .chat-context-options{flex:1 1 auto;min-height:0;gap:7px;padding-top:8px;overflow-y:auto;overscroll-behavior:contain}.chat-context-picker.is-open .chat-context-heading{flex:0 0 auto;gap:8px}.chat-context-picker.is-open .chat-context-title small{font-size:10px!important;line-height:1.35}.chat-context-picker.is-open .chat-context-icon{display:none}.chat-context-picker.is-open .chat-material-search{flex:0 0 auto;min-height:37px}.chat-context-picker.is-open .chat-material-search input{height:35px}.chat-context-picker.is-open .chat-material-filters{flex:0 0 auto}.chat-context-picker.is-open .chat-material-filters button{min-height:32px}.chat-context-picker.is-open .chat-material-group-title{flex:0 0 auto;margin-top:1px}.chat-context-picker.is-open .chat-material-option{flex:0 0 auto;min-height:54px;padding:8px}.chat-context-picker.is-open .chat-material-option .quiz-material-copy small{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.chat-context-picker.is-open .chat-material-options-list{overflow-y:auto}.chat-context-picker.is-open .chat-context-selected{flex:0 0 auto;max-height:52px;overflow-y:auto}.chat-context-picker.is-open .chat-material-clear{flex:0 0 auto}.shell:has(.composer input:focus,.chat-material-search input:focus) .chat-context-picker.is-open{bottom:calc(112px + env(safe-area-inset-bottom,0px));max-height:min(42dvh,330px)}@media(max-width:380px){.chat-context-picker.is-open{left:12px;width:calc(100% - 24px);bottom:calc(190px + env(safe-area-inset-bottom,0px));transform:none}.shell:has(.composer input:focus,.chat-material-search input:focus) .chat-context-picker.is-open{bottom:calc(112px + env(safe-area-inset-bottom,0px))}.chat-context-picker.is-open .chat-context-done{min-height:30px;padding:0 8px}}.chat{display:flex;flex-direction:column;gap:22px;margin:22px auto 0;padding:0 0 18px;width:100%;max-width:720px}.bubble-user{align-self:flex-end;max-width:min(86%,560px);padding:12px 16px;border:1px solid var(--outline);border-radius:18px 18px 5px;background:var(--primary-tint);color:var(--ink);overflow-wrap:anywhere}.bubble-user p{margin:0;font-size:14px;line-height:1.65;white-space:pre-wrap}.bubble-ai{align-self:stretch;max-width:100%;min-width:0;padding:0 2px 14px;border:0;border-bottom:1px solid var(--outline);border-radius:0;background:transparent;box-shadow:none;overflow-wrap:anywhere}.bubble-ai-head{gap:10px;margin-bottom:12px}.bubble-ai-head strong{color:var(--ink);font-size:13px;font-weight:750}.bubble-ai .markdown-content,.bubble-ai>div{min-width:0}.bubble-ai-orb{width:30px;height:30px;flex:0 0 30px;border-radius:10px}.bubble-ai-orb img{width:27px;height:27px;object-fit:contain}.assistant-markdown{color:var(--ink);font-size:14px;line-height:1.75;overflow-wrap:anywhere}.assistant-markdown>:first-child{margin-top:0}.assistant-markdown>:last-child{margin-bottom:0}.assistant-markdown p{margin:0 0 13px}.assistant-markdown h3,.assistant-markdown h4,.assistant-markdown h5{margin:22px 0 9px;color:var(--ink);font-weight:800;line-height:1.3;letter-spacing:-.025em}.assistant-markdown h3{font-size:20px}.assistant-markdown h4{font-size:17px}.assistant-markdown h5{font-size:15px}.assistant-markdown ul,.assistant-markdown ol{display:grid;gap:7px;margin:8px 0 16px;padding-left:23px}.assistant-markdown li{padding-left:3px}.assistant-markdown li::marker{color:var(--primary);font-weight:800}.assistant-markdown strong{font-weight:800}.assistant-markdown code{padding:2px 5px;border:1px solid var(--outline);border-radius:5px;background:var(--surface-soft, var(--chat-surface-muted));font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.88em;overflow-wrap:anywhere}.assistant-markdown pre.code-block{position:relative;max-width:100%;margin:14px 0 18px;padding:34px 14px 14px;overflow:auto;border:1px solid var(--outline);border-radius:12px;background:var(--chat-surface-code);color:var(--chat-ink-code);line-height:1.6;tab-size:2;-webkit-overflow-scrolling:touch}.assistant-markdown pre.code-block code{display:block;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font-size:12px;white-space:pre;overflow-wrap:normal}.code-language{position:absolute;top:0;left:0;right:0;padding:7px 12px;border-bottom:1px solid var(--chat-border-code-head);color:var(--chat-label-code);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.math-inline{padding:1px 4px;border-radius:4px;background:var(--primary-tint);font-family:Times New Roman,serif;font-style:italic;overflow-wrap:anywhere}.math-block{margin:14px 0;padding:14px;overflow-x:auto;border:1px solid var(--outline);border-radius:10px;background:var(--surface-soft, #f5f2fa);font-family:Times New Roman,serif;font-size:17px;text-align:center;white-space:pre-wrap}.assistant-markdown blockquote{margin:12px 0;padding:8px 12px;border-left:3px solid var(--primary);color:var(--muted);background:var(--surface-soft, #f5f2fa)}.assistant-markdown hr{height:1px;margin:18px 0;border:0;background:var(--outline)}.assistant-markdown a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}.composer{position:sticky;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:8;display:flex;flex-direction:column;min-width:0;gap:3px;margin-top:14px;padding:7px 8px 5px;border:1px solid var(--outline);border-radius:15px;background:var(--surface);box-shadow:0 5px 20px var(--chat-shadow-composer)}.composer-main-row{display:flex;align-items:center;min-width:0;width:100%;gap:7px}.composer input{display:block;flex:1 1 0;width:0;min-width:0;height:43px;padding:0 10px;border:0;background:transparent;font-size:13px}.composer input:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}.composer-material-btn{position:relative;display:inline-flex;flex:0 0 40px;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--outline);border-radius:11px;background:var(--surface);color:var(--muted)}.composer-material-btn.is-active,.composer-material-btn:has(.composer-material-count){border-color:var(--primary);background:var(--primary-tint);color:var(--primary)}.composer-material-count{position:absolute;top:-5px;right:-5px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 3px;border:1px solid var(--surface);border-radius:99px;background:var(--primary);color:#fff;font-size:9px;font-weight:800}.composer-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:1px 8px 0;color:var(--muted);font-size:10px;line-height:1.5}.composer-meta span{display:inline-flex;align-items:center;gap:4px}.composer-meta svg{color:var(--primary)}.send-btn{flex:0 0 42px;width:42px;height:42px;border-radius:11px}.shell:has(.composer){padding-bottom:calc(210px + env(safe-area-inset-bottom,0px))}.shell:has(.composer) .composer{position:fixed;left:50%;bottom:calc(82px + env(safe-area-inset-bottom,0px));width:min(386px,calc(100% - 32px));margin:0;transform:translate(-50%);background:var(--surface)}.shell:has(.composer input:focus) .tabbar{opacity:0;pointer-events:none;transform:translate(-50%,calc(100% + 20px))}.shell:has(.composer input:focus) .composer{bottom:calc(8px + env(safe-area-inset-bottom,0px))}.shell:has(.composer input:focus){padding-bottom:calc(120px + env(safe-area-inset-bottom,0px))}@media(max-width:380px){.shell:has(.composer) .composer{width:calc(100% - 24px)}.shell:has(.composer input:focus) .composer{bottom:6px}}@media(max-width:380px){.chat-context-picker{padding:11px}.chat-context-heading{gap:7px}.chat-context-icon{width:34px;height:34px;flex-basis:34px}.chat-context-toggle{padding:0 8px;font-size:10px}.chat-context-hint{padding-left:41px}.chat-context-chip span{max-width:115px}.bubble-ai{padding:12px}}.chat-context-picker{display:flex;flex-direction:column;gap:9px;margin:8px 0 0;padding:9px 11px;border:1px solid var(--outline);border-radius:12px;background:var(--surface);box-shadow:none}.chat-context-picker:not(.is-open):not(.has-selection){display:none}.chat-context-picker.has-selection:not(.is-open){padding:7px 9px}.chat-context-picker.has-selection:not(.is-open) .chat-context-heading{display:none}.chat-context-picker.is-open{padding:11px}.chat-context-heading{display:flex;align-items:center;min-width:0;gap:9px}.chat-context-icon{width:31px;height:31px;flex:0 0 31px;border-radius:9px}.chat-context-done{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:5px;min-height:33px;padding:0 10px;border:0;border-radius:9px;background:var(--primary);color:#fff;font-size:11px;font-weight:750}.chat-context-done svg{flex:0 0 auto}.chat-material-hint{margin:0;color:var(--muted);font-size:10px;line-height:1.5}.chat-context-title strong{font-size:12px!important}.chat-context-title small{font-size:10px!important}.chat-context-toggle{width:34px;min-width:34px;height:34px;min-height:34px;padding:0;border-radius:10px;background:var(--primary-tint);color:var(--primary);border-color:transparent}.chat-context-toggle.is-done{background:var(--surface);border-color:var(--outline)}.chat-context-options{gap:7px;padding-top:9px}.chat-context-limit{padding:7px 8px;font-size:9px}.chat-material-search{min-height:38px}.chat-material-search input{height:36px}.chat-material-filters button{min-height:30px}.chat-material-option{padding:8px}.chat-context-hint{display:none}.chat-empty{margin-top:0;min-height:340px}.ai-empty-state{display:flex;flex-direction:column;align-items:center;width:100%;padding:17px 2px 10px;text-align:center}.ai-empty-art{display:grid;place-items:center;width:78px;height:78px;margin-bottom:14px;border:1px solid var(--outline);border-radius:25px;background:var(--primary-tint)}.ai-empty-art img{width:65px;height:65px;object-fit:contain}.ai-empty-eyebrow{margin:0 0 7px;color:var(--primary);font-size:9px;font-weight:800;letter-spacing:.12em}.ai-empty-state h2{margin:0;color:var(--ink);font-size:clamp(21px,5.8vw,25px);font-weight:800;letter-spacing:-.045em;line-height:1.2}.ai-empty-description{max-width:290px;margin:9px 0 19px;color:var(--muted);font-size:12px;line-height:1.65}.ai-starter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%;text-align:left}.ai-starter-grid button{display:grid;grid-template-columns:29px minmax(0,1fr);align-items:center;column-gap:8px;min-width:0;min-height:66px;padding:10px;border:1px solid var(--outline);border-radius:12px;background:var(--surface);color:var(--ink);text-align:left;transition:border-color .15s ease,background .15s ease,transform .15s ease}.ai-starter-grid button:active{transform:scale(.985)}.ai-starter-grid button>span{display:grid;place-items:center;grid-row:span 2;width:29px;height:29px;border-radius:9px;background:var(--primary-tint);color:var(--primary)}.ai-starter-grid button strong{overflow:hidden;font-size:11px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.ai-starter-grid button small{overflow:hidden;margin-top:2px;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.chat-followups{display:flex;align-items:center;gap:6px;margin:6px 0 12px;overflow-x:auto;scrollbar-width:none}.chat-followups::-webkit-scrollbar{display:none}.chat-followups>span{flex:0 0 auto;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em}.chat-followups button{flex:0 0 auto;min-height:29px;padding:0 9px;border:1px solid var(--outline);border-radius:999px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:600}@media(max-width:380px){.ai-empty-art{width:68px;height:68px;border-radius:22px}.ai-empty-art img{width:58px;height:58px}.ai-starter-grid{gap:7px}.ai-starter-grid button{grid-template-columns:25px minmax(0,1fr);column-gap:6px;padding:8px}.ai-starter-grid button>span{width:25px;height:25px}}.chat-context-backdrop{position:fixed;inset:0;z-index:20;display:block;width:100%;height:100%;padding:0;border:0;border-radius:0;background:var(--chat-overlay);cursor:default;-webkit-tap-highlight-color:transparent}.chat-context-picker.is-open{z-index:30;box-sizing:border-box;height:min(48dvh,410px,calc(100dvh - 220px));min-height:0;max-height:min(48dvh,410px,calc(100dvh - 220px));display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain;box-shadow:0 16px 44px var(--chat-shadow-sheet)}.chat-context-picker.is-open .chat-context-heading{min-width:0}.chat-context-picker.is-open .chat-context-title{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.chat-context-picker.is-open .chat-context-title strong,.chat-context-picker.is-open .chat-context-title small{overflow-wrap:anywhere}.chat-context-picker.is-open .chat-context-done{flex:0 0 auto;white-space:nowrap}.chat-context-picker.is-open .chat-context-options{flex:1 1 auto;min-height:0;overflow-x:clip;overflow-y:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.shell:has(.chat-context-picker.is-open) .composer{z-index:31}.shell:has(.chat-context-picker.is-open) .tabbar{z-index:10}.shell:has(.composer input:focus,.chat-material-search input:focus) .chat-context-picker.is-open{height:min(40dvh,300px,calc(100dvh - 132px));max-height:min(40dvh,300px,calc(100dvh - 132px))}@media(max-width:380px){.chat-context-picker.is-open{height:min(46dvh,370px,calc(100dvh - 220px));max-height:min(46dvh,370px,calc(100dvh - 220px))}.chat-context-picker.is-open .chat-context-heading{gap:7px}.chat-context-picker.is-open .chat-context-title strong{font-size:11px!important}.chat-context-picker.is-open .chat-context-title small{font-size:9px!important}.chat-context-picker.is-open .chat-context-done{min-height:30px;padding:0 8px}.shell:has(.composer input:focus,.chat-material-search input:focus) .chat-context-picker.is-open{height:min(38dvh,270px,calc(100dvh - 132px));max-height:min(38dvh,270px,calc(100dvh - 132px))}}@media(prefers-reduced-motion:reduce){.chat-context-picker,.chat-material-filters button,.ai-starter-grid button{transition:none!important}}.chat{gap:18px;max-width:720px;padding-bottom:28px}.bubble-user{max-width:min(84%,540px);padding:11px 14px;border-radius:17px 17px 5px;box-shadow:0 1px color-mix(in srgb,var(--outline) 60%,transparent)}.bubble-user p{font-size:13px;line-height:1.6}.bubble-ai{padding:10px 2px 12px;border-bottom-color:color-mix(in srgb,var(--outline) 75%,transparent)}.bubble-ai-head{margin-bottom:9px}.bubble-ai-head strong{font-size:12px}.bubble-ai-orb{width:28px;height:28px;flex-basis:28px;border-radius:9px}.bubble-ai-orb img{width:25px;height:25px}.assistant-markdown{font-size:13px;line-height:1.68}.assistant-markdown p{margin:0 0 10px}.assistant-markdown h3,.assistant-markdown h4,.assistant-markdown h5{margin:17px 0 7px;line-height:1.32}.assistant-markdown h3{font-size:17px}.assistant-markdown h4{font-size:15px}.assistant-markdown h5{font-size:14px}.assistant-markdown ul,.assistant-markdown ol{gap:5px;margin:7px 0 12px;padding-left:21px}.assistant-markdown li{padding-left:2px}.assistant-markdown blockquote{margin:10px 0;padding:8px 10px;border-radius:0 8px 8px 0;font-size:12px}.assistant-markdown pre.code-block{margin:11px 0 14px;padding:32px 11px 12px;border-radius:10px}.assistant-markdown pre.code-block code{font-size:11px;line-height:1.55}.math-block{margin:10px 0;padding:11px;font-size:15px}.chat-message-actions{display:flex;justify-content:flex-end;margin-top:8px}.chat-message-actions button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 9px;border:1px solid var(--outline);border-radius:8px;background:transparent;color:var(--muted);font-size:10px;font-weight:650}.chat-message-actions button:active{background:var(--primary-tint);color:var(--primary)}.chat-followups{margin:2px 0 14px;padding-bottom:3px}.chat-followups>span{margin-right:2px}.shell:has(.composer){padding-bottom:calc(178px + env(safe-area-inset-bottom,0px))}.shell:has(.composer input:focus){padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}.shell:has(.composer) .chat{scroll-margin-bottom:184px}.bubble-ai{padding:10px 0 12px;border:0;background:transparent;box-shadow:none}.bubble-ai .assistant-markdown{padding:14px 15px;border:1px solid color-mix(in srgb,var(--primary) 13%,var(--outline));border-radius:13px;background:color-mix(in srgb,var(--primary-tint) 48%,var(--surface));color:var(--ink)}.chat-message-actions{justify-content:flex-start;gap:7px;margin-top:9px}.chat-message-actions button{min-height:32px;padding:0 10px;border-radius:9px;background:var(--surface);transition:background .15s ease,color .15s ease,border-color .15s ease}.chat-message-actions button:hover,.chat-message-actions button:focus-visible{border-color:var(--primary);background:var(--primary-tint);color:var(--primary);outline:none}.chat-message-actions button.is-liked{border-color:color-mix(in srgb,var(--primary) 38%,var(--outline));background:var(--primary-tint);color:var(--primary)}.chat-followups{margin:2px 0 8px;padding-bottom:0}.chat-empty{min-height:0}@media(max-width:380px){.chat{gap:15px}.assistant-markdown{font-size:12.5px;line-height:1.65}.assistant-markdown h3{font-size:16px}.assistant-markdown h4{font-size:14px}.bubble-user{max-width:88%;padding:10px 12px}.bubble-ai .assistant-markdown{padding:12px}.shell:has(.composer){padding-bottom:calc(168px + env(safe-area-inset-bottom,0px))}}@media(prefers-reduced-motion:reduce){.chat-message-actions button{transition:none}}.shell:has(.ai-heading-row) .screen{padding-top:2px}.ai-heading-row{align-items:center;gap:10px;margin:0 0 8px}.ai-heading-row>div:first-child{min-width:0}.ai-heading-row .kicker{margin:0 0 4px;font-size:9px;letter-spacing:.1em}.ai-heading-row .screen-title{margin:0;font-size:clamp(23px,6vw,27px);line-height:1.18;letter-spacing:-.045em}.ai-heading-row .screen-sub{margin:4px 0 0;font-size:11px;line-height:1.4}.ai-session-actions{flex:0 0 auto;display:flex;align-items:center;gap:5px}.ai-action-btn{width:33px;height:33px;border-radius:10px;border-color:color-mix(in srgb,var(--outline) 80%,transparent);background:var(--surface);box-shadow:none}.chat{gap:13px;margin-top:9px;padding-bottom:10px}.bubble-user{max-width:88%;padding:10px 13px;border:1px solid var(--chat-border-soft);border-radius:15px 15px 4px;background:var(--chat-surface-user);box-shadow:none}.bubble-user p{font-size:12.5px;line-height:1.55}.bubble-ai{padding:0 0 5px}.bubble-ai-head{gap:8px;margin-bottom:8px}.bubble-ai-head strong{font-size:11px;font-weight:750}.bubble-ai-orb{width:26px;height:26px;flex-basis:26px;border:1px solid var(--chat-border-avatar);border-radius:9px;background:var(--chat-surface-avatar)}.bubble-ai-orb img{width:23px;height:23px}.bubble-ai .assistant-markdown{padding:15px;border:1px solid var(--chat-border-panel);border-radius:14px;background:var(--chat-surface-panel);color:var(--chat-ink-panel);font-size:13px;line-height:1.68;box-shadow:0 2px 7px var(--chat-shadow-soft)}.bubble-ai .assistant-markdown h3{margin:0 0 12px;color:#202b48;font-size:18px;line-height:1.3;letter-spacing:-.03em}.bubble-ai .assistant-markdown h4{margin:15px 0 5px;color:var(--chat-ink-subheading);font-size:13px;letter-spacing:-.01em}.bubble-ai .assistant-markdown p{margin-bottom:8px}.bubble-ai .assistant-markdown ul,.bubble-ai .assistant-markdown ol{gap:5px;margin:7px 0 10px;padding-left:19px}.bubble-ai .assistant-markdown strong{color:#202b48}.chat-message-actions{margin-top:7px;gap:5px}.chat-message-actions button{min-height:28px;padding:0 8px;border-color:transparent;background:transparent;font-size:10px}.chat-followups{gap:6px;margin:3px 0 8px}.chat-followups>span{font-size:8px;letter-spacing:.07em}.chat-followups button{min-height:28px;padding:0 9px;border-color:var(--chat-border-chip);background:var(--chat-surface-white);color:var(--chat-ink-secondary);font-size:10px}.composer{gap:2px;padding:5px 6px 4px;border-color:var(--chat-border-composer);border-radius:14px;box-shadow:0 4px 18px var(--chat-shadow-composer-compact)}.composer input{height:39px;padding:0 7px;font-size:12px}.composer input::placeholder{color:var(--chat-ink-placeholder)}.composer-material-btn{flex-basis:35px;width:35px;height:35px;border:0;background:transparent;color:var(--chat-ink-muted)}.send-btn{flex-basis:36px;width:36px;height:36px;border-radius:11px;background:var(--chat-primary-action);color:var(--chat-surface-white)}.composer-meta{padding:0 7px;font-size:9px}.shell:has(.composer) .composer{width:min(420px,calc(100% - 28px));bottom:calc(75px + env(safe-area-inset-bottom,0px))}.shell:has(.composer){padding-bottom:calc(158px + env(safe-area-inset-bottom,0px))}.shell:has(.composer input:focus) .composer{bottom:calc(7px + env(safe-area-inset-bottom,0px))}.ai-empty-state{padding-top:10px}.ai-empty-art{width:60px;height:60px;margin-bottom:10px;border-radius:19px}.ai-empty-art img{width:51px;height:51px}.ai-empty-state h2{font-size:clamp(20px,5.5vw,23px);text-wrap:balance}.ai-empty-description{margin:7px 0 14px;font-size:11px;line-height:1.5}.ai-starter-grid{gap:7px}.ai-starter-grid button{min-height:58px;padding:8px;border-radius:11px}.ai-starter-grid button>span{width:26px;height:26px;border-radius:8px}@media(max-width:380px){.ai-heading-row .screen-title{font-size:22px}.ai-heading-row .screen-sub{max-width:215px;font-size:10px}.ai-session-actions{gap:3px}.ai-action-btn{width:30px;height:30px}.bubble-ai .assistant-markdown{padding:13px;font-size:12.5px}.shell:has(.composer) .composer{width:calc(100% - 24px)}}@media(prefers-reduced-motion:reduce){.ai-action-btn,.chat-followups button{transition:none!important}}.bubble-ai .assistant-markdown{font-size:14px;line-height:1.72;overflow-wrap:anywhere}.bubble-ai .assistant-markdown h3{font-size:19px;line-height:1.35}.bubble-ai .assistant-markdown h4{font-size:16px;line-height:1.4}.bubble-ai .assistant-markdown h5{font-size:14px;line-height:1.45}.bubble-ai .assistant-markdown p{margin:0 0 12px}.bubble-ai .assistant-markdown pre.code-block{max-width:100%;overflow-x:auto}.bubble-ai .assistant-markdown pre.code-block code{white-space:pre;overflow-wrap:normal}.bubble-ai .assistant-markdown a{color:var(--primary);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.bubble-ai .assistant-markdown blockquote{padding:10px 12px;border-left:3px solid var(--primary)}.bubble-ai .assistant-markdown :is(ul,ol){font-size:inherit;line-height:1.65}.markdown-table-wrap{max-width:100%;margin:12px 0 16px;overflow-x:auto;border:1px solid var(--chat-border-panel);border-radius:10px;-webkit-overflow-scrolling:touch}.markdown-table-wrap table{width:100%;min-width:360px;border-collapse:collapse;font-size:12px;line-height:1.5}.markdown-table-wrap th,.markdown-table-wrap td{padding:9px 10px;border-bottom:1px solid var(--chat-border-panel);text-align:left;vertical-align:top}.markdown-table-wrap th{background:var(--chat-surface-muted);font-weight:750}.markdown-table-wrap tr:last-child td{border-bottom:0}.composer input{min-height:44px;font-size:14px}.composer :is(button,input):focus-visible{outline:3px solid var(--primary);outline-offset:3px}.composer-image-attachment{display:flex;align-items:center;gap:10px;min-width:0;padding:8px;margin:2px 2px 6px;border:1px solid var(--chat-border-panel);border-radius:10px;background:var(--chat-surface-panel)}.composer-image-attachment img{width:48px;height:48px;flex:0 0 48px;object-fit:cover;border-radius:7px}.composer-image-attachment>span{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}.composer-image-attachment strong{overflow:hidden;color:var(--chat-ink-panel);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.composer-image-attachment small{color:var(--chat-ink-secondary);font-size:10px}.composer-image-attachment button{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--chat-ink-secondary)}.bubble-user-image{display:block;width:min(100%,260px);max-height:240px;margin:0 0 8px;object-fit:contain;border-radius:9px}@media(max-width:380px){.bubble-ai .assistant-markdown{padding:13px;font-size:13.5px;line-height:1.68}.bubble-ai .assistant-markdown h3{font-size:18px}.bubble-ai .assistant-markdown h4{font-size:15px}}@media(prefers-reduced-motion:reduce){.bubble-ai .assistant-markdown,.composer{scroll-behavior:auto}}:root{--chat-surface-muted: #f3f1ec;--chat-surface-user: #f2eee6;--chat-border-soft: #ded8cc;--chat-border-avatar: #c8e6dc;--chat-surface-avatar: #e5f4ee;--chat-border-panel: #e4e0d8;--chat-surface-panel: #fffefa;--chat-ink-panel: #29343a;--chat-ink-heading: #26343a;--chat-ink-subheading: #46565b;--chat-primary-soft: #16836f;--chat-border-code: #d9d6cf;--chat-border-chip: #dedbd4;--chat-ink-secondary: #59656a;--chat-border-composer: #d8d4cb;--chat-ink-placeholder: #858b89;--chat-ink-muted: #68736f;--chat-primary-action: #26343a;--chat-surface-white: #fffefa;--chat-shadow-soft: rgba(34, 39, 37, .06);--chat-shadow-picker: rgba(25, 31, 30, .16);--chat-shadow-composer-compact: rgba(25, 31, 30, .09);--chat-surface-code-inline: #f0eee8}.ai-heading-row{padding-bottom:12px;border-bottom:1px solid color-mix(in srgb,var(--outline) 12%,transparent)}.ai-heading-row .screen-title{letter-spacing:-.05em}.ai-session-actions{gap:6px}.ai-action-btn{width:36px;height:36px;border:2px solid var(--outline);border-radius:9px;background:var(--surface);color:var(--chat-ink-secondary);box-shadow:2px 2px 0 var(--shadow);transition:background .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease}.ai-action-btn:active:not(:disabled){transform:translate(1px,1px);box-shadow:1px 1px 0 var(--shadow)}.ai-action-btn:hover:not(:disabled){border-color:var(--ink);background:var(--surface);transform:translateY(-1px)}.ai-action-delete:hover:not(:disabled){border-color:var(--danger-border);background:var(--danger-surface);color:var(--danger-ink)}.bubble-user{border:2px solid var(--outline);border-radius:14px 14px 4px;background:var(--chat-surface-user);color:var(--chat-ink-panel);box-shadow:3px 3px 0 var(--shadow)}.bubble-ai .assistant-markdown{border:2px solid var(--outline);border-radius:13px;background:var(--chat-surface-panel);color:var(--chat-ink-panel);box-shadow:3px 3px 0 var(--shadow)}.bubble-ai-head strong{color:var(--chat-ink-heading)}.bubble-ai-orb{border:1px solid var(--chat-border-avatar);background:var(--chat-surface-avatar)}.bubble-ai .assistant-markdown h3,.bubble-ai .assistant-markdown strong{color:var(--chat-ink-heading)}.bubble-ai .assistant-markdown h4,.bubble-ai .assistant-markdown h5{color:var(--chat-ink-subheading)}.bubble-ai .assistant-markdown li::marker{color:var(--chat-primary-soft)}.bubble-ai .assistant-markdown blockquote{border-left-color:var(--chat-primary-soft);background:#f1f6f2;color:var(--chat-ink-secondary)}.bubble-ai .assistant-markdown code{border-color:var(--chat-border-code);background:var(--chat-surface-code-inline)}.ai-starter-grid button:nth-child(1)>span{background:#fff1d5;color:#96600c}.ai-starter-grid button:nth-child(2)>span{background:#e5efff;color:#315f9c}.ai-starter-grid button:nth-child(3)>span{background:#fbe8e3;color:#a44e3d}.ai-starter-grid button:nth-child(4)>span{background:#e2f2e9;color:#287454}.ai-starter-grid button{border:2px solid var(--outline);border-color:color-mix(in srgb,var(--outline) 70%,transparent);border-radius:11px;background:var(--surface);box-shadow:2px 2px 0 var(--shadow);transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.ai-starter-grid button:hover{border-color:color-mix(in srgb,var(--outline) 42%,transparent);box-shadow:3px 3px 0 var(--shadow);transform:translate(-1px,-1px)}.chat-followups button{border:1.5px solid var(--outline);border-radius:9px;background:var(--surface);color:var(--chat-ink-secondary);box-shadow:1px 2px 0 var(--shadow)}.chat-followups button:hover{border-color:var(--chat-ink-secondary);background:var(--chat-surface-muted)}.composer{border:2px solid var(--outline);border-radius:13px;background:var(--surface);box-shadow:3px 3px 0 var(--shadow)}.composer-material-btn{border:2px solid var(--outline);border-radius:9px;box-shadow:2px 2px 0 var(--shadow)}.composer-material-btn.is-active,.composer-material-btn:has(.composer-material-count){border-color:#16836f;background:#e5f4ee;color:#176d5d}.send-btn{background:var(--chat-primary-action)}.composer-meta svg{color:#b47a20}.chat-context-picker{border-color:var(--chat-border-composer)}.chat-context-icon{background:#e5f4ee;color:#176d5d}.chat-context-chip{border-color:#c8e6dc;background:#eaf5ef;color:#176d5d}.chat-material-shortcuts button svg{color:#315f9c}.chat-message-actions button:hover,.chat-message-actions button:focus-visible{border-color:var(--outline);background:var(--chat-surface-muted);color:var(--chat-ink-panel);box-shadow:2px 2px 0 var(--shadow)}.chat-message-actions button.is-liked{border-color:#e8d6ae;background:#fff4dc;color:#865b16;box-shadow:2px 2px 0 var(--shadow)}.markdown-table-wrap{border-color:var(--chat-border-panel)}.markdown-table-wrap th{background:var(--chat-surface-muted)}.markdown-table-wrap th,.markdown-table-wrap td{border-bottom-color:var(--chat-border-panel)}.composer :is(button,input):focus-visible{outline-color:#16836f}@media(min-width:700px){.shell:has(.ai-heading-row){max-width:920px}.shell:has(.ai-heading-row) .chat{max-width:780px}.shell:has(.ai-heading-row) .composer{width:min(720px,calc(100% - 36px))}.ai-heading-row .screen-title{font-size:29px}.bubble-user{max-width:min(78%,620px);padding:13px 16px}.bubble-ai .assistant-markdown{padding:18px 20px}}@media(prefers-reduced-motion:reduce){.ai-action-btn,.ai-starter-grid button{transition:none}}.chat{gap:20px}.bubble-user{max-width:min(82%,600px);padding:13px 16px}.bubble-user p{font-size:13.5px;line-height:1.7}.bubble-ai{padding:4px 0 17px}.bubble-ai-head{gap:9px;margin-bottom:13px}.bubble-ai .assistant-markdown{display:flex;flex-direction:column;align-items:stretch;gap:0;max-width:76ch;font-size:14px;line-height:1.78;letter-spacing:.002em}.bubble-ai .assistant-markdown>*{min-width:0;max-width:100%}.bubble-ai .assistant-markdown p{margin:0 0 14px;line-height:1.78}.bubble-ai .assistant-markdown p+p{margin-top:0}.bubble-ai .assistant-markdown h3{margin:25px 0 12px;padding:0 0 9px;border-bottom:1px solid var(--chat-border-panel);font-size:19px;line-height:1.35;letter-spacing:-.025em}.bubble-ai .assistant-markdown h4{margin:22px 0 9px;font-size:15px;line-height:1.4}.bubble-ai .assistant-markdown h5{margin:17px 0 8px;color:var(--chat-ink-subheading);font-size:13px;font-weight:750;line-height:1.45}.bubble-ai .assistant-markdown :is(h3,h4,h5)+p{margin-top:0}.bubble-ai .assistant-markdown :is(ul,ol){display:flex;flex-direction:column;gap:8px;margin:5px 0 18px;padding-left:25px;line-height:1.72}.bubble-ai .assistant-markdown li{padding-left:4px}.bubble-ai .assistant-markdown li+li{margin-top:0}.bubble-ai .assistant-markdown li>p{margin:0}.bubble-ai .assistant-markdown li::marker{font-weight:750}.bubble-ai .assistant-markdown li :is(ul,ol){gap:5px;margin:8px 0 5px}.bubble-ai .assistant-markdown blockquote{margin:6px 0 18px;padding:13px 15px;border-radius:0 10px 10px 0;line-height:1.72}.bubble-ai .assistant-markdown blockquote>:last-child{margin-bottom:0}.bubble-ai .assistant-markdown .markdown-table-wrap{margin:6px 0 20px}.bubble-ai .assistant-markdown .markdown-table-wrap th,.bubble-ai .assistant-markdown .markdown-table-wrap td{padding:11px 13px;line-height:1.6}.bubble-ai .assistant-markdown hr{margin:21px 0}.bubble-ai .assistant-markdown>:first-child{margin-top:0}.bubble-ai .assistant-markdown>:last-child{margin-bottom:0}.bubble-ai .assistant-markdown .task-list-item{display:flex;align-items:flex-start;gap:9px;padding-left:0;list-style:none}.chat-message-actions{gap:8px;margin-top:13px;padding-top:10px;border-top:1px solid var(--chat-border-panel)}.chat-message-actions button{min-height:31px;padding:0 9px}.task-list-check{display:inline-grid;flex:0 0 16px;width:16px;height:16px;margin-top:3px;place-items:center;border:1px solid var(--chat-border-soft);border-radius:5px;color:#176d5d;font-size:11px;font-weight:800}.task-list-check.is-checked{border-color:#b9ded0;background:#e5f4ee}.bubble-ai .assistant-markdown pre.code-block{position:relative;padding:36px 13px 13px;border:1px solid var(--chat-border-code);border-radius:11px;background:#202a32;color:#edf2f3;box-shadow:inset 0 1px #ffffff0a}.bubble-ai .assistant-markdown .code-language{position:absolute;top:0;left:0;right:0;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.1);color:#b8c7c8;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.bubble-ai .assistant-markdown pre.code-block code{color:inherit}.bubble-ai .assistant-markdown .math-block{max-width:100%;overflow-x:auto;padding:12px 14px;border:1px solid var(--chat-border-panel);border-radius:10px;background:var(--chat-surface-muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;line-height:1.7}.bubble-ai .assistant-markdown .math-inline{padding:1px 4px;border-radius:4px;background:var(--chat-surface-code-inline);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.92em}.bubble-ai .assistant-markdown hr{margin:17px 0;background:var(--chat-border-panel)}.bubble-ai .assistant-markdown a{overflow-wrap:anywhere}@media(max-width:380px){.bubble-ai .assistant-markdown pre.code-block{padding-right:10px;padding-left:10px}.bubble-ai .assistant-markdown .math-block{font-size:12px}}@media(min-width:1100px){.shell:has(.ai-heading-row){max-width:1160px;padding-right:clamp(36px,5vw,72px);padding-left:clamp(36px,5vw,72px)}.shell:has(.ai-heading-row) .screen{width:100%;max-width:1040px;margin-inline:auto}.shell:has(.ai-heading-row) .chat{width:min(100%,920px);max-width:920px;gap:25px;margin-top:30px}.shell:has(.ai-heading-row) .bubble-user{max-width:min(70%,680px);padding:14px 18px}.shell:has(.ai-heading-row) .bubble-ai{padding-bottom:22px}.shell:has(.ai-heading-row) .bubble-ai .assistant-markdown{max-width:82ch;font-size:14.5px;line-height:1.82}.shell:has(.ai-heading-row) .bubble-ai .assistant-markdown p{margin-bottom:16px}.shell:has(.ai-heading-row) .bubble-ai .assistant-markdown h3{margin-top:29px;font-size:20px}.shell:has(.ai-heading-row) .composer{width:min(820px,calc(100% - 96px))}}@media(min-width:1500px){.shell:has(.ai-heading-row){max-width:1240px}.shell:has(.ai-heading-row) .screen{max-width:1100px}.shell:has(.ai-heading-row) .chat{max-width:960px}.shell:has(.ai-heading-row) .composer{width:min(860px,calc(100% - 120px))}}.chat-credit-tooltip{position:relative;min-width:0}.chat-credit-tooltip .credit-inline-trigger{min-height:27px;gap:6px;padding:0 9px;border:1px solid var(--chat-border-chip);border-radius:999px;background:var(--chat-surface-white);color:var(--chat-ink-secondary);font-size:10px;font-weight:650;line-height:1;transition:border-color .15s ease,background-color .15s ease,color .15s ease}.chat-credit-tooltip .credit-inline-trigger svg{width:13px;height:13px;color:var(--chat-primary-action);stroke-width:2}.chat-credit-tooltip .credit-inline-trigger:after{width:5px;height:5px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;content:"";opacity:.65;transform:rotate(45deg)}.chat-credit-tooltip.is-open .credit-inline-trigger,.chat-credit-tooltip .credit-inline-trigger:hover{border-color:color-mix(in srgb,var(--chat-primary-action) 38%,var(--chat-border-chip));background:var(--chat-surface-panel);color:var(--chat-ink-heading)}.chat-credit-tooltip .credit-help-popover{bottom:calc(100% + 10px);width:min(280px,calc(100vw - 40px));padding:12px 13px;border-color:var(--chat-border-panel);border-radius:11px;background:var(--chat-surface-white);color:var(--chat-ink-secondary);box-shadow:0 8px 26px var(--chat-shadow-picker);font-size:11px;font-weight:500;line-height:1.6}.chat-credit-tooltip .credit-help-popover:after{border-color:var(--chat-border-panel);background:var(--chat-surface-white)}@media(max-width:380px){.chat-credit-tooltip .credit-inline-trigger{min-height:26px;padding:0 8px;font-size:9px}.chat-credit-tooltip .credit-help-popover{width:min(260px,calc(100vw - 32px))}}@media(prefers-reduced-motion:reduce){.chat-credit-tooltip .credit-inline-trigger{transition:none}}.tabbar-settings-hidden,.sidebar-brand-row{display:none}@media(min-width:680px){.shell:not(.study-session-shell){width:100%;max-width:none;padding:0 clamp(24px,4vw,48px) calc(112px + env(safe-area-inset-bottom,0px))}.appbar{padding-top:max(22px,env(safe-area-inset-top,0px));padding-bottom:20px}.appbar-logo{font-size:25px}.screen{width:100%;max-width:1000px;margin-inline:auto}.screen-title{max-width:760px;font-size:clamp(30px,4vw,38px)}.screen-sub{max-width:720px;font-size:14px}.tabbar{width:min(560px,calc(100% - 48px));bottom:max(18px,env(safe-area-inset-bottom,0px));padding:5px}.tab{min-height:58px;font-size:11px}.home-welcome .screen-title{max-width:620px;font-size:clamp(32px,4vw,42px)}.home-welcome .screen-sub{max-width:560px}.screen:has(.home-welcome){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;column-gap:18px}.screen:has(.home-welcome)>.home-welcome,.screen:has(.home-welcome)>.home-stats{grid-column:1 / -1}.screen:has(.home-welcome)>.home-mascot-card,.screen:has(.home-welcome)>.home-quest{min-height:100%}.screen:has(.home-welcome)>.home-work-section{min-width:0}.home-stats{gap:14px;margin:22px 0 30px}.home-stat{min-height:118px}.home-powerups{grid-template-columns:repeat(2,minmax(0,1fr))}.home-powerups .quick-card{min-height:88px;padding:14px}}@media(min-width:1100px){body{background:var(--background)}.shell:not(.study-session-shell){width:auto;max-width:none;min-height:100dvh;margin-left:248px;padding:0 clamp(32px,5vw,76px) 48px;transition:margin-left .18s ease}.appbar{min-height:82px;padding:20px 0}.appbar-logo{font-size:22px}.screen{max-width:1440px}.screen-title{margin-top:20px;font-size:clamp(34px,3vw,42px)}.screen-sub{margin-bottom:28px}.tabbar,.tabbar-settings-hidden{position:fixed;inset:0 auto 0 0;z-index:40;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:8px;width:248px;max-width:none;height:100dvh;transition:width .18s ease;margin:0;padding:28px 18px;overflow-y:auto;transform:none;border:0;border-right:1px solid #e3deea;border-radius:0;background:var(--surface);box-shadow:none}.sidebar-brand-row{display:flex;align-items:center;justify-content:space-between;min-height:38px;margin:0 4px 24px 10px}.sidebar-brand{color:var(--ink);font-size:23px;font-weight:800;letter-spacing:-.045em}.sidebar-toggle{display:grid;width:36px;height:36px;place-items:center;flex:0 0 auto;border:1px solid #e3deea;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer;transition:background .15s ease,color .15s ease}.sidebar-toggle:hover{background:#f4f1fb;color:var(--ink)}.tab{flex:0 0 48px;flex-direction:row;justify-content:flex-start;gap:13px;height:48px;min-height:48px;padding:0 14px;border-radius:10px;font-size:13px;font-weight:600}.tab svg{width:19px;height:19px;flex:0 0 auto}.tab-active{background:var(--primary-tint);color:var(--primary)}.sidebar-collapsed.shell:not(.study-session-shell){margin-left:76px}.sidebar-collapsed .tabbar,.sidebar-collapsed .tabbar-settings-hidden{width:76px;padding-inline:12px}.sidebar-collapsed .sidebar-brand-row{justify-content:center;margin-inline:0}.sidebar-collapsed .sidebar-brand{display:none}.sidebar-collapsed .tab{justify-content:center;gap:0;padding-inline:0}.sidebar-collapsed .tab span{display:none}.sidebar-collapsed .tabbar-settings-hidden{display:flex}@media(prefers-reduced-motion:reduce){.shell:not(.study-session-shell),.tabbar,.sidebar-toggle{transition:none}}.screen:has(.home-welcome){grid-template-columns:repeat(12,minmax(0,1fr));column-gap:22px;row-gap:4px}.screen:has(.home-welcome)>.home-welcome{grid-column:1 / -1}.screen:has(.home-welcome)>.home-mascot-card{grid-column:span 7}.screen:has(.home-welcome)>.home-quest{grid-column:span 5}.screen:has(.home-welcome)>.home-stats{grid-column:1 / -1}.screen:has(.home-welcome)>.home-work-section:nth-last-child(2){grid-column:span 7}.screen:has(.home-welcome)>.home-work-section:last-child{grid-column:span 5}.home-mascot-card{min-height:196px}.home-quest{display:flex;flex-direction:column;justify-content:center;min-height:196px}.home-quest-action{max-width:260px}.home-stats{margin:20px 0 26px}.home-stat{flex-direction:row;justify-content:flex-start;gap:12px;padding:16px 18px}.home-stat-icon{margin:0}.home-stat strong{font-size:23px}.home-stat small{margin-left:auto;font-size:12px}.home-powerups{grid-template-columns:1fr}.home-powerups .quick-card{min-height:74px}.shell:has(.composer){padding-bottom:150px}.shell:has(.composer) .composer{left:calc(248px + (100vw - 248px)/2);bottom:24px;width:min(820px,calc(100vw - 340px));transform:translate(-50%)}.chat{max-width:900px}.bubble-user{max-width:min(78%,680px)}.settings-link{min-height:76px}}@media(min-width:1100px)and (max-width:1350px){.shell:not(.study-session-shell){padding-right:36px;padding-left:36px}.screen:has(.home-welcome){column-gap:16px}}@media(hover:hover)and (pointer:fine)and (min-width:1100px){.tab:not(.tab-active):hover{background:#f4f1fb;color:var(--ink)}}@media(min-width:1100px){.shell:has(.ai-heading-row) .chat{width:min(100%,920px);margin-inline:auto;overflow:visible}.shell:has(.ai-heading-row) .bubble-ai{width:100%;max-width:100%;min-width:0;padding:0 0 12px;border:0;border-radius:0;background:transparent;box-shadow:none}.shell:has(.ai-heading-row) .bubble-ai .assistant-markdown{width:100%;max-width:100%;padding:19px 22px}.shell:has(.ai-heading-row) .chat-message-actions{margin-top:12px;padding-top:9px}.shell:has(.ai-heading-row) .chat-followups{display:flex;width:min(100%,920px);max-width:920px;min-width:0;flex-wrap:wrap;align-items:center;margin:8px auto 14px;padding:0;overflow:visible}.shell:has(.ai-heading-row) .chat-followups>span{margin-right:5px;white-space:nowrap}.shell:has(.ai-heading-row):has(.composer) .composer{left:calc(248px + (100vw - 248px)/2);bottom:22px;width:min(820px,calc(100vw - 344px));min-height:0;gap:1px;padding:7px 9px 6px;transform:translate(-50%)}.shell:has(.ai-heading-row) .composer-main-row{gap:8px}.shell:has(.ai-heading-row) .composer input{height:42px;font-size:13px}.shell:has(.ai-heading-row) .composer-material-btn,.shell:has(.ai-heading-row) .send-btn{flex-basis:38px;width:38px;height:38px}.shell:has(.ai-heading-row) .composer-meta{justify-content:center;gap:10px;min-height:20px;padding-top:2px}}.onboarding{box-sizing:border-box;height:auto;min-height:100svh;padding-top:max(18px,env(safe-area-inset-top,0px));padding-bottom:max(28px,env(safe-area-inset-bottom,0px));overflow-x:clip;overflow-y:visible;gap:0}.onboarding-step-content{display:flex;flex:0 0 auto;flex-direction:column;min-width:0}.onboarding-step-content>.screen-title,.onboarding-step-content>.screen-sub{max-width:100%;overflow-wrap:anywhere}.onboarding-actions{display:flex;flex:0 0 auto;align-items:stretch;gap:12px;margin-top:auto;padding-top:clamp(24px,5vh,48px)}.onboarding-actions button{min-width:0;min-height:52px;white-space:normal}.onboarding-actions .btn-gold{flex:1 1 auto;justify-content:center}.onboarding-actions .btn-secondary{flex:0 0 112px}.onboarding .legal-line{flex:0 0 auto;margin:14px 0 0;line-height:1.5;text-align:center}.preference-options{width:100%;min-width:0}.preference-option{min-width:0;text-align:left;line-height:1.35}.preference-option>span{flex:0 0 23px}@media(min-width:680px){.onboarding{width:min(calc(100% - 48px),720px);min-height:min(820px,calc(100svh - 48px));margin:24px auto;padding:30px clamp(32px,6vw,64px) 32px;border:1px solid #e6e1eb;border-radius:24px;background:var(--surface);box-shadow:0 18px 60px #1f325014}.onboarding-progress{margin:24px 0 26px}.onboarding-art{width:84px;height:84px;margin-bottom:20px;border-radius:24px}.onboarding .screen-title{max-width:620px;font-size:clamp(30px,4vw,38px)}.onboarding .screen-sub{max-width:600px;margin-bottom:24px;font-size:14px}.preference-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.preference-option{min-height:68px;padding:14px 18px}.duration-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.duration-option{min-height:108px}.subject-options{gap:11px}.subject-option{min-height:46px;padding-inline:17px;font-size:13px}.onboarding-name-input{max-width:560px;min-height:56px}.onboarding-actions{padding-top:clamp(28px,5vh,44px)}.onboarding-actions .btn-gold{flex:0 1 280px;margin-left:auto}.onboarding-actions .btn-secondary{flex-basis:120px}.onboarding .legal-line{font-size:10px}}@media(min-width:1100px){.onboarding{width:min(calc(100% - 80px),860px);min-height:min(860px,calc(100svh - 64px));margin:32px auto;padding:34px clamp(64px,9vw,112px) 32px}.onboarding-top{min-height:42px}.onboarding-top .appbar-logo{font-size:26px}.onboarding-progress{gap:9px;margin:24px 0 26px}.onboarding-art{width:88px;height:88px;margin-bottom:20px}.onboarding .screen-title{font-size:38px}.onboarding .screen-sub{font-size:15px}.preference-options{gap:14px}.preference-option{min-height:70px;font-size:14px}.duration-option{min-height:116px}.onboarding-actions{padding-top:clamp(32px,5vh,48px)}.onboarding-actions .btn-gold{flex-basis:300px}}@media(min-width:680px)and (max-height:760px){.onboarding{min-height:calc(100svh - 32px);margin-block:16px;padding-block:20px}.onboarding-progress{margin-block:14px 16px}.onboarding-art{width:58px;height:58px;margin-bottom:12px;border-radius:16px}.onboarding .screen-sub{margin-bottom:16px}.preference-option{min-height:54px}.duration-option{min-height:82px}.onboarding-actions{padding-top:22px}}@media(max-width:380px){.onboarding{padding-right:18px;padding-left:18px}.onboarding-progress{margin:14px 0 16px}.onboarding-art{width:64px;height:64px;margin-bottom:13px;border-radius:18px}.onboarding .screen-sub{margin-bottom:16px}.preference-options{gap:8px}.preference-option{min-height:54px;padding-inline:12px;font-size:12px}.duration-options{gap:9px}.duration-option{min-height:88px}.subject-options{gap:7px}.subject-option{min-height:39px;padding-inline:11px;font-size:11px}.onboarding-actions{padding-top:18px}}@media(max-height:700px){.onboarding{padding-top:max(10px,env(safe-area-inset-top,0px))}.onboarding-progress{margin:10px 0 12px}.onboarding-art{width:56px;height:56px;margin-bottom:10px}.onboarding .screen-sub{margin-bottom:12px}.preference-options{gap:7px}.preference-option{min-height:48px}.duration-option{min-height:76px}.onboarding-actions{padding-top:14px}}@media(prefers-reduced-motion:reduce){.onboarding *{scroll-behavior:auto}}.quiz-builder-simple,.saved-quiz-library,.flashcard-builder,.flashcard-deck-list{width:100%;max-width:900px;min-width:0;margin-inline:auto;box-sizing:border-box}.quiz-builder-simple,.flashcard-builder{min-width:0}.quiz-builder-simple>.quiz-setup,.flashcard-builder>.flashcard-setup{min-width:0;box-sizing:border-box}.quiz-material-option,.flashcard-source,.saved-quiz-row,.flashcard-deck-row{min-width:0;max-width:100%;box-sizing:border-box}.saved-quiz-library{width:100%;max-width:900px;min-width:0;margin:18px auto 20px;padding:14px;border:1px solid var(--outline);border-radius:14px;background:var(--surface);box-sizing:border-box}.saved-quiz-library-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.saved-quiz-library-heading>div{display:grid;gap:3px}.saved-quiz-library-heading strong{font-size:13px}.saved-quiz-library-heading small{color:var(--muted);font-size:11px}.saved-quiz-library-heading>span{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border:2px solid var(--outline);border-radius:8px;background:var(--xp-gold);color:var(--on-gold);font-size:13px;font-weight:800;line-height:1;box-shadow:3px 3px 0 var(--shadow)}.saved-study-row{display:flex;align-items:center;gap:6px;min-width:0}.saved-study-row>:first-child{flex:1 1 auto;min-width:0}.saved-quiz-row{display:flex;align-items:center;gap:10px;width:100%;min-height:58px;padding:10px 0;border:0;border-top:1px solid var(--outline);background:transparent;color:var(--ink);text-align:left;cursor:pointer}.saved-quiz-row-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border:2px solid var(--outline);border-radius:9px;background:#e9e1ff;color:#6741c8;box-shadow:2px 2px 0 var(--shadow);transition:transform .16s ease,box-shadow .16s ease}.saved-quiz-row-icon svg{width:19px;height:19px;stroke-width:2.25}.saved-quiz-row:hover .saved-quiz-row-icon{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--shadow)}.saved-quiz-row-copy{display:grid;flex:1;min-width:0;gap:4px}.saved-quiz-row-copy strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.saved-quiz-row-copy small{color:var(--muted);font-size:10px}.saved-quiz-row>svg{flex:0 0 auto;color:var(--muted)}.quiz-material-copy,.flashcard-source>span:last-child,.flashcard-deck-copy,.saved-quiz-row-copy{min-width:0;overflow-wrap:anywhere}.quiz-generate-simple,.flashcard-submit-row>.btn-gold{width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere}@media(min-width:680px){.screen:has(.quiz-builder-simple),.screen:has(.flashcard-builder){min-width:0}.screen:has(.quiz-builder-simple)>.section-switch,.screen:has(.flashcard-builder)>.section-switch,.screen:has(.flashcard-builder)>.kicker,.screen:has(.flashcard-builder)>.screen-title,.screen:has(.flashcard-builder)>.screen-sub,.screen:has(.flashcard-builder)>.flashcard-deck-heading{width:100%;max-width:900px;margin-inline:auto}.screen:has(.quiz-builder-simple)>.screen-title,.screen:has(.quiz-builder-simple)>.screen-sub{max-width:900px}.quiz-builder-simple .quiz-setup{padding:24px}.quiz-material-option{gap:12px;padding:14px}.quiz-material-copy strong,.flashcard-source strong{white-space:normal;overflow-wrap:anywhere}.flashcard-setup{padding:22px}.flashcard-section-heading{align-items:flex-start}.flashcard-source{align-items:flex-start;padding:13px}}@media(min-width:960px){.flashcard-submit-row{display:flex;align-items:center;gap:12px;margin-top:12px}.flashcard-submit-row>.btn-gold{flex:1 1 auto;width:auto;margin-top:0}.flashcard-submit-row .quiz-credit-hint{flex:0 0 auto;justify-content:flex-end;gap:8px;min-height:42px;padding:0 11px;border:1px solid var(--outline);border-radius:10px;background:var(--background);white-space:nowrap}.flashcard-submit-row .quiz-credit-hint>span:first-child{gap:4px;font-size:10px;font-weight:650;font-variant-numeric:tabular-nums}.flashcard-builder{grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);align-items:start;column-gap:18px;row-gap:18px}.flashcard-builder>.flashcard-setup{height:auto}.flashcard-builder>.flashcard-setup:first-child{position:sticky;top:112px}.flashcard-deck-heading{margin-top:32px}}@media(min-width:1100px){.screen:has(.quiz-builder-simple),.screen:has(.flashcard-builder){padding-bottom:48px}.quiz-builder-simple,.saved-quiz-library,.flashcard-builder,.flashcard-deck-list{max-width:1040px}.screen:has(.quiz-builder-simple)>.section-switch,.screen:has(.flashcard-builder)>.section-switch,.screen:has(.flashcard-builder)>.kicker,.screen:has(.flashcard-builder)>.screen-title,.screen:has(.flashcard-builder)>.screen-sub,.screen:has(.flashcard-builder)>.flashcard-deck-heading{max-width:1040px}.quiz-study-page,.flashcard-study-page{width:min(100%,820px);margin-inline:auto}.quiz-study-page .quiz-next-btn{position:static;width:100%;max-width:100%;margin-top:16px}.quiz-study-page .quiz-question-card:has(.quiz-next-btn){margin-bottom:0;padding-bottom:16px}}@media(max-width:959px){.flashcard-builder{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.quiz-builder-simple *,.flashcard-builder *{scroll-behavior:auto}}.quiz-study-page .quiz-next-btn,.study-session-shell .quiz-next-btn{position:static;inset:auto;width:100%;max-width:100%;margin-top:14px;transform:none}.quiz-study-page .quiz-question-card:has(.quiz-next-btn),.study-session-shell .quiz-question-card:has(.quiz-next-btn){margin-bottom:0;padding-bottom:14px}.quiz-study-page .quiz-feedback{grid-template-columns:minmax(56px,72px) minmax(0,1fr)}.quiz-study-page .quiz-feedback-content,.quiz-study-page .quiz-feedback-content p,.quiz-study-page .quiz-answer{min-width:0;overflow-wrap:anywhere}.quiz-study-page .quiz-answer{text-align:left}.quiz-builder-simple .quiz-setup input,.flashcard-setup input{box-sizing:border-box;min-width:0;max-width:100%}.quiz-credit-hint{flex-wrap:wrap;min-width:0;text-align:center}.credit-help-popover{max-height:none;overflow:visible}@media(max-width:420px){.quiz-builder-simple>.quiz-setup,.flashcard-builder>.flashcard-setup{padding:14px}.quiz-material-option,.flashcard-source{gap:8px;padding:10px}.quiz-material-copy strong,.flashcard-source strong{white-space:normal;overflow-wrap:anywhere}.flashcard-study-page{padding-bottom:max(18px,env(safe-area-inset-bottom,0px))}.flashcard-study-face{width:100%;box-sizing:border-box}}.quiz-study-page .quiz-question-card{position:relative;isolation:isolate;overflow:hidden;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--outline));background:var(--surface);box-shadow:0 8px 24px color-mix(in srgb,var(--primary) 6%,transparent)}.quiz-study-page .quiz-question-card:before,.quiz-study-page .quiz-question-card:after{display:none}.quiz-study-page .quiz-question-card>*{position:relative}.quiz-study-page .quiz-feedback{grid-template-columns:76px minmax(0,1fr);align-items:center;border-color:color-mix(in srgb,var(--primary) 24%,var(--outline));background:color-mix(in srgb,#b9a5ff 12%,var(--surface))}.quiz-study-page .quiz-feedback-incorrect{border-color:color-mix(in srgb,var(--danger) 28%,var(--outline));background:color-mix(in srgb,#f2a4b4 12%,var(--surface))}.quiz-study-page .quiz-feedback-mascot-wrap{position:relative;display:grid;place-items:center;width:72px;height:72px;overflow:hidden;border:1px solid rgb(255 255 255 / 68%);border-radius:20px;background:#e8e1ff;box-shadow:0 5px 16px #493b7024}.quiz-study-page .quiz-feedback-incorrect .quiz-feedback-mascot-wrap{background:#f9e1e6}.quiz-study-page .quiz-feedback-mascot{display:block;width:100%;height:100%;padding:4px;box-sizing:border-box;object-fit:contain}.quiz-study-page .quiz-feedback-content,.quiz-study-page .quiz-feedback-content p{min-width:0;color:var(--ink)}.quiz-study-page .quiz-feedback-content strong,.quiz-study-page .quiz-feedback-incorrect .quiz-feedback-content strong{color:var(--ink)}@media(max-width:360px){.quiz-study-page .quiz-feedback{grid-template-columns:58px minmax(0,1fr);gap:10px;padding:10px}.quiz-study-page .quiz-feedback-mascot-wrap{width:58px;height:58px;border-radius:16px}}.generation-error{display:grid;grid-template-columns:20px minmax(0,1fr) 28px;align-items:center;gap:10px;width:100%;box-sizing:border-box;margin:14px 0;padding:12px 14px;border:1px solid var(--danger);border-radius:10px;background:color-mix(in srgb,var(--danger) 9%,var(--surface));color:var(--ink)}.generation-error>svg{color:var(--danger)}.generation-error p{min-width:0;margin:0;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.generation-error button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.generation-error button:hover{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--ink)}.generation-error button:focus-visible{outline:2px solid var(--danger);outline-offset:2px}.library-action-sheet{padding-bottom:max(22px,env(safe-area-inset-bottom,0px))}.confirm-backdrop{padding:max(22px,env(safe-area-inset-top,0px)) max(22px,env(safe-area-inset-right,0px)) max(22px,env(safe-area-inset-bottom,0px)) max(22px,env(safe-area-inset-left,0px))}.toast{bottom:calc(86px + env(safe-area-inset-bottom,0px))}
