html,body,#root{min-height:100%}img{max-width:100%}[hidden]{display:none!important}:root{--ink:#000;--ink-2:#0b0906;--surface:#120e09;--surface-2:#1b150d;--gold:#e8c36b;--gold-2:#b68a3f;--gold-soft:#f3dc9e;--text:#f4ede0;--muted:#b4aa9c;--line:#b68a3f47;--line-strong:#e8c36b80;--success:#9fcf8f;--danger:#f0a08c;--serif:"Cormorant Garamond", Georgia, "Times New Roman", serif;--sans:Inter, system-ui, -apple-system, "Segoe UI", sans-serif;--radius:16px;--nav-h:60px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:17px}body{background:var(--ink);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:8px}h1,h2,h3,.serif{font-family:var(--serif);text-wrap:balance;font-variant-numeric:lining-nums;margin:0;font-weight:500;line-height:1.12}p{margin:0}.app{max-width:430px;min-height:100%;margin:0 auto;position:relative}.screen{padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));padding-block:14px calc(var(--nav-h) + env(safe-area-inset-bottom,0px) + 28px);flex-direction:column;gap:22px;display:flex}.screen.no-nav{padding-bottom:36px}.demo-bar{padding:10px max(16px, env(safe-area-inset-right,0px)) 10px max(16px, env(safe-area-inset-left,0px));border-bottom:1px solid var(--line);background:var(--ink-2);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:.78rem;display:flex}.demo-bar .switch{align-items:center;gap:8px;display:inline-flex}.demo-bar button{border:1px solid var(--line-strong);color:var(--gold);background:0 0;border-radius:999px;padding:6px 12px;font-size:.78rem;font-weight:600}.demo-bar button[aria-pressed=true]{background:#e8c36b26}.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-size:.68rem;font-weight:600}.muted{color:var(--muted)}.card{border:1px solid var(--line);border-radius:var(--radius);background:#120e09d9 linear-gradient(160deg,#e8c36b0f,#0000 45%)}.rays{background:radial-gradient(at 50% -10%,#f3dc9e8c,#0000 55%),repeating-conic-gradient(from 180deg at 50% -15%,#f3dc9e17 0deg 3deg,#0000 3deg 11deg),linear-gradient(#3a2c18 0%,#1d170f 70%)}.btn{border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 24px;font-size:1rem;font-weight:600;text-decoration:none;transition:transform .1s,filter .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:linear-gradient(90deg, var(--gold), var(--gold-2));color:var(--ink);box-shadow:0 10px 30px -12px #e8c36bb3}.btn-secondary{color:var(--gold);border:1px solid var(--line-strong);background:#0b090699}.btn-ghost{color:var(--muted);background:0 0}.btn-block{width:100%}.btn svg{flex-shrink:0;width:22px;height:22px}.back{border:1px solid var(--line-strong);min-height:34px;color:var(--gold);background:0 0;border-radius:999px;align-self:flex-start;align-items:center;gap:4px;padding:0 14px 0 10px;font-size:.875rem;font-weight:600;display:inline-flex}.back svg{width:16px;height:16px}.badge{white-space:nowrap;border:1px solid var(--line);color:var(--muted);background:#0b0906b3;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.78rem;font-weight:500;display:inline-flex}.badge svg{width:14px;height:14px}.badge.gold{color:var(--gold);border-color:var(--line-strong);background:#e8c36b1a}.badge.ok{color:var(--success);background:#9fcf8f1a;border-color:#9fcf8f66}.badge.bad{color:var(--danger);background:#f0a08c1a;border-color:#f0a08c66}.nav{z-index:20;-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line);width:min(100%,430px);padding:0 max(4px, env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0px) max(4px, env(safe-area-inset-left,0px));background:#0b0906f5;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav ul{height:var(--nav-h);grid-template-columns:repeat(5,1fr);margin:0;padding:0;list-style:none;display:grid}.nav li{position:relative}.nav :is(button,a){width:100%;height:100%;color:var(--muted);letter-spacing:.01em;opacity:.75;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.66rem;font-weight:500;display:flex}.nav :is(button,a) svg{width:20px;height:20px}.nav :is(button,a)[aria-current=page]{color:var(--gold);opacity:1}.nav li:has([aria-current=page]):before{content:"";background:var(--gold);border-radius:0 0 2px 2px;width:18px;height:2px;margin-left:-9px;position:absolute;top:0;left:50%}.auth{flex-direction:column;justify-content:center;min-height:100vh;display:flex}.auth .card{flex-direction:column;gap:18px;padding:32px 22px;display:flex;box-shadow:0 0 0 1px #e8c36b1f,0 18px 50px -20px #e8c36b40}.lessons{grid-template-columns:repeat(3,1fr);gap:18px 10px;display:grid}.lesson{text-align:center;background:0 0;border:0;flex-direction:column;gap:8px;min-width:0;padding:0;display:flex}.lesson .sq{aspect-ratio:1;border:1px solid var(--line);border-radius:12px;position:relative;overflow:hidden}.lesson .sq .cover-art span{font-size:2.6rem}.lesson .sq .cover-art:before{border-radius:8px;inset:7px}.lesson .tick{z-index:2;width:28px;height:28px;color:var(--success);background:#000000d9;border-radius:50%;place-items:center;display:grid;position:absolute;top:6px;right:6px;box-shadow:inset 0 0 0 1px #9fcf8f80}.lesson .tick svg{width:17px;height:17px}.lesson .shade{z-index:2;color:var(--gold);background:#0000008c;place-items:center;display:grid;position:absolute;inset:0}.lesson .shade svg{width:24px;height:24px}.lesson .act{color:var(--gold);white-space:nowrap;justify-content:center;align-items:center;gap:4px;font-size:.82rem;font-weight:600;display:inline-flex}.lesson .act svg{width:13px;height:13px}.lesson .num{letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;font-weight:600}.tabs{border:1px solid var(--line);background:var(--ink-2);border-radius:999px;grid-template-columns:1fr 1fr;padding:5px;display:grid}.tabs button{min-height:48px;color:var(--muted);background:0 0;border:0;border-radius:999px;font-weight:500}.tabs button[aria-selected=true]{background:var(--surface-2);color:var(--text);box-shadow:inset 0 0 0 1px var(--line-strong)}.field{flex-direction:column;gap:8px;display:flex}.field label{font-size:.95rem;font-weight:500}.input{border:1px solid var(--line);background:var(--ink-2);width:100%;min-height:54px;color:var(--text);border-radius:13px;padding:14px 16px;font-size:1rem}.input::placeholder{color:#b4aa9c99}.input:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #e8c36b38}textarea.input{resize:vertical;min-height:96px}.link{color:var(--gold);text-underline-offset:4px;background:0 0;border:0;padding:6px 0;font-weight:500;-webkit-text-decoration:underline #e8c36b66;text-decoration:underline #e8c36b66}.notice{border:1px solid var(--line-strong);color:var(--gold-soft);background:#e8c36b0f;border-radius:13px;padding:13px 15px;font-size:.95rem}.notice.ok{color:var(--success);background:#9fcf8f1a;border-color:#9fcf8f66}.legal{justify-content:center;gap:22px;font-size:.88rem;display:flex}.legal span{color:var(--muted)}.hero{border:1px solid var(--line-strong);border-radius:20px;position:relative;overflow:hidden}.hero:after{content:"";background:linear-gradient(0deg, var(--ink), #0000008c 55%, transparent);position:absolute;inset:0}.hero-in{z-index:1;flex-direction:column;gap:12px;padding:92px 22px 24px;display:flex;position:relative}.hero h1{font-size:2.15rem}.row{align-items:center;gap:16px;display:flex}.stat-card{padding:20px}.last-card{padding:12px}.thumb{aspect-ratio:1;border-radius:12px;flex-shrink:0;width:96px;overflow:hidden}.section-head{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.section-head h2{font-size:1.65rem}.text-link{min-height:44px;color:var(--gold);background:0 0;border:0;align-items:center;gap:6px;font-weight:600;display:inline-flex}.text-link svg{width:20px;height:20px}.grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.mcard{text-align:left;border:1px solid var(--line);flex-direction:column;padding:0;display:flex;overflow:hidden}.mcard:hover{border-color:var(--line-strong)}.mcard .cover{aspect-ratio:4/5;position:relative}.mcard .cover:after{content:"";background:linear-gradient(0deg, var(--ink), #0000004d 45%, transparent);position:absolute;inset:0}.mcard .meta{z-index:1;flex-direction:column;gap:2px;padding:12px;display:flex;position:absolute;bottom:0;left:0;right:0}.mcard .meta h3{font-size:1.3rem;font-style:italic}.mcard .foot{padding:11px 12px}.mnum{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-size:.68rem;font-weight:600}.lock-dot{z-index:2;border:1px solid var(--line-strong);width:38px;height:38px;color:var(--gold);background:#000000b3;border-radius:50%;place-items:center;display:grid;position:absolute;top:10px;right:10px}.lock-dot svg{width:17px;height:17px}.cover-art{place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.cover-img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.mcard.has-img .cover{aspect-ratio:1}.mcard.has-img .cover:after,.hero.has-img:after{content:none}.pbanner{aspect-ratio:16/11;border:1px solid var(--line-strong);background:var(--surface);text-align:left;width:100%;color:var(--text);border-radius:18px;padding:0;animation:2.4s ease-in-out infinite banner-pulse;display:block;position:relative;overflow:hidden}.pbanner img{object-fit:cover;object-position:right;width:100%;height:100%;position:absolute;inset:0}.pbanner:after{content:"";background:linear-gradient(90deg,#000000e6,#00000080 50%,#0000),linear-gradient(#0000 40%,#000000b3);position:absolute;inset:0}.pb-in{z-index:1;flex-direction:column;justify-content:flex-end;gap:8px;max-width:64%;padding:20px;display:flex;position:absolute;inset:0}.pb-in h2{font-size:1.75rem;line-height:1.1}.pb-in .btn{white-space:nowrap}.pb-in svg{width:20px;height:20px}@keyframes banner-pulse{0%,to{transform:scale(1);box-shadow:0 0 #e8c36b00}50%{transform:scale(1.025);box-shadow:0 0 34px 4px #e8c36b59}}@media (prefers-reduced-motion:reduce){.pbanner{animation:none}}.qopt{text-align:left;width:100%;min-height:64px;color:var(--ink);background:linear-gradient(180deg, var(--gold-soft), var(--gold) 45%, var(--gold-2));border:0;border-radius:13px;padding:16px 20px;font-size:1.05rem;font-weight:600;transition:transform .15s,box-shadow .15s;box-shadow:inset 0 2px 4px #ffffff8c,inset 0 -5px 12px #5a3c0f73,0 8px 20px -10px #e8c36bb3}.qopt:active,.qopt.picked{transform:scale(.98);box-shadow:inset 0 4px 14px #5a3c0f99,inset 0 -1px 2px #fff6}.quiz-bg{z-index:-1;pointer-events:none;background:linear-gradient(#000 0%,#120d05 45%,#4a3713 100%);position:fixed;inset:0}.quiz-screen{z-index:0;position:relative}.fade-step,.quiz-screen>div[style*=min-height\:60vh]{transition:opacity .3s;animation:.45s ease-out both fade-in-up}.fade-step.leaving{opacity:0}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.shine{isolation:isolate;position:relative;overflow:hidden}.shine:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffffa6,#0000);width:40%;animation:2.8s ease-in-out infinite shine-sweep;position:absolute;top:0;bottom:0;left:0}@keyframes shine-sweep{0%{transform:translate(-120%)skew(-20deg)}60%,to{transform:translate(260%)skew(-20deg)}}@media (prefers-reduced-motion:reduce){.shine:after,.fade-step{animation:none}}.bar span{background:linear-gradient(90deg, var(--gold), var(--gold-2));border-radius:999px;height:100%;transition:width .5s;display:block}.spinner{border:3px solid #e8c36b40;border-top-color:var(--gold);border-radius:50%;width:48px;height:48px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.pulse-cta{min-height:60px;font-size:1.08rem;font-weight:700;animation:2.4s ease-in-out infinite banner-pulse}.scroll-cta{left:50%;bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px) + 12px);z-index:30;white-space:normal;text-align:center;opacity:0;pointer-events:none;width:min(400px,100% - 48px);min-height:56px;padding:10px 22px;font-size:1.05rem;font-weight:700;line-height:1.25;transition:opacity .5s,transform .5s;position:fixed;transform:translate(-50%,24px);box-shadow:0 10px 40px -8px #000000e6}.scroll-cta.show{opacity:1;pointer-events:auto;animation:2.4s ease-in-out infinite cta-pulse;transform:translate(-50%)}@keyframes cta-pulse{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-50%)scale(1.02)}}.red-tag{color:#fff;text-align:center;text-transform:uppercase;letter-spacing:.03em;background:#b91c1c;border-radius:10px;margin:0 0 12px;padding:10px 14px;font-size:1rem;font-weight:700}.home-bleed{margin:-14px calc(-1 * max(16px, env(safe-area-inset-left,0px))) 0}.green-band{margin:-14px calc(-1 * max(16px, env(safe-area-inset-left,0px))) 8px;color:#fff;text-transform:uppercase;letter-spacing:.22em;background:#15803d;padding:10px 14px;font-size:.7rem;font-weight:700}.red-band{color:#fff;text-align:center;text-transform:uppercase;letter-spacing:.03em;background:#b91c1c;margin:0;padding:12px 14px;font-size:1.02rem;font-weight:700}.bleed-video{position:relative}.bleed-video .home-video-frame{background:#0b0906;border:0;border-radius:0}.bleed-video:after{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#000 92% 100%);height:calc(25% + 1px);position:absolute;bottom:-1px;left:0;right:0}.video-embed{isolation:isolate;border-radius:11px;overflow:hidden}.player .video-embed,.bleed-video .video-embed{border-radius:0}.home-hero{border:1px solid var(--line-strong);background:#000;border-radius:20px;overflow:hidden}.home-video{border-top:1px solid var(--line);padding:12px}.home-video-frame{aspect-ratio:16/9;border:1px dashed var(--line-strong);text-align:center;color:var(--gold);background:#070605;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px;display:flex}.home-video-frame svg{width:44px;height:44px}.home-video-frame span{color:var(--text);font-weight:600}.home-video-frame small{color:var(--muted);font-size:.78rem}.hero-img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.hero.has-img .hero-in{padding-top:18px}.cover-art:before{content:"";border:1px solid #e8c36b40;border-radius:12px;position:absolute;inset:12px}.cover-art span{font-family:var(--serif);color:#f3dc9ecc;text-shadow:0 0 25px #f3dc9e59;font-variant-numeric:lining-nums;font-size:4.6rem;line-height:1}.thumb .cover-art span{font-size:2.8rem}.thumb .cover-art:before{border-radius:8px;inset:7px}.plan-card{flex-wrap:wrap;align-items:center;gap:14px;padding:18px;display:flex}.plan-card-icon{width:44px;height:44px;color:var(--gold);background:#e8c36b24;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.plan-card-icon svg{width:22px;height:22px}.plan-card-body{flex-direction:column;flex:1 1 0;gap:3px;min-width:0;display:flex}.plan-card-title{font-weight:600;line-height:1.3}.plan-card-text{color:var(--muted);font-size:.88rem;line-height:1.4}.plan-card-btn{flex:1 0 100%;min-height:46px}.bar{background:var(--ink-2);height:10px;box-shadow:inset 0 0 0 1px var(--line);border-radius:999px;overflow:hidden}.bar i{background:linear-gradient(90deg, var(--gold-2), var(--gold));border-radius:999px;height:100%;transition:width .6s;display:block}.ring{flex-shrink:0;position:relative}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring b{font-family:var(--serif);font-variant-numeric:lining-nums;place-items:center;font-size:1.9rem;font-weight:500;display:grid;position:absolute;inset:0}.ring b small{color:var(--muted);font-size:1rem}.stats{grid-template-columns:repeat(3,1fr);gap:8px;width:100%;display:grid}.stats div{border:1px solid var(--line);text-align:center;background:#0b090699;border-radius:12px;padding:10px}.stats dt{color:var(--muted);font-size:.76rem}.stats dd{font-family:var(--serif);color:var(--gold);font-variant-numeric:lining-nums;margin:0;font-size:1.9rem}.path{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex;position:relative}.path:before{content:"";background:var(--line);width:1px;position:absolute;top:24px;bottom:24px;left:31px}.path :is(button,a){text-align:left;align-items:center;gap:14px;width:100%;padding:12px 14px;display:flex}.step{z-index:1;border:1px solid var(--line-strong);background:var(--ink-2);width:38px;height:38px;color:var(--gold);font-variant-numeric:tabular-nums;border-radius:50%;flex-shrink:0;place-items:center;font-size:.85rem;font-weight:600;display:grid;position:relative}.step.done{color:var(--success);background:#9fcf8f26;border-color:#9fcf8f99}.step svg{width:18px;height:18px}.grow{flex-direction:column;flex:1;align-items:flex-start;gap:4px;min-width:0;display:flex}.title-i{font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:1.45rem;font-style:italic;line-height:1.15;overflow:hidden}.chev{width:22px;height:22px;color:var(--gold);flex-shrink:0}.chips{scrollbar-width:none;gap:8px;margin:0 -16px;padding:0 16px 4px;display:flex;overflow-x:auto}.chips button{border:1px solid var(--line);min-height:44px;color:var(--muted);white-space:nowrap;background:0 0;border-radius:999px;flex-shrink:0;padding:0 18px;font-weight:500}.chips button[aria-selected=true]{border-color:var(--gold);color:var(--gold);background:#e8c36b26}.chips small{opacity:.7;margin-left:6px}.player{border-radius:var(--radius);border:1px solid var(--line-strong);overflow:hidden;box-shadow:0 0 0 1px #e8c36b1f,0 18px 50px -20px #e8c36b40}.player-in{aspect-ratio:16/9;text-align:center;place-items:center;max-width:100%;display:grid;position:relative}.player-in .circle{border:1px solid var(--line-strong);width:62px;height:62px;color:var(--gold);background:#00000080;border-radius:50%;place-items:center;margin:0 auto 10px;display:grid}.player-in .circle svg{width:26px;height:26px}.play{background:linear-gradient(135deg, var(--gold), var(--gold-2));width:76px;height:76px;color:var(--ink);border:0;border-radius:50%;place-items:center;display:grid;box-shadow:0 0 40px #e8c36b80}.play svg{width:34px;height:34px;margin-left:4px}.side{flex-direction:column;gap:16px;padding:20px;display:flex}.material{text-align:left;align-items:center;gap:14px;width:100%;min-height:64px;padding:14px 18px;display:flex}.material svg{width:22px;height:22px;color:var(--gold);flex-shrink:0}.pager{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:10px;padding-top:20px;display:grid}.pager :is(button,a){text-align:left;align-items:center;gap:8px;min-width:0;min-height:64px;padding:10px 14px;display:flex}.pager :is(button,a).next{text-align:right;grid-column:2;justify-content:flex-end}.pager small{color:var(--muted);font-size:.76rem;display:block}.pager span.t{text-overflow:ellipsis;white-space:nowrap;font-weight:500;display:block;overflow:hidden}.pager svg{width:20px;height:20px;color:var(--gold);flex-shrink:0}.locked{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:44px 22px;display:flex;position:relative;overflow:hidden}.locked .rays{opacity:.4;position:absolute;inset:0}.locked>*{position:relative}.menu{padding:4px 18px}.menu :is(button,a){border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:14px;width:100%;min-height:56px;font-weight:500;display:flex}.menu :is(button,a):last-child{border-bottom:0}.menu svg{width:20px;height:20px;color:var(--gold)}.menu svg.chev{color:var(--muted)}.sec{flex-direction:column;gap:14px;padding:22px 20px;display:flex}.sec h2{color:var(--gold);font-size:1.6rem}.adm{align-items:center;gap:12px;padding:12px 14px;display:flex}.adm .badges{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.edit{border:1px solid var(--line-strong);min-height:44px;color:var(--gold);background:0 0;border-radius:999px;flex-shrink:0;padding:0 16px;font-weight:600}select.input{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--gold) 50%), linear-gradient(135deg, var(--gold) 50%, transparent 50%);background-position:calc(100% - 22px),calc(100% - 16px);background-repeat:no-repeat;background-size:6px 6px;padding-right:40px}.check{border:1px solid var(--line);background:#0b090699;border-radius:13px;align-items:flex-start;gap:12px;padding:14px;display:flex}.check input{width:20px;height:20px;accent-color:var(--gold);margin-top:3px}.hint{color:var(--muted);font-size:.88rem}.pass-rule{align-items:center;gap:6px;margin-top:-6px;transition:color .2s;display:flex}.pass-rule svg{opacity:.4;width:16px;height:16px;transition:opacity .2s}.pass-rule.ok{color:var(--success)}.pass-rule.ok svg{opacity:1}.password-input{position:relative}.password-input .input{padding-right:52px}.password-eye{width:52px;height:100%;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:0 13px 13px 0;place-items:center;display:grid;position:absolute;top:0;right:0}.password-eye:hover,.password-eye[aria-pressed=true]{color:var(--gold)}.password-eye svg{width:20px;height:20px}.err{color:var(--danger);font-size:.9rem}.chat{min-height:100vh;padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex}.chat-head{top:env(safe-area-inset-top,0px);z-index:5;padding:12px max(16px, env(safe-area-inset-right,0px)) 12px max(16px, env(safe-area-inset-left,0px));border-bottom:1px solid var(--line);background:#0b0906f7;align-items:center;gap:12px;display:flex;position:sticky}.chat-head .backbtn{width:44px;height:44px;color:var(--text);background:0 0;border:0;place-items:center;display:grid}.chat-head .backbtn svg{width:24px;height:24px}.av{border:1px solid var(--line-strong);background:var(--surface-2);width:48px;height:48px;font-family:var(--serif);color:var(--gold);border-radius:50%;flex-shrink:0;place-items:center;font-size:1.4rem;display:grid;position:relative}.av.sm{width:36px;height:36px;font-size:1.05rem}.av .on{background:var(--success);border:2px solid var(--ink-2);border-radius:50%;width:13px;height:13px;position:absolute;bottom:0;right:0}.msgs{padding:18px max(16px, env(safe-area-inset-right,0px)) 18px max(16px, env(safe-area-inset-left,0px));flex-direction:column;flex:1;gap:14px;display:flex}.ai-note{text-align:center;color:var(--muted);border:1px solid var(--line);border-radius:10px;align-self:center;width:100%;max-width:380px;padding:5px 12px;font-size:.66rem;line-height:1.4}.b-row{align-items:flex-end;gap:8px;display:flex}.b-row.me{justify-content:flex-end}.bubble{white-space:pre-wrap;border-radius:16px;max-width:82%;padding:12px 16px;font-size:1.02rem}.bubble.ai{border:1px solid var(--line);background:#120e09e6;border-bottom-left-radius:8px}.bubble.me{background:linear-gradient(135deg, var(--gold), var(--gold-2));color:var(--ink);border-bottom-right-radius:8px}.composer{bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));padding:12px max(12px, env(safe-area-inset-right,0px)) 12px max(12px, env(safe-area-inset-left,0px));border-top:1px solid var(--line);background:#0b0906f7;align-items:flex-end;gap:8px;display:flex;position:sticky}.composer textarea{resize:none;border-radius:20px;flex:1;min-height:54px;max-height:140px}.send{background:linear-gradient(135deg, var(--gold), var(--gold-2));width:54px;height:54px;color:var(--ink);border:0;border-radius:50%;flex-shrink:0;place-items:center;display:grid;box-shadow:0 0 24px #e8c36b66}.send svg{width:24px;height:24px}.typing{color:var(--muted);font-style:italic}@media (prefers-reduced-motion:reduce){*{transition:none!important}}a.btn,a.card,a.lesson,a.back,.nav a,.menu a,.pager a,.path a{color:inherit;text-decoration:none}a.btn-primary{color:var(--ink)}a.btn-secondary,a.back{color:var(--gold)}.lesson,.mcard{cursor:pointer}button:disabled{opacity:.55;cursor:default}.rows,.lrows{flex-direction:column;gap:10px;display:flex}.mrow,.prow{color:inherit;border:1px solid var(--line);align-items:center;gap:14px;padding:10px 14px 10px 10px;text-decoration:none;display:flex}.mrow:hover,.prow:hover{border-color:var(--line-strong)}.mrow-thumb,.prow-thumb,.lrow-thumb{border:1px solid var(--line);aspect-ratio:1;border-radius:10px;flex-shrink:0;position:relative;overflow:hidden}.mrow-thumb{width:76px}.prow-thumb{width:92px}.mrow-thumb .cover-art span,.lrow-thumb .cover-art span{font-size:1.9rem}.mrow-thumb .cover-art:before,.prow-thumb .cover-art:before,.lrow-thumb .cover-art:before{border-radius:7px;inset:5px}.mrow-thumb .shade,.lrow-thumb .shade{color:var(--gold);background:#0000008c;place-items:center;display:grid;position:absolute;inset:0}.mrow-thumb .shade svg,.lrow-thumb .shade svg{width:20px;height:20px}.mrow-body,.prow-body,.lrow-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.mrow-title{font-size:1.3rem;font-style:italic;line-height:1.15}.mrow-progress{color:var(--muted);flex-direction:column;gap:5px;margin-top:2px;font-size:.78rem;display:flex}.mrow-progress .bar{height:4px}.mrow .chev{width:18px;height:18px;color:var(--gold);opacity:.7;flex-shrink:0}.prow-title{font-family:var(--serif);color:var(--text);font-size:1.35rem;font-weight:600;line-height:1.15}.prow-desc{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.82rem;display:-webkit-box;overflow:hidden}.prow-unlock{background:linear-gradient(90deg, var(--gold), var(--gold-2));color:var(--ink);border-radius:999px;align-self:flex-start;align-items:center;gap:5px;margin-top:4px;padding:5px 12px;font-size:.78rem;font-weight:700;display:inline-flex}.prow-unlock svg{width:13px;height:13px}.lrow{border:1px solid var(--line);background:var(--surface);color:inherit;border-radius:12px;align-items:center;gap:12px;padding:8px 12px 8px 8px;text-decoration:none;display:flex}.lrow:hover{border-color:var(--line-strong)}.lrow-thumb{border-radius:8px;width:56px}.lrow-title{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:500;line-height:1.25;overflow:hidden}.lrow-act{color:var(--gold);flex-shrink:0;align-items:center;gap:4px;font-size:.8rem;font-weight:600;display:inline-flex}.lrow-act.done{color:var(--success)}.lrow-act svg{width:14px;height:14px}.pcard-foot{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.pcard .prow-title{font-size:1.15rem}.pcard .prow-unlock{margin-top:0}html.no-nav{--nav-h:0px}.bleed-video.playing:after{opacity:0}.bleed-video:after{transition:opacity .4s}.grid .mcard .foot{flex:1}.grid .mcard .foot>.badge{margin-top:auto}:root{--ease-out:cubic-bezier(.22, 1, .36, 1)}::view-transition-old(root){animation-duration:.34s;animation-timing-function:var(--ease-out)}::view-transition-new(root){animation-duration:.34s;animation-timing-function:var(--ease-out)}html:active-view-transition-type(forward)::view-transition-old(root){animation-name:vt-out-left}html:active-view-transition-type(forward)::view-transition-new(root){animation-name:vt-in-right}html:active-view-transition-type(back)::view-transition-old(root){animation-name:vt-out-right}html:active-view-transition-type(back)::view-transition-new(root){animation-name:vt-in-left}html:active-view-transition-type(fade)::view-transition-old(root){animation-name:vt-fade-out;animation-duration:.16s}html:active-view-transition-type(fade)::view-transition-new(root){animation-name:vt-fade-in;animation-duration:.28s}.nav{view-transition-name:bottom-nav}@keyframes vt-out-left{to{opacity:0;transform:translate(-28px)}}@keyframes vt-in-right{0%{opacity:0;transform:translate(36px)}}@keyframes vt-out-right{to{opacity:0;transform:translate(28px)}}@keyframes vt-in-left{0%{opacity:0;transform:translate(-36px)}}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0;transform:translateY(6px)}}.grid>*,.rows>*,.lrows>*{animation:rise-in .45s var(--ease-out) both}.grid>:nth-child(2),.rows>:nth-child(2),.lrows>:nth-child(2){animation-delay:40ms}.grid>:nth-child(3),.rows>:nth-child(3),.lrows>:nth-child(3){animation-delay:80ms}.grid>:nth-child(4),.rows>:nth-child(4),.lrows>:nth-child(4){animation-delay:.12s}.grid>:nth-child(5),.rows>:nth-child(5),.lrows>:nth-child(5){animation-delay:.16s}.grid>:nth-child(6),.rows>:nth-child(6),.lrows>:nth-child(6){animation-delay:.2s}.grid>:nth-child(n+7),.rows>:nth-child(n+7),.lrows>:nth-child(n+7){animation-delay:.24s}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}}.mcard,.lrow,.mrow,.pbanner,.material,.pager :is(a,button),.menu :is(a,button),.back,.backbtn{transition:transform .18s var(--ease-out), border-color .2s, background-color .2s, box-shadow .25s}:is(.mcard,.lrow,.mrow,.material,.pager :is(a,button)):active{transform:scale(.975)}.pbanner:active{transform:scale(.985)}:is(.back,.backbtn):active{transform:scale(.94)}.menu :is(a,button):active{background-color:#e8c36b0f}@media (hover:hover){:is(.mcard,.mrow,.material):hover{transform:translateY(-2px);box-shadow:0 14px 30px -18px #e8c36b59}.lrow:hover{transform:translate(2px)}}.cover-img{opacity:0;transition:opacity .5s}.cover-img.loaded{opacity:1}.nav :is(button,a){transition:color .2s,opacity .2s}.nav :is(button,a)[aria-current=page] svg{animation:nav-pop .4s var(--ease-out)}.nav li:has([aria-current=page]):before{animation:nav-bar .35s var(--ease-out)}.nav :is(button,a):active svg{transition:transform .12s;transform:scale(.88)}@keyframes nav-pop{40%{transform:scale(1.18)translateY(-1px)}}@keyframes nav-bar{0%{transform:scaleX(0)}}.scroll-cta.show{animation:cta-in .5s var(--ease-out) both, cta-pulse 2.4s ease-in-out .5s infinite}@keyframes cta-in{0%{opacity:0;transform:translate(-50%,24px)}}.btn[aria-pressed=true] svg{animation:done-pop .5s var(--ease-out)}@keyframes done-pop{0%{opacity:0;transform:scale(.4)}60%{transform:scale(1.25)}}.spinner.delayed{animation:1s linear infinite spin,.3s .25s both appear}@keyframes appear{0%{opacity:0}}.b-row{animation:rise-in .4s var(--ease-out) both}@media (prefers-reduced-motion:reduce){.grid>*,.rows>*,.lrows>*,.b-row,.nav :is(button,a)[aria-current=page] svg,.btn[aria-pressed=true] svg{animation:none!important}::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}.nav li:has([aria-current=page]):before{animation:none!important}.cover-img{opacity:1;transition:none}:is(.mcard,.lrow,.mrow,.pbanner,.material,.back,.backbtn):is(:active,:hover){transform:none!important}}.badge.danger{color:var(--danger);background:#f0a08c1a;border-color:#f0a08c73}.pay-alert{animation:rise-in .45s var(--ease-out) both;background:linear-gradient(135deg,#f0a08c24,#f0a08c0d);border:1px solid #f0a08c73;border-radius:13px;flex-wrap:wrap;align-items:center;gap:12px 14px;padding:14px 16px;display:flex}.pay-alert-icon{width:40px;height:40px;color:var(--danger);background:#f0a08c26;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.pay-alert-icon svg{width:20px;height:20px}.pay-alert-title{color:var(--text);font-weight:600}.pay-alert-text{color:var(--muted);font-size:.86rem}.pay-alert-btn{flex:1 0 100%;min-height:42px;padding:0 18px;font-size:.92rem}.sub-card{flex-direction:column;gap:18px;padding:20px;display:flex}.sub-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sub-head .eyebrow{margin-bottom:6px}.sub-plan{font-family:var(--serif);font-size:1.6rem;line-height:1.1}.sub-facts{grid-template-columns:1fr 1fr;gap:8px;margin:0;display:grid}.sub-facts div{border:1px solid var(--line);background:#0b090699;border-radius:12px;padding:10px 12px}.sub-facts div:last-child:nth-child(odd){grid-column:1/-1}.sub-facts dt{color:var(--muted);font-size:.74rem}.sub-facts dd{margin:2px 0 0;font-size:.98rem;font-weight:600}.sub-actions{flex-wrap:wrap;gap:8px;display:flex}.sub-actions .btn{min-height:44px;padding:0 18px;font-size:.92rem}.sub-actions .btn svg{width:15px;height:15px}.sub-cancel{color:var(--muted);text-underline-offset:3px;align-self:flex-start;font-size:.82rem;text-decoration:underline}.sub-h2{color:var(--gold);font-size:1.35rem}.sub-history{padding:4px 16px}.sub-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:13px 0;font-size:.92rem;display:flex}.sub-row:last-child{border-bottom:0}.sub-row strong{font-variant-numeric:tabular-nums}.plans{flex-direction:column;gap:14px;display:flex}.plan{animation:rise-in .45s var(--ease-out) both;flex-direction:column;gap:10px;padding:22px 20px 20px;display:flex;position:relative}.plan+.plan{animation-delay:60ms}.plan.featured{border-color:var(--line-strong);box-shadow:0 0 0 1px #e8c36b2e,0 22px 50px -24px #e8c36b73}.plan-flag{background:linear-gradient(90deg, var(--gold), var(--gold-2));color:var(--ink);letter-spacing:.04em;border-radius:999px;padding:3px 11px;font-size:.72rem;font-weight:700;position:absolute;top:-11px;right:18px}.plan-name{font-size:1.65rem;line-height:1.1}.plan-price{font-family:var(--serif);color:var(--gold);font-size:1.5rem}.plan-benefits{flex-direction:column;gap:7px;margin:2px 0 6px;padding:0;font-size:.92rem;list-style:none;display:flex}.plan-benefits li{align-items:flex-start;gap:8px;display:flex}.plan-benefits svg{width:16px;height:16px;color:var(--success);flex-shrink:0;margin-top:2px}.plan .btn[aria-disabled=true]{opacity:.7;pointer-events:none}.ring b span{align-items:baseline;gap:1px;line-height:1;display:inline-flex}.stats div{flex-direction:column;justify-content:space-between;gap:4px;display:flex}.stats dd{line-height:1.1}.chat-locked{color:var(--muted);align-items:center;font-size:.9rem}.chat-locked>svg{width:22px;height:22px;color:var(--gold);flex-shrink:0}.chat-locked .btn{min-height:42px;padding:0 18px;font-size:.9rem}.home-bleed{position:relative}.bell-btn{border:1px solid var(--line-strong);width:44px;height:44px;color:var(--gold);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000008c;border-radius:50%;flex-shrink:0;place-items:center;display:grid;position:relative}.bell-btn.floating{z-index:2;top:calc(12px + env(safe-area-inset-top,0px));right:max(16px, env(safe-area-inset-right,0px));position:absolute}.bell-btn svg{width:21px;height:21px}.bell-dot{background:var(--gold);min-width:19px;height:19px;color:var(--ink);text-align:center;border-radius:10px;padding:0 5px;font-size:.7rem;font-weight:700;line-height:19px;position:absolute;top:-3px;right:-3px}.notif{text-align:left;width:100%;color:inherit;font:inherit;align-items:center;gap:14px;padding:14px 16px;display:flex}button.notif{cursor:pointer}.notif.unread{border-color:var(--line-strong);background-image:linear-gradient(160deg,#e8c36b24,#0000 55%)}.notif-img{object-fit:cover;border-radius:10px;flex-shrink:0;width:56px;height:56px}.notif-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.notif-top{align-items:flex-start;gap:12px;display:flex}.notif-title{overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;font-weight:600;display:-webkit-box;overflow:hidden}.notif-title .notif-new{vertical-align:2px;margin-left:8px}button.notif:has(.notif-body) .notif-top{margin-right:-36px}button.notif:has(.notif-body)>.chev{align-self:center;margin-top:calc(1.5rem + 4px)}.notif-top .notif-time{white-space:nowrap;flex-shrink:0;line-height:1.5rem}.notif-new{text-transform:uppercase;letter-spacing:.06em;color:var(--ink);background:var(--gold);border-radius:6px;flex-shrink:0;padding:2px 6px;font-size:.7rem;font-weight:700}.notif-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.92rem}.notif-time{color:var(--muted);font-size:.8rem}.pref-row{cursor:pointer;align-items:center;gap:14px;display:flex}.pref-row .grow{flex-direction:column;gap:2px;display:flex}.pref-label{font-weight:600}input.switch{appearance:none;border:1px solid var(--line-strong);cursor:pointer;background:#ffffff14;border-radius:14px;flex-shrink:0;width:48px;height:28px;margin:0;transition:background .2s;position:relative}input.switch:after{content:"";background:var(--muted);border-radius:50%;width:20px;height:20px;transition:transform .2s,background .2s;position:absolute;top:3px;left:3px}input.switch:checked{background:var(--gold-2)}input.switch:checked:after{background:var(--ink);transform:translate(20px)}input.switch:disabled{opacity:.5;cursor:default}.welcome{gap:22px}.brand-logo{width:min(116px,36%);height:auto;margin:4px auto 6px;display:block}.welcome-card h1{font-size:2rem}.welcome-card .check a{color:var(--gold)}.welcome-bell{border:1px solid var(--line-strong);width:64px;height:64px;color:var(--gold);border-radius:50%;place-items:center;margin:0 auto;display:grid}.welcome-bell svg{width:28px;height:28px}.perm-hint{z-index:100;pointer-events:none;background:#0000008c;animation:.25s both vt-fade-in;position:fixed;inset:0}.perm-hint-bubble{border:1px solid var(--line-strong);background:var(--ink-2);border-radius:14px;flex-direction:column;gap:4px;max-width:280px;padding:14px 16px;display:flex;position:absolute;box-shadow:0 18px 40px -16px #000c}.perm-hint-title{color:var(--gold);font-weight:600}.perm-hint-text{color:var(--muted);font-size:.88rem}.perm-hint-arrow{fill:none;width:34px;height:34px;stroke:var(--gold);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px #e8c36b8c);position:absolute}.perm-hint--desktop .perm-hint-bubble{top:64px;left:64px}.perm-hint--desktop .perm-hint-arrow{animation:1.1s ease-in-out infinite perm-nudge-up;top:-48px;left:18px;transform:rotate(-20deg)}.perm-hint--safari-mac .perm-hint-bubble{text-align:center;top:64px;left:50%;transform:translate(-50%)}.perm-hint--safari-mac .perm-hint-arrow{animation:1.1s ease-in-out infinite perm-nudge-up;top:-48px;left:calc(50% - 17px)}.perm-hint--android .perm-hint-bubble{text-align:center;align-items:center;max-width:none;top:22%;left:16px;right:16px}.perm-hint--android .perm-hint-arrow{order:3;margin-top:6px;animation:1.1s ease-in-out infinite perm-nudge-down;position:static;transform:rotate(180deg)}@keyframes perm-nudge-up{50%{translate:0 -8px}}@keyframes perm-nudge-down{50%{translate:0 8px}}@media (prefers-reduced-motion:reduce){.perm-hint-arrow{animation:none!important}}.video-facade{cursor:pointer;background:radial-gradient(120% 90% at 50% 40%,#1c1710 0%,#000 70%);border:0;width:100%;padding:0;display:block;position:relative}.video-facade img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .35s;position:absolute;inset:0}.video-facade img.loaded{opacity:1}.video-facade:after{content:"";pointer-events:none;background:linear-gradient(#0000 40%,#00000073 100%);position:absolute;inset:0}.video-facade-play{z-index:1;width:64px;height:64px;color:var(--ink);background:linear-gradient(135deg, var(--gold-soft), var(--gold) 55%, var(--gold-2));transition:transform .2s var(--ease-out);border-radius:50%;place-items:center;margin:-32px 0 0 -32px;display:grid;position:absolute;top:50%;left:50%;box-shadow:0 10px 30px -8px #e8c36bb3}.video-facade-play svg{fill:currentColor;width:26px;height:26px;margin-left:3px}.video-facade:hover .video-facade-play,.video-facade:focus-visible .video-facade-play{transform:scale(1.08)}.video-facade:active .video-facade-play{transform:scale(.94)}.push-row{border:1px solid var(--line);background:var(--ink-2);cursor:pointer;border-radius:14px;align-items:center;gap:14px;padding:14px;transition:border-color .2s,background .2s;display:flex}.push-row .grow{flex-direction:column;gap:2px;display:flex}.push-row.on{border-color:var(--line-strong);background:linear-gradient(135deg,#e8c36b1a,#e8c36b05)}.push-icon{width:40px;height:40px;color:var(--muted);background:#ffffff0a;border-radius:50%;flex-shrink:0;place-items:center;transition:color .2s,background .2s;display:grid}.push-row.on .push-icon{color:var(--gold);background:#e8c36b24}.push-icon svg{width:20px;height:20px}.push-note{color:var(--muted);align-items:flex-start;gap:8px;font-size:.86rem;display:flex}.push-note svg{opacity:.7;flex-shrink:0;width:16px;height:16px;margin-top:2px}.push-note.on svg{color:var(--gold);opacity:1}.push-note.bad svg{color:var(--danger);opacity:1}.danger-card{border-color:#f0a08c4d}.danger-card h2{color:var(--danger)}.danger-confirm{flex-direction:column;gap:14px;display:flex}.danger-actions{flex-wrap:wrap;gap:10px;display:flex}.btn-danger{color:var(--danger);background:0 0;border:1px solid #f0a08c73}.btn-danger:hover:not(:disabled){background:#f0a08c1a}.btn-danger:disabled{opacity:.5}.push-unblock{border:1px solid var(--line);background:#ffffff08;border-radius:12px;flex-direction:column;gap:6px;padding:14px 16px;font-size:.88rem;line-height:1.45;display:flex}.push-unblock-title{color:var(--gold);font-weight:600}
