body.home-source-first .home-source-builder,.home-source-builder{width:min(100%,980px);margin-inline:auto}.home-source-builder .source-card-heading,.home-source-builder .source-tab-hint,.home-source-builder #sourceYoutube,.home-source-builder #sourceDocument,.home-source-builder #sourceUrl,.home-source-builder #sourceTrack,.home-source-builder .source-difficulty,.home-source-builder .source-action-row{width:min(100%,760px);margin-inline:auto}.home-source-builder .source-card-heading{max-width:760px;text-align:left}.home-source-builder .source-tab-hint{text-align:left}.home-source-builder #sourceTabBar,.home-source-builder .source-difficulty .difficulty-selector,.home-source-builder .source-action-row{justify-content:center}.source-action-row{display:flex;align-items:center;margin-top:18px}.source-action-row[hidden],.source-primary-action[hidden]{display:none!important}.source-primary-action{width:min(100%,360px);min-height:56px;padding:0 26px;border:1px solid color-mix(in srgb,var(--accent) 58%,rgba(255,255,255,.18) 42%);border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 82%,#2a245f 18%),color-mix(in srgb,var(--accent-hover) 78%,#2a245f 22%));font-size:.98rem;font-weight:850;box-shadow:0 16px 30px -18px color-mix(in srgb,var(--accent) 92%,transparent),inset 0 1px #ffffff1f}.source-primary-action:hover{box-shadow:0 18px 34px -19px color-mix(in srgb,var(--accent) 96%,transparent),inset 0 1px #ffffff24}.source-difficulty{margin-top:16px!important}.source-difficulty .difficulty-selector{gap:8px}.source-difficulty .difficulty-btn{min-height:32px;padding:5px 15px;font-size:.78rem;border-radius:999px;border-color:color-mix(in srgb,var(--border) 74%,var(--accent) 26%);background:color-mix(in srgb,var(--bg-card) 76%,var(--bg-input) 24%);color:color-mix(in srgb,var(--text-secondary) 88%,var(--text-primary) 12%)}.source-difficulty .difficulty-btn:hover{border-color:color-mix(in srgb,var(--accent) 62%,var(--border) 38%);background:var(--accent-subtle);color:var(--text-primary)}.source-difficulty .difficulty-btn.active{border-color:color-mix(in srgb,var(--accent) 70%,#19153f 30%);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 78%,#19153f 22%),color-mix(in srgb,var(--accent-hover) 74%,#19153f 26%));color:#fff;box-shadow:0 8px 18px -14px color-mix(in srgb,var(--accent) 82%,transparent),inset 0 1px #ffffff1f}body.generation-active{overflow:hidden}.generation-status{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;margin:0;padding:22px;min-height:calc(var(--app-vh, 1vh) * 100);border:0;border-radius:0;background:transparent}.generation-status.hidden{display:none!important}.generation-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 18%,color-mix(in srgb,var(--accent) 20%,transparent),transparent 38%),color-mix(in srgb,#050714 78%,transparent);backdrop-filter:blur(14px);cursor:pointer;transition:opacity .22s ease}.generation-panel{position:relative;width:min(100%,430px);max-height:min(760px,calc((var(--app-vh, 1vh) * 100) - 44px));overflow:auto;padding:12px 18px 18px;border:1px solid color-mix(in srgb,var(--accent) 44%,var(--border) 56%);border-radius:24px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card) 92%,var(--accent) 8%),var(--bg-card)),var(--bg-card);box-shadow:0 24px 80px -34px color-mix(in srgb,var(--accent) 80%,transparent),0 18px 54px -36px #000,inset 0 1px #ffffff24;color:var(--text-primary);outline:0;touch-action:pan-y;transition:transform .24s cubic-bezier(.22,1,.36,1),opacity .22s ease;will-change:transform}.generation-handle{width:46px;height:4px;margin:0 auto 18px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 54%,transparent);cursor:grab;touch-action:none}.generation-handle:active{cursor:grabbing}.generation-orbit{position:relative;display:grid;place-items:center;width:74px;height:74px;margin:0 auto 14px}.generation-orbit-ring{position:absolute;inset:0;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 36%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent);animation:generationPulse 1.8s ease-in-out infinite}.generation-orbit .generation-spinner{--sz: 32px}.generation-kicker{margin:0 0 8px;color:var(--accent);font-size:.72rem;font-weight:850;letter-spacing:0;text-align:center;text-transform:uppercase}#genTitle{margin:0;font-size:clamp(1.38rem,4.8vw,2rem);line-height:1.06;text-align:center}#genMessage{max-width:330px;margin:10px auto 18px;color:var(--text-secondary);font-size:.98rem;line-height:1.48;text-align:center}.generation-progress{height:9px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--border) 62%,transparent)}.generation-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-hover),#9ee7c6);box-shadow:0 0 22px color-mix(in srgb,var(--accent) 54%,transparent);transition:width .7s cubic-bezier(.2,.8,.2,1)}.generation-progress-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px;color:var(--text-muted);font-size:.78rem;font-weight:750}.generation-steps{display:grid;gap:8px;margin:18px 0 14px;padding:0;list-style:none}.generation-steps li{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:start;padding:10px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:16px;background:color-mix(in srgb,var(--bg-input) 70%,transparent);opacity:.62;transition:opacity .22s ease,border-color .22s ease,transform .22s ease,background .22s ease}.generation-steps li>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid color-mix(in srgb,var(--text-muted) 38%,transparent)}.generation-steps li>span:before{content:"";width:7px;height:7px;border-radius:inherit;background:color-mix(in srgb,var(--text-muted) 64%,transparent)}.generation-steps li.is-active{opacity:1;border-color:color-mix(in srgb,var(--accent) 54%,var(--border) 46%);background:color-mix(in srgb,var(--accent-subtle) 70%,var(--bg-input) 30%);transform:translateY(-1px)}.generation-steps li.is-active>span{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%,transparent)}.generation-steps li.is-active>span:before{background:var(--accent)}.generation-steps li.is-done{opacity:.88}.generation-steps li.is-done>span{border-color:color-mix(in srgb,#19c28f 68%,var(--accent) 32%);background:color-mix(in srgb,#19c28f 18%,transparent)}.generation-steps li.is-done>span:before{width:9px;height:5px;border-radius:0;border-left:2px solid #19c28f;border-bottom:2px solid #19c28f;background:transparent;transform:rotate(-45deg) translate(1px,-1px)}.generation-steps strong{display:block;margin:0 0 2px;font-size:.9rem}.generation-steps p{margin:0;color:var(--text-secondary);font-size:.8rem;line-height:1.35}.generation-preview{display:grid;gap:8px;padding:12px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:16px;background:color-mix(in srgb,var(--bg-input) 74%,transparent)}.generation-preview div{height:10px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--border) 60%,transparent)}.generation-preview div:after{content:"";display:block;width:42%;height:100%;border-radius:inherit;background:color-mix(in srgb,var(--accent) 42%,transparent);animation:generationScan 1.8s ease-in-out infinite}.generation-preview div:nth-child(2):after{width:68%;animation-delay:.16s}.generation-preview div:nth-child(3):after{width:54%;animation-delay:.32s}.generation-footnote{margin:12px 0 0;color:var(--text-muted);font-size:.78rem;line-height:1.42;text-align:center}.generation-status.is-finishing .generation-panel{transform:scale(.99);opacity:.94}.generation-status.is-dismissing .generation-backdrop{opacity:0}.generation-status.is-dismissing .generation-panel{transform:translateY(26px) scale(.985);opacity:0}.generation-status.is-dragging .generation-panel{transition:none}@keyframes generationPulse{0%,to{transform:scale(.94);opacity:.74}50%{transform:scale(1.03);opacity:1}}@keyframes generationScan{0%{transform:translate(-70%);opacity:.42}50%{opacity:.9}to{transform:translate(180%);opacity:.36}}@media(prefers-reduced-motion:reduce){.generation-orbit-ring,.generation-preview div:after{animation:none}.generation-progress span,.generation-steps li,.generation-panel,.generation-backdrop{transition:none}}@media(max-width:560px){body.home-source-first .home-hero{padding-top:6px;padding-bottom:8px}body.home-source-first .hero-display{margin-bottom:8px;font-size:clamp(1.88rem,8.8vw,2.1rem);line-height:1.04}body.home-source-first .hero-lede{max-width:32ch;font-size:.9rem;line-height:1.32}body.home-source-first .home-hero+.learning-pipeline{margin-bottom:8px;gap:6px;font-size:.78rem}.home-source-builder{width:100%;margin-top:8px!important;padding:16px 18px 18px!important;transform:none}.home-source-builder #sourceTabBar{justify-content:flex-start;margin-bottom:10px!important}.home-source-builder .source-card-heading{margin-bottom:12px}.home-source-builder .source-card-heading h2{line-height:1.08}.home-source-builder .source-card-heading p,.home-source-builder .source-tab-hint{line-height:1.36}.home-source-builder .source-tab-hint{margin-bottom:10px}.home-source-builder .source-difficulty .difficulty-selector{justify-content:flex-start}.home-source-builder #sourceYoutube .input{min-height:50px}.home-source-builder .source-difficulty{margin-top:10px!important}.source-action-row{margin-top:10px}.source-primary-action{width:100%;min-height:52px}.generation-status{align-items:end;padding:14px}.generation-panel{max-height:calc((var(--app-vh, 1vh) * 100) - 28px);border-radius:24px 24px 18px 18px;padding:10px 16px 16px}.generation-steps{gap:7px}.generation-steps li{padding:9px}}@media(max-width:560px)and (max-height:680px){body.home-source-first .source-action-row{position:fixed;left:max(16px,env(safe-area-inset-left,0px));right:max(16px,env(safe-area-inset-right,0px));bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:101;width:auto!important;margin:0}body.home-source-first .source-primary-action{width:100%;box-shadow:0 14px 32px -18px #050714b8,0 12px 28px -16px color-mix(in srgb,var(--accent) 82%,transparent),inset 0 1px #ffffff24}body.home-source-first .home-source-builder{padding-bottom:82px!important}}
