.app-shell{--app-canvas:color-mix(in srgb,var(--background) 97%,var(--foreground));--app-surface:var(--card);--dot-grid-color:rgba(28,24,22,0.12);--dot-grid-active:rgba(176,80,30,0.2);background:var(--app-canvas)}.theme-snow .app-shell{--dot-grid-color:rgba(13,13,13,0.1);--dot-grid-active:rgba(37,99,235,0.18)}.dark .app-shell{--app-canvas:color-mix(in srgb,var(--background) 94%,var(--foreground));--app-surface:var(--card);--dot-grid-color:rgba(231,237,246,0.075);--dot-grid-active:rgba(122,167,255,0.2)}.theme-glass .app-shell{--app-canvas:#11101d;--app-surface:#211e2e;--dot-grid-color:rgba(255,255,255,0.08);--dot-grid-active:rgba(168,85,247,0.22)}.app-shell-dot-grid{opacity:.84}.learning-animated-content{opacity:0;transform:translateY(var(--learning-reveal-distance,28px));transition:opacity .46s cubic-bezier(.22,1,.36,1) var(--learning-reveal-delay,0s),transform .46s cubic-bezier(.22,1,.36,1) var(--learning-reveal-delay,0s)}.learning-animated-content.is-visible{opacity:1;transform:translateY(0)}.learning-glass-surface{border:1px solid color-mix(in srgb,var(--border) 88%,transparent);background:var(--app-surface,var(--card));box-shadow:inset 0 1px 0 rgb(255 255 255/46%),0 18px 48px rgb(15 23 42/7%);backdrop-filter:blur(16px) saturate(108%)}.dark .learning-dock,.dark .learning-floating-sidebar,.dark .learning-glass-surface{box-shadow:inset 0 1px 0 rgb(255 255 255/6%),0 16px 42px rgb(0 0 0/28%)}.dark .learning-composer-surface,.dark .learning-message-surface{box-shadow:inset 0 1px 0 rgb(255 255 255/6%),0 10px 28px rgb(0 0 0/24%)}.dark .learning-book-card__cover{background:var(--card)}.dark .learning-book-card__cover-frame{border-color:var(--card);box-shadow:0 0 0 1px rgb(255 255 255/8%)}.dark .learning-book-card__icon{border-color:var(--border);background:var(--surface-raised);box-shadow:inset 0 1px 0 rgb(255 255 255/6%),0 10px 24px rgb(0 0 0/20%)}.learning-spotlight-card{--spot-x:50%;--spot-y:50%;position:relative;display:block;overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 90%,transparent);border-radius:12px;background:var(--app-surface,var(--card));box-shadow:inset 0 1px 0 rgb(255 255 255/42%),0 8px 28px rgb(15 23 42/5%);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.learning-spotlight-card:before{pointer-events:none;position:absolute;inset:0;content:"";opacity:0;background:radial-gradient(260px circle at var(--spot-x) var(--spot-y),color-mix(in srgb,var(--primary) 11%,transparent),transparent 68%);transition:opacity .18s ease}.learning-spotlight-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 24%,var(--border));box-shadow:inset 0 1px 0 rgb(255 255 255/48%),0 12px 34px rgb(15 23 42/7%)}.learning-spotlight-card:hover:before{opacity:1}.learning-hover-spotlight:focus-within,.learning-hover-spotlight:hover{background-image:radial-gradient(260px circle at var(--spot-x,50%) var(--spot-y,50%),color-mix(in srgb,var(--primary) 11%,transparent),transparent 68%);background-repeat:no-repeat}.learning-spotlight-content{position:relative;z-index:1;height:100%}.learning-floating-sidebar :is(a,button):focus-visible,.learning-floating-sidebar :is(a,button):hover{background-image:radial-gradient(180px circle at var(--spot-x,50%) var(--spot-y,50%),color-mix(in srgb,var(--primary) 12%,transparent),transparent 72%);background-repeat:no-repeat}.learning-book-card{min-height:clamp(340px,42vh,460px);border-radius:20px;perspective:900px}.learning-book-card:hover{transform:translateY(-4px) scale(1.008)}.learning-book-card__body{display:flex;height:100%;min-height:inherit;flex-direction:column;background:transparent}.learning-book-card__cover{position:relative;height:clamp(132px,18vh,180px);flex:none;overflow:hidden;padding:8px;background:#ffffff;color:var(--book-line)}.learning-book-card__cover-frame{position:relative;height:100%;overflow:hidden;border:4px solid #ffffff;border-radius:18px;background:var(--book-cover);box-shadow:0 0 0 1px rgb(15 23 42/6%)}.learning-book-card__cover-top{position:relative;z-index:3;display:flex;min-height:24px;align-items:flex-start;justify-content:space-between;gap:8px;padding:8px 8px 0}.learning-book-card__art{position:relative;display:flex;height:84px;align-items:center;justify-content:center}.learning-book-card__label{display:inline-flex;max-width:130px;overflow:hidden;border:1px solid #e4e8e7;border-radius:9999px;background:var(--book-badge);padding:4px 9px;color:var(--book-badge-ink);font-size:9.5px;font-weight:700;line-height:1;text-overflow:ellipsis;white-space:nowrap;backdrop-filter:blur(8px)}.learning-book-card__art-lines{position:absolute;inset:4px 8px 0;height:calc(100% - 4px);width:calc(100% - 16px);opacity:.3}.learning-book-card__icon{position:relative;z-index:1;display:grid;height:64px;width:64px;place-items:center;border:1px solid #e4e8e7;border-radius:20px;background:#ffffff;color:var(--book-line);box-shadow:inset 0 1px 0 rgb(255 255 255/68%),0 10px 24px rgb(15 23 42/5%);backdrop-filter:blur(10px)}.learning-book-card__icon>svg{height:30px;width:30px;stroke-width:1.35}.learning-book-card__content{display:flex;min-height:0;flex:1;flex-direction:column;padding:clamp(12px,.85vw,18px)}.learning-book-card__provider{display:flex;min-width:0;align-items:center;gap:6px;margin-bottom:7px;color:var(--muted-foreground);font-size:10.5px;font-weight:600}.learning-book-card__provider>span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.learning-book-card__provider>svg{height:12px;width:12px;flex:none;color:var(--primary)}.learning-book-card__provider-mark{display:grid;height:19px;width:19px;flex:none;place-items:center;border-radius:6px;background:var(--muted)}.learning-book-card__provider-mark svg{height:11px;width:11px}.learning-book-card__title{font-family:var(--font-serif);font-size:16.5px;font-weight:650;line-height:1.32;letter-spacing:-.015em;-webkit-line-clamp:3}.learning-book-card__description,.learning-book-card__title{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}.learning-book-card__description{margin-top:7px;color:var(--book-muted);font-size:11px;line-height:1.5;-webkit-line-clamp:2}.learning-book-card__meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.learning-book-card__meta>span{overflow:hidden;max-width:100%;border-radius:9999px;background:var(--muted);padding:3px 8px;color:var(--muted-foreground);font-size:9.5px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.learning-book-card__stats{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;color:var(--foreground);font-size:10.5px;font-weight:600}.learning-book-card__stats>div,.learning-book-card__stats>span{display:inline-flex;min-width:0;align-items:center;gap:4px}.learning-book-card__stats svg{height:13px;width:13px;flex:none}.learning-book-card__progress{display:flex;align-items:center;gap:9px;margin-top:auto;padding-top:16px;color:var(--book-muted);font-size:10.5px;font-weight:650;font-variant-numeric:tabular-nums}.learning-book-card__track{height:6px;min-width:0;flex:1;overflow:hidden;border-radius:9999px;background:var(--muted)}.learning-book-card__track>span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.learning-book-card__subject{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:0;padding-top:13px}.learning-book-card__subject>span:first-child{display:flex;min-width:0;flex-direction:column;gap:3px;overflow:hidden;color:var(--foreground);font-size:11.5px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.learning-book-card__subject small{color:var(--muted-foreground);font-size:9px;font-weight:500}.learning-book-card__arrow{display:grid;height:30px;width:30px;flex:none;place-items:center;border-radius:9999px;background:var(--primary);color:var(--primary-foreground);font-size:14px;font-weight:700;transition:transform .16s ease}.learning-book-card:hover .learning-book-card__arrow{transform:translateX(2px)}.learning-book-card__footer{margin-top:11px}.learning-border-glow{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 8%,transparent),0 8px 28px rgb(15 23 42/5%)}.learning-animated-list-item{opacity:0;transform:translateY(5px);animation:learning-list-item-in .34s cubic-bezier(.22,1,.36,1) calc(var(--learning-list-index, 0) * 28ms) forwards}.learning-sidebar-row{transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .18s ease,border-color .18s ease}.learning-sidebar-row:hover{transform:translateX(5px)}.learning-floating-sidebar{box-shadow:inset 0 1px 0 rgb(255 255 255/38%),0 18px 48px rgb(15 23 42/8%);backdrop-filter:blur(16px) saturate(106%)}.learning-dock,.learning-floating-sidebar{border:1px solid color-mix(in srgb,var(--border) 86%,transparent);background:var(--app-surface,var(--card))}.learning-dock{border-radius:18px;box-shadow:inset 0 1px 0 rgb(255 255 255/46%),0 16px 42px rgb(15 23 42/10%);backdrop-filter:blur(18px) saturate(110%)}.learning-dock button{transition:transform .15s ease,background-color .15s ease,color .15s ease}.learning-dock button:hover:not(:disabled){transform:translateY(-1px)}.learning-specular-button{position:relative;isolation:isolate;overflow:hidden;box-shadow:inset 0 1px 0 rgb(255 255 255/16%),0 8px 20px color-mix(in srgb,var(--primary) 16%,transparent)}.learning-specular-button:after{pointer-events:none;position:absolute;inset:-80% auto -80% -32%;width:28%;content:"";transform:translateX(-160%) rotate(12deg);background:linear-gradient(90deg,transparent,rgb(255 255 255/24%),transparent);transition:transform .52s cubic-bezier(.22,1,.36,1)}.learning-specular-button:hover:not(:disabled):after{transform:translateX(560%) rotate(12deg)}.learning-shiny-text{background:linear-gradient(96deg,var(--foreground) 0,color-mix(in srgb,var(--primary) 68%,var(--foreground)) 48%,var(--foreground) 72%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:learning-shiny-text 7s ease-in-out infinite}.learning-pill-nav{display:inline-flex;align-items:center;gap:2px;border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:13px;background:var(--app-surface,var(--card));padding:3px;box-shadow:inset 0 1px 0 rgb(255 255 255/40%),0 8px 24px rgb(15 23 42/5%)}.learning-pill-item{position:relative;border-radius:10px;transition:background-color .17s ease,color .17s ease,transform .17s ease}.learning-pill-item:hover{transform:translateY(-1px)}.learning-bubble-menu{transform-origin:50% 100%;animation:learning-bubble-in .18s cubic-bezier(.22,1,.36,1) both;backdrop-filter:blur(18px) saturate(110%)}.learning-glare-hover{position:relative;isolation:isolate;overflow:hidden}.learning-glare-hover:after{pointer-events:none;position:absolute;top:-40%;bottom:-40%;left:-36%;width:24%;content:"";transform:translateX(-150%) rotate(14deg);background:linear-gradient(90deg,transparent,rgb(255 255 255/17%),transparent);transition:transform .62s cubic-bezier(.22,1,.36,1)}.learning-glare-hover:hover:after{transform:translateX(620%) rotate(14deg)}.learning-mobile-drawer{transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .2s ease}.learning-mobile-backdrop{transition:opacity .22s ease}.app-shell .mastery-shell{background:transparent}.learning-chat-message-in{animation:learning-chat-message-in .36s cubic-bezier(.22,1,.36,1) both}.learning-message-surface{max-width:min(860px,100%);border:1px solid color-mix(in srgb,var(--border) 86%,transparent);border-radius:18px;background:var(--app-surface,var(--card));padding:17px 19px 18px;box-shadow:inset 0 1px 0 rgb(255 255 255/42%),0 8px 26px rgb(15 23 42/6%)}.learning-message-user{border:1px solid color-mix(in srgb,var(--primary) 16%,var(--border));background:color-mix(in srgb,var(--primary) 4.5%,var(--app-surface,var(--card)));box-shadow:inset 0 1px 0 rgb(255 255 255/44%),0 7px 22px rgb(15 23 42/6%)}.learning-message-surface,.learning-message-user{min-width:0;overflow-wrap:anywhere;word-break:break-word}.learning-composer-surface{isolation:isolate;background:radial-gradient(circle at 18% 0,color-mix(in srgb,var(--primary) 4%,transparent),transparent 34%),var(--app-surface,var(--card));box-shadow:inset 0 1px 0 rgb(255 255 255/48%),0 12px 34px rgb(15 23 42/8%)}.learning-composer-fade{background:linear-gradient(to bottom,transparent,color-mix(in srgb,var(--app-canvas,var(--background)) 86%,transparent))}@keyframes learning-list-item-in{to{opacity:1;transform:translateY(0)}}@keyframes learning-chat-message-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes learning-shiny-text{0%,62%{background-position:100% 50%}to{background-position:-30% 50%}}@keyframes learning-bubble-in{0%{opacity:0;transform:translateY(5px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion:reduce){.learning-animated-content,.learning-animated-list-item,.learning-book-card,.learning-bubble-menu,.learning-shiny-text,.learning-sidebar-row,.learning-spotlight-card{opacity:1;transform:none;animation:none;transition:none}.learning-chat-message-in{opacity:1;transform:none;animation:none}.learning-glare-hover:after,.learning-specular-button:after{display:none}.learning-book-card:hover{transform:none}}@media (max-width:480px){.learning-book-card{min-height:340px;border-radius:16px}.learning-book-card__cover{height:128px}.learning-book-card__title{font-size:15px}.learning-book-card__description{font-size:10.5px}}@media (min-width:1800px){.learning-book-card{min-height:clamp(420px,36vh,500px)}.learning-book-card__cover{height:clamp(168px,15vh,196px)}.learning-book-card__title{font-size:clamp(17px,.85vw,19px)}.learning-book-card__description{font-size:clamp(11px,.52vw,12.5px)}}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_8eaea4{font-family:Geist,Geist Fallback;font-style:normal}.__variable_8eaea4{--font-sans:"Geist","Geist Fallback"}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/03b436aa846269de-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/0086f8992871c45b-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/ab00a911ac2adf48-s.woff2) format("woff2");unicode-range:u+0302-0303,u+0305,u+0307-0308,u+0310,u+0312,u+0315,u+031a,u+0326-0327,u+032c,u+032f-0330,u+0332-0333,u+0338,u+033a,u+0346,u+034d,u+0391-03a1,u+03a3-03a9,u+03b1-03c9,u+03d1,u+03d5-03d6,u+03f0-03f1,u+03f4-03f5,u+2016-2017,u+2034-2038,u+203c,u+2040,u+2043,u+2047,u+2050,u+2057,u+205f,u+2070-2071,u+2074-209f,u+20d0-20dc,u+20e1,u+20e5-20ef,u+2100-2112,u+2114-2115,u+2117-2121,u+2123-214f,u+2190,u+2192,u+2194-21ae,u+21b0-21e5,u+21f1-21f2,u+21f4-2211,u+2213-2214,u+2216-22ff,u+2308-230b,u+2310,u+2319,u+231c-2321,u+2336-237a,u+237c,u+2395,u+239b-23b7,u+23d0,u+23dc-23e1,u+2474-2475,u+25af,u+25b3,u+25b7,u+25bd,u+25c1,u+25ca,u+25cc,u+25fb,u+266d-266f,u+27c0-27ff,u+2900-2aff,u+2b0e-2b11,u+2b30-2b4c,u+2bfe,u+3030,u+ff5b,u+ff5d,u+1d400-1d7ff,u+1ee??}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/36008747766f78c6-s.woff2) format("woff2");unicode-range:u+0001-000c,u+000e-001f,u+007f-009f,u+20dd-20e0,u+20e2-20e4,u+2150-218f,u+2190,u+2192,u+2194-2199,u+21af,u+21e6-21f0,u+21f3,u+2218-2219,u+2299,u+22c4-22c6,u+2300-243f,u+2440-244a,u+2460-24ff,u+25a0-27bf,u+28??,u+2921-2922,u+2981,u+29bf,u+29eb,u+2b??,u+4dc0-4dff,u+fff9-fffb,u+10140-1018e,u+10190-1019c,u+101a0,u+101d0-101fd,u+102e0-102fb,u+10e60-10e7e,u+1d2c0-1d2d3,u+1d2e0-1d37f,u+1f0??,u+1f100-1f1ae,u+1f1e6-1f1ff,u+1f30d-1f30f,u+1f315,u+1f31c,u+1f31e,u+1f320-1f32c,u+1f336,u+1f378,u+1f37d,u+1f382,u+1f393-1f39f,u+1f3a7-1f3a8,u+1f3ac-1f3af,u+1f3c2,u+1f3c4-1f3c6,u+1f3ca-1f3ce,u+1f3d4-1f3e0,u+1f3ed,u+1f3f1-1f3f3,u+1f3f5-1f3f7,u+1f408,u+1f415,u+1f41f,u+1f426,u+1f43f,u+1f441-1f442,u+1f444,u+1f446-1f449,u+1f44c-1f44e,u+1f453,u+1f46a,u+1f47d,u+1f4a3,u+1f4b0,u+1f4b3,u+1f4b9,u+1f4bb,u+1f4bf,u+1f4c8-1f4cb,u+1f4d6,u+1f4da,u+1f4df,u+1f4e3-1f4e6,u+1f4ea-1f4ed,u+1f4f7,u+1f4f9-1f4fb,u+1f4fd-1f4fe,u+1f503,u+1f507-1f50b,u+1f50d,u+1f512-1f513,u+1f53e-1f54a,u+1f54f-1f5fa,u+1f610,u+1f650-1f67f,u+1f687,u+1f68d,u+1f691,u+1f694,u+1f698,u+1f6ad,u+1f6b2,u+1f6b9-1f6ba,u+1f6bc,u+1f6c6-1f6cf,u+1f6d3-1f6d7,u+1f6e0-1f6ea,u+1f6f0-1f6f3,u+1f6f7-1f6fc,u+1f700-1f80b,u+1f810-1f847,u+1f850-1f859,u+1f860-1f887,u+1f890-1f8ad,u+1f8b0-1f8bb,u+1f8c0-1f8c1,u+1f8d0-1f8d8,u+1f900-1f90b,u+1f93b,u+1f946,u+1f984,u+1f996,u+1f9e9,u+1fa00-1fa6f,u+1fa70-1fa7c,u+1fa80-1fac6,u+1fac8,u+1facc-1fadd,u+1fadf-1faeb,u+1faef-1fafa,u+1fb??}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/6d38f9d4e0f4772b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/08aedeceaf1dcd57-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/5c0c2bcbaa4149ca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lora Fallback;src:local("Times New Roman");ascent-override:87.33%;descent-override:23.78%;line-gap-override:0.00%;size-adjust:115.20%}.__className_c19f6d{font-family:Lora,Lora Fallback;font-style:normal}.__variable_c19f6d{--font-serif:"Lora","Lora Fallback"}