@font-face{font-family:League Spartan;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8bf306ca80378054-s.0wrvhjkynj2h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:League Spartan;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/d33cd7f74dcc750d-s.3n9die0f0oztg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:League Spartan;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7a514bda021b6b92-s.p.0bzcjdl2q1bg1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:League Spartan Fallback;src:local(Arial);ascent-override:75.47%;descent-override:23.72%;line-gap-override:0.0%;size-adjust:92.75%}.league_spartan_2c4a6785-module__DHKeKG__className{font-family:League Spartan,League Spartan Fallback;font-style:normal}.league_spartan_2c4a6785-module__DHKeKG__variable{--font-league-spartan:"League Spartan", "League Spartan Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-md:.375rem;--radius-lg:.5rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.relative{position:relative}.block{display:block}.hidden{display:none}.table{display:table}.italic{font-style:italic}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--brand:#820d4b;--brand-bright:#7e0d82;--brand-deep:#3b0764;--bg:#08070b;--bg-elevated:#111016;--card:#17131f;--card-strong:#1d1726;--card-stronger:#251b30;--text:#fff;--soft-white:#f5f3f7;--muted:#b9b4c2;--line:#ffffff1c;--line-strong:#fff3;--accent:#9d2477;--vivid-pink:#ff4f99;--accent-dark:#d58abb;--accent-soft:#820d4b33;--success:#72d9a1;--warning:#f0bd74;--danger:#ff8e9e;--shadow:0 28px 80px #0000006b;--shadow-soft:0 16px 42px #00000047;--radius-sm:12px;--radius-md:20px;--radius-lg:30px;--container:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{min-height:100vh;font-family:var(--font-league-spartan), sans-serif;color:var(--text);background:radial-gradient(circle at 8% 3%, #820d4b38, transparent 24rem), radial-gradient(circle at 92% 22%, #3b07642e, transparent 28rem), var(--bg);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}body:before{content:"";pointer-events:none;opacity:.025;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit}button,input,textarea{font:inherit}button:disabled{cursor:not-allowed;opacity:.48}h1,h2,h3{font-family:var(--font-league-spartan), sans-serif;letter-spacing:-.045em;margin:0;font-weight:700}h1{font-size:clamp(3rem,6vw,6.1rem);line-height:.98}h2{font-size:clamp(2.2rem,4.5vw,4.25rem);line-height:1.02}h3{font-size:1.35rem;line-height:1.12}p{text-wrap:pretty}:focus-visible{outline-offset:4px;outline:3px solid #d68ac7}::selection{color:#fff;background:#a42b76}.text-highlight{color:var(--vivid-pink)}.skip-link{z-index:100;color:#08070b;background:#fff;border-radius:10px;padding:12px 16px;font-weight:700;position:fixed;top:-100px;left:18px}.skip-link:focus{top:14px}.eyebrow,.section-kicker{color:#e09ac6;letter-spacing:.18em;text-transform:uppercase;margin:0 0 14px;font-size:.76rem;font-weight:800}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
:root{--brand:#820d4b;--brand-bright:#7e0d82;--brand-deep:#3b0764;--bg:#08070b;--bg-elevated:#111016;--card:#17131f;--card-strong:#1d1726;--card-stronger:#251b30;--text:#fff;--soft-white:#f5f3f7;--muted:#b9b4c2;--line:#ffffff1c;--line-strong:#fff3;--accent:#9d2477;--vivid-pink:#ff4f99;--accent-dark:#d58abb;--accent-soft:#820d4b33;--success:#72d9a1;--warning:#f0bd74;--danger:#ff8e9e;--shadow:0 28px 80px #0000006b;--shadow-soft:0 16px 42px #00000047;--radius-sm:12px;--radius-md:20px;--radius-lg:30px;--container:1240px}
.page-shell{width:min(1080px,100% - 40px);margin:0 auto;padding:34px 0 80px}.lesson-page{position:relative}.card{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);background:linear-gradient(145deg,#1d1726f0,#111016f5);margin-bottom:22px;padding:clamp(24px,4vw,38px);position:relative;overflow:hidden}.card:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);height:1px;position:absolute;top:0;left:32px;right:32px}.section-heading{max-width:760px}.section-heading h2{font-size:clamp(1.65rem,3vw,2.45rem)}.section-note,.hero-text{color:var(--muted);margin:11px 0 0;font-size:1rem;line-height:1.65}.hero-subtle{max-width:44rem}.activity-layout{grid-template-columns:minmax(240px,320px) 1fr;gap:24px;margin-top:28px;display:grid}
.site-header{z-index:50;-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%);background:#08070bd1;border-bottom:1px solid #ffffff12;position:sticky;top:0}.nav-shell{width:min(var(--container), calc(100% - 40px));justify-content:space-between;align-items:center;gap:36px;min-height:76px;margin:0 auto;display:flex}.brand-mark{color:#fff;font-family:var(--font-league-spartan);letter-spacing:-.03em;white-space:nowrap;align-items:center;gap:11px;font-weight:500;text-decoration:none;display:inline-flex}.brand-mark strong{font-weight:750}.brand-logo{object-fit:cover;border:1px solid #ffffff21;border-radius:11px;flex:none;width:38px;height:38px;box-shadow:0 7px 24px #820d4b61}.nav-panel{flex:1;justify-content:space-between;align-items:center;gap:30px;display:flex}.main-nav,.nav-actions{align-items:center;gap:26px;display:flex}.main-nav a{color:var(--muted);font-size:.93rem;font-weight:600;text-decoration:none;transition:color .18s}.main-nav a:hover{color:var(--vivid-pink)}.nav-login{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:8px 0;font-weight:700}.nav-login:hover{color:var(--vivid-pink)}.nav-login:disabled{cursor:wait;opacity:.65}.nav-auth{flex:none;position:relative}.nav-user{align-items:center;gap:12px;display:flex}.nav-user span{max-width:150px;color:var(--soft-white);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:700;overflow:hidden}.nav-login-popover{z-index:70;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#17131ffa;border:1px solid #ffffff21;border-radius:16px;width:min(320px,100vw - 32px);padding:18px;position:absolute;top:calc(100% + 16px);right:-16px;box-shadow:0 22px 55px #00000075,0 0 35px #820d4b24}.nav-login-popover:before{content:"";background:#17131f;border-top:1px solid #ffffff21;border-left:1px solid #ffffff21;width:12px;height:12px;position:absolute;top:-7px;right:28px;transform:rotate(45deg)}.nav-login-popover__title{color:var(--soft-white);margin:0 0 12px;font-size:.94rem;font-weight:800}.nav-login-popover__benefit{color:var(--muted);margin:-5px 0 12px;font-size:.78rem;line-height:1.4}.nav-email-login{gap:10px;display:grid}.nav-email-login input{box-sizing:border-box;border:1px solid var(--line);color:#fff;width:100%;min-height:42px;font:inherit;background:#0f0c14;border-radius:10px;padding:0 12px}.nav-email-login input:focus{border-color:var(--vivid-pink);outline:2px solid #e22f8b2e}.nav-email-login .button{justify-content:center;width:100%}.nav-login--cancel{justify-self:center;padding:5px 8px;font-size:.82rem}.nav-login-message{max-width:230px;color:var(--soft-white);font-size:.84rem;line-height:1.35}.nav-login-error{color:#ffd5e8;margin:0;font-size:.78rem;line-height:1.35}.menu-toggle{border:1px solid var(--line);background:var(--card);border-radius:12px;width:44px;height:44px;display:none}.menu-toggle span{background:#fff;width:18px;height:2px;margin:5px auto;display:block}.back-link{border:1px solid var(--line);color:var(--soft-white);box-shadow:var(--shadow-soft);background:#111016e0;border-radius:999px;align-items:center;gap:8px;margin:4px 0 18px;padding:10px 14px;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex;position:static}.site-footer{border-top:1px solid var(--line);background:#09080c;margin-top:80px}.footer-shell,.footer-bottom{width:min(var(--container), calc(100% - 40px));margin:0 auto}.footer-shell{grid-template-columns:minmax(280px,1fr) auto;gap:60px;padding:70px 0 52px;display:grid}.footer-brand p{max-width:430px;color:var(--muted);margin:22px 0 12px;line-height:1.65}.footer-brand>span{color:#8c8694;font-size:.9rem}.footer-nav{grid-template-columns:repeat(2,minmax(130px,1fr));align-content:start;gap:16px 44px;display:grid}.footer-nav a{color:var(--muted);text-decoration:none}.footer-nav a:hover{color:var(--vivid-pink)}.footer-nav .footer-feedback{color:#fff;grid-column:1/-1;justify-self:start}.footer-nav .footer-feedback:hover{color:#fff}.footer-bottom{border-top:1px solid var(--line);color:#817b89;justify-content:space-between;align-items:center;gap:20px;min-height:72px;font-size:.88rem;display:flex}.footer-creators{text-align:center}.footer-creators a{color:#d9d3dc;font-weight:700;text-decoration:none;transition:color .18s}.footer-creators a:hover{color:var(--vivid-pink)}.footer-creators a:focus-visible{outline:2px solid var(--vivid-pink);outline-offset:3px;border-radius:3px}
.button,.action-btn,.speak-btn{cursor:pointer;border:1px solid #0000;border-radius:13px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 21px;font-weight:750;text-decoration:none;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:inline-flex}.button:hover,.action-btn:hover,.speak-btn:hover{transform:translateY(-2px)}.button--primary,.action-btn{color:#fff;background:linear-gradient(135deg, #9a165e, var(--brand));box-shadow:0 12px 34px #820d4b52}.button--primary:hover,.action-btn:hover{box-shadow:0 15px 42px #820d4b7a}.button--secondary,.action-btn.secondary{color:#fff;border-color:var(--line-strong);box-shadow:none;background:#ffffff0e}.button--secondary:hover,.action-btn.secondary:hover{background:#820d4b24;border-color:#e09ac67a}.button--light{color:#160812;background:#fff;box-shadow:0 12px 38px #0003}.button--compact{border-radius:11px;min-height:42px;padding:0 16px;font-size:.9rem}.button--card{color:#fff;background:var(--brand);width:100%;margin-top:24px}.speak-btn{color:#f2c4e0;background:#820d4b2e;border-color:#e09ac640;min-height:38px;padding:0 13px;font-size:.86rem}.choice-btn{border:1px solid var(--line);background:var(--card-strong);min-height:32px;color:var(--text);cursor:pointer;border-radius:8px;padding:0 11px;font-weight:700;transition:all .18s}.choice-btn:hover{border-color:#e09ac673;transform:translateY(-1px)}.choice-btn.selected{color:#fff;background:#820d4b4d;border-color:#d77eb6;box-shadow:inset 0 0 0 1px #ffffff0f}.actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}
.song-card{border:1px solid var(--line);min-width:0;height:100%;box-shadow:var(--shadow-soft);background:linear-gradient(160deg,#1b1622,#100e14);border-radius:26px;flex-direction:column;transition:transform .24s,border-color .24s,box-shadow .24s;display:flex;overflow:hidden}.song-card:hover{border-color:#e09ac657;transform:translateY(-7px);box-shadow:0 30px 70px #0006}.song-art{aspect-ratio:1;isolation:isolate;background:#120f16;display:block;position:relative;overflow:hidden}.song-art:focus-visible{outline-offset:-5px;outline:3px solid #e09ac6}.song-art img{object-fit:cover;transition:transform .45s cubic-bezier(.2,.8,.2,1),filter .3s}.song-card--monsters .song-art img{object-fit:contain}.song-card:hover .song-art img{filter:saturate(1.08);transform:scale(1.035)}.song-art:after{display:none}.song-art--count-on-me{background:radial-gradient(circle at 78% 18%,#ed8ebc,#0000 18%),linear-gradient(145deg,#541241,#9d365e 52%,#e09673)}.song-art--golden{background:radial-gradient(circle at 75% 20%,#f5e6b0,#0000 16%),linear-gradient(145deg,#31200b,#a66d14 55%,#e0b740)}.song-art--monsters{background:radial-gradient(circle at 22% 15%,#9a3d72,#0000 16%),linear-gradient(145deg,#100a1a,#30134b 55%,#771d4b)}.song-art--the-fate-of-ophelia{background:radial-gradient(circle at 78% 18%,#ffd1b3,#0000 18%),linear-gradient(145deg,#421423,#a43e35 55%,#e98f5f)}.song-art--wonderwall{background:radial-gradient(circle at 72% 20%,#d9d9d9,#0000 17%),linear-gradient(145deg,#171717,#555 55%,#aaa)}.song-art--manchild{background:radial-gradient(circle at 72% 18%,#f0c26d,#0000 17%),linear-gradient(145deg,#514a66,#9b785c 58%,#d7a750)}.song-art--bad-life{background:radial-gradient(circle at 76% 20%,#58a9cf,#0000 18%),linear-gradient(145deg,#12161d,#314f62 58%,#8a3b78)}.song-art--hills-of-st-ann{background:radial-gradient(circle at 74% 18%,#dcebe6,#0000 18%),linear-gradient(145deg,#1e4f50,#4f8c85 58%,#d8e3c9)}.song-art--happy{background:radial-gradient(circle at 74% 18%,#a7b4b4,#0000 18%),linear-gradient(145deg,#081113,#263536 58%,#5f6f70)}.song-art--friday-im-in-love{background:radial-gradient(circle at 72% 18%,#3244d8,#0000 18%),linear-gradient(145deg,#3b0714,#bc151f 58%,#f23a23)}.song-art--ordinary{background:radial-gradient(circle at 50% 28%,#ffd6b8,#0000 22%),linear-gradient(145deg,#130b17,#6b354d 58%,#b76f69)}.song-art--nice-to-meet-you{background:radial-gradient(circle at 72% 28%,#35c6ec,#0000 22%),linear-gradient(145deg,#181612,#827d70 58%,#d9d5c9)}.song-art__eyebrow,.song-art__title,.song-art__artist{z-index:2;position:relative}.song-art__eyebrow{color:#ffffffb8;letter-spacing:.15em;text-transform:uppercase;margin-bottom:auto;font-size:.68rem;font-weight:800}.song-art__title{color:#fff;max-width:90%;font-family:var(--font-league-spartan);letter-spacing:-.05em;font-size:clamp(1.8rem,3vw,2.65rem);font-weight:750;line-height:.95}.song-art__artist{color:#ffffffc2;text-transform:uppercase;letter-spacing:.12em;margin-top:8px;font-size:.82rem}.song-art__wave{z-index:2;opacity:.4;background:repeating-linear-gradient(90deg,#fff 0 2px,#0000 2px 7px);height:38px;position:absolute;bottom:35px;left:48%;right:22px;-webkit-mask-image:radial-gradient(#000,#0000 72%);mask-image:radial-gradient(#000,#0000 72%)}.song-card__body{flex-direction:column;flex:1;padding:24px;display:flex}.song-card__meta{color:#d293b9;letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:750}.song-card h3{margin-top:18px;font-size:1.75rem}.song-card__artist{font-weight:650;color:#ede9ef!important;margin:5px 0 0!important}.song-card__body>p{color:var(--muted);margin:12px 0 0;line-height:1.55}.activity-badges{flex-wrap:wrap;gap:7px;margin-top:20px;display:flex}.activity-badges span{border:1px solid var(--line);color:#aaa4b0;background:#ffffff06;border-radius:7px;padding:6px 9px;font-size:.73rem}.song-card .activity-badges{margin-bottom:24px}.song-card .button--card{margin-top:auto}.song-card--compact{height:auto}.question-box{border:1px solid var(--line);border-radius:var(--radius-md);background:#ffffff09;align-items:center;gap:14px;padding:20px;display:flex}.question-box p{flex:1;min-width:0;margin:0;line-height:1.55}.word-card,.drop-zone,.lyric-word-card,.order-card,.order-drop-zone{border:1px solid var(--line);background:var(--card-strong);border-radius:15px}.lyrics-card,.prompt-box,.report-card{border:1px solid var(--line);border-radius:var(--radius-md);background:#08070b6b}.lyrics-card{margin-top:24px;padding:clamp(20px,3vw,28px)}.prompt-box{margin-top:22px;padding:20px 22px}
.feedback{min-height:28px;color:var(--muted);margin:14px 0 0;font-weight:650;line-height:1.55}.feedback.success{color:var(--success)}.feedback.warning{color:var(--warning)}.questions{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:24px;display:grid}.questions--two-column{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:580px){.questions--two-column{grid-template-columns:1fr}}.question-number,.order-number{color:#e6acd0;background:#820d4b3d;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.question-check{color:#fff;cursor:pointer;background:#820d4b14;border:1px solid #820d4b6b;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s;display:grid}.question-check:hover{border-color:#820d4b;transform:scale(1.06)}.question-check:focus-visible{outline-offset:3px;outline:3px solid #7e0d8259}.question-check[aria-checked=true]{background:linear-gradient(135deg,#820d4b,#3b0764);border-color:#3b0764;box-shadow:0 5px 14px #3b076438}.question-check span{font-size:1rem;font-weight:900;line-height:1}.question-box.is-discussed{background:#f7edf4;border-color:#820d4b4d}.word-bank,.meanings{gap:12px;display:grid}.word-slot{background:#ffffff06;border:1px dashed #e09ac640;border-radius:15px;min-height:58px}.word-card{color:#fff;cursor:grab;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:12px 13px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.word-card:hover,.lyric-word-card:hover,.order-card:hover,.icon-card:hover{border-color:#e09ac66b;transform:translateY(-2px);box-shadow:0 12px 30px #00000047}.word-card.dragging,.lyric-word-card.dragging,.icon-card.dragging{opacity:.48}.word-card.is-selected,.lyric-word-card.is-selected,.icon-card.is-selected{border-color:#dc86bd;box-shadow:0 0 0 3px #820d4b38}.word-card.is-selected{color:#fff;background:linear-gradient(135deg,#820d4b,#7e0d82);border-color:#820d4b;transform:translateY(-2px);box-shadow:0 0 0 3px #820d4b33,0 12px 24px #3b076433}.drop-zone{justify-content:space-between;align-items:center;gap:11px;min-height:77px;padding:13px;transition:border-color .18s,background .18s;display:flex}.drop-zone.drag-over,.order-drop-zone.drag-over,.inline-drop-zone.drag-over,.word-drop-zone.drag-over{background:#820d4b2e;border-color:#df8dc0}.meaning-text{color:var(--soft-white);margin:0;line-height:1.5}.placed-card{min-width:120px;margin-left:auto}.icon-bank,.lyric-word-bank{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.icon-card{border:1px solid var(--line);background:linear-gradient(145deg, var(--card-stronger), var(--card-strong));cursor:grab;border-radius:13px;place-items:center;width:54px;height:54px;transition:all .18s;display:grid}.icon-symbol{font-size:2rem;line-height:1}.dark-icon{background:#020203;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.lyric-line{color:var(--soft-white);margin:0 0 14px;font-size:1.08rem;line-height:1.65}.lyric-line__segment+.lyric-line__segment{margin-left:.3em}.lyric-line:last-child{margin-bottom:0}.lyric-line--note{opacity:.8;font-style:italic}.lyric-divider-space{min-height:8px}.inline-drop-zone,.word-drop-zone{vertical-align:middle;cursor:pointer;background:#820d4b14;border:1px dashed #e09ac673;justify-content:center;align-items:center;margin:0 4px;padding:3px;transition:all .18s;display:inline-flex}.inline-drop-zone{border-radius:11px;min-width:54px;min-height:41px}.word-drop-zone{border-radius:9px;min-width:68px;min-height:36px;padding-inline:6px}.lyric-word-card{color:#fff;cursor:grab;padding:8px 12px;font-weight:700;transition:all .18s}.choice-lyrics .lyric-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.choice-slot,.choice-group{flex-wrap:wrap;gap:8px;display:inline-flex}.order-layout{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);align-items:start;gap:18px;display:grid}.order-bank,.order-list{scrollbar-color:#5e2052 transparent;gap:10px;max-height:620px;margin-top:24px;padding-right:6px;display:grid;overflow-y:auto}.order-card{color:#fff;text-align:left;cursor:pointer;padding:8px 10px;font-size:.95rem;font-weight:650;line-height:1.35;transition:all .18s}.order-drop-zone{align-items:center;gap:8px;min-height:46px;padding:7px 8px;display:flex}.order-drop-zone .order-card{flex:1}.order-rearrange-list{gap:9px;margin-top:24px;display:grid}.order-rearrange-list .order-card{align-items:center;gap:10px;width:100%;display:flex}.order-card__handle{color:#a94c82;flex:none;font-size:1.05rem}.order-card.selected{background:#fff1f8;border-color:#a60f65;box-shadow:0 0 0 3px #a60f651f}.order-card.dragging{opacity:.48}.partial-word{color:#4a1737;border-bottom:2px solid #820d4b4d;align-items:center;font-weight:750;display:inline-flex}.partial-word input{color:#820d4b;min-width:0;font:inherit;letter-spacing:.04em;background:0 0;border:0;outline:none;padding:2px 1px;font-weight:800}.partial-word input::placeholder{color:#b0608f;opacity:.72}.partial-word:focus-within{border-color:#ff4f99}.partial-word.correct{border-color:#16734a}.partial-word.incorrect{border-color:#b12c36}.prompt-label{color:#d993bd;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:.75rem;font-weight:800}.prompt-text{margin:0;line-height:1.65}.pronoun-chart{flex-wrap:wrap;gap:9px;margin-top:18px;display:flex}.pronoun-chip{color:#ebbcda;background:#820d4b24;border:1px solid #e09ac638;border-radius:9px;justify-content:center;min-width:44px;padding:8px 11px;font-weight:750;display:inline-flex}.letter-chart{grid-template-columns:repeat(9,minmax(0,1fr));gap:7px;margin-top:14px;display:grid}.letter-chip{color:#650b43;text-transform:uppercase;background:#f5e5ef;border:1px solid #820d4b38;border-radius:8px;place-items:center;min-height:34px;font-weight:850;display:grid}.lyric-input{color:#fff;text-align:center;text-transform:lowercase;background:#ffffff0e;border:1px dashed #e09ac680;border-radius:8px;width:3rem;min-width:3rem;max-width:100%;min-height:2rem;padding:4px 8px;font-weight:750}.lyric-input:focus{outline-offset:2px;border-color:#0000;outline:2px solid #d68ac7}.unscramble-input{box-sizing:border-box;width:6rem;min-width:5.1rem;max-width:100%}.unscramble-input::placeholder{color:#d09abb;opacity:1;letter-spacing:.08em}.missing-word-lyrics .lyric-line{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.missing-word-option{color:#3b2333;min-height:32px;font:inherit;cursor:pointer;background:#fff;border:1px solid #820d4b3d;border-radius:8px;padding:5px 8px;font-weight:750;transition:transform .18s,border-color .18s,background .18s,color .18s}.lyrics-divider{background:#4c234329;height:1px;margin:22px 0}.missing-word-option:hover{border-color:#820d4b;transform:translateY(-2px)}.missing-word-option:focus-visible{outline-offset:3px;outline:3px solid #7e0d8252}.missing-word-option.is-selected{color:#fff;background:linear-gradient(135deg,#820d4b,#3b0764);border-color:#3b0764}.selection-count{color:#5e4355;margin:14px 0 0;font-weight:700}.inline-order-lyrics .lyric-line{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.inline-order-sequence{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.inline-order-word{color:#3b2333;font:inherit;cursor:grab;background:#fff;border:1px solid #820d4b47;border-radius:8px;padding:5px 7px;font-weight:750;line-height:1.1;transition:transform .16s,border-color .16s,background .16s,color .16s}.inline-order-word:hover{border-color:#820d4b;transform:translateY(-2px)}.inline-order-word:focus-visible{outline-offset:2px;outline:3px solid #7e0d8252}.inline-order-word.is-selected{color:#590a3b;background:#f3dce9;border-color:#3b0764;box-shadow:0 0 0 2px #820d4b1f}.inline-order-word.is-dragging{opacity:.45}
.lesson-hero{border:1px solid var(--line);min-height:330px;box-shadow:var(--shadow);background:linear-gradient(145deg,#1e1727fa,#0d0b10fa);border-radius:32px;grid-template-columns:250px 1fr;align-items:stretch;gap:42px;margin-bottom:20px;padding:24px;display:grid;overflow:hidden}.lesson-cover{isolation:isolate;background:#120f16;border:1px solid #ffffff21;border-radius:22px;min-height:280px;position:relative;overflow:hidden;box-shadow:0 24px 50px #00000052}.lesson-cover:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0000 58%,#040307a3);position:absolute;inset:0}.lesson-cover__image{object-fit:cover}.lesson-cover__badge{z-index:2;color:#fff;letter-spacing:.09em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#08070bb3;border:1px solid #ffffff3d;border-radius:999px;padding:7px 10px;font-size:.67rem;font-weight:800;position:absolute;bottom:16px;left:16px}.lesson-hero__content{align-self:center;padding-right:clamp(10px,4vw,50px)}.lesson-hero h1{font-size:clamp(2.8rem,6vw,5.4rem)}.lesson-artist{color:#e2a6cb;margin:9px 0 0;font-size:1.12rem;font-weight:700}.lesson-description{max-width:650px;color:var(--muted);margin:18px 0 0;line-height:1.6}.lesson-meta{flex-wrap:wrap;gap:12px 32px;margin:28px 0 0;display:flex}.lesson-meta div{gap:4px;display:grid}.lesson-meta dt{color:#8f8996;letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:800}.lesson-meta dd{color:var(--soft-white);margin:0;font-weight:700}.lesson-progress{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#111016db;border-radius:18px;margin:0 0 22px;padding:18px 22px}.lesson-progress ol{grid-template-columns:repeat(6,1fr);margin:0;padding:0;list-style:none;display:grid}.lesson-progress li{color:#9e98a5;align-items:center;gap:9px;font-size:.78rem;display:flex;position:relative}.lesson-progress li:not(:last-child):after{content:"";background:var(--line-strong);flex:1;height:1px;margin-right:9px}.lesson-progress li span{color:#e3a4ca;background:#820d4b33;border-radius:50%;flex:none;place-items:center;width:25px;height:25px;font-size:.68rem;display:grid}.lesson-progress__mobile{display:none}.video-frame{border:1px solid var(--line-strong);background:#08070b;border-radius:20px;margin-top:24px;overflow:hidden;box-shadow:0 24px 50px #00000057}.video-frame iframe{border:0;width:100%;display:block}.listening-card__topline{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.listening-card__topline .section-heading{min-width:0}.lesson-share-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;display:flex;position:relative}.lesson-share-button{color:#6b164f;min-height:36px;font:inherit;cursor:pointer;background:#fff;border:1px solid #4c234333;border-radius:999px;padding:7px 11px;font-size:.76rem;font-weight:800;transition:transform .16s,border-color .16s,background .16s,color .16s}.lesson-share-button:hover{color:#fff;background:#81105d;border-color:#8c1762;transform:translateY(-1px)}.lesson-share-button:focus-visible,.lesson-share-dialog__close:focus-visible,.lesson-share-dialog__copy:focus-visible{outline-offset:2px;outline:3px solid #ff4f998c}.lesson-share-button--qr{background:#f8eef5}.lesson-share-status{z-index:2;color:#fff;white-space:nowrap;background:#3b1834;border-radius:7px;padding:5px 8px;font-size:.72rem;font-weight:700;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 18px #32122a2e}.lesson-share-dialog{z-index:100;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.lesson-share-dialog__backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:default;background:#120711b8;border:0;position:absolute;inset:0}.lesson-share-dialog__panel{z-index:1;color:#291b27;text-align:center;background:linear-gradient(145deg,#fff,#f8edf5);border:1px solid #ffffff38;border-radius:26px;justify-items:center;width:min(100%,440px);padding:clamp(26px,4vw,42px);display:grid;position:relative;box-shadow:0 32px 80px #00000061}.lesson-share-dialog__close{color:#6b164f;min-height:32px;font:inherit;cursor:pointer;background:#fff;border:1px solid #4c234333;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:800;position:absolute;top:14px;right:14px}.lesson-share-dialog__eyebrow{color:#9d2169;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:850}.lesson-share-dialog h2{margin-top:9px;font-size:clamp(1.6rem,5vw,2.35rem)}.lesson-share-dialog p:not(.lesson-share-dialog__eyebrow){color:#645463;max-width:320px;margin:10px 0 0;line-height:1.55}.lesson-share-dialog__qr{background:#fff;border:1px solid #4c234324;border-radius:17px;margin:24px 0 18px;padding:13px}.lesson-share-dialog__qr svg{max-width:100%;height:auto;display:block}.lesson-share-dialog__copy{color:#fff;min-height:42px;font:inherit;cursor:pointer;background:#820d4b;border:1px solid #820d4b;border-radius:999px;padding:9px 16px;font-weight:800}.lesson-share-dialog__status{color:#6b164f;min-height:1.2em;margin-top:10px;font-size:.78rem;font-weight:750}.cultural-note{border-radius:var(--radius-md);color:#211721;box-shadow:var(--shadow-soft);background:linear-gradient(135deg,#f4faf7,#f8f0e4);border:1px solid #4c234329;margin-bottom:18px;padding:clamp(24px,4vw,34px)}.cultural-note h2{color:#214b46;margin-top:8px;font-size:clamp(1.55rem,3vw,2.15rem)}.cultural-note>p:last-child{color:#4f4a45;max-width:850px;margin:14px 0 0;line-height:1.65}.cultural-note__action{margin-top:20px}.cultural-note--with-poster{grid-template-columns:minmax(150px,220px) 1fr;align-items:center;gap:clamp(24px,4vw,42px);display:grid}.cultural-note__poster{border-radius:18px;width:100%;height:auto;box-shadow:0 18px 38px #29122438}.cultural-note__content>p:last-of-type{color:#4f4a45;max-width:760px;margin:14px 0 0;line-height:1.65}.artist-quote blockquote{color:#43373f;border-left:3px solid #a60f65;max-width:950px;margin:20px 0 0;padding-left:20px;font-size:1rem;line-height:1.7}.artist-quote .artist-quote__byline{color:#214b46;margin-top:16px;font-weight:800}.artist-quote .artist-quote__source{color:#820d4b;margin-top:10px;font-size:.82rem;font-weight:750;display:inline-block}.spotify-frame{background:linear-gradient(145deg,#820d4b2e,#09080c 38%);padding:8px}.spotify-frame iframe{border-radius:13px;height:352px}.spotify-login-note{color:#4f2940;background:#f4e5ef;border:1px solid #820d4b33;border-radius:10px;width:fit-content;margin:18px 0 10px;padding:8px 11px;font-size:.86rem;line-height:1.45}.spotify-login-note strong{color:#820d4b}.youtube-frame{aspect-ratio:16/9;background:linear-gradient(145deg,#820d4b33,#08070b 42%)}.youtube-frame iframe{height:100%}.lesson-groups{gap:14px;margin-top:22px;display:grid}.lesson-group{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#17131f;border-radius:22px;transition:border-color .22s,box-shadow .22s;overflow:hidden}.lesson-group.is-open{border-color:#e09ac652;box-shadow:0 24px 65px #00000057,0 0 55px #820d4b14}.lesson-group:first-of-type .lesson-group__trigger{background:linear-gradient(115deg,#820d4b,#5c0b55 58%,#3b0764)}.lesson-group:nth-of-type(2) .lesson-group__trigger{background:linear-gradient(115deg,#3b0764,#7e0d82 55%,#820d4b)}.lesson-group:nth-of-type(3) .lesson-group__trigger{background:linear-gradient(115deg,#820d4b,#6b0b72 55%,#3b0764)}.lesson-group__trigger{color:#fff;text-align:left;cursor:pointer;border:0;grid-template-columns:48px 1fr 42px;align-items:center;gap:18px;width:100%;min-height:100px;padding:22px 26px;transition:filter .18s;display:grid}.lesson-group__trigger:hover{filter:brightness(1.12)}.lesson-group__trigger:focus-visible{outline-offset:-3px;outline:3px solid #e09ac69e}.lesson-group__number{color:#ffd8ec;font-family:var(--font-league-spartan);letter-spacing:.1em;font-size:.82rem;font-weight:800}.lesson-group__heading{gap:5px;display:grid}.lesson-group__heading strong{font-family:var(--font-league-spartan);font-size:clamp(1.2rem,2.4vw,1.65rem)}.lesson-group__heading small{color:#ffffffc7;font-size:.88rem}.lesson-group__symbol{color:#fff;background:#ffffff14;border:1px solid #ffffff59;border-radius:50%;justify-self:end;place-items:center;width:38px;height:38px;font-size:1.35rem;display:grid}.lesson-group__panel{--text:#211721;--soft-white:#211721;--muted:#685c68;--card-strong:#fff;--card-stronger:#f6eff4;--line:#4c234326;--line-strong:#4c234347;color:#211721;background:#f5f3f7;border-top:1px solid #ffffff29}.lesson-group__scroll{padding:24px}.lesson-group__scroll .card{color:#211721;background:#fff;border-color:#4c234324;box-shadow:0 16px 38px #33162d1a}.lesson-group__scroll .card:before{background:linear-gradient(90deg,#0000,#820d4b47,#0000)}.lesson-group__scroll .section-heading h2,.lesson-group__scroll .question-box p,.lesson-group__scroll .prompt-text{color:#211721}.lesson-group__scroll .section-kicker,.lesson-group__scroll .prompt-label{color:#820d4b}.lesson-group__scroll .order-number{color:#5b103f;background:#f0dce9;border:1px solid #5b103f2e}.lesson-group__scroll .pronoun-chip{color:#fff;background:linear-gradient(135deg,#5b0b64,#3b0764);border-color:#3b0764;box-shadow:0 5px 14px #3b07642e}.lesson-group__scroll .question-box,.lesson-group__scroll .drop-zone,.lesson-group__scroll .lyrics-card,.lesson-group__scroll .prompt-box,.lesson-group__scroll .report-card{color:#211721;background:#faf7fa;border-color:#4c234329}.lesson-group__scroll .question-box.is-discussed{background:#f7eaf2;border-color:#820d4b57}.lesson-group__scroll .word-card,.lesson-group__scroll .lyric-word-card,.lesson-group__scroll .order-card{color:#3b1834;background:#fff;border-color:#4c23432e}.lesson-group__scroll .icon-card{background:linear-gradient(145deg,#fff,#f5edf3);border-color:#4c23432e}.lesson-group__scroll .lyric-input,.lesson-group__scroll .field-input,.lesson-group__scroll .writing-box{color:#211721;background:#fff;border-color:#4c234342}.lesson-group__scroll .choice-btn{color:#3b1834;background:#fff;border-color:#4c234333}.lesson-group__scroll .choice-btn.selected{color:#fff;background:#820d4b}.lesson-group__scroll .speak-btn{color:#820d4b;background:#f7eaf2;border-color:#820d4b38}.lesson-group__scroll .action-btn.secondary{color:#5d1648;background:#f8f3f7;border-color:#4c234338}.lesson-group__scroll .feedback.warning{color:#8a4b08}.lesson-group__scroll>.card:last-child,.lesson-group__check .card{margin-bottom:0}.activity-carousel{background:#fff;border:1px solid #4c23432e;border-radius:22px;margin:24px 0;overflow:hidden;box-shadow:0 18px 45px #33162d1f}.activity-carousel__toolbar{background:linear-gradient(90deg,#fff,#f8eff5);border-bottom:1px solid #4c234324;justify-content:space-between;align-items:center;gap:20px;min-height:82px;padding:16px 20px;display:flex}.activity-carousel__toolbar>div:first-child{gap:4px;display:grid}.activity-carousel__toolbar>div:first-child span{color:#c97dab;letter-spacing:.11em;text-transform:uppercase;font-size:.68rem;font-weight:800}.activity-carousel__toolbar strong{color:#2a1826;font-family:var(--font-league-spartan);font-size:1.08rem}.activity-carousel__toolbar-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.activity-carousel__chorus-jump{color:#6b164f;min-height:38px;font-family:var(--font-league-spartan);cursor:pointer;background:#fff;border:1px solid #6b164f40;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:8px 13px;font-size:.76rem;font-weight:800;transition:transform .16s,border-color .16s,background .16s,color .16s;display:inline-flex;box-shadow:0 5px 14px #50123d14}.activity-carousel__chorus-jump:hover{color:#fff;background:#81105d;border-color:#8c1762;transform:translateY(-1px)}.activity-carousel__chorus-jump:focus-visible{outline-offset:2px;outline:3px solid #ff4f998c}.activity-carousel__chorus-jump span{font-size:1rem;line-height:1}.activity-carousel__count{color:#685c68;font-size:.82rem;font-weight:800}.activity-carousel__stage{grid-template-columns:64px minmax(0,1fr) 64px;align-items:stretch;display:grid}.activity-carousel__slides{min-width:0}.activity-carousel__side{color:#6b164f;cursor:pointer;background:linear-gradient(#f4ddea,#ead1e3);border:0;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:100%;padding:14px 8px;transition:background .18s,color .18s;display:flex}.activity-carousel__side--previous{border-right:1px solid #4c234324}.activity-carousel__side--next{border-left:1px solid #4c234324}.activity-carousel__side:hover{color:#fff;background:linear-gradient(#820d4b,#6b0b72)}.activity-carousel__side:focus-visible{z-index:3;outline-offset:-4px;outline:3px solid #7e0d82;position:relative}.activity-carousel__side span{font-size:1.8rem}.activity-carousel__side small{letter-spacing:.06em;text-transform:uppercase;writing-mode:vertical-rl;font-size:.67rem;font-weight:800}.activity-carousel__mobile-nav{display:none}.activity-carousel__slide{padding:20px}.activity-carousel__slide--chorus{background:linear-gradient(145deg,#eee3f7,#e4d5f1)}.activity-carousel__slide--chorus>.card{background:linear-gradient(145deg,#fbf8ff,#f1e8f8);border-color:#5b1e824d;box-shadow:0 16px 38px #3b076424}.activity-carousel__slide--chorus .lyrics-card{background:#eee3f7;border-color:#5b1e8240}.activity-carousel__slide.is-entering-forward{animation:.28s cubic-bezier(.22,.8,.3,1) both activity-slide-from-right}.activity-carousel__slide.is-entering-backward{animation:.28s cubic-bezier(.22,.8,.3,1) both activity-slide-from-left}@keyframes activity-slide-from-right{0%{opacity:.35;transform:translate(34px)}to{opacity:1;transform:translate(0)}}@keyframes activity-slide-from-left{0%{opacity:.35;transform:translate(-34px)}to{opacity:1;transform:translate(0)}}.activity-carousel__slide>.card{margin-bottom:0;padding-top:26px}.activity-carousel__slide .section-heading .section-kicker,.activity-carousel__slide .section-heading h2{display:none}.activity-carousel__slide .section-heading .section-note{color:#574b56;margin-top:0}.answer-review{vertical-align:middle;border-radius:10px;flex-wrap:wrap;align-items:center;gap:4px;margin-inline:3px 6px;display:inline-flex;position:relative}.answer-review--block{width:100%;margin:0 0 8px;display:flex}.answer-review.is-incorrect,.answer-review.is-unanswered{outline-offset:2px;background:#fff1f3;outline:2px solid #9f1239;padding:3px}.answer-review.is-unanswered{background:#fff8e8;outline-style:dashed}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.lesson-group__check{margin-top:24px}.lesson-group:last-child .lesson-group__scroll>.card:first-child .questions{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:960px){.activity-carousel__toolbar-actions .activity-carousel__count{display:none}.activity-carousel__stage{display:block}.activity-carousel__side{display:none}.activity-carousel__slides{touch-action:pan-y}.activity-carousel__mobile-nav{background:#f8f1f6;border-top:1px solid #4c234324;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:10px;display:grid}.activity-carousel__mobile-nav--top{border-top:0;border-bottom:1px solid #4c234324}.activity-carousel__mobile-nav button{color:#6b164f;cursor:pointer;background:#fff;border:1px solid #4c234333;border-radius:11px;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:0 10px;font-size:.78rem;font-weight:800;display:inline-flex}.activity-carousel__mobile-nav>span{color:#685c68;text-align:center;min-width:42px;font-size:.76rem;font-weight:800}}@media (max-width:580px){.cultural-note--with-poster{grid-template-columns:1fr}.cultural-note__poster{justify-self:center;width:min(100%,260px)}.lesson-group__trigger{grid-template-columns:34px 1fr 36px;gap:10px;min-height:90px;padding:18px}.lesson-group__heading small{font-size:.78rem}.lesson-group__scroll{padding:14px}.listening-card__topline{gap:14px;display:grid}.lesson-share-actions{justify-content:flex-start}.activity-carousel__toolbar{align-items:flex-end;padding:14px}.activity-carousel__toolbar-actions{flex:none}.activity-carousel__chorus-jump{min-height:36px;padding:7px 10px;font-size:.7rem}.activity-carousel__slide{padding:8px}.activity-carousel__slide>.card{padding-inline:14px}.lesson-group:last-child .lesson-group__scroll>.card:first-child .questions{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.activity-carousel__slide.is-entering-forward,.activity-carousel__slide.is-entering-backward{animation:none}}
.report-form{gap:11px;display:grid}.field-label{color:var(--soft-white);font-size:.92rem;font-weight:700}.field-input,.writing-box{border:1px solid var(--line);color:#fff;width:100%;font:inherit;background:#ffffff0b;border-radius:13px;padding:14px 16px;transition:border-color .18s,box-shadow .18s}.field-input:focus,.writing-box:focus{border-color:#cf78af;outline:none;box-shadow:0 0 0 3px #820d4b38}.writing-box{resize:vertical;min-height:220px;line-height:1.55}.word-count{color:var(--muted);margin:0;font-size:.9rem}
.report-grid{grid-template-columns:minmax(0,1fr);width:100%;margin-top:22px;display:grid}.song-story{background:linear-gradient(125deg,#fff5fa,#f5e9fa);border:1px solid #820d4b33;border-radius:22px;justify-content:space-between;align-items:center;gap:24px;margin-top:28px;padding:28px;display:flex}.song-story h3{margin:6px 0 8px;font-size:1.5rem}.song-story p{max-width:540px;margin-bottom:0}.song-story__action{flex:none;justify-items:end;gap:8px;display:grid}.song-story__action p{color:#685c68;text-align:right;max-width:240px;min-height:1.4em;font-size:.85rem}@media (max-width:700px){.song-story{flex-direction:column;align-items:stretch;padding:22px}.song-story__action{justify-items:stretch}.song-story__action p{text-align:left;max-width:none}}.homework-mode{background:#f8f1f6;border:1px solid #820d4b29;border-radius:15px;gap:7px;width:100%;margin-top:18px;padding:7px;display:flex}.homework-mode button{color:#654f60;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;min-height:44px;padding:0 18px;font-weight:800;transition:color .18s,background .18s,box-shadow .18s}.homework-mode button:hover{color:#820d4b;background:#820d4b12}.homework-mode button.is-active{color:#fff;background:linear-gradient(135deg,#9a165e,#7e0d82);box-shadow:0 8px 22px #820d4b38}.voice-homework{color:#281d26}.voice-recorder{background:linear-gradient(145deg,#fff,#fbf5f9);border:1px solid #ded3dc;border-radius:20px;padding:clamp(20px,4vw,32px)}.voice-recorder__status{align-items:center;gap:14px;display:flex}.voice-recorder__indicator{background:#820d4b;border:3px solid #edd7e5;border-radius:50%;flex:none;width:14px;height:14px;box-shadow:0 0 0 5px #820d4b14}.voice-recorder.is-recording .voice-recorder__indicator{background:#d52f47;animation:1.2s ease-in-out infinite recording-pulse;box-shadow:0 0 0 6px #d52f4724}.voice-recorder__status strong{color:#291824;font-size:1.05rem;display:block}.voice-recorder__status p{color:#766573;margin:4px 0 0}.voice-recorder__audio{accent-color:#820d4b;width:100%;margin-top:24px}.voice-recorder__actions{align-items:center}.voice-recorder__download{color:#fff;background:linear-gradient(135deg,#9a165e,#820d4b);text-decoration:none;box-shadow:0 12px 34px #820d4b3d}.voice-recorder__stop{background:linear-gradient(135deg,#dc354d,#a71931)}.voice-recorder__message{color:#5f2349;background:#f3e4ee;border-radius:10px;margin:20px 0 0;padding:12px 14px;line-height:1.45}.voice-recorder__message.is-error{color:#8a1d2e;background:#fff0f0}.voice-recorder__privacy{color:#786a75;margin:18px 0 0;font-size:.86rem}@keyframes recording-pulse{50%{opacity:.65;transform:scale(.78)}}.report-export,.lesson-print-export{display:none}.lesson-print__button{z-index:3;border:1px solid var(--line);color:var(--soft-white);font:inherit;cursor:pointer;box-shadow:var(--shadow-soft);background:#111016e0;border-radius:999px;align-items:center;gap:7px;margin:0;padding:10px 14px;font-size:.9rem;font-weight:700;display:inline-flex;position:absolute;top:38px;right:0}.lesson-print__button:hover{color:#fff;background:#3a2032;border-color:#e09ac680}@media (max-width:580px){.lesson-print__button{top:26px}}@media (max-width:360px){.lesson-print__button{gap:5px;padding-inline:11px;font-size:.82rem}}.report-card{color:#211721;background:#fff;border:1px solid #ded3dc;border-radius:24px;overflow:hidden}.report-card__header{color:#fff;background:linear-gradient(135deg,#820d4b 0%,#7e0d82 55%,#3b0764 100%);justify-content:space-between;align-items:flex-end;gap:30px;min-height:210px;padding:42px;display:flex}.report-title{align-items:center;gap:18px;display:flex}.report-brand-images{flex:none;align-items:flex-end;display:flex}.report-logo{z-index:2;object-fit:cover;border:1px solid #ffffff57;border-radius:14px;flex:none;width:52px;height:52px;position:relative;box-shadow:0 12px 28px #1c041f47}.report-cover{object-fit:cover;border:2px solid #ffffffd1;border-radius:15px;flex:none;width:72px;height:72px;margin-left:-10px;box-shadow:0 12px 28px #1c041f4d}.report-card__header .report-kicker{color:#f6cfe7;letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px;font-size:.75rem;font-weight:800}.report-card__header h3{color:#fff;margin:0;font-size:2.4rem}.report-card__header p:last-child{color:#f2e6ee;margin:8px 0 0;font-size:1.05rem}.report-score{text-align:center;background:#ffffff21;border:1px solid #ffffff47;border-radius:18px;gap:4px;min-width:130px;padding:18px;display:grid}.report-score span{color:#f3dce9;letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:800}.report-score strong{color:#fff;font-size:1.35rem}.report-card__body{padding:38px 42px 30px}.report-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.report-meta{background:#faf7fa;border:1px solid #eadfe7;border-radius:14px;align-content:center;gap:5px;min-height:76px;margin:0;padding:15px 17px;display:grid}.report-meta span{color:#826f7d;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800}.report-meta strong{color:#2b1927;font-size:.98rem}.report-content-block{background:#f8f1f6;border-left:5px solid #820d4b;border-radius:0 14px 14px 0;margin-top:26px;padding:22px}.report-content-block--answer{background:#fff;border-left-color:#7e0d82;min-height:180px;box-shadow:inset 0 0 0 1px #eadfe7}.report-content-label{color:#820d4b;letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem;font-weight:850}.report-text{color:#41343e;white-space:pre-wrap;margin:0;line-height:1.7}.report-card__footer{color:#8a7885;border-top:1px solid #eadfe7;justify-content:space-between;gap:20px;margin-top:30px;padding-top:16px;font-size:.72rem;font-weight:700;display:flex}@media print{@page{size:A4;margin:12mm}html,body{width:100%;background:#fff!important;height:auto!important;min-height:0!important;margin:0!important;overflow:visible!important}body:not(.lesson-printing)>:not(.report-export),body.lesson-printing>:not(.lesson-print-export){display:none!important}body.lesson-printing .lesson-print-export{color:#281d26;-webkit-print-color-adjust:exact;print-color-adjust:exact;font:9.5pt/1.45 Arial,sans-serif;display:block!important}.lesson-print-export *{box-sizing:border-box}.lesson-print-export p,.lesson-print-export li,.lesson-print-export span{color:#281d26}.lesson-print__header{background:linear-gradient(110deg,#fff 55%,#f7e9f3);border:1px solid #e1c5d6;border-bottom:3px solid #820d4b;border-radius:10px 10px 4px 4px;align-items:center;gap:14px;padding:8px 10px;display:flex}.lesson-print__header img{object-fit:cover;border:2px solid #fff;border-radius:7px;width:19mm;height:19mm;box-shadow:0 2px 8px #4c143929}.lesson-print__header span{color:#820d4b;text-transform:uppercase;letter-spacing:.07em;font-size:8pt;font-weight:800}.lesson-print__header h1{margin:1px 0;font-size:20pt;line-height:1.1}.lesson-print__header p{margin:0}.lesson-print__names{justify-content:space-between;margin:9px 2px;padding:0 4px;display:flex}.lesson-print__section{margin:12px 0 0}.lesson-print__section h2{color:#591039;letter-spacing:.01em;background:linear-gradient(90deg,#f1dbe9,#faf3f8);border-left:5px solid #820d4b;border-radius:4px 9px 9px 4px;margin:0 0 7px;padding:6px 10px;font-size:11.5pt}.lesson-print__block{break-inside:avoid;page-break-inside:avoid;margin:9px 0}.lesson-print__block h3{color:#760d4a;background:#f3e2ed;border-radius:999px;width:fit-content;margin:0 0 5px;padding:3px 8px;font-size:10pt}.lesson-print__block ol{margin:3px 0;padding-left:22px}.lesson-print__block li{padding:2px 0}.lesson-print__vocab{background:#fffafd;border:1px solid #ead8e3;border-radius:9px;grid-template-columns:1fr 2fr;gap:16px;padding:7px 10px;display:grid}.lesson-print__instruction{color:#4d3444;margin:2px 0 6px;font-size:9.5pt;font-weight:650;line-height:1.45}.lesson-print__lyrics{background:#fffafd;border:1px solid #dfc4d5;border-radius:10px;padding:7px 10px}.lesson-print__lyrics p{white-space:pre-wrap;margin:2px 0}.lesson-print__activity .card{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important}.lesson-print__activity .card:before,.lesson-print__activity .section-kicker,.lesson-print__activity .section-heading{display:none!important}.lesson-print__paper-instruction{background:#f8edf4;border-left:3px solid #a51c6a;border-radius:0 7px 7px 0;padding:5px 7px;font-size:9.5pt;font-weight:700;line-height:1.45;color:#402b38!important;margin:0 0 7px!important}.lesson-print__paper-instruction:before{content:"Listen and complete the activity on paper."}.lesson-print__paper-instruction{font-size:0}.lesson-print__paper-instruction:before{font-size:9.5pt}.lesson-print__activity:has(.choice-lyrics) .lesson-print__paper-instruction:before{content:"Listen and circle the option you hear in each line."}.lesson-print__activity:has(.lyric-word-bank) .lesson-print__paper-instruction:before{content:"Listen and write each word or expression from the bank in the correct gap."}.lesson-print__activity:has(.icon-bank) .lesson-print__paper-instruction:before{content:"Listen and write or draw the matching emoji in each gap."}.lesson-print__activity:has(.typing-word-chart) .lesson-print__paper-instruction:before{content:"Listen and write the missing word in each gap. Use the reference box for help."}.lesson-print__activity:has(.unscramble-input) .lesson-print__paper-instruction:before{content:"Unscramble the letters and write the correct word in each gap."}.lesson-print__activity:has(.partial-word) .lesson-print__paper-instruction:before{content:"Listen and write the missing letters to complete each word."}.lesson-print__activity:has(.inline-order-lyrics) .lesson-print__paper-instruction:before{content:"Rewrite the highlighted words or sentence parts in the correct order."}.lesson-print__activity:has(.order-rearrange-list) .lesson-print__paper-instruction:before{content:"Number the lyric lines to put them in the correct order."}.lesson-print__activity:has(.missing-word-lyrics) .lesson-print__paper-instruction:before{content:"Listen and circle only the words requested in the instructions."}.lesson-print__activity:has(.pronoun-chart) .lesson-print__paper-instruction:before{content:"Listen and write the correct word from the reference box in each gap."}.lesson-print__activity .lyrics-card{box-shadow:none!important;background:0 0!important;border:0!important;margin:5px 0 0!important;padding:5px 7px!important}.lesson-print__activity .lyric-line{color:#281d26!important;margin:2px 0!important;font-size:9pt!important;line-height:1.35!important}.lesson-print__activity .actions,.lesson-print__activity .feedback,.lesson-print__activity .review-marker__badge,.lesson-share-actions,.lesson-share-dialog{display:none!important}.lesson-print__activity button,.lesson-print__activity input,.lesson-print__activity .drop-zone,.lesson-print__activity .word-card,.lesson-print__activity .icon-card{-webkit-print-color-adjust:exact;print-color-adjust:exact;min-height:0!important;box-shadow:none!important}.lesson-print__activity .word-bank,.lesson-print__activity .lyric-word-bank,.lesson-print__activity .icon-bank,.lesson-print__activity .pronoun-chart,.lesson-print__activity .letter-chart{background:#f7e9f2!important;border:1px solid #dbc0d1!important;border-radius:9px!important;gap:5px!important;margin:5px 0!important;padding:6px!important}.lesson-print__activity .word-card,.lesson-print__activity .lyric-word-card,.lesson-print__activity .order-card,.lesson-print__activity .choice-btn,.lesson-print__activity .pronoun-chip{color:#511038!important;background:#ead1e1!important;border:1px solid #9b3675!important;border-radius:7px!important;padding:4px 7px!important;font-size:8.5pt!important;font-weight:750!important}.lesson-print__activity .icon-card{background:#ead1e1!important;border:1px solid #9b3675!important;border-radius:8px!important;width:32px!important;height:32px!important}.lesson-print__activity .icon-symbol{font-size:16pt!important}.lesson-print__activity .dark-icon{background:#6d1550!important;border-radius:6px!important;width:24px!important;height:24px!important}.lesson-print__activity .inline-drop-zone,.lesson-print__activity .word-drop-zone,.lesson-print__activity .lyric-input,.lesson-print__activity .unscramble-input{color:#521039!important;background:#fff!important;border:1.5px dashed #a95787!important;border-radius:7px!important}.lesson-print__activity .word-drop-zone--phrase{min-width:34mm!important}.lesson-print__activity .word-drop-zone--sentence{min-width:62mm!important;min-height:9mm!important}.lesson-print__activity .inline-order-word,.lesson-print__activity .missing-word-option,.lesson-print__activity .letter-chip{color:#511038!important;background:#ead1e1!important;border:1px solid #9b3675!important;border-radius:7px!important}.lesson-print__bank{background:#f8f0f5;padding:3px 6px;font-size:8pt}.lesson-print__gap{color:#820d4b;letter-spacing:1px;white-space:nowrap}.lesson-print__choice{color:#820d4b;font-weight:700}.lesson-print__clue{color:#795b6d;margin-left:5px;font-size:7.5pt}.lesson-print__order-box{vertical-align:middle;border:1px solid #820d4b;width:12px;height:12px;margin-right:7px;display:inline-block}.lesson-print__section:last-of-type .lesson-print__block:last-child{background:linear-gradient(135deg,#fffafd,#f8edf4);border:1px solid #d9b9cd;border-radius:11px;margin-top:12px;padding:9px 11px}.lesson-print__writing{background:repeating-linear-gradient(#0000 0 6.8mm,#cfaabd 7mm);border-radius:6px;height:56mm}.lesson-print__footer{color:#820d4b;text-align:right;border-top:1px solid #dbc6d2;margin-top:10px;padding-top:5px;font-size:8pt}body .report-export{break-inside:avoid;page-break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:100%;max-height:273mm;position:relative;color:#211721!important;box-shadow:none!important;background:#fff!important;border:1px solid #ded3dc!important;border-radius:20px!important;display:block!important;overflow:hidden!important}body .report-card__header{color:#fff!important;background:linear-gradient(135deg,#820d4b 0%,#7e0d82 55%,#3b0764 100%)!important}body .report-card__header *,body .report-score *{color:#fff!important}body .report-score{background:#ffffff24!important;border-color:#fff6!important}body .report-meta{background:#faf7fa!important}body .report-content-block{background:#f8f1f6!important}body .report-content-block--answer{max-height:92mm;overflow:hidden;background:#fff!important}}
.library-page{width:min(var(--container), calc(100% - 40px));margin:0 auto;padding:58px 0 100px}.library-hero{border:1px solid var(--line);min-height:380px;box-shadow:var(--shadow);background:radial-gradient(circle at 90% 20%,#7e0d8242,#0000 33%),linear-gradient(145deg,#1a121f,#0d0b10);border-radius:34px;grid-template-columns:minmax(0,1fr) 300px;align-items:center;gap:70px;padding:clamp(40px,7vw,82px);display:grid;position:relative;overflow:hidden}.library-hero>div:first-child{z-index:2;position:relative}.library-hero h1{max-width:900px;font-size:clamp(3rem,5.2vw,5.5rem)}.library-hero p:last-child{max-width:680px;color:var(--muted);margin:24px 0 0;font-size:1.1rem;line-height:1.65}.library-wave{justify-content:center;align-items:center;gap:8px;height:210px;display:flex;transform:rotate(-4deg)}.library-wave i{background:linear-gradient(#e079ba,#6a0a70);border-radius:8px;width:8px;height:56px;animation:1.6s ease-in-out infinite alternate library-equalizer;box-shadow:0 0 26px #7e0d8252}.library-wave i:nth-child(3n){height:118px;animation-delay:-.6s}.library-wave i:nth-child(4n){height:74px;animation-delay:-1s}.library-wave i:nth-child(5n){height:150px;animation-delay:-.3s}.library-feedback-card{background:radial-gradient(circle at 88% 0,#fff3,#0000 34%),linear-gradient(120deg,#6f0d50,#a51468 52%,#d23c8e);border:1px solid #ff9dcf61;border-radius:26px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(24px,5vw,70px);min-height:150px;margin-top:24px;padding:clamp(24px,3.5vw,38px);display:grid;position:relative;overflow:hidden;box-shadow:0 20px 48px #52083c38}.library-feedback-card:after{content:"";pointer-events:none;border:1px solid #ffffff2e;border-radius:50%;width:210px;height:210px;position:absolute;bottom:-165px;right:12%;box-shadow:0 0 0 25px #ffffff0b,0 0 0 52px #ffffff06}.library-feedback-card__copy{z-index:1;position:relative}.library-feedback-card__eyebrow{color:#ffd0e7;letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:.7rem;font-weight:850}.library-feedback-card h2{letter-spacing:-.035em;max-width:760px;font-size:clamp(1.55rem,2.7vw,2.45rem)}.library-feedback-card__copy>p:last-child{color:#f9e4ef;max-width:760px;margin:10px 0 0;line-height:1.55}.library-feedback-card__button{z-index:1;color:#72104f;white-space:nowrap;background:#fff;border-color:#ffffffb8;justify-content:center;min-width:215px;position:relative;box-shadow:0 12px 28px #46073033}.library-feedback-card__button:hover{color:#72104f;background:#ffe7f3;border-color:#fff}.library-catalogue{padding-top:54px}.library-toolbar{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#17131fe0;border-radius:22px;grid-template-columns:minmax(280px,1fr) 210px 210px;gap:12px;padding:18px;display:grid}.library-search,.filter-field{gap:8px;display:grid}.library-toolbar label{color:#cfc9d3;letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:800}.library-toolbar input,.library-toolbar select{border:1px solid var(--line);color:#fff;width:100%;min-height:50px;font:inherit;background:#0e0c12;border-radius:12px;padding:0 15px}.library-toolbar input::placeholder{color:#77717e}.library-toolbar input:focus,.library-toolbar select:focus{border-color:#d17cb3;outline:none;box-shadow:0 0 0 3px #820d4b38}.catalogue-status{justify-content:space-between;align-items:center;gap:20px;min-height:64px;display:flex}.catalogue-status p{color:var(--muted);margin:0}.catalogue-status strong{color:#fff;font-size:1.25rem}.catalogue-status button{color:#dfa0c6;cursor:pointer;background:0 0;border:0;padding:8px 0;font-weight:700}.library-rails{gap:46px;display:grid}.song-rail{min-width:0}.song-rail__header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:17px;display:flex}.song-rail__header h2{letter-spacing:-.035em;font-size:clamp(1.65rem,2.6vw,2.35rem)}.song-rail__header p{max-width:680px;color:var(--muted);margin:7px 0 0;line-height:1.45}.song-rail__controls{flex:none;gap:8px;display:flex}.song-rail__controls button{color:#fff;width:43px;height:43px;font:inherit;cursor:pointer;background:#17131f;border:1px solid #ffffff24;border-radius:50%;font-size:1.15rem;transition:border-color .18s,background .18s,transform .18s}.song-rail__controls button:hover{background:#820d4b;border-color:#ff4f99b3;transform:translateY(-2px)}.song-rail__controls button:focus-visible{outline-offset:2px;outline:3px solid #ff4f998c}.song-rail__viewport{margin-inline:calc((100vw - min(var(--container), calc(100vw - 40px))) / -2);padding-inline:calc((100vw - min(var(--container), calc(100vw - 40px))) / 2);overflow:hidden}.song-rail__track{overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none;direction:ltr;grid-auto-columns:minmax(250px,280px);grid-auto-flow:column;align-items:start;gap:16px;padding:5px 2px 22px;display:grid;overflow-x:auto}.song-rail__track::-webkit-scrollbar{display:none}.song-rail__track:focus-visible{outline-offset:4px;border-radius:18px;outline:2px solid #ff4f998c}.song-rail__track .song-card{scroll-snap-align:start}.song-rail--compact .song-rail__track{grid-auto-columns:minmax(210px,235px)}.song-rail--compact .song-card{height:auto}.song-rail--compact .song-card__body{height:265px;min-height:265px;padding:18px}.song-rail--compact .song-card__meta{align-items:flex-start;min-height:2.4em;line-height:1.2}.song-rail--compact .song-card h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.2em;margin-top:12px;font-size:1.4rem;line-height:1.1;display:-webkit-box;overflow:hidden}.song-rail--compact .song-card__artist{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.8em;line-height:1.4;display:-webkit-box;overflow:hidden}.song-rail--compact .song-card__topic,.song-rail--compact .activity-badges{display:none}.song-rail--compact .button--card{min-height:42px;margin-top:auto;padding-block:10px}.library-empty{text-align:center;background:#ffffff06;border:1px dashed #e09ac640;border-radius:28px;align-content:center;place-items:center;min-height:360px;padding:50px 24px;display:grid}.library-empty span{background:radial-gradient(circle,#820d4b5c,#0000 65%);border:1px solid #e09ac640;border-radius:50%;width:72px;height:72px;margin-bottom:24px}.library-empty h2{font-size:clamp(1.8rem,4vw,2.7rem)}.library-empty p{color:var(--muted);margin:12px 0 24px}.library-signup-card{background:radial-gradient(circle at 95% 5%,#ff7eb857,#0000 36%),linear-gradient(125deg,#361034,#79114f 55%,#a42470);border:1px solid #ff8ece4d;border-radius:28px;grid-template-columns:minmax(0,1.3fr) minmax(210px,.9fr) auto;align-items:center;gap:clamp(22px,3vw,48px);min-height:220px;padding:clamp(24px,4vw,42px);display:grid;position:relative;box-shadow:0 22px 55px #46093c40}.library-signup-card__eyebrow{color:#ffc0e0;letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem;font-weight:800}.library-signup-card h2{letter-spacing:-.04em;font-size:clamp(1.9rem,3vw,3rem)}.library-signup-card__copy>p:last-child{color:#f2dbea;max-width:480px;margin:12px 0 0;line-height:1.5}.library-signup-card__benefits{gap:12px;margin:0;padding:0;list-style:none;display:grid}.library-signup-card__benefits li{color:#fff;align-items:baseline;gap:11px;font-weight:650;line-height:1.35;display:flex}.library-signup-card__benefits li:before{content:"✓";color:#fbd;font-weight:900}.library-signup-card__action{justify-items:center;gap:9px;display:grid}.library-signup-card__button{white-space:nowrap;color:#6c124c;background:#fff;justify-content:center;min-width:210px}.library-signup-card__button:hover{color:#6c124c;background:#ffe5f2}.library-signup-card__action>span{color:#f4d6e8;font-size:.79rem}.nav-auth--library .nav-login-popover{top:auto;bottom:calc(100% + 13px);right:0}.nav-auth--library .nav-login-popover:before{border:1px solid #ffffff21;border-top:0;border-left:0;top:auto;bottom:-7px}@keyframes library-equalizer{to{opacity:.58;transform:scaleY(.45)}}@media (max-width:900px){.library-hero{grid-template-columns:1fr 180px;gap:30px}.library-toolbar{grid-template-columns:1fr 1fr}.library-search{grid-column:1/-1}.library-rails{gap:40px}.library-signup-card{grid-template-columns:1fr 1fr}.library-signup-card__action{grid-column:1/-1;justify-self:start}}@media (max-width:620px){.library-page{width:calc(100% - 24px);padding-top:26px}.library-hero{border-radius:25px;grid-template-columns:1fr;min-height:auto;padding:42px 24px}.library-hero h1{font-size:clamp(2.6rem,12vw,4rem)}.library-wave{opacity:.55;justify-content:flex-start;height:90px}.library-wave i{max-height:82px}.library-feedback-card{border-radius:22px;grid-template-columns:1fr;gap:20px;min-height:0;margin-top:16px;padding:26px 22px}.library-feedback-card__button{width:100%;min-width:0}.library-toolbar{grid-template-columns:1fr;padding:14px}.library-search{grid-column:auto}.song-rail__header{align-items:center}.song-rail__header p{font-size:.9rem}.song-rail__controls button{width:38px;height:38px}.song-rail__viewport{margin-inline:-12px;padding-inline:12px}.song-rail__track{grid-auto-columns:minmax(226px,72vw);gap:12px;padding-bottom:16px}.song-rail--compact .song-rail__track{grid-auto-columns:minmax(205px,64vw)}.library-signup-card{border-radius:22px;grid-template-columns:1fr;gap:24px}.library-signup-card__action{grid-column:auto;justify-self:stretch;justify-items:stretch}.library-signup-card__button{width:100%}.nav-auth--library .nav-login-popover{left:0;right:auto}.nav-auth--library .nav-login-popover:before{left:28px;right:auto}}
.home-page{width:100%;overflow:hidden}.home-hero,.home-section,.final-cta{width:min(var(--container), calc(100% - 40px));margin-inline:auto}.home-hero{grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);align-items:center;gap:clamp(50px,7vw,110px);min-height:calc(100vh - 76px);padding:90px 0 110px;display:grid;position:relative}.home-hero:before{content:"";filter:blur(10px);background:radial-gradient(circle,#7e0d823d,#0000 68%);border-radius:50%;width:520px;height:520px;position:absolute;top:20px;right:-180px}.home-hero__content{z-index:2;animation:.7s both reveal-up;position:relative}.home-hero h1{max-width:740px}.home-hero__lead{max-width:650px;color:var(--muted);margin:28px 0 0;font-size:clamp(1.08rem,1.7vw,1.3rem);line-height:1.65}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.trust-line{color:#96909e;flex-wrap:wrap;align-items:center;gap:11px;margin:26px 0 0;font-size:.88rem;display:flex}.trust-line span{align-items:center;gap:11px;display:inline-flex}.trust-line span:not(:first-child):before{content:"";background:#d68ac7;border-radius:50%;flex:none;width:3px;height:3px}.learning-player{z-index:2;background:linear-gradient(160deg,#1e1727f5,#0c0a0ffa);border:1px solid #ffffff24;border-radius:32px;padding:24px;animation:.8s .12s both player-in;position:relative;box-shadow:0 50px 110px #00000085,0 0 80px #820d4b29}.learning-player:after{content:"";z-index:-1;background:#100b15;border:1px solid #7e0d8238;border-radius:32px;position:absolute;inset:10px -10px -10px 10px}.learning-player__topline,.learning-player__track,.song-card__meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.learning-player__topline{color:#9993a2;text-transform:uppercase;letter-spacing:.13em;font-size:.76rem;line-height:1.25}.learning-player__track{justify-content:flex-start;margin-top:21px}.learning-player__track-info{flex-direction:column;flex:1;justify-content:center;align-self:stretch;gap:4px;min-width:0;display:flex}.learning-player__track strong{font-family:var(--font-league-spartan);font-size:1.08rem;line-height:1.2;display:block}.learning-player__track span{color:var(--muted);font-size:.84rem;line-height:1.3;display:block}.learning-player__track button{color:#150711;background:#fff;border:0;border-radius:50%;flex:none;width:44px;height:44px;margin-left:auto}.mini-cover{border:1px solid #ffffff1f;border-radius:14px;flex:none;place-items:center;width:56px;height:56px;overflow:hidden;box-shadow:0 8px 22px #820d4b52;display:grid!important}.mini-cover img{object-fit:cover;width:100%;height:100%}.equalizer{align-items:center;gap:4px;height:72px;margin:22px 0 18px;display:flex;overflow:hidden}.equalizer i{height:calc(var(--bar) * 7px);max-height:62px;animation:1.5s ease-in-out infinite alternate equalize;animation-delay:calc(var(--bar) * -110ms);background:linear-gradient(#d158a2,#640b67);border-radius:5px;flex:1}.preview-lyric,.preview-vocab{border:1px solid var(--line);background:#ffffff09;border-radius:17px}.preview-lyric{padding:17px}.preview-lyric span,.preview-vocab span{color:#c98aaf;letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:800}.preview-lyric p{margin:9px 0 0;line-height:1.5}.preview-lyric strong{color:var(--vivid-pink);background:#ff4f9921;border-radius:7px;padding:3px 8px}.preview-vocab{grid-template-columns:auto 1fr;align-items:center;gap:3px 16px;margin:10px 0;padding:14px 16px;display:grid}.preview-vocab span{grid-column:1/-1}.preview-vocab strong{color:var(--vivid-pink)}.preview-vocab p{color:var(--muted);margin:0;font-size:.86rem}.player-progress{grid-template-columns:1fr auto;align-items:center;gap:12px;margin-top:16px;display:grid}.player-progress>span{background:linear-gradient(90deg,#b92b83 58%,#ffffff14 58%);border-radius:4px;height:4px}.player-progress small{color:#8d8794}.home-section{padding:120px 0}.section-intro{max-width:720px}.section-intro--wide{max-width:920px}.section-intro>p:last-child{max-width:620px;color:var(--muted);margin:22px 0 0;font-size:1.08rem;line-height:1.65}.library-preview{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:center;gap:clamp(50px,8vw,110px);display:grid}.library-preview__content>p:not(.eyebrow){max-width:650px;color:var(--muted);margin:24px 0 32px;font-size:1.08rem;line-height:1.65}.library-preview__visual{min-height:430px;box-shadow:var(--shadow);background:radial-gradient(circle at 100% 0,#7e0d8261,#0000 42%),linear-gradient(145deg,#1b1421,#0f0c13);border:1px solid #ffffff21;border-radius:30px;align-content:center;gap:18px;padding:30px;display:grid;position:relative;overflow:hidden}.library-preview__visual:before{content:"";border:1px solid #e09ac633;border-radius:50%;width:220px;height:220px;position:absolute;bottom:-110px;right:-85px;box-shadow:0 0 0 24px #7e0d820f,0 0 0 50px #7e0d820a}.library-preview__label{color:var(--vivid-pink);letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;font-size:.72rem;font-weight:800}.library-cover-stack{z-index:2;height:255px;position:relative}.library-cover{aspect-ratio:1;width:min(58%,220px);left:calc(var(--cover-index) * 19%);top:calc(var(--cover-index) * 8px);transform:rotate(calc((var(--cover-index) - 1) * 4deg));border:2px solid #fffc;border-radius:18px;transition:transform .22s,z-index;position:absolute;overflow:hidden;box-shadow:-18px 24px 50px #00000073}.library-cover img{object-fit:cover}.library-cover:hover,.library-cover:focus-visible{z-index:4;transform:translateY(-10px)rotate(0)}.library-preview__visual>p{z-index:2;gap:4px;margin:0;display:grid;position:relative}.library-preview__visual>p strong{font-family:var(--font-league-spartan);font-size:1.1rem}.library-preview__visual>p span{color:var(--muted);font-size:.88rem}.process-section{border-top:1px solid var(--line)}.process-grid{grid-template-columns:repeat(12,1fr);grid-auto-flow:dense;gap:14px;margin-top:52px;display:grid}.process-card{border:1px solid var(--line);background:linear-gradient(145deg,#18131f,#100e14);border-radius:24px;outline:none;min-height:260px;padding:28px;transition:transform .22s,border-color .22s,background .22s,box-shadow .22s}.process-card:nth-child(-n+3){grid-column:span 4}.process-card:nth-child(n+4){grid-column:span 6}.process-card:hover,.process-card:focus-visible{background:linear-gradient(145deg,#71116f,#3f0a64);border-color:#ff9ad38c;transform:translateY(-5px);box-shadow:0 22px 52px #4f086557}.process-card h3{margin-top:30px;font-size:1.42rem}.process-card p{color:var(--muted);margin:12px 0 0;line-height:1.6;transition:color .22s}.process-card:hover p,.process-card:focus-visible p{color:#f2e5f0}.process-icon{width:62px;height:62px;color:var(--vivid-pink);font-family:var(--font-league-spartan);background:#ff4f991f;border-radius:18px;place-items:center;font-weight:800;transition:color .22s,background .22s;display:grid;position:relative}.process-icon i{border:1px solid #e09ac629;border-radius:22px;transition:border-color .22s,transform .22s;position:absolute;inset:-7px;transform:rotate(8deg)}.process-card:hover .process-icon,.process-card:focus-visible .process-icon{color:#fff;background:#ffffff24}.process-card:hover .process-icon i,.process-card:focus-visible .process-icon i{border-color:#ffffff61;transform:rotate(0)}.paths-section{grid-template-columns:1fr 1fr;gap:18px;display:grid}.path-panel{border-radius:30px;padding:clamp(34px,5vw,58px);position:relative;overflow:hidden}.path-panel h2{font-size:clamp(2rem,3.4vw,3.3rem)}.path-panel>p:not(.eyebrow){max-width:580px;margin:22px 0 0;line-height:1.65}.path-panel ul{gap:12px;margin:30px 0 34px;padding:0;list-style:none;display:grid}.path-panel li{align-items:center;gap:10px;display:flex}.path-panel li:before{content:"";background:currentColor;border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 4px #ffffff14}.path-panel--student{background:linear-gradient(140deg,#a11963,#5d0a64 70%,#31074e);box-shadow:0 28px 80px #820d4b40}.path-panel--student .eyebrow,.final-cta .eyebrow{color:#f7c7e4}.path-panel--teacher{border:1px solid var(--line);background:linear-gradient(145deg,#1a1620,#100e14)}.path-panel--teacher>p:not(.eyebrow),.path-panel--teacher li{color:var(--muted)}.music-benefits{grid-template-columns:.9fr 1.1fr;align-items:start;gap:90px;display:grid}.benefit-heading{position:sticky;top:120px}.benefit-list{border-top:1px solid var(--line)}.benefit-list article{border-bottom:1px solid var(--line);grid-template-columns:55px 1fr;gap:20px;padding:28px 0;display:grid}.benefit-list article>span{color:var(--vivid-pink);letter-spacing:.12em;font-size:.78rem}.benefit-list h3{font-size:1.45rem}.benefit-list p{color:var(--muted);margin:10px 0 0;line-height:1.6}.final-cta{text-align:center;background:radial-gradient(circle at 50% 120%,#7e0d8299,#0000 50%),linear-gradient(145deg,#840e4e,#3b0764);border:1px solid #ffffff24;border-radius:36px;margin-top:70px;padding:clamp(58px,9vw,110px);position:relative;overflow:hidden;box-shadow:0 35px 100px #3b07644d}.final-cta>:not(.final-cta__wave){z-index:1;position:relative}.final-cta h2{max-width:850px;margin:0 auto}.final-cta>p:not(.eyebrow){color:#e8dce5;max-width:620px;margin:22px auto 30px;font-size:1.08rem;line-height:1.65}.teacher-link{color:#f0d8e7;width:fit-content;margin:22px auto 0;font-size:.92rem;display:block}.final-cta__wave{opacity:.13;pointer-events:none;background:repeating-radial-gradient(at 50% 110%,#0000 0 20px,#fff 21px 22px,#0000 23px 40px);position:absolute;inset:0}@keyframes reveal-up{0%{opacity:0;transform:translateY(20px)}}@keyframes player-in{0%{opacity:0;transform:translate(20px,24px)rotate(3deg)}}@keyframes equalize{to{opacity:.62;transform:scaleY(.45)}}
@media (max-width:1040px){.nav-shell{width:min(100% - 28px, var(--container))}.main-nav{gap:16px}.nav-actions{gap:10px}.main-nav a{font-size:.86rem}.home-hero{grid-template-columns:1fr 420px;gap:45px}}@media (max-width:960px){.menu-toggle{display:block}.nav-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#111016fa;border-radius:18px;align-items:stretch;padding:20px;display:none;position:absolute;top:68px;left:14px;right:14px}.nav-panel.is-open{display:grid}.main-nav,.nav-actions{flex-direction:column;align-items:stretch;gap:6px}.main-nav a,.nav-login{text-align:left;padding:12px 10px}.nav-actions{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.nav-user{justify-content:space-between;padding:0 10px}.nav-auth{width:100%}.nav-login-popover{box-sizing:border-box;width:100%;box-shadow:none;margin-top:4px;position:static}.nav-login-popover:before{display:none}.nav-email-login{flex-direction:column;align-items:stretch}.nav-email-login input{box-sizing:border-box;width:100%}.home-hero{grid-template-columns:1fr;min-height:auto;padding:78px 0 100px}.home-hero h1{max-width:700px}.learning-player{justify-self:center;width:min(100%,560px);transform:none}.library-preview{grid-template-columns:1fr}.process-card:nth-child(n){grid-column:span 6}.process-card:last-child{grid-column:1/-1}.paths-section,.music-benefits{grid-template-columns:1fr;gap:18px}.benefit-heading{margin-bottom:34px;position:static}.lesson-hero{grid-template-columns:190px 1fr;gap:28px}.lesson-cover{min-height:240px}.lesson-progress ol{display:none}.lesson-progress__mobile{justify-content:space-between;align-items:center;display:flex}.lesson-progress__mobile:after{content:"";background:linear-gradient(90deg, var(--brand) 35%, #ffffff14 35%);border-radius:3px;height:3px;position:absolute;bottom:10px;left:22px;right:22px}.lesson-progress{padding-bottom:20px;position:relative}.activity-layout,.order-layout,.report-grid{grid-template-columns:1fr}.drop-zone{flex-direction:column;align-items:flex-start}.placed-card{margin-left:0}.footer-shell{grid-template-columns:minmax(0,1fr)}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}}@media (max-width:580px){.nav-shell,.home-hero,.home-section,.final-cta,.footer-shell,.footer-bottom,.page-shell{width:min(100% - 24px, var(--container))}.nav-shell{min-height:68px}.brand-mark{gap:8px;font-size:.88rem}.brand-logo{border-radius:9px;width:34px;height:34px}.nav-panel{max-height:calc(100vh - 82px);top:68px;left:12px;right:12px;overflow-y:auto}h1{font-size:clamp(2.45rem,12.5vw,3.45rem);line-height:.98}h2{font-size:clamp(2rem,9.5vw,2.75rem);line-height:1.04}.home-section{padding:72px 0}.home-hero{gap:38px;padding:50px 0 64px}.home-hero__lead{margin-top:20px;font-size:1rem;line-height:1.58}.hero-actions{grid-template-columns:1fr;margin-top:26px;display:grid}.hero-actions .button,.library-preview__content .button{width:100%}.trust-line{gap:8px;margin-top:22px;line-height:1.45;display:grid}.trust-line span:not(:first-child):before{width:5px;height:5px}.trust-line span:first-child:before{content:"";background:#d68ac7;border-radius:50%;flex:none;width:5px;height:5px}.learning-player{box-sizing:border-box;border-radius:24px;width:100%;padding:18px}.learning-player:after{display:none}.learning-player__topline{letter-spacing:.08em;gap:8px;font-size:.67rem}.learning-player__track{gap:10px;margin-top:17px}.learning-player__track button{width:42px;height:42px}.mini-cover{border-radius:12px;width:50px;height:50px}.equalizer{gap:2px;height:52px;margin:17px 0 14px}.equalizer i{height:calc(var(--bar) * 5px)}.preview-lyric{padding:14px}.preview-vocab{grid-template-columns:1fr}.preview-vocab span{grid-column:auto}.preview-vocab p{margin-top:4px}.player-progress{grid-template-columns:1fr;gap:8px}.player-progress small{text-align:right}.library-preview{gap:38px}.library-preview__content>p:not(.eyebrow){margin:18px 0 26px;font-size:1rem}.library-preview__visual{border-radius:24px;min-height:0;padding:22px}.library-cover-stack{height:210px}.library-cover{width:min(56%,180px);left:calc(var(--cover-index) * 18%);border-radius:14px}.process-grid{grid-template-columns:1fr;gap:10px;margin-top:34px}.process-card:nth-child(n){grid-column:auto;min-height:0;padding:24px}.process-card h3{margin-top:24px}.paths-section{padding-inline:0}.path-panel{border-radius:24px;padding:30px 24px}.path-panel h2{font-size:clamp(1.9rem,9vw,2.5rem)}.path-panel ul{margin:24px 0 28px}.path-panel .button{width:100%;padding-inline:14px}.music-benefits{gap:0}.benefit-heading{margin-bottom:26px}.benefit-list article{grid-template-columns:36px 1fr;gap:12px;padding:24px 0}.final-cta{border-radius:25px;margin-top:40px;padding:58px 22px}.final-cta .button{width:100%}.teacher-link{width:100%;line-height:1.5}.site-footer{margin-top:56px}.footer-shell{gap:34px;padding:48px 0 38px}.footer-nav{gap:14px 20px}.footer-bottom{flex-direction:column;align-items:flex-start;padding:22px 0}.lesson-page{padding-top:22px}.lesson-hero{grid-template-columns:1fr;gap:24px;padding:16px}.lesson-cover{min-height:150px}.lesson-hero__content{padding:0 4px 8px}.lesson-meta{gap:12px 22px}.card{border-radius:22px;padding:22px 18px}.spotify-frame iframe{height:160px}.lyric-line{font-size:1rem;line-height:2}.inline-drop-zone,.word-drop-zone{min-height:43px;margin-block:3px}.icon-card{width:58px;height:58px}.actions .action-btn,.report-form .action-btn{width:100%}}@media (max-width:360px){.brand-mark{font-size:.8rem}.brand-logo{width:32px;height:32px}.menu-toggle{width:42px;height:42px}.learning-player__topline{flex-direction:column;align-items:flex-start}.learning-player__track strong{font-size:1rem}.library-cover-stack{height:185px}.path-panel{padding-inline:20px}}
.favorite-button{z-index:4;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #fff3;transition:transform .18s,background .18s,border-color .18s;position:absolute}.favorite-button--card{background:#08070bb3;border-radius:50%;place-items:center;width:42px;height:42px;font-size:1.28rem;display:grid;top:14px;right:14px}.favorite-button--lesson{font:inherit;background:#08070bb8;border-radius:999px;align-items:center;gap:7px;padding:9px 13px;display:inline-flex;top:14px;right:14px}.favorite-button:hover,.favorite-button.is-favorite{background:#820d4b;border-color:#ff4f99bf;transform:translateY(-2px)}.favorite-button:focus-visible{outline-offset:3px;outline:3px solid #ff4f9999}.favorite-button:disabled{opacity:.55;cursor:wait}.learning-toast{z-index:100;color:#55113d;background:#f8edf4;border-radius:11px;min-width:0;margin:0;padding:11px 15px;font-size:.88rem;font-weight:750;position:fixed;bottom:22px;right:22px;box-shadow:0 15px 40px #0000004d}.learning-toast:empty{display:none}.homework-save-status{color:#7f2860;margin:-2px 0 3px;font-size:.84rem;font-weight:700}.nav-learning-link{color:var(--soft-white);font-size:.87rem;font-weight:800;text-decoration:none}.nav-learning-link:hover{color:var(--vivid-pink)}.song-card{position:relative}.learning-page{width:min(var(--container), calc(100% - 40px));margin:0 auto;padding:58px 0 110px}.learning-hero{border:1px solid var(--line);box-shadow:var(--shadow);background:radial-gradient(circle at 86% 8%,#ff4f9929,#0000 30%),linear-gradient(145deg,#1c1320,#0e0c12);border-radius:32px;grid-template-columns:1fr auto;align-items:center;gap:48px;padding:clamp(34px,6vw,70px);display:grid}.learning-hero h1,.learning-signin h1{max-width:780px;font-size:clamp(2.8rem,5vw,5rem)}.learning-hero>div>p:last-child,.learning-signin>p{max-width:680px;color:var(--muted);margin-top:20px;font-size:1.05rem;line-height:1.6}.learning-stats{grid-template-columns:repeat(3,minmax(110px,1fr));gap:10px;display:grid}.learning-stats div{border:1px solid var(--line);background:#ffffff0a;border-radius:17px;align-content:center;min-height:120px;padding:18px;display:grid}.learning-stats strong{color:var(--vivid-pink);font-size:2rem}.learning-stats span{color:var(--muted);margin-top:5px;font-size:.82rem;line-height:1.3}.learning-section{margin-top:58px}.learning-section__heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px;display:flex}.learning-section__heading h2{font-size:clamp(1.9rem,3vw,2.8rem)}.learning-section__heading>a{color:#efa8d1;font-weight:750}.learning-favorites{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;display:grid}.learning-favorite-card{border:1px solid var(--line);color:#fff;background:#17131f;border-radius:17px;align-items:center;gap:13px;min-width:0;padding:11px;text-decoration:none;display:flex}.learning-favorite-card>span{aspect-ratio:1;border-radius:11px;flex:none;width:68px;position:relative;overflow:hidden}.learning-favorite-card img{object-fit:cover}.learning-favorite-card div{gap:4px;min-width:0;display:grid}.learning-favorite-card strong,.learning-favorite-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.learning-favorite-card small{color:var(--muted)}.learning-history{gap:11px;display:grid}.learning-history-card{border:1px solid var(--line);background:#17131f;border-radius:18px;grid-template-columns:76px minmax(220px,1fr) auto auto;align-items:center;gap:18px;padding:14px;display:grid}.learning-history-card>img{object-fit:cover;border-radius:12px}.learning-history-card h3{font-size:1.2rem}.learning-history-card p{color:var(--muted);margin:4px 0 0;font-size:.82rem}.learning-progress{background:#ffffff14;border-radius:99px;height:7px;margin-top:13px;position:relative}.learning-progress>span{border-radius:inherit;background:linear-gradient(90deg,#820d4b,#ff4f99);height:100%;display:block}.learning-progress small{color:#aaa4b0;position:absolute;top:10px;left:0}.learning-history-card__details{gap:4px;min-width:115px;display:grid}.learning-history-card__details span{color:var(--muted);font-size:.8rem}.learning-history-card .button{margin:0}.learning-history-card__actions{gap:7px;display:grid}.learning-restart{color:#c99ab8;font:inherit;cursor:pointer;background:0 0;border:0;padding:5px;font-size:.76rem;font-weight:700}.learning-restart:hover{color:var(--vivid-pink)}.learning-restart:disabled{opacity:.55;cursor:wait}.learning-empty{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:17px;padding:30px}.learning-signin{border:1px solid var(--line);max-width:900px;box-shadow:var(--shadow);background:linear-gradient(145deg,#1d1422,#0d0b10);border-radius:32px;margin:40px auto;padding:clamp(38px,7vw,78px)}.learning-signin__auth{border:1px solid var(--line);background:#17131f;border-radius:12px;width:fit-content;margin-top:28px;padding:0 12px}@media (max-width:980px){.learning-hero{grid-template-columns:1fr}.learning-favorites{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-history-card{grid-template-columns:64px 1fr auto}.learning-history-card>img{width:64px;height:64px}.learning-history-card__details{grid-column:2}.learning-history-card__actions{grid-area:1/3/span 2}}@media (max-width:620px){.learning-page{width:calc(100% - 24px);padding-top:28px}.learning-hero{border-radius:24px;padding:30px 22px}.learning-stats{grid-template-columns:1fr}.learning-stats div{min-height:86px}.learning-favorites{grid-template-columns:1fr}.learning-history-card{grid-template-columns:58px 1fr;gap:12px}.learning-history-card>img{width:58px;height:58px}.learning-history-card__details,.learning-history-card__actions{grid-area:auto/1/auto/-1}.learning-history-card .button{width:100%}.learning-toast{text-align:center;bottom:12px;left:12px;right:12px}}
