.topbar{z-index:35;background:var(--bg);isolation:isolate;position:sticky;top:0}.arcade-dock{z-index:40;position:fixed;bottom:20px;right:22px}.daily-quest-dock{border:1.5px solid var(--night-line-lavender,#d2b9cf);background:var(--night-surface-honey-soft,#fff9f0);min-height:60px;box-shadow:0 5px 22px var(--night-shadow-25,#80667e25), 0 3px 0 var(--night-shadow,#d9c5d8);border-radius:18px;align-items:center;gap:9px;padding:10px 17px 10px 10px;display:flex;position:relative}.daily-quest-dock.ready{background:var(--night-surface-mint-soft,#eef5e5);border-color:var(--night-line-mint,#b3c89d)}.daily-quest-dock.done{background:var(--night-surface-lavender-soft,#f4eef7)}.daily-quest-dock strong{color:var(--night-ink-lavender-soft,#735971);font-size:11px;display:block}.daily-quest-dock small{color:var(--night-ink-neutral-soft,#827482);margin-top:5px;font-size:9px;display:block}.dock-capsule{width:36px}.dock-notice-dot{border:2px solid var(--night-line-honey,#fff8ef);background:var(--night-surface-rose-bold,#d894ab);border-radius:50%;width:11px;height:11px;position:absolute;top:-4px;right:8px}.ready .dock-notice-dot{background:var(--night-surface-mint-bold,#81b48c)}.quest-mobile-badge{border:2px solid var(--night-line-honey,#fff9ef);background:var(--night-surface-lavender-mid,#e2cee8);min-width:20px;height:20px;color:var(--night-ink-lavender-soft,#795b80);border-radius:50%;place-items:center;font-size:9px;font-weight:700;display:none;position:absolute;top:-5px;right:-4px}.daily-quest-dock.compact{border-radius:17px;justify-content:center;width:50px;height:50px;min-height:50px;padding:5px}.daily-quest-dock.compact>span:nth-child(2),.daily-quest-dock.compact .dock-notice-dot{display:none}.daily-quest-dock.compact .dock-capsule{width:37px}.daily-quest-dock.compact .quest-mobile-badge{display:grid}.ready .quest-mobile-badge,.done .quest-mobile-badge{background:var(--night-surface-mint-mid,#bcd9a9);color:var(--night-ink-mint-strong,#466f43)}.companion-playground{pointer-events:none;z-index:41;position:fixed;inset:8px}.draggable-companion{pointer-events:auto;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;width:76px;position:absolute;bottom:83px;right:30px}.draggable-companion:active{cursor:grabbing}.companion-drag-handle{touch-action:none;border-radius:20px}.companion-drag-handle>svg{filter:drop-shadow(0 4px 3px #80667e23)}.companion-drag-hint{color:var(--night-ink-lavender-soft,#94748b);text-align:center;background:var(--night-surface-honey-soft-ed,#fff8efed);white-space:nowrap;border-radius:8px;font-size:9px;line-height:14px;display:block}.companion-speech{border:1px solid var(--night-line-lavender,#d8bfd7);background:var(--night-surface-honey-soft,#fffaf3);width:215px;color:var(--night-ink-lavender-soft,#856381);box-shadow:0 5px 20px var(--night-shadow-23,#b592b523);cursor:auto;touch-action:auto;border-radius:16px 16px 4px;padding:13px 29px 13px 15px;font-size:11px;line-height:1.7;position:absolute;bottom:calc(100% + 8px);right:0}.companion-speech:after{content:"";border-right:1px solid var(--night-line-lavender,#d8bfd7);border-bottom:1px solid var(--night-line-lavender,#d8bfd7);background:var(--night-surface-honey-soft,#fffaf3);width:10px;height:10px;position:absolute;bottom:-6px;right:22px;transform:rotate(45deg)}.companion-speech.speech-below{border-radius:4px 16px 16px;top:calc(100% + 8px);bottom:auto}.speech-below:after{border-bottom:0;border-right:0;border-left:1px solid var(--night-line-lavender,#d8bfd7);border-top:1px solid var(--night-line-lavender,#d8bfd7);top:-6px;bottom:auto}.companion-speech.speech-left{left:0;right:auto}.speech-left:after{left:22px;right:auto}.companion-speech button{width:25px;height:25px;color:var(--night-ink-lavender-soft,#987d95);background:0 0;font-size:18px;position:absolute;top:6px;right:5px}.main-shell footer{padding-bottom:130px}@media (max-width:650px){.arcade-dock{bottom:14px;right:14px}.daily-quest-dock{border-radius:17px;justify-content:center;width:50px;height:50px;min-height:50px;padding:5px}.daily-quest-dock>span:nth-child(2){display:none}.dock-capsule{width:37px}.quest-mobile-badge{border:2px solid var(--night-line-honey,#fff9ef);background:var(--night-surface-lavender-mid,#e2cee8);min-width:20px;height:20px;color:var(--night-ink-lavender-soft,#795b80);border-radius:50%;place-items:center;font-size:9px;font-weight:700;display:grid;position:absolute;top:-5px;right:-4px}.ready .quest-mobile-badge,.done .quest-mobile-badge{background:var(--night-surface-mint-mid,#bcd9a9);color:var(--night-ink-mint-strong,#466f43)}.dock-notice-dot{display:none}.draggable-companion{width:62px;bottom:70px;right:4px}.companion-drag-hint{font-size:8px}.companion-speech{width:195px;font-size:10px}}
.capsule-shop-status{border:1px solid var(--night-line-rose,#ddc8cf);background:var(--night-surface-honey-soft,#fff7ed);border-radius:18px;align-items:center;gap:14px;margin-bottom:20px;padding:16px 20px;display:flex}.capsule-shop-status>span{color:var(--night-ink-lavender-soft,#b587aa);font-size:28px}.capsule-shop-status strong{font-size:13px}.capsule-shop-status p{color:var(--night-ink-neutral-soft,#897486);margin-top:3px;font-size:11px;line-height:1.8}.capsule-shop-status .button{white-space:nowrap;margin-left:auto;font-size:11px}.capsule-shop{isolation:isolate;background:0 0;border:0;border-radius:0;padding:0 0 33px;position:relative;container-type:inline-size}.capsule-shop-stage{aspect-ratio:5/3;margin-bottom:max(0px,100px - 11cqw);position:relative}.capsule-shop-backdrop{z-index:-2;pointer-events:none;position:absolute;inset:0}.candy-shop-scenery{width:100%;height:100%;display:block}.shop-wind-chime{transform-box:view-box;transform-origin:169px 77px;animation:7s ease-in-out infinite shop-chime-breeze}.shop-leaf-sprig{transform-box:view-box;transform-origin:0 46px;animation:9s ease-in-out infinite shop-leaf-breeze}.shop-potted-leaves{transform-box:view-box;transform-origin:1160px 554px;animation:8s ease-in-out -2s infinite shop-leaf-breeze}.shop-noren-panel{transform-box:view-box;animation:10s ease-in-out infinite shop-curtain-breeze}@keyframes shop-chime-breeze{0%,to{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}@keyframes shop-leaf-breeze{0%,to{transform:rotate(-1deg)}50%{transform:rotate(2deg)}}@keyframes shop-curtain-breeze{0%,to{transform:rotate(0)}35%{transform:rotate(.8deg)}70%{transform:rotate(-.6deg)}}@media (prefers-reduced-motion:reduce){.shop-wind-chime,.shop-leaf-sprig,.shop-potted-leaves,.shop-noren-panel{animation:none}}.capsule-shop-sign{color:var(--night-ink-honey-soft,#fff1d6);text-shadow:0 2px 0 var(--night-shadow-4d,#4e58794d);text-align:center;width:min(560px,75%);padding:3px 10px;position:absolute;top:14%;left:50%;transform:translate(-50%)}.capsule-shop-sign>span{font-size:clamp(18px,3cqw,40px);font-weight:700;line-height:1.2;display:block}.capsule-shop-sign small{letter-spacing:clamp(.6px,.1cqw,1.5px);margin-top:clamp(3px,.5cqw,6px);font-size:clamp(5px,.65cqw,8px);display:block}.capsule-shop-machines{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:0;display:grid;position:absolute;top:23.3333%;left:10%;right:10%}.shop-machine{text-align:center;min-width:0;position:relative}.dropped-capsule-button{z-index:3;aspect-ratio:1;border:1.5px dashed var(--night-line-rose,#c493aa);min-width:48px;box-shadow:0 0 0 4px var(--night-shadow-44,#fff8e044);background:0 0;border-radius:50%;padding:0;position:absolute;translate:-50% -50%}.dropped-capsule-button:focus-visible{outline:3px solid var(--night-line-lavender,#a980a6);outline-offset:3px}.dropped-capsule-hint{white-space:nowrap;border:1px solid var(--night-line-lavender,#d5b2c5);background:var(--night-surface-honey-soft,#fff8ef);color:var(--night-ink-lavender-soft,#986e8a);border-radius:10px;padding:4px 7px;font-size:9px;position:absolute;bottom:calc(100% + 4px);left:50%;translate:-50%}.mobile-season-accents,.mobile-shop-season-title{display:none}.shop-machine-body{width:100%;position:relative}.shop-machine-art{filter:drop-shadow(0 8px 3px #9b6c5730);width:100%;height:auto;display:block;overflow:visible}.shop-machine-knob{z-index:2;aspect-ratio:1;background:0 0;border:0;border-radius:50%;place-items:center;min-width:44px;padding:0;display:grid;position:absolute;translate:-50% -50%}.shop-machine-poke{z-index:1;background:0 0;border:0;border-radius:24px;width:100%;padding:0;position:absolute;inset:0}.shop-machine-poke:focus-visible{outline:2px dashed var(--night-line-lavender,#a980a6);outline-offset:3px}.shop-machine-poke:disabled{cursor:default}.shop-machine-knob:hover:not(:disabled){box-shadow:0 0 0 4px var(--night-shadow-88,#fff6de88)}.shop-machine-knob:focus-visible{outline:3px solid var(--night-line-lavender,#a980a6);outline-offset:3px}.shop-machine-knob:disabled{opacity:.6}.shop-machine-spin{border:1px solid var(--night-line-honey,#b18675);background:var(--night-surface-honey-soft,#fff3df);width:90%;min-height:38px;box-shadow:0 3px 0 var(--night-shadow-70,#a5796370);color:var(--night-ink-rose-soft,#835a50);border-radius:12px;margin:8px auto 0;font-size:11px;font-weight:700;display:block}.machine-running .shop-machine-spin{background:var(--night-surface-rose-mid,#f7d2da)}.shop-machine-count{min-height:29px;color:var(--night-ink-rose-soft,#805b59);background:var(--night-surface-honey-soft-cf,#fff7e8cf);border-radius:9px;margin:8px 3px 0;padding:7px 3px;font-size:9px;line-height:1.6;display:block}.capsule-shop-floor-note{text-align:center;color:var(--night-ink-rose-soft,#805e62);background:var(--night-surface-honey-soft-db,#fff7e3db);border-radius:12px;width:fit-content;margin:24px auto 0;padding:7px 17px;font-size:10px;line-height:1.8}.arcade-dialog:has(.capsule-reveal){max-width:480px}.arcade-dialog:has(.capsule-reveal) .arcade-dialog-content{padding:18px}.arcade-dialog:has(.capsule-reveal) .arcade-dialog-content>h2{margin-bottom:14px;font-size:19px}.arcade-dialog .capsule-reveal{max-width:100%;margin:0;padding:16px}@media (max-width:1050px) and (min-width:801px){.shop-machine-spin{font-size:9px}.shop-machine-count{font-size:8px}}@media (max-width:800px){.capsule-shop{padding:12px 0 25px}.capsule-shop-stage{aspect-ratio:auto;margin-bottom:0}.capsule-shop-backdrop,.capsule-shop-sign{display:none}.capsule-shop-machines{grid-template-columns:minmax(0,1fr);gap:55px;position:relative;top:auto;left:auto;right:auto}.shop-machine{width:min(265px,100% - 60px);margin:auto}.mobile-shop-season-title{text-align:center;color:var(--night-ink-rose-soft,#a58091);margin:0 0 22px;font-size:11px;display:block}.mobile-season-accents{pointer-events:none;display:block;position:absolute;inset:0}.season-accent-rail{width:50px;height:275px;position:absolute;top:55px}.rail-left{left:-32px}.rail-right{top:170px;right:-32px}.season-accent-sway{transform-box:fill-box;transform-origin:50%;animation:9s ease-in-out infinite shop-leaf-breeze}@media (prefers-reduced-motion:reduce){.season-accent-sway{animation:none}}.shop-machine-knob{min-width:44px}.shop-machine-spin{min-height:44px;font-size:12px}.shop-machine-count{font-size:10px}.capsule-shop-status{flex-wrap:wrap;padding:13px}.capsule-shop-status>div{flex:1}.capsule-shop-status .button{margin-left:0}.capsule-odds{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sidebar-toggle{z-index:1;border:1.5px solid var(--night-line-lavender,#c6aed1);width:44px;height:44px;color:var(--night-ink-lavender-soft,#8e729f);background:var(--night-surface-lavender-soft,#f6e9f3);box-shadow:0 3px 0 var(--night-shadow,#d7c5dc);border-radius:16px 16px 16px 6px;place-items:center;display:grid;position:absolute;top:86px;right:-20px}.sidebar-toggle>span:first-child{font-size:31px;line-height:1}.sidebar-toggle-spark{color:var(--night-ink-rose-soft,#c99eaf);font-size:8px;position:absolute;top:4px;right:4px}@media (min-width:721px){.app-shell{--sidebar-expanded:242px;--sidebar-width:var(--sidebar-expanded)}.app-shell.shell-collapsed{--sidebar-width:80px}.sidebar{width:var(--sidebar-width);transition:width .38s cubic-bezier(.34,1.18,.64,1),padding .38s}.main-shell{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));transition:margin-left .38s cubic-bezier(.34,1.18,.64,1),width .38s cubic-bezier(.34,1.18,.64,1)}.brand-text,.nav-item-label{white-space:nowrap}.shell-collapsed .sidebar{padding-inline:14px}.shell-collapsed .brand{justify-content:center;padding:0}.shell-collapsed .brand-text,.shell-collapsed .nav-label,.shell-collapsed .nav-item-label,.shell-collapsed .nav-item small,.shell-collapsed .sidebar-prompt,.shell-collapsed .sidebar-member-name,.shell-collapsed .sidebar-member-badges,.shell-collapsed .member-online{display:none}.shell-collapsed .sidebar nav{margin-top:64px}.shell-collapsed .nav-item{justify-content:center;min-height:48px;padding:13px 0}.shell-collapsed .sidebar-member{padding:17px 0 0}.shell-collapsed .sidebar-member-row{justify-content:center}.shell-collapsed .sidebar-member-loading{font-size:0}.shell-collapsed .sidebar-member-loading:after{content:"✿";font-size:22px}}@media (max-width:1200px) and (min-width:721px){.app-shell{--sidebar-expanded:218px}}@media (max-width:1000px) and (min-width:721px){.app-shell{--sidebar-expanded:188px}}@media (max-width:720px){.sidebar-toggle{display:none}}
.capsule-carousel{max-width:390px;margin:0 auto}.capsule-carousel-controls{grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;gap:12px;padding:0 8px;display:grid}.carousel-paw{border:1px solid var(--night-line-lavender,#dec9d8);background:var(--night-surface-honey-soft,#fff6ec);width:56px;height:56px;box-shadow:0 3px 0 var(--night-shadow,#ddc9d7);border-radius:22px 22px 18px 18px;padding:4px}.carousel-paw svg{width:100%;height:100%}.carousel-paw:disabled{opacity:.5;cursor:default}.carousel-label{text-align:center;color:var(--night-ink-lavender-soft,#8c6885)}.carousel-label strong{font-size:14px;display:block}.carousel-label small{color:var(--night-ink-lavender-soft,#a08596);margin-top:6px;font-size:9px;line-height:1.5;display:block}.capsule-carousel-viewport{touch-action:pan-y pinch-zoom;border-radius:20px;padding:14px 28px 16px;position:relative;overflow:hidden}.capsule-carousel-slide{transform-origin:50% 75%;width:100%}.capsule-carousel .shop-machine{width:min(265px,100%)}.capsule-carousel[data-moving=true] .shop-machine{pointer-events:none}.capsule-carousel .shop-machine-count{min-height:32px}.carousel-capsule-dots{justify-content:center;gap:5px;margin:0 auto 8px;display:flex}.carousel-capsule-dots button{background:0 0;border-radius:16px;place-items:center;width:44px;height:44px;padding:0;display:grid}.carousel-capsule-dots button>span{border:1.5px solid var(--night-line-lavender,#bba4b5);background:linear-gradient(var(--night-surface-honey-soft,#fffdf4) 48%, var(--night-surface-lavender-bold,#bba4b5) 48% 54%, var(--pool-color) 54%);opacity:.6;border-radius:50%;width:18px;height:24px;transition:transform .2s,opacity .2s;transform:rotate(-12deg)}.carousel-capsule-dots .chosen{background:var(--night-surface-lavender-soft,#f6e8f0)}.carousel-capsule-dots .chosen>span{opacity:1;transform:rotate(10deg)scale(1.15)}.carousel-paw:focus-visible,.carousel-capsule-dots button:focus-visible,.capsule-carousel-viewport:focus-visible{outline:2px solid var(--night-line-lavender,#b089b5);outline-offset:3px}
.arcade-currency{vertical-align:middle;flex:none;display:inline-block;overflow:visible}.currency-body,.currency-sparkles{transform-box:fill-box;transform-origin:50%}.currency-body{animation:.52s cubic-bezier(.22,1,.36,1) both currency-arrive}.currency-sparkles{animation:.75s ease-out both currency-twinkle}:where(a,button,.arcade-wallet>span,.reward-chips>span):hover .currency-body,:where(a,button):focus-visible .currency-body,.arcade-currency:hover .currency-body{animation:.65s ease-in-out currency-wiggle}:where(a,button,.arcade-wallet>span,.reward-chips>span):hover .currency-sparkles,:where(a,button):focus-visible .currency-sparkles,.arcade-currency:hover .currency-sparkles{animation:.75s ease-out currency-twinkle}.currency-price,.currency-summary{justify-content:center;align-items:center;gap:5px;display:inline-flex}.currency-summary{flex-wrap:wrap}.reward-chips>span{align-items:center;gap:5px;display:inline-flex}.mochi-jackpot{width:150px;height:150px;margin:auto}.ticket-art .arcade-currency{width:140px;height:140px}.ticket-art{line-height:1;transform:none}@keyframes currency-arrive{0%{transform:translateY(3px)scale(.85)}55%{transform:translateY(-2px)scale(1.06)}to{transform:translateY(0)scale(1)}}@keyframes currency-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)translateY(-2px)}55%{transform:rotate(8deg)translateY(-1px)}80%{transform:rotate(-3deg)}}@keyframes currency-twinkle{0%{opacity:.35;transform:scale(.75)}50%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.arcade-currency .currency-body,.arcade-currency .currency-sparkles{animation:none!important}}
.member-portrait{vertical-align:middle;flex:none;display:inline-flex;position:relative}.member-portrait .collected-avatar{width:100%;height:100%;overflow:visible}.member-portrait .collected-frame{pointer-events:none;width:124%;height:124%;position:absolute;inset:-12%;overflow:visible}.portrait-art{transform-box:fill-box;transform-origin:50%}.portrait-tier-3 .portrait-character{animation:5s ease-in-out infinite portrait-float}.portrait-tier-3 .portrait-clouds{animation:7s ease-in-out infinite portrait-cloud}.portrait-tier-3 .portrait-stardust{animation:4s ease-in-out infinite portrait-twinkle}.portrait-tier-4 .portrait-character{animation:4s ease-in-out infinite portrait-dream}.portrait-tier-4 .portrait-clouds{animation:5s ease-in-out infinite portrait-cloud}.portrait-tier-4 .portrait-stardust{animation:3s ease-in-out infinite portrait-twinkle}.portrait-tier-4 .portrait-orbit{transform-origin:60px 60px;animation:18s linear infinite portrait-orbit}.portrait-tier-4 .portrait-aurora{filter:drop-shadow(0 0 2px #eac0f0);animation:6s ease-in-out infinite portrait-aurora}.portrait-tier-4 .portrait-comet{animation:6s ease-in-out infinite portrait-comet}.portrait-studio{background:var(--night-surface-rose-soft,#fcf2f6);align-items:center;gap:24px;margin:20px 0;padding:25px;scroll-margin-top:90px;display:flex}.portrait-studio h3{margin:6px 0}.portrait-studio p{color:var(--night-ink-lavender-soft,#8b6c89);font-size:12px;line-height:1.8}.portrait-studio small{color:var(--night-ink-neutral-soft,#877989);font-size:10px}.portrait-studio-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.arcade-wallet{flex-wrap:wrap}.arcade-wallet>span:first-child{background:var(--night-surface-mint-soft,#edf7ed);border-color:var(--night-line-mint,#c2d8ce)}.quest-mock-link{color:var(--night-ink-lavender-soft,#946f9a);text-underline-offset:3px;margin-top:8px;font-size:10px;text-decoration:underline;display:inline-block}.currency-summary{max-width:290px}.saved-capsule-wishes{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.mock-daily-reward{border:1px solid var(--night-line-lavender,#d7c9df);background:var(--night-surface-lavender-soft,#faf0fa);border-radius:18px;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin:20px 0;padding:18px;display:flex}.mock-daily-reward p{font-size:11px}.mock-daily-reward strong{font-size:14px}.mock-daily-reward>.currency-price{color:var(--night-ink-honey-soft,#977258);font-size:12px}@keyframes portrait-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes portrait-cloud{0%,to{transform:translate(0)}50%{transform:translate(3px)}}@keyframes portrait-twinkle{0%,to{opacity:.5}50%{opacity:1}}@keyframes portrait-dream{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-4px)rotate(2deg)}}@keyframes portrait-orbit{to{transform:rotate(360deg)}}@keyframes portrait-aurora{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}@keyframes portrait-comet{0%,35%,to{opacity:0;transform:translate(-4px,-4px)}50%,65%{opacity:1;transform:translate(3px,3px)}}@media (max-width:800px){.portrait-studio{flex-wrap:wrap;gap:18px;padding:22px}.portrait-studio>div{flex:1;min-width:150px}.portrait-studio-actions{margin-left:0}.daily-quest{flex-wrap:wrap}.quest-actions{width:100%}.arcade-wallet{gap:6px}.arcade-wallet>span{padding:8px 10px}}@media (prefers-reduced-motion:reduce){.portrait-art,.portrait-art *{animation:none!important}}
.theme-toggle{border:1px solid var(--border);background:var(--panel);width:36px;height:36px;color:var(--purple);box-shadow:0 2px 0 var(--border);border-radius:13px;flex:none;place-items:center;padding:3px;display:inline-grid}.theme-toggle svg{width:28px;height:28px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.theme-toggle:hover svg{transform:rotate(-14deg)scale(1.08)}.theme-toggle:active svg{transform:rotate(8deg)scale(.92)}.theme-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.theme-choice{border:1.5px solid var(--border);background:var(--bg);color:var(--text);border-radius:17px;flex-direction:column;align-items:center;gap:8px;padding:18px 10px;display:flex}.theme-choice svg{width:44px;height:44px;color:var(--purple)}.theme-choice[aria-pressed=true]{border-color:var(--purple);box-shadow:0 3px 0 var(--purple);background:color-mix(in srgb, var(--purple) 12%, var(--panel))}.theme-choice small{color:var(--muted);font-size:10px}.sound-preview-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sound-preview-controls .mochi-select{max-width:200px;font-size:11px}.auth-header .theme-toggle{margin-left:auto}.festival-appearance-setting{border-top:1px dashed var(--arcade-line);align-items:center;gap:15px;margin-top:20px;padding-right:64px;display:flex}.festival-setting-charm{flex-shrink:0;width:58px;height:70px}.festival-appearance-setting .setting-row{border-top:0;flex:1;gap:15px;min-width:0}@media (max-width:720px){.festival-appearance-setting{padding-right:0}.topbar{gap:10px}.auth-header{justify-content:space-between}.theme-choices{gap:7px}.theme-choice{padding:14px 6px;font-size:11px}.theme-choice small{line-height:1.5}}@media (prefers-reduced-motion:reduce){.theme-toggle svg{transition:none}}
:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#252331;--panel:#302b3c;--border:#65596f;--text:#f0e6ef;--muted:#c1b3c9;--purple:#c6b5ed;--mint:#a3d7c5;--coral:#f1a9b9;--timer-track:#4d435b;--night-ink-honey-soft:#dfc69f;--night-ink-honey-strong:#f3d6a7;--night-ink-lavender-soft:#c6b5e2;--night-ink-lavender-soft-49:#c6b5e249;--night-ink-lavender-strong:#e1d0f9;--night-ink-mint-soft:#acd5c4;--night-ink-mint-strong:#c0e7d6;--night-ink-neutral-soft:#c6b9cf;--night-ink-rose-soft:#e2aec8;--night-ink-rose-strong:#f6c1d5;--night-ink-sky-soft:#b5d6eb;--night-line-honey:#8b755c;--night-line-lavender:#86769e;--night-line-mint:#668c80;--night-line-neutral:#756b82;--night-line-rose:#92657d;--night-line-sky:#6a829d;--night-shadow:#1b1624;--night-shadow-23:#1b162423;--night-shadow-25:#1b162425;--night-shadow-30:#1b162430;--night-shadow-33:#1b162433;--night-shadow-36:#1b162436;--night-shadow-3b:#1b16243b;--night-shadow-40:#1b162440;--night-shadow-44:#1b162444;--night-shadow-4d:#1b16244d;--night-shadow-70:#1b162470;--night-shadow-88:#1b162488;--night-surface-honey-bold:#6d5648;--night-surface-honey-mid:#473b35;--night-surface-honey-mid-52:#473b3552;--night-surface-honey-soft:#302d3b;--night-surface-honey-soft-00:#302d3b00;--night-surface-honey-soft-33:#302d3b33;--night-surface-honey-soft-99:#302d3b99;--night-surface-honey-soft-cf:#302d3bcf;--night-surface-honey-soft-db:#302d3bdb;--night-surface-honey-soft-dd:#302d3bdd;--night-surface-honey-soft-ed:#302d3bed;--night-surface-lavender-bold:#63517b;--night-surface-lavender-bold-70:#63517b70;--night-surface-lavender-mid:#40354f;--night-surface-lavender-soft:#322d43;--night-surface-lavender-soft-70:#322d4370;--night-surface-lavender-soft-99:#322d4399;--night-surface-mint-bold:#476b60;--night-surface-mint-mid:#334642;--night-surface-mint-soft:#2b3635;--night-surface-rose-bold:#744858;--night-surface-rose-mid:#493341;--night-surface-rose-soft:#392c39;--night-surface-rose-soft-99:#392c3999;--night-surface-sky-bold:#496783;--night-surface-sky-bold-70:#49678370;--night-surface-sky-soft:#2a333f}:root[data-theme=dark] .machine-knob{background:#fff8ef;border-color:#584b60}:root[data-theme=dark] .machine-knob>span{background:#584b60}:root[data-theme=dark] .club-mascot,:root[data-theme=dark] .mascot-ear{background:#e9dcec;border-color:#756282}:root[data-theme=dark] .mascot-eye{background:#685365}:root[data-theme=dark] .mascot-mouth{color:#685365}:root[data-theme=dark] .capsule-shop-backdrop>svg{filter:saturate(.94)brightness(.86)}:root[data-theme=dark] .switch:before{background:#f0e6ef}
.voice-navigation{background:var(--panel);border:1px solid var(--border);border-radius:18px;gap:6px;width:fit-content;margin-bottom:25px;padding:5px;display:flex}.voice-navigation a{color:var(--muted);border-radius:13px;padding:9px 16px;font-size:12px;text-decoration:none}.voice-navigation a[aria-current=page]{color:var(--text);background:color-mix(in srgb, var(--purple) 15%, var(--panel))}.voice-navigation span{color:var(--purple);margin-left:5px}.voice-page .panel{margin-bottom:18px}.voice-question h2{margin:15px 0;font-size:20px;line-height:1.5}.voice-question li{margin:7px 0}.voice-status{background:color-mix(in srgb, var(--purple) 9%, var(--panel));align-items:center;gap:18px;display:flex}.voice-status.complete{background:color-mix(in srgb, var(--mint) 12%, var(--panel))}.voice-status.rejected,.voice-status.failed{background:color-mix(in srgb, var(--coral) 8%, var(--panel))}.voice-status p{color:var(--muted);margin:6px 0 0;font-size:12px}.voice-status-flower{color:var(--purple);font-size:32px}.voice-status .button{flex-shrink:0;margin-left:auto}.voice-player{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:30px;display:grid}.voice-audio{min-width:0}.voice-audio audio{width:100%;max-width:100%;margin:15px 0}.voice-player h2{font-size:17px}.voice-help{color:var(--muted);font-size:12px;line-height:1.7}.voice-words{background:var(--bg);border:1px solid var(--border);border-radius:18px;margin:16px 0;padding:18px 12px;line-height:2}.voice-words button{color:var(--text);background:0 0;border:none;border-radius:7px;padding:3px 4px;font-size:14px;display:inline}.voice-words button:hover,.voice-words button.speaking{background:color-mix(in srgb, var(--mint) 35%, var(--panel))}.voice-words button.uncertain{-webkit-text-decoration:underline wavy;text-decoration:underline wavy;-webkit-text-decoration-color:var(--coral);text-decoration-color:var(--coral);text-underline-offset:5px}.voice-original{white-space:pre-wrap;line-height:1.9}.voice-transcript details{margin:15px 0;font-size:13px}.voice-transcript summary{color:var(--purple);cursor:pointer}.voice-provenance{overflow-wrap:anywhere;color:var(--muted);margin-top:20px;font-size:10px;line-height:1.8}.voice-time{color:var(--purple);cursor:pointer;background:0 0;border:0}.voice-card{align-items:center;gap:18px;display:flex}.voice-card h2{margin:8px 0;font-size:15px;line-height:1.6}.voice-card h2 a{color:var(--text);text-decoration:none}.voice-card p{color:var(--muted);font-size:12px}.voice-card-icon{border:1px solid var(--border);background:color-mix(in srgb, var(--mint) 16%, var(--panel));width:48px;height:48px;color:var(--mint);border-radius:17px;flex-shrink:0;place-items:center;display:grid;transform:rotate(-6deg)}.voice-card>div{flex:1;min-width:0}.voice-card>.button{flex-shrink:0}.voice-mini-status{color:var(--purple);font-size:11px}.voice-mini-status.complete{color:var(--mint)}.voice-mock-link{color:var(--purple);margin-left:14px;font-size:11px}.voice-related{flex-wrap:wrap;gap:9px;margin-top:15px;display:flex}.voice-related a{color:var(--purple);border:1px solid var(--border);border-radius:12px;padding:9px 12px;font-size:12px}.voice-related a[aria-current=page]{background:color-mix(in srgb, var(--purple) 12%, var(--panel))}.mock-playback details{text-align:left;border-bottom:1px solid var(--border);margin:12px 0;padding:10px}.mock-playback details audio{width:100%;margin:12px 0;display:block}@media (max-width:850px){.voice-player{grid-template-columns:1fr;gap:18px}.voice-audio{border-bottom:1px solid var(--border);padding-bottom:12px}}@media (max-width:600px){.voice-card{flex-wrap:wrap;gap:12px}.voice-card>.button{margin-left:60px}.voice-status{flex-wrap:wrap;gap:12px}.voice-status>div{flex:1;min-width:180px}.voice-status .button{margin-left:44px}.voice-navigation{width:100%}.voice-navigation a{text-align:center;flex:1}}.library-page .page-heading{align-items:center}.voice-shelf-art{width:170px;max-width:35%;color:var(--purple);flex-shrink:0}.shelf-spark{transform-origin:147px 21px;animation:4s ease-in-out infinite shelf-sparkle}@keyframes shelf-sparkle{0%,to{opacity:.5;transform:scale(.8)rotate(-8deg)}50%{opacity:1;transform:scale(1.05)rotate(8deg)}}.library-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.8rem;display:grid}.library-summary>div{border:1px solid var(--border);background:var(--panel);border-radius:18px;align-items:center;gap:.8rem;padding:1rem 1.2rem;display:flex}.library-stat-icon{width:40px;height:40px;color:var(--purple);background:color-mix(in srgb, var(--purple) 10%, var(--panel));border-radius:13px;flex-shrink:0;place-items:center;display:grid;transform:rotate(-5deg)}.library-summary>div:nth-child(2) .library-stat-icon{color:var(--mint);background:color-mix(in srgb, var(--mint) 12%, var(--panel))}.library-summary>div:nth-child(3) .library-stat-icon{color:var(--coral);background:color-mix(in srgb, var(--coral) 9%, var(--panel))}.library-summary strong{font-size:1.3rem;line-height:1.5;display:block}.library-summary small{color:var(--muted);font-size:.68rem;line-height:1.7;display:block}.library-controls{border:1px solid var(--border);background:var(--panel);border-radius:22px;padding:1.3rem}.library-part-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-bottom:1.3rem;display:grid}.library-part-tabs>button{--part-color:var(--mint);text-align:left;border:1px solid var(--border);min-width:0;color:var(--text);background:var(--bg);border-radius:15px;align-items:center;gap:.8rem;padding:1rem;display:flex}.library-part-tabs>button[data-part="2"]{--part-color:var(--coral)}.library-part-tabs>button[data-part="3"]{--part-color:var(--purple)}.library-part-tabs>button[aria-selected=true]{border-color:var(--part-color);background:color-mix(in srgb, var(--part-color) 13%, var(--panel));box-shadow:0 3px 0 color-mix(in srgb, var(--part-color) 30%, transparent)}.library-part-icon{color:var(--part-color);place-items:center;display:grid}.library-part-tabs strong{font-size:.95rem}.library-part-tabs small{color:var(--muted);margin-top:.25rem;font-size:.63rem;font-weight:400;line-height:1.6;display:block}.library-part-tabs b{background:var(--panel);min-width:29px;height:29px;color:var(--part-color);border-radius:10px;place-items:center;margin-left:auto;padding:0 .3rem;font-size:.72rem;display:grid}.library-search{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--purple);border-radius:14px;align-items:center;gap:.8rem;padding:.4rem 1rem;display:flex}.library-search:focus-within{border-color:var(--purple);outline:2px solid color-mix(in srgb, var(--purple) 15%, transparent)}.library-search input{background:0 0;border:0;outline:none;flex:1;width:100%;min-width:0;padding:.65rem 0;font-size:.9rem}.library-search input::-webkit-search-cancel-button{display:none}.library-search>button{background:var(--panel);width:28px;height:28px;color:var(--muted);border-radius:50%;place-items:center;font-size:1.1rem;display:grid}.library-search-help{color:var(--muted);margin:.5rem .3rem 1rem;font-size:.66rem;line-height:1.8}.library-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;display:grid}.library-filter-toggle{display:none}.library-filter-grid label{color:var(--muted);min-width:0;font-size:.65rem}.library-filter-grid .mochi-select{background:var(--panel);border-color:var(--border);width:100%;margin-top:.4rem;padding:.65rem .7rem;font-size:.75rem;display:block}.library-result-bar{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem;margin:1.4rem .2rem .4rem;font-size:.75rem;display:flex}.library-result-bar strong{color:var(--text);font-weight:500}.library-result-bar>div{align-items:center;gap:1rem;display:flex}.library-result-bar .text-button{color:var(--purple);font-size:.7rem}.library-refresh{color:var(--purple);background:0 0;align-items:center;gap:.4rem;padding:.5rem 0;font-size:.7rem;display:flex}.library-date-group>h2{color:var(--muted);align-items:center;gap:.8rem;margin:1.3rem 0 .8rem;font-size:.7rem;font-weight:500;display:flex}.library-date-group>h2 i{background:var(--border);opacity:.6;flex:1;height:1px}.library-notes-grid,.library-skeletons{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.library-note{border:1px solid var(--border);background:var(--panel);border-radius:20px;flex-direction:column;gap:.8rem;min-width:0;padding:1.2rem;transition:border-color .2s,box-shadow .2s;display:flex}.library-note:hover{border-color:color-mix(in srgb, var(--purple) 45%, var(--border));box-shadow:0 4px 0 color-mix(in srgb, var(--purple) 6%, transparent)}.library-note-top{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.library-topic{text-overflow:ellipsis;white-space:nowrap;max-width:65%;color:var(--purple);background:color-mix(in srgb, var(--purple) 8%, var(--panel));border-radius:7px;padding:.3rem .5rem;font-size:.64rem;overflow:hidden}.library-source{color:var(--muted);flex-shrink:0;align-items:center;gap:.3rem;font-size:.62rem;display:flex}.library-note h3{margin:0;font-size:.94rem;line-height:1.7}.library-note h3 a{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.library-preview{-webkit-line-clamp:2;color:var(--muted);-webkit-box-orient:vertical;min-height:2.7em;margin:0;font-size:.75rem;line-height:1.8;display:-webkit-box;overflow:hidden}.library-preview>span{font-style:italic}.library-note mark{color:var(--text);background:color-mix(in srgb, var(--purple) 22%, transparent);border-radius:3px;padding:0 .08rem}.library-note-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:auto;font-size:.65rem;display:flex}.library-note-meta>span{align-items:center;gap:.3rem;display:flex}.library-note-meta>a{color:var(--purple);margin-left:auto}.library-note-bottom{border-top:1px dashed var(--border);justify-content:space-between;align-items:center;gap:.8rem;padding-top:.8rem;display:flex}.library-review-state{color:var(--muted);align-items:center;gap:.35rem;font-size:.65rem;display:flex}.library-review-state.ready{color:var(--mint)}.library-review-state.processing{color:var(--purple)}.library-review-state.attention{color:var(--coral)}.library-open{color:var(--purple);white-space:nowrap;align-items:center;gap:.35rem;font-size:.7rem;display:flex}.library-pagination{justify-content:center;align-items:center;gap:1rem;padding:1.5rem 0 .4rem;display:flex}.library-pagination>span{color:var(--muted);font-size:.75rem}.library-pagination button{align-items:center;gap:.4rem;min-height:42px;display:flex}.library-pagination button:first-child svg{transform:rotate(180deg)}.library-private{color:var(--muted);justify-content:center;align-items:center;gap:.5rem;margin:1.5rem 0 0;font-size:.66rem;line-height:1.8;display:flex}.library-empty{text-align:center;margin-top:1rem;padding:2rem}.library-empty .voice-shelf-art{width:160px;max-width:70%;margin:0 auto 1rem}.library-empty h2{font-size:1.1rem;line-height:1.7}.library-empty p{max-width:55ch;color:var(--muted);margin:.8rem auto 1.2rem;font-size:.8rem;line-height:1.9}.library-legacy{border:1px dashed var(--border);border-radius:17px;margin-top:1.4rem;padding:1rem;font-size:.75rem}.library-legacy summary{color:var(--purple);cursor:pointer}.library-legacy summary>span{margin-left:.5rem;font-size:.65rem}.library-legacy-notes>p{margin:1rem 0}.library-skeletons{margin-top:1rem}.library-skeletons>div{border:1px solid var(--border);background:var(--panel);border-radius:20px;height:200px;padding:1.2rem}.library-skeletons span{background:color-mix(in srgb, var(--purple) 10%, var(--panel));border-radius:7px;width:90%;height:12px;margin:1rem 0;animation:1.5s ease-in-out infinite shelf-pulse;display:block}.library-skeletons span:first-child{width:30%;height:20px}.library-skeletons span:last-child{width:70%}@keyframes shelf-pulse{50%{opacity:.35}}@media (max-width:1000px){.library-part-tabs>button{gap:.5rem;padding:.8rem}.library-part-tabs small{display:none}.library-summary>div{padding:.8rem}}@media (max-width:700px){.library-notes-grid,.library-skeletons{grid-template-columns:1fr}.library-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:.8rem}.library-filter-grid[data-open=false]{display:none}.library-filter-toggle{width:100%;min-height:40px;color:var(--purple);background:var(--bg);border:1px solid var(--border);border-radius:11px;align-items:center;gap:.5rem;padding:.5rem .7rem;font-size:.75rem;display:flex}.library-filter-toggle b{background:color-mix(in srgb, var(--purple) 13%, var(--panel));border-radius:50%;place-items:center;width:21px;height:21px;font-size:.65rem;display:grid}.library-filter-toggle>span{margin-left:auto}}@media (max-width:540px){.library-page .page-heading>.voice-shelf-art{display:none}.library-page .page-heading{margin-bottom:1.2rem}.library-summary{gap:.5rem;margin-bottom:1.2rem}.library-summary>div{text-align:center;flex-direction:column;gap:.4rem;padding:.8rem .3rem}.library-stat-icon{width:31px;height:31px}.library-stat-icon svg{width:16px}.library-summary strong{font-size:1rem}.library-summary small{font-size:.56rem}.library-controls{padding:.85rem}.library-part-tabs{gap:.45rem}.library-part-tabs>button{flex-wrap:wrap;justify-content:center;gap:.3rem;padding:.65rem .4rem}.library-part-tabs strong{font-size:.8rem}.library-part-tabs b{min-width:23px;height:23px;margin-left:.1rem;font-size:.65rem}.library-part-icon{display:none}.library-search{padding:.3rem .7rem}.library-search input{font-size:.8rem}.library-filter-grid{gap:.7rem}.library-filter-grid .mochi-select{padding:.65rem .35rem;font-size:.69rem}.library-note{padding:1rem}.library-note-bottom{gap:.4rem}.library-pagination{gap:.7rem}.library-pagination .button{padding:.6rem .8rem;font-size:.7rem}.library-empty{padding:1.5rem 1rem}}@media (prefers-reduced-motion:reduce){.shelf-spark,.library-skeletons span{animation:none}.library-note{transition:none}}
.notification-bell{border:1px solid var(--border);width:38px;height:38px;color:var(--text);background:var(--panel);box-shadow:0 3px 0 color-mix(in srgb, var(--purple) 15%, transparent);cursor:pointer;border-radius:14px;flex-shrink:0;place-items:center;display:grid;position:relative}.notification-count{background:var(--coral);min-width:17px;height:17px;color:var(--panel);border:2px solid var(--bg);border-radius:10px;place-items:center;padding:0 4px;font-size:9px;font-weight:800;display:grid;position:absolute;top:-6px;right:-6px}.notification-toasts{z-index:70;pointer-events:none;gap:10px;width:min(365px,100vw - 28px);display:grid;position:fixed;top:86px;right:22px}.notification-toast{border:1px solid var(--border);background:var(--panel);box-shadow:0 5px 0 color-mix(in srgb, var(--purple) 12%, transparent), 0 12px 35px #00000012;pointer-events:auto;border-radius:20px;align-items:center;gap:12px;padding:15px;display:flex}.notification-toast a{color:var(--text);flex:1;min-width:0;text-decoration:none}.notification-toast strong{font-size:13px;line-height:1.6;display:block}.notification-toast a>span{color:var(--muted);margin-top:4px;font-size:11px;display:block}.notification-toast>button{width:25px;height:25px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;align-self:flex-start;font-size:20px}.notification-toast>button:hover{background:var(--bg)}.notification-flower{background:color-mix(in srgb, var(--mint) 18%, var(--panel));border:1px solid var(--border);width:38px;height:38px;color:var(--text);border-radius:14px;flex-shrink:0;place-items:center;display:grid;transform:rotate(-5deg)}.voice-notice-art{width:135px;height:115px;color:var(--text);margin:4px auto 20px;display:block}.processing-notice{text-align:center}.processing-notice>p{font-size:14px;line-height:1.8}.processing-notice>.muted{font-size:12px}.processing-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin:24px 0 6px;display:flex}.notification-inbox-tools{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;font-size:12px;display:flex}.notification-inbox ul{max-height:min(52vh,460px);margin:0;padding:0;list-style:none;overflow-y:auto}.notification-inbox li{border:1px solid var(--border);background:var(--bg);border-radius:17px;margin-bottom:10px}.notification-inbox li.unread{background:color-mix(in srgb, var(--purple) 9%, var(--panel))}.notification-inbox li>a{color:var(--text);align-items:flex-start;gap:12px;padding:15px;text-decoration:none;display:flex}.notification-inbox li>a>div{flex:1;min-width:0}.notification-inbox strong{font-size:13px;line-height:1.6}.notification-inbox li p{color:var(--muted);margin:5px 0 9px;font-size:12px;line-height:1.7}.notification-inbox time{color:var(--muted);font-size:10px}.notification-unread-dot{background:var(--coral);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:7px}.notification-empty{text-align:center;color:var(--muted);padding:30px 10px}.notification-empty svg{color:var(--purple)}.notification-footnote{color:var(--muted);text-align:center;margin:18px 0 0;font-size:10px}@media (max-width:600px){.notification-toasts{top:70px;right:14px}.notification-toast:not(:last-child){display:none}.notification-bell{border-radius:11px;width:33px;height:33px}.processing-actions{flex-direction:column}.processing-actions .button{width:100%}.notification-inbox-tools{flex-wrap:wrap}.notification-inbox li>a{padding:12px}.notification-inbox .notification-flower{border-radius:10px;width:30px;height:30px}}
.assessment-panel{margin-top:1.25rem;scroll-margin-top:6rem}.assessment-heading,.feedback-card-meta,.feedback-chapter-heading,.listening-map-heading,.teacher-letter-heading{align-items:center;gap:1rem;display:flex}.assessment-heading{flex-wrap:wrap;justify-content:space-between;margin-bottom:.8rem}.assessment-heading h2{margin:.4rem 0 0}.assessment-wait{align-items:center;gap:1.3rem;padding:1.5rem 0;display:flex}.assessment-mascot{flex-shrink:0;width:100px}.assessment-mascot svg{width:100%;height:auto}.assessment-wait h3{margin:0 0 .5rem}.assessment-wait p{max-width:65ch}.feedback-workshop{margin-top:1.3rem}.feedback-tabs{grid-template-columns:repeat(3,minmax(0,1fr));margin:1rem 0 .8rem;display:grid}.feedback-tabs>button{justify-content:center;min-width:0;min-height:48px;padding:.7rem .6rem;font-size:.8rem;line-height:1.5}.feedback-tabs>button:hover:not(.selected){background:color-mix(in srgb, var(--purple) 12%, var(--panel))}.feedback-tabs small{flex-shrink:0}.feedback-chapter:not([hidden]){animation:.18s ease-out feedback-tab-enter}@keyframes feedback-tab-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.feedback-listen-help{color:var(--muted);align-items:center;gap:.5rem;font-size:.78rem;line-height:1.6;display:flex}.feedback-chapter{--chapter-color:var(--coral);padding:1.6rem 0}.feedback-chapter.improve{--chapter-color:var(--purple)}.feedback-chapter.keep{--chapter-color:var(--mint)}.feedback-chapter-heading{margin-bottom:1rem}.feedback-chapter-heading h3{margin:0 0 .25rem;font-size:1.15rem}.feedback-chapter-heading p{color:var(--muted);font-size:.8rem;line-height:1.5}.feedback-chapter-number{background:color-mix(in srgb, var(--chapter-color) 12%, var(--panel));width:38px;height:42px;color:var(--chapter-color);border-radius:11px 14px 12px 15px;flex-shrink:0;place-items:center;font-size:.8rem;display:grid;transform:rotate(-5deg)}.feedback-chapter-count{color:var(--muted);margin-left:auto;font-size:.8rem}.feedback-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.feedback-card{border:1px solid var(--border);background:var(--panel);overflow-wrap:anywhere;border-radius:20px;min-width:0;padding:1.2rem}.feedback-card.positive{background:color-mix(in srgb, var(--mint) 4%, var(--panel))}.feedback-card:only-child{grid-column:1/-1}.feedback-card-meta{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;gap:.5rem;font-size:.66rem}.audio-check-tag{border:1px solid color-mix(in srgb, var(--purple) 32%, var(--border));background:color-mix(in srgb, var(--purple) 9%, var(--panel));color:var(--purple);letter-spacing:.02em;white-space:nowrap;border-radius:6px;flex-shrink:0;padding:.2rem .4rem;font-size:.62rem;font-weight:400;display:inline-block}.feedback-card h4{margin:.7rem 0 .85rem;font-size:.94rem;font-weight:600;line-height:1.5}.quote-listen{border:1px solid color-mix(in srgb, var(--purple) 17%, var(--border));background:color-mix(in srgb, var(--purple) 4%, var(--bg));border-radius:12px;align-items:stretch;gap:.3rem;min-width:0;transition:background .2s,border-color .2s;display:flex}.quote-listen.is-playing{border-color:var(--mint);background:color-mix(in srgb, var(--mint) 16%, var(--panel))}.quote-play{text-align:left;min-width:0;color:var(--text);background:0 0;border-radius:12px;flex:1;align-items:flex-start;gap:.65rem;padding:.8rem;display:flex}.quote-play-icon{background:var(--panel);width:23px;height:23px;color:var(--purple);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.quote-play-text{overflow-wrap:anywhere;flex:1;min-width:0;font-size:.88rem;line-height:1.7}.quote-stamp{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;padding-top:.2rem;font-size:.62rem}.quote-loop{color:var(--purple);background:0 0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.5rem;font-size:.57rem;display:flex}.quote-loop:hover,.quote-loop[aria-pressed=true]{background:color-mix(in srgb, var(--purple) 15%, transparent)}.quote-listen.compact .quote-play{padding:.6rem}.quote-listen.compact .quote-play-text{font-size:.79rem}.quote-listen:has(.quote-play:disabled) .quote-play{opacity:1;cursor:default}.quote-play:disabled .quote-play-icon{opacity:.4}.feedback-swap{background:color-mix(in srgb, var(--mint) 13%, var(--panel));border-radius:12px;align-items:baseline;gap:.6rem;margin:.65rem 0;padding:.8rem;font-size:.88rem;line-height:1.7;display:flex}.feedback-swap svg{color:var(--mint);align-self:center}.feedback-upgrade-hint{color:var(--muted);margin:.35rem 0 .8rem;font-size:.78rem;line-height:1.6}.feedback-swap:has(.feedback-upgrade-original){overflow-wrap:anywhere;flex-wrap:wrap}.feedback-upgrade-original{color:var(--muted)}.feedback-upgrade-shortcut{border:1px solid color-mix(in srgb, var(--purple) 35%, var(--border));background:color-mix(in srgb, var(--purple) 8%, var(--panel));width:100%;color:var(--text);text-align:left;border-radius:14px;flex-wrap:wrap;align-items:center;gap:.6rem;margin:.8rem 0;padding:.8rem 1rem;font-size:.8rem;display:flex}.feedback-upgrade-shortcut:hover{background:color-mix(in srgb, var(--purple) 16%, var(--panel))}.feedback-upgrade-shortcut>span:last-child{color:var(--muted);margin-left:auto;font-size:.72rem}.feedback-upgrade-empty,.feedback-refresh{border:1px dashed var(--border);border-radius:14px;margin:1rem 0;padding:1rem}.feedback-upgrade-empty p,.feedback-refresh p{color:var(--muted);margin:.5rem 0;font-size:.82rem;line-height:1.7}.feedback-explanation{margin:.8rem .1rem 0;font-size:.84rem;line-height:1.8}.feedback-example{border:1px dashed color-mix(in srgb, var(--purple) 27%, var(--border));background:color-mix(in srgb, var(--purple) 5%, var(--panel));border-radius:12px;margin-top:1rem;padding:.85rem}.feedback-example>div{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.feedback-example>div>span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.63rem}.feedback-example p{margin-top:.5rem;font-size:.85rem;line-height:1.7}.example-copy{color:var(--purple);background:0 0;border-radius:5px;align-items:center;gap:.3rem;padding:.35rem;font-size:.64rem;display:flex}.feedback-keep-hint{color:var(--muted);align-items:center;gap:.4rem;margin-top:1rem;font-size:.73rem;line-height:1.6;display:flex}.feedback-empty{color:var(--muted);padding:.7rem .2rem;font-size:.8rem}.assessment-actions{background:color-mix(in srgb, var(--purple) 8%, var(--panel));border:1px solid var(--border);border-radius:20px;margin:1rem 0 2rem;padding:1.2rem 1.5rem}.assessment-actions h3{margin:0 0 .8rem}.assessment-actions ol{padding-left:1.2rem;list-style:decimal}.assessment-actions li{padding:.5rem 0 .8rem .3rem}.feedback-action-heading{align-items:start;gap:.7rem;margin-bottom:.6rem;display:flex}.feedback-action-heading strong{flex:1;font-size:.85rem;font-weight:500;line-height:1.7}.teacher-letter{border:1px solid var(--border);background:color-mix(in srgb, var(--purple) 5%, var(--panel));box-shadow:3px 5px 0 color-mix(in srgb, var(--purple) 7%, transparent);overflow-wrap:anywhere;border-radius:7px 23px 20px;padding:1.6rem 2rem;position:relative}.teacher-letter-heading{margin-bottom:1.4rem}.teacher-letter-heading h3{margin:.35rem 0 0;font-size:1.05rem}.teacher-letter-heading>svg{color:var(--purple);margin-left:auto;transform:rotate(12deg)}.teacher-letter-stamp{border:1px dashed var(--purple);width:57px;height:57px;color:var(--purple);border-radius:13px;flex-shrink:0;place-items:center;display:grid;transform:rotate(-8deg)}.teacher-salutation,.teacher-handwriting,.teacher-signature{font-family:Segoe Print,Bradley Hand,Comic Sans MS,cursive}.teacher-salutation{margin:.6rem 0;font-size:1.1rem}.teacher-handwriting{background:repeating-linear-gradient(transparent, transparent calc(2.1em - 1px), color-mix(in srgb, var(--purple) 12%, transparent) calc(2.1em - 1px), color-mix(in srgb, var(--purple) 12%, transparent) 2.1em);font-size:1.03rem;line-height:2.1}.teacher-handwriting p{margin:0 0 1.2em}.teacher-signature{margin-top:1rem;font-size:.9rem;line-height:1.8}.teacher-signature strong{color:var(--purple);width:fit-content;font-size:1.35rem;font-weight:400;display:block;transform:rotate(-3deg)}.teacher-signature strong span{font-size:1rem}.teacher-signature small{font-family:var(--font-sans);color:var(--muted);margin-top:.5rem;font-size:.65rem;display:block}.teacher-letter-evidence{margin-top:1.5rem;font-size:.75rem}.teacher-letter-evidence summary{cursor:pointer;color:var(--muted)}.teacher-letter-evidence .quote-listen{margin-top:.7rem}.voice-playback-tools{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.6rem 1rem;font-size:.73rem;display:flex}.voice-playback-tools label{align-items:center;gap:.6rem;display:flex}.voice-playback-tools .mochi-select{background:var(--panel);border-radius:9px;padding:.4rem .6rem;font-size:.75rem}.voice-playback-tools .text-button{color:var(--purple);font-size:.73rem}.listening-map{border-top:1px dashed var(--border);grid-column:1/-1;min-width:0;padding-top:1.4rem}.listening-map-heading{flex-wrap:wrap;justify-content:space-between;gap:.6rem}.listening-map-heading h3{margin:.4rem 0 0;font-size:1.05rem}.listening-ribbon{background:var(--bg);border:1px solid var(--border);border-radius:9px;height:22px;margin:1.3rem 0;position:relative;overflow:hidden}.listening-ribbon span{background:color-mix(in srgb, var(--mint) 42%, var(--panel));border-right:2px solid var(--panel);border-radius:5px;position:absolute;top:4px;bottom:4px}.listening-ribbon span:nth-child(3n){background:color-mix(in srgb, var(--purple) 30%, var(--panel))}.listening-ribbon i{background:var(--coral);width:2px;transition:left .12s linear;position:absolute;inset-block:0}.listening-map-tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.listening-map-tabs button{border:1px solid var(--border);background:var(--panel);color:var(--muted);border-radius:10px;align-items:center;gap:.6rem;padding:.55rem .7rem;font-size:.74rem;display:flex}.listening-map-tabs button[aria-pressed=true]{color:var(--text);background:color-mix(in srgb, var(--purple) 12%, var(--panel));border-color:color-mix(in srgb, var(--purple) 50%, var(--border))}.listening-map-tabs span{color:var(--purple);font-size:.65rem}.listening-sentences{gap:.55rem;display:grid}.listening-sentences>.text-button{color:var(--purple);justify-self:start;padding:.7rem 0;font-size:.75rem}.listening-gaps{flex-wrap:wrap;gap:.65rem;display:flex}.listening-gaps>p{flex-basis:100%;margin-bottom:.4rem}.listening-gaps>button{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:12px;align-items:center;gap:.7rem;padding:.8rem;display:flex}.listening-gaps>button.selected{border-color:var(--mint);background:color-mix(in srgb, var(--mint) 12%, var(--panel))}.listening-gaps>button>span{color:var(--muted);font-size:.7rem}.listening-gaps>button strong{font-size:.85rem;font-weight:500}.listening-gaps .gap-dots{color:var(--purple)}.assessment-insufficient{background:#e9c78a26;border-radius:18px;gap:1rem;margin:1rem 0;padding:1.2rem;display:flex}.assessment-insufficient>span{color:var(--purple);font-size:2rem}.assessment-insufficient h3{margin:0 0 .5rem}.assessment-provenance{overflow-wrap:anywhere;color:var(--muted);margin-top:1.5rem;font-size:.75rem;line-height:1.8}.assessment-provenance summary{cursor:pointer}.assessment-provenance p{margin-top:.6rem}@media (max-width:1050px){.feedback-card-grid{grid-template-columns:1fr}}@media (max-width:540px){.assessment-mascot{width:64px}.assessment-wait{align-items:flex-start;gap:.8rem}.feedback-tabs{gap:.4rem}.feedback-tabs>button{flex-wrap:wrap;gap:.3rem;padding:.55rem .3rem;font-size:.71rem}.feedback-tabs>button>span{flex-basis:100%;order:1}.feedback-card{padding:.9rem}.feedback-chapter-heading{gap:.6rem}.feedback-chapter-heading h3{font-size:1rem}.quote-play{flex-wrap:wrap;gap:.4rem;padding:.65rem .5rem}.quote-play-text{flex-basis:calc(100% - 35px);font-size:.83rem}.quote-stamp{padding-top:0;padding-left:27px}.feedback-listen-help{align-items:start}.assessment-actions{padding:1rem}.feedback-action-heading{flex-wrap:wrap}.feedback-action-heading strong{flex-basis:100%}.teacher-letter{padding:1.2rem}.teacher-letter-heading{gap:.7rem}.teacher-letter-heading h3{font-size:.95rem}.teacher-letter-heading .eyebrow{font-size:.53rem}.teacher-letter-heading>svg{display:none}.teacher-handwriting{font-size:.95rem}.teacher-letter-stamp{width:47px;height:47px}}@media (prefers-reduced-motion:reduce){.feedback-chapter:not([hidden]){animation:none}.listening-ribbon i{transition:none}}
.recording-score-panel{scroll-margin-top:6rem}.sound-coach{border:1px solid var(--border);background:var(--panel);box-shadow:0 4px 0 var(--border);border-radius:22px;margin-top:1.5rem;padding:clamp(1rem,3vw,1.5rem)}.sound-coach-heading{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.sound-coach-heading h3{margin:.3rem 0}.sound-coach-heading p{margin:.35rem 0}.sound-coach-art{flex:0 0 90px;width:90px;overflow:visible}.sound-coach-note{animation:3s ease-in-out infinite sound-studio-bob}.sound-coach-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1rem;margin:1rem 0;display:grid}.sound-coach-card{border:1px solid var(--border);background:var(--panel);border-top:5px solid var(--arcade-rose,#efa8ba);border-radius:16px;padding:1rem}.sound-coach-card.is-strength{border-top-color:var(--mint)}.sound-coach-card .quote-listen{margin:.75rem 0}.sound-coach-phones{background:var(--arcade-lavender,#c6afe9);color:var(--text);border-radius:8px;padding:.25rem .6rem;display:inline-block}.sound-coach-practice{border:1px dashed var(--border);border-radius:12px;padding:.85rem 1rem}@keyframes sound-studio-bob{0%,to{transform:translateY(0)rotate(-4deg)}50%{transform:translateY(-5px)rotate(5deg)}}@media (prefers-reduced-motion:reduce){.sound-coach-note{animation:none}}@media (max-width:480px){.sound-coach-art{flex-basis:65px;width:65px}.sound-coach-heading{align-items:flex-start;gap:.65rem}}.score-overview{align-items:center;gap:1.5rem;margin:1.5rem 0;display:flex}.score-band{border:5px solid var(--mint);background:var(--panel);border-radius:50%;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:135px;min-height:135px;display:flex}.score-band strong{font-variant-numeric:tabular-nums;font-size:3.1rem;line-height:1.1}.score-band span{color:var(--muted);margin-top:.35rem;font-size:.72rem}.score-overview-copy h3{margin:0 0 .5rem}.score-overview-copy p{max-width:60ch;margin:.4rem 0}.score-criteria-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.8rem;display:grid}.score-criterion{border:1px solid var(--border);border-radius:15px;min-width:0;padding:1rem}.score-criterion summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.6rem;min-height:32px;font-weight:700;display:flex}.score-criterion summary:after{content:"+";color:var(--muted)}.score-criterion[open] summary:after{content:"−"}.score-criterion summary strong{color:var(--purple);font-variant-numeric:tabular-nums;margin-left:auto;font-size:1.6rem}.score-criterion-body p{overflow-wrap:anywhere;line-height:1.7}.score-criterion-bullets{overflow-wrap:anywhere;gap:.55rem;margin:.85rem 0;padding-left:1.15rem;line-height:1.6;display:grid}.score-criterion-bullets li::marker{color:var(--purple)}.score-criterion-bullets strong{color:var(--purple)}.score-audio-notes{border-top:1px solid var(--border);margin-top:1.3rem;padding-top:1rem}.score-sound-focuses{flex-wrap:wrap;gap:.8rem;display:flex}.score-sound-focuses>div{flex:170px;min-width:0}.score-sound-focuses>div>span{margin-top:.4rem;font-size:.8rem;display:block}.score-estimate-note{color:var(--muted);max-width:90ch;margin:1.2rem 0 .7rem;font-size:.78rem;line-height:1.6}.score-job-status{color:var(--muted);font-size:.85rem}.library-score{border:1px solid var(--border);color:var(--purple);border-radius:100px;padding:.2rem .65rem;font-size:.73rem;font-weight:700}@media (max-width:600px){.score-overview{align-items:flex-start;gap:1rem}.score-band{border-width:4px;width:100px;min-height:100px}.score-band strong{font-size:2.3rem}.score-band span{font-size:.6rem}.score-criteria-grid{grid-template-columns:1fr}.score-overview-copy h3{font-size:1rem}}
.social-navigation{margin-bottom:1.7rem}.social-navigation a{align-items:center;gap:.45rem;display:inline-flex}.social-navigation b{background:var(--coral);color:var(--panel);text-align:center;border-radius:50%;min-width:18px;padding:2px;font-size:10px}.friends-shortcut{flex-shrink:0;place-items:center;display:inline-grid}.social-page .page-heading{align-items:center}.social-art{flex-shrink:0;width:155px;max-width:25%}.social-art-heart{transform-origin:85px 20px;animation:3s ease-in-out infinite friend-heart}@keyframes friend-heart{50%{transform:translateY(-3px)rotate(8deg)}}.social-welcome{border:1px solid var(--border);background:color-mix(in srgb, var(--purple) 6%, var(--panel));border-radius:22px;flex-wrap:wrap;align-items:center;gap:1.5rem;margin-bottom:1.7rem;padding:1.3rem 1.5rem;display:flex}.social-welcome>div:first-child{flex:1}.social-welcome .eyebrow{display:block}.club-code{color:var(--text);letter-spacing:.05em;background:0 0;align-items:center;gap:.6rem;padding:.45rem 0;font-size:1.2rem;font-weight:700;display:flex}.club-code svg{color:var(--purple)}.social-welcome small{color:var(--muted);font-size:.7rem;line-height:1.7;display:block}.social-welcome-counts{color:var(--muted);gap:1.2rem;font-size:.72rem;display:flex}.social-welcome-counts strong{color:var(--text);margin-bottom:.2rem;font-size:1.4rem;display:block}.social-welcome .button{align-items:center;gap:.4rem;display:flex}.social-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:1.5rem 0;display:grid}.social-tabs>button{border:1px solid var(--border);background:var(--panel);color:var(--muted);border-radius:14px;justify-content:center;align-items:center;gap:.6rem;padding:1rem .8rem;font-size:.85rem;display:flex}.social-tabs>button[aria-selected=true]{color:var(--purple);background:color-mix(in srgb, var(--purple) 12%, var(--panel));border-color:var(--purple);box-shadow:0 3px 0 color-mix(in srgb, var(--purple) 25%, var(--panel))}.social-tabs b{background:var(--bg);min-width:22px;color:var(--text);border-radius:8px;padding:.2rem .4rem;font-size:.65rem}.social-result,.social-help{color:var(--muted);margin:.7rem .2rem 1rem;font-size:.75rem;line-height:1.8}.social-loading{color:var(--muted);padding:2rem;font-size:.85rem}.people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.person-card{border:1px solid var(--border);background:var(--panel);border-radius:21px;min-width:0;padding:1.35rem;transition:border-color .2s,box-shadow .2s}.person-card:hover{border-color:color-mix(in srgb, var(--purple) 50%, var(--border));box-shadow:0 4px 0 color-mix(in srgb, var(--purple) 8%, transparent)}.person-card.has-unread{border-color:var(--purple)}.person-card-heading{align-items:center;gap:1rem;display:flex}.person-card-heading>div{flex:1;min-width:0}.person-name,.person-card-heading strong{overflow-wrap:anywhere;font-size:.96rem;font-weight:700;display:block}.person-card-heading small{color:var(--muted);margin-top:.4rem;font-size:.65rem;line-height:1.7;display:block}.person-card-note{color:var(--muted);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;min-height:3.8em;margin:1rem 0;font-size:.8rem;line-height:1.9;display:-webkit-box;overflow:hidden}.person-card>time{color:var(--muted);margin-bottom:.7rem;font-size:.65rem;display:block}.social-unread{background:var(--purple);color:var(--panel);border-radius:50%;place-items:center;min-width:24px;height:24px;padding:0 .25rem;font-size:.7rem;display:grid}.friend-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.friend-actions .button{padding:.65rem 1rem;font-size:.75rem}.friend-actions .text-button{font-size:.7rem}.friend-pending{color:var(--purple);font-size:.7rem}.social-block-button{color:var(--muted);text-underline-offset:3px;background:0 0;font-size:.68rem;text-decoration:underline}.social-error{color:color-mix(in srgb, var(--coral) 70%, var(--text));background:color-mix(in srgb, var(--coral) 7%, var(--panel));border-radius:10px;width:100%;padding:.75rem;font-size:.8rem;line-height:1.8}.social-empty{text-align:center;border:1px dashed var(--border);border-radius:24px;margin:1.2rem 0;padding:3rem 1.2rem}.social-empty>svg{color:var(--purple);margin:0 auto 1rem}.social-empty h2{font-size:1.15rem;line-height:1.6}.social-empty p{color:var(--muted);max-width:55ch;margin:.7rem auto 1.1rem;font-size:.83rem;line-height:1.9}.social-empty .friend-actions{justify-content:center;margin:1rem 0}.social-footnote{color:var(--muted);justify-content:center;align-items:center;gap:.4rem;margin-top:1.5rem;font-size:.7rem;line-height:1.8;display:flex}.request-switch{gap:.5rem;margin-bottom:1rem;display:flex}.request-switch button{background:var(--panel);border:1px solid var(--border);color:var(--muted);border-radius:10px;padding:.6rem 1rem;font-size:.75rem}.request-switch button[aria-pressed=true]{background:color-mix(in srgb, var(--mint) 13%, var(--panel));color:var(--text);border-color:var(--mint)}.social-privacy{gap:1.2rem;margin-top:1.2rem;display:grid}.social-privacy>label{color:var(--text);font-size:.82rem;line-height:1.8;display:block}.social-privacy textarea{resize:vertical;background:var(--bg);width:100%;min-height:90px;color:var(--text);margin:.4rem 0;display:block}.social-privacy small{color:var(--muted);font-size:.7rem;line-height:1.8;display:block}.social-privacy .social-check{align-items:flex-start;gap:.8rem;display:flex}.social-check input{width:18px;height:18px;accent-color:var(--purple);flex-shrink:0;margin-top:.3rem}.social-privacy>button{justify-self:start}.social-blocked{border-top:1px dashed var(--border);margin-top:1.5rem;padding-top:1rem}.social-blocked>summary{cursor:pointer;color:var(--purple);font-size:.8rem}.social-blocked .people-browser{margin-top:1rem}.social-blocked .people-grid{grid-template-columns:1fr}.social-confirm>span{text-align:center;color:var(--purple);font-size:3rem;display:block}.social-confirm p{color:var(--muted);margin:1rem 0;font-size:.85rem;line-height:1.9}.social-confirm>div{flex-wrap:wrap;gap:.8rem;display:flex}.social-profile-card{text-align:center;border:1px solid var(--border);background:linear-gradient(155deg, color-mix(in srgb, var(--purple) 8%, var(--panel)), var(--panel));max-width:700px;box-shadow:0 6px 0 color-mix(in srgb, var(--purple) 12%, var(--panel));border-radius:30px;flex-direction:column;align-items:center;gap:1rem;margin:1.5rem auto;padding:2.5rem 1.5rem;display:flex;position:relative}.social-profile-card h2{overflow-wrap:anywhere;max-width:100%;margin:0;font-size:1.9rem}.social-profile-role{color:var(--purple);font-size:.8rem}.social-profile-card>small{color:var(--muted);font-size:.7rem}.social-bio{white-space:pre-wrap;overflow-wrap:anywhere;max-width:46ch;font-size:.95rem;line-height:1.9}.social-profile-card .friend-actions{justify-content:center;margin-top:.8rem}.profile-postcard-stamp{color:var(--coral);font-size:2.2rem;position:absolute;top:1rem;right:1.5rem;transform:rotate(12deg)}.social-visit-bar{color:var(--purple);flex-wrap:wrap;justify-content:space-between;gap:1rem;margin:1rem 0;font-size:.8rem;display:flex}.room-readonly .room-spot{cursor:default}.visitor-collection h2{margin-bottom:1rem;font-size:1rem}@media (max-width:950px){.people-grid{grid-template-columns:1fr}.social-welcome-counts{gap:.8rem}.social-welcome{gap:1rem}}@media (max-width:600px){.social-art{display:none}.social-welcome{padding:1rem}.social-welcome-counts{margin-left:auto}.social-welcome-counts strong{font-size:1.2rem}.social-welcome-counts span{font-size:.65rem}.social-welcome>.button{justify-content:center;width:100%}.social-tabs{gap:.4rem}.social-tabs>button{gap:.35rem;padding:.8rem .3rem;font-size:.75rem}.social-tabs svg{display:none}.person-card{padding:1.1rem}.social-profile-card{padding:2rem 1rem}.social-profile-card h2{font-size:1.5rem}.social-navigation{margin-bottom:1.3rem}}@media (max-width:540px){.topbar>span:first-child{display:none}.topbar{justify-content:flex-end}.topbar .member-topbar{margin-right:auto}}@media (prefers-reduced-motion:reduce){.social-art-heart{animation:none}.person-card{transition:none}}
.social-back{color:var(--purple);margin:.3rem 0 1.7rem;font-size:.8rem;display:inline-block}.chat-heading h1{letter-spacing:-1px;margin:.5rem 0 1.5rem;font-size:clamp(25px,3vw,35px);font-weight:800}.chat-heading h1 span{color:var(--coral)}.chat-card{border:1px solid var(--border);background:var(--panel);border-radius:25px;max-width:950px;margin:0 auto;position:relative}.chat-peer{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--purple) 6%, var(--panel));border-radius:25px 25px 0 0;align-items:center;gap:1rem;padding:1.1rem 1.3rem;display:flex}.chat-peer>div{flex:1;min-width:0}.chat-peer>div>a{overflow-wrap:anywhere;font-size:1rem;font-weight:700;display:block}.chat-peer small{color:var(--muted);margin-top:.2rem;font-size:.67rem;line-height:1.8;display:block}.chat-corner-link{color:var(--purple);flex-shrink:0;align-items:center;gap:.4rem;font-size:.72rem;display:flex}.chat-scroll{overscroll-behavior:contain;height:clamp(320px,53dvh,650px);padding:1.3rem;overflow-y:auto}.chat-hello{text-align:center;min-height:100%;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:.8rem;display:flex}.chat-hello>svg{color:var(--purple);transform:rotate(-7deg)}.chat-hello h2{color:var(--text);font-size:1.15rem}.chat-hello p{font-size:.83rem;line-height:1.8}.chat-date{text-align:center;color:var(--muted);margin:1.4rem 0;font-size:.65rem}.chat-message{border:1px solid var(--border);background:var(--bg);border-radius:17px 17px 17px 4px;width:fit-content;max-width:78%;margin:.55rem 0;padding:.8rem 1rem}.chat-message.mine{background:color-mix(in srgb, var(--purple) 13%, var(--panel));border-color:color-mix(in srgb, var(--purple) 35%, var(--border));border-radius:17px 17px 4px;margin-left:auto}.chat-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:.9rem;line-height:1.8}.chat-message time{text-align:right;color:var(--muted);margin-top:.3rem;font-size:.6rem;display:block}.chat-pending{border-style:dashed}.chat-pending small{color:var(--muted);margin-top:.4rem;font-size:.7rem;line-height:1.7;display:block}.chat-pending>div{justify-content:flex-end;gap:1rem;margin-top:.5rem;font-size:.7rem;display:flex}.chat-error{border-radius:0;margin:0}.chat-earlier{border:1px dashed var(--border);background:var(--panel);color:var(--purple);border-radius:20px;margin:0 auto 1rem;padding:.6rem 1rem;font-size:.7rem;display:block}.chat-latest{color:var(--purple);background:var(--panel);border:1px solid var(--border);box-shadow:0 3px 12px color-mix(in srgb, var(--text) 9%, transparent);white-space:nowrap;border-radius:20px;padding:.6rem 1rem;font-size:.7rem;position:absolute;bottom:145px;left:50%;transform:translate(-50%)}.chat-composer{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:1rem 1.2rem;display:grid}.chat-composer textarea{background:var(--bg);width:100%;color:var(--text);resize:vertical;border:1px solid var(--border);border-radius:13px;min-height:64px;max-height:170px;padding:.7rem .9rem;font-size:.85rem;line-height:1.7}.chat-composer>button{align-items:center;gap:.5rem;display:flex}.chat-composer small{color:var(--muted);grid-column:1/-1;font-size:.63rem;line-height:1.6}@media (max-width:600px){.chat-peer{gap:.8rem;padding:.9rem}.chat-peer>div>a{font-size:.9rem}.chat-peer small{font-size:.6rem}.chat-corner-link span{display:none}.chat-scroll{height:50dvh;padding:1rem}.chat-message{max-width:88%;padding:.7rem .8rem}.chat-message p{font-size:.83rem}.chat-composer{gap:.5rem;padding:.8rem}.chat-composer>button{padding:.8rem}.chat-composer>button span{display:none}.chat-composer small{font-size:.6rem}.chat-latest{bottom:140px}.chat-page .eyebrow{font-size:8px}.chat-page .social-back{margin-bottom:1.3rem}}
.learning-page{max-width:1280px}.learning-art{width:150px;max-height:135px;color:var(--purple);flex-shrink:0}.learning-art-sparks{transform-origin:50%;animation:3s ease-in-out infinite learning-twinkle}@keyframes learning-twinkle{50%{opacity:.4;transform:translateY(-3px)}}.learning-goal-banner{border:1px solid color-mix(in srgb, var(--purple) 35%, var(--border));background:color-mix(in srgb, var(--purple) 8%, var(--panel));color:var(--text);border-radius:18px;align-items:center;gap:1rem;margin:1.3rem 0 1.7rem;padding:1rem 1.2rem;text-decoration:none;display:flex}.learning-goal-banner:hover{background:color-mix(in srgb, var(--purple) 14%, var(--panel))}.learning-goal-banner strong,.learning-goal-banner small{display:block}.learning-goal-banner small{color:var(--muted);margin-top:.3rem;font-size:.78rem;line-height:1.6}.learning-goal-symbol{background:var(--panel);color:var(--purple);border-radius:13px;place-items:center;padding:.7rem;display:grid}.learning-goal-streak{white-space:nowrap;color:var(--coral);align-items:center;gap:.4rem;margin-left:auto;font-size:.8rem;display:flex}.practice-aside .learning-goal-banner{flex-wrap:wrap;gap:.6rem;margin:0 0 1rem;padding:1rem}.practice-aside .learning-goal-banner>span:nth-child(2){flex:1;min-width:135px}.practice-aside .learning-goal-streak{margin-left:0}.learning-tabs{flex-wrap:wrap;gap:.5rem;margin:1.4rem 0 2rem;display:flex}.learning-tabs button{flex:1;min-width:125px}.learning-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.learning-word-card{border:1px solid var(--border);background:var(--panel);overflow-wrap:anywhere;min-width:0;box-shadow:0 5px 0 color-mix(in srgb, var(--purple) 5%, transparent);border-radius:20px;padding:1.3rem;position:relative}.learning-word-card h3{margin:.7rem 0 .35rem;font-size:1.13rem;line-height:1.5}.learning-word-card>p{margin:.65rem 0;font-size:.88rem;line-height:1.8}.learning-word-card>small{color:var(--muted)}.learning-word-card blockquote,.learning-flashcard blockquote{border-left:3px solid var(--mint);background:color-mix(in srgb, var(--mint) 8%, var(--panel));border-radius:0 12px 12px 0;margin:1rem 0;padding:.8rem 1rem;font-size:.87rem;line-height:1.8}.learning-card-meta{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;gap:.5rem;font-size:.62rem;display:flex}.learning-state{background:color-mix(in srgb, var(--purple) 12%, var(--panel));border-radius:20px;padding:.25rem .5rem}.learning-state.learned{background:color-mix(in srgb, var(--mint) 20%, var(--panel))}.learning-word-card details{color:var(--muted);margin:1rem 0;font-size:.8rem;line-height:1.8}.learning-word-card details>small{margin:.6rem 0;display:block}.learning-word-card summary{cursor:pointer}.learning-card-actions,.save-expression{flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:1rem;display:flex}.save-expression>a{color:var(--purple);font-size:.73rem}.save-expression>small{width:100%;color:var(--coral)}.learning-card-actions{border-top:1px dashed var(--border);padding-top:.8rem}.learning-page .text-button,.learning-pronunciation .text-button{color:var(--purple);text-align:left;background:0 0;padding:.3rem 0;font-size:.8rem}.learning-library-tools{grid-template-columns:minmax(180px,2fr) repeat(3,minmax(120px,1fr));align-items:end;gap:1rem;margin:1.4rem 0 1rem;display:grid}.learning-library-tools>label{min-width:0}.learning-page label,.learning-dialog label{color:var(--muted);flex-direction:column;gap:.5rem;font-size:.8rem;display:flex}.learning-page input:not([type=checkbox]),.learning-page .mochi-select,.learning-page textarea,.learning-dialog input,.learning-dialog .mochi-select,.learning-dialog textarea{border:1px solid var(--border);background:var(--panel);color:var(--text);width:100%;min-width:0;font:inherit;border-radius:10px;padding:.7rem .8rem}.learning-page textarea,.learning-dialog textarea{resize:vertical;min-height:78px}.learning-library-tools .learning-check{white-space:nowrap;flex-direction:row;align-items:center;gap:.4rem;padding:.7rem 0}.learning-library-actions{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.4rem;display:flex}.learning-library-actions>span{color:var(--muted);margin-left:auto;font-size:.76rem}.learning-pagination{justify-content:center;align-items:center;gap:1rem;margin:2rem 0;font-size:.8rem;display:flex}.learning-empty{text-align:center;border:1px dashed var(--border);background:color-mix(in srgb, var(--purple) 4%, var(--panel));border-radius:20px;padding:3rem 1rem}.learning-empty p{color:var(--muted);line-height:1.8}.learning-dialog{border:1px solid color-mix(in srgb, var(--purple) 45%, var(--border));background:var(--panel);color:var(--text);border-radius:22px;width:min(94vw,680px);max-height:90dvh;margin:auto;padding:1.5rem;position:fixed;inset:0;overflow-y:auto;box-shadow:0 18px 80px #0003}.learning-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#25213688}.learning-test-setup p,.learning-test-results>p{line-height:1.8}.learning-test-progress{color:var(--muted);align-items:center;gap:1rem;margin:1rem 0 1.5rem;font-size:.8rem;display:flex}.learning-test-progress progress{min-width:0;accent-color:var(--purple);flex:1;height:8px}.learning-test-question h3{margin:.6rem 0 1rem;line-height:1.6}.learning-test-definition{background:color-mix(in srgb, var(--purple) 10%, var(--panel));border:1px dashed var(--purple);overflow-wrap:anywhere;border-radius:18px;margin:1rem 0 1.5rem;padding:1.5rem;line-height:1.8}.learning-test-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-bottom:1rem;display:grid}.learning-test-options .button{white-space:normal;overflow-wrap:anywhere;min-height:62px}.learning-test-question form .button{margin:1rem 0}.learning-test-question>.text-button{margin-top:1rem}.learning-test-feedback{border:1px solid var(--border);background:color-mix(in srgb, var(--mint) 13%, var(--panel));border-radius:16px;margin-top:1.3rem;padding:1.2rem;line-height:1.8}.learning-test-feedback.missed{background:color-mix(in srgb, var(--yellow) 12%, var(--panel))}.learning-test-feedback .button{margin:.5rem .5rem 0 0}.learning-test-options .test-correct{border-color:var(--mint);background:color-mix(in srgb, var(--mint) 25%, var(--panel));opacity:1}.learning-test-options .test-missed{border-color:var(--coral);opacity:1}.learning-test-results{text-align:center}.learning-test-results>.learning-art{width:110px;height:100px;margin:auto}.learning-test-score{color:var(--purple);font-size:2rem}.learning-test-score span{color:var(--muted);font-size:1rem;display:block}.learning-test-missed{text-align:left;padding:0;list-style:none}.learning-test-missed li{border:1px solid var(--border);overflow-wrap:anywhere;border-radius:14px;margin:1rem 0;padding:1rem}.learning-test-missed small{color:var(--muted)}.learning-test-results .learning-review-actions{justify-content:center}@media (max-width:420px){.learning-test-options{grid-template-columns:1fr}}.learning-dialog .section-heading{align-items:flex-start;gap:1rem}.learning-dialog h2{font-size:1.3rem;line-height:1.5}.learning-editor{gap:1rem;display:grid}.learning-two-columns{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.learning-pronunciation{color:var(--muted);margin:.5rem 0;font-size:.77rem;line-height:1.8}.learning-pronunciation>small{font-size:.68rem;display:block}.learning-pronunciation a{color:var(--purple);text-decoration:underline}.learning-topic-form{flex-wrap:wrap;align-items:end;gap:.6rem;display:flex}.learning-topic-form label{flex:1;min-width:180px}.learning-topic-list{padding:0;list-style:none}.learning-topic-list>li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 0;display:flex}.learning-topic-list>li>div{gap:.7rem;display:flex}.learning-flashcard{text-align:center;border:1px solid var(--border);background:color-mix(in srgb, var(--purple) 7%, var(--panel));border-radius:22px;min-height:260px;margin:1rem 0;padding:2.5rem 1rem}.learning-flashcard h3{margin:1.3rem 0;font-size:1.7rem;line-height:1.5}.learning-flashcard p{line-height:1.8}.learning-review-actions{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.learning-score-fields{border:0;border-top:1px dashed var(--border);margin:1.5rem 0;padding:1.5rem 0 0}.learning-score-fields legend{color:var(--purple);padding-right:1rem;font-weight:700}.learning-score-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.learning-overall{flex-wrap:wrap;align-items:center;gap:1rem;margin:1rem 0;display:flex}.learning-overall strong{color:var(--coral);font-size:2rem}.learning-overall small{color:var(--muted);font-size:.75rem}.learning-goals .learning-field{max-width:320px}.learning-guide-parts{gap:.7rem;margin:1rem 0;display:flex}.learning-guide h3{margin:1rem 0;font-size:1.5rem}.learning-guide-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0 2rem;padding-left:1.3rem;display:grid}.learning-guide-steps li{padding:.7rem 1rem}.learning-guide-steps p,.learning-guide p,.learning-guide li{line-height:1.9}.learning-pattern{color:var(--purple);font-style:italic}.learning-guide details{border:1px solid var(--border);border-radius:16px;padding:1.1rem}.learning-guide details summary{cursor:pointer;font-weight:700}.learning-guide details h4{margin:1rem 0}.learning-sample{padding:1rem 0}.learning-sample p+p{margin-top:1rem}.learning-challenge{background:color-mix(in srgb, var(--mint) 13%, var(--panel));border-radius:14px;margin-top:1.5rem;padding:1rem}.learning-expression-meaning{gap:.4rem;font-size:.87rem;line-height:1.8;display:grid}.learning-expression-source{color:var(--muted);margin-top:.4rem;font-size:.7rem}@media (max-width:1100px){.learning-card-grid,.learning-library-tools{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.learning-card-grid{grid-template-columns:1fr}.learning-art{width:100px;max-height:100px}.learning-page .page-heading{align-items:center}.learning-goal-banner{flex-wrap:wrap;gap:.7rem;padding:1rem}.learning-goal-streak{margin-left:0}.learning-goal-banner>span:nth-child(2){flex:1;min-width:160px}.learning-tabs{gap:.35rem}.learning-tabs button{min-width:130px}.learning-library-tools{gap:.75rem}.learning-search{grid-column:1/-1}.learning-score-grid{grid-template-columns:1fr 1fr}.learning-two-columns,.learning-guide-steps{grid-template-columns:1fr}.learning-dialog{padding:1.1rem}.learning-guide-steps{gap:0}.learning-topic-list>li{flex-direction:column;align-items:flex-start;gap:.4rem}.learning-review-actions .button{flex:1;min-width:120px}.learning-library-actions>span{margin-left:0}.learning-page .section-heading{flex-wrap:wrap;gap:1rem}}@media (prefers-reduced-motion:reduce){.learning-art-sparks{animation:none}}
.sidebar{gap:0;padding-top:25px}.sidebar .feature-navigation{flex:1;gap:19px;min-height:0;margin-top:27px;padding:0 3px 12px;overflow-y:auto}.feature-group{--feature-color:var(--mint);min-width:0}.feature-group-lavender{--feature-color:var(--purple)}.feature-group-rose{--feature-color:var(--coral)}.feature-group-heading{letter-spacing:1.1px;text-transform:uppercase;color:var(--muted);align-items:center;gap:7px;margin:0 7px 7px;font-size:9px;font-weight:700;display:flex}.feature-group-heading>span{color:var(--feature-color);font-size:13px}.feature-group-trigger,.feature-menu-intro,.feature-menu-backdrop{display:none}.feature-group-links{flex-direction:column;gap:3px;display:flex}.feature-link{border:1px solid #0000;gap:9px;min-height:40px;padding:8px 10px;font-weight:400}.feature-link-icon{color:var(--feature-color);flex:0 0 24px;place-items:center;transition:transform .2s;display:grid}.feature-link:hover .feature-link-icon{transform:rotate(-9deg)translateY(-1px)}.feature-link .nav-item-label{white-space:normal;min-width:0}.feature-link strong{font-size:11px;font-weight:700;display:block}.feature-link .nav-item-label small{display:none}.feature-link.active{background:color-mix(in srgb, var(--feature-color) 13%, var(--panel));border-color:color-mix(in srgb, var(--feature-color) 45%, var(--border));box-shadow:0 2px 0 color-mix(in srgb, var(--feature-color) 24%, transparent)}.feature-link-secondary{border-top:1px dashed var(--border);border-radius:0 0 12px 12px;margin-top:3px}.feature-link-secondary strong{font-size:10px;font-weight:400}.feature-active-dot{background:var(--feature-color);border-radius:50%;flex:none;width:5px;height:5px;margin-left:auto}.feature-settings{border-top:1px solid var(--border);border-radius:0;gap:12px;min-height:40px;padding:10px;font-size:11px}.feature-settings.active{color:var(--purple);background:color-mix(in srgb, var(--purple) 10%, transparent);border-radius:12px}.sidebar-explore{flex-direction:column;flex:1;min-height:0;margin-inline:-3px;padding:0 3px;display:flex;overflow-y:auto}.sidebar-explore .feature-navigation{flex:none;overflow:visible}.sidebar-encouragement{flex:none;margin:12px 0;padding:23px 17px 18px}.encouragement-art{min-height:65px;position:relative}.encouragement-art .mascot-greeting{font-size:9px;top:3px;right:-7px}.encouragement-art .club-mascot{transition:rotate .25s}.sidebar-encouragement:hover .club-mascot{rotate:-5deg}.sidebar-encouragement a{min-height:30px}.sidebar-member,.sidebar-member-loading{flex-shrink:0}.sidebar .sidebar-member{margin-top:0;padding:10px 4px 0}.sidebar-member-details{flex:1;min-width:0}.sidebar .sidebar-member-row{gap:8px}.sidebar .sidebar-member-name strong{font-size:11px}.sidebar .sidebar-member-name small{margin-top:2px;font-size:8px}.sidebar .sidebar-member-badges{gap:3px;margin-top:4px}.sidebar .sidebar-member-badges .member-badge{padding:3px 6px;font-size:8px}.voice-navigation{flex-wrap:wrap;max-width:100%}@media (min-width:721px){.shell-collapsed .sidebar .feature-navigation{gap:15px;margin-top:52px;padding-inline:0}.shell-collapsed .feature-group-heading,.shell-collapsed .sidebar-member-details{display:none}.shell-collapsed .feature-group-links{gap:4px}.shell-collapsed .feature-link{min-height:40px;padding:9px 0}.shell-collapsed .feature-link-secondary{border-radius:12px}.shell-collapsed .feature-active-dot{display:none}.shell-collapsed .feature-settings{justify-content:center;margin-top:0;padding-inline:0}.shell-collapsed .sidebar-member{margin-top:auto}}@media (max-height:760px) and (min-width:721px){.sidebar{padding-top:20px;padding-bottom:14px}.sidebar .feature-navigation{gap:14px;margin-top:24px}.feature-link{min-height:36px;padding-block:6px}}@media (max-height:1000px) and (min-width:721px){.sidebar .feature-navigation{gap:12px;margin-top:24px}.feature-link{min-height:34px;padding-block:5px}.feature-group-heading{margin-bottom:5px}.sidebar-encouragement{margin-block:9px;padding:16px 14px 12px}.sidebar-encouragement .encouragement-art{height:50px;min-height:50px}.sidebar-encouragement .club-mascot{transform-origin:0 0;transform:scale(.72)}.sidebar-encouragement .mascot-greeting{padding:6px;font-size:9px;top:2px;right:-4px}.sidebar-encouragement h3{letter-spacing:-.2px;margin:10px 0 7px;font-size:17px}.sidebar-encouragement p{font-size:10px;line-height:1.7}.sidebar-encouragement a{min-height:26px;margin-top:8px;font-size:10px}}@media (max-height:900px) and (min-width:721px){.sidebar .feature-navigation{gap:8px;margin-top:18px;padding-bottom:4px}.feature-group-links{gap:1px}.feature-group-heading{margin-bottom:3px}.feature-link{min-height:30px;padding-block:4px}.feature-settings{min-height:32px;padding-block:8px}}@media (max-width:720px){.sidebar{z-index:60;padding:17px 18px 12px;position:relative}.sidebar .feature-navigation{z-index:60;isolation:isolate;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom,0px));border:1px solid color-mix(in srgb, var(--purple) 30%, var(--border));background:var(--panel);max-width:520px;box-shadow:0 4px 0 color-mix(in srgb, var(--purple) 13%, transparent), 0 7px 28px color-mix(in srgb, var(--text) 13%, transparent);border-radius:25px;flex:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:0 auto;padding:7px;display:grid;position:fixed;overflow:visible}.feature-menu-backdrop{z-index:-1;background:color-mix(in srgb, var(--text) 13%, transparent);cursor:default;display:block;position:fixed;inset:0}.main-shell{padding-bottom:calc(102px + env(safe-area-inset-bottom,0px))}.main-shell footer{padding-bottom:30px}.sidebar-explore{display:contents}.feature-group-heading{display:none}.feature-group-trigger{width:100%;min-height:60px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:8px 2px;font-size:10px;display:flex;position:relative}.feature-group-trigger>svg{color:var(--feature-color)}.feature-group-trigger.active,.feature-group-trigger[aria-expanded=true]{color:var(--text);background:color-mix(in srgb, var(--feature-color) 13%, var(--panel));border-color:color-mix(in srgb, var(--feature-color) 45%, var(--border))}.feature-menu-chevron{color:var(--feature-color);transition:transform .2s;position:absolute;top:4px;right:7px}.feature-group-trigger[aria-expanded=true] .feature-menu-chevron{transform:rotate(180deg)}.feature-group-links{z-index:40;border:1px solid color-mix(in srgb, var(--feature-color) 40%, var(--border));background:var(--panel);max-height:min(420px, calc(100dvh - 130px - env(safe-area-inset-bottom,0px)));overscroll-behavior:contain;box-shadow:0 10px 30px color-mix(in srgb, var(--text) 12%, transparent);border-radius:20px;gap:5px;padding:14px;display:none;position:absolute;inset:auto 0 calc(100% + 12px);overflow-y:auto}.is-open .feature-group-links{animation:.25s cubic-bezier(.2,.8,.2,1) feature-sheet-arrive;display:flex}.feature-menu-intro{flex-direction:column;gap:5px;padding:5px 35px 10px 9px;display:flex;position:relative}.feature-menu-intro strong{font-size:15px}.feature-menu-intro>span{color:var(--muted);font-size:11px}.feature-menu-intro button{background:var(--bg);width:32px;height:32px;color:var(--muted);border-radius:11px;font-size:20px;position:absolute;top:0;right:0}.feature-link{text-align:left;flex-direction:row;justify-content:flex-start;gap:12px;min-height:60px;padding:11px 10px}.feature-link .feature-link-icon{background:color-mix(in srgb, var(--feature-color) 10%, var(--panel));border-radius:12px;flex-basis:36px;height:36px}.feature-link strong,.feature-link-secondary strong{font-size:12px;font-weight:700}.feature-link .nav-item-label small{opacity:1;color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.5;display:block}.feature-settings{background:0 0;border:1px solid #0000;border-radius:18px;flex-direction:column;justify-content:center;gap:5px;min-height:60px;padding:8px 2px;font-size:10px;font-weight:400}.feature-settings>svg{width:20px;height:20px;color:var(--purple)}.feature-settings.active{border-color:color-mix(in srgb, var(--purple) 40%, var(--border));border-radius:18px}.feature-settings .nav-item-label{display:block}.arcade-dock{bottom:calc(101px + env(safe-area-inset-bottom,0px))}.companion-playground{bottom:calc(100px + env(safe-area-inset-bottom,0px))}.daily-quest-dock{border-radius:17px;justify-content:center;width:50px;height:50px;min-height:50px;padding:5px}.daily-quest-dock>span:nth-child(2),.daily-quest-dock .dock-notice-dot{display:none}.daily-quest-dock .quest-mobile-badge{display:grid}}@keyframes feature-sheet-arrive{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}@keyframes feature-menu-arrive{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.is-open .feature-group-links{animation:none}.feature-link-icon,.feature-menu-chevron,.encouragement-art .club-mascot{transition:none}}
.mochi-language{position:relative;overflow:hidden}.mochi-language-heading{align-items:center;gap:20px;display:flex}.mochi-language-stamp{border:1px dashed color-mix(in srgb, var(--purple) 55%, var(--border));background:color-mix(in srgb, var(--purple) 8%, var(--panel));width:80px;height:88px;color:var(--purple);border-radius:25px 25px 25px 9px;flex-direction:column;flex:none;justify-content:center;align-items:center;display:flex;transform:rotate(-5deg)}.mochi-language-stamp>span{letter-spacing:3px;margin-top:3px;font-size:10px}.mochi-language-stamp svg{transform-origin:bottom;animation:4s ease-in-out infinite mochi-language-hello}.mochi-language-heading .eyebrow{font-size:8px}.mochi-language-heading h2{letter-spacing:-.5px;margin:7px 0;font-size:24px;line-height:1.3}.mochi-language-heading h2>span{color:var(--purple)}.mochi-language-heading .voice-help{margin:0;line-height:1.8}.mochi-language-content{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:28px;margin:25px 0 22px;display:grid}.mochi-language-control{flex-direction:column;gap:12px;display:flex}.mochi-language-control label{align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.mochi-language-control label svg{color:var(--purple)}.mochi-language-control .mochi-select{border-color:color-mix(in srgb, var(--purple) 35%, var(--border));background:var(--bg);width:100%;min-height:47px;box-shadow:0 3px 0 color-mix(in srgb, var(--purple) 9%, transparent);border-radius:14px;padding:12px 15px;font-size:13px}.mochi-language-control>p{color:var(--muted);font-size:11px;line-height:1.8}.mochi-language-bubble{background:color-mix(in srgb, var(--mint) 11%, var(--panel));border:1px solid color-mix(in srgb, var(--mint) 35%, var(--border));border-radius:23px 23px 23px 5px;padding:22px;position:relative;transform:rotate(1deg)}.mochi-language-bubble-label{color:var(--muted);margin-bottom:10px;font-size:10px;display:block}.mochi-language-bubble-label>span{color:var(--mint);margin-right:4px}.mochi-language-bubble p{font-size:15px;line-height:1.9}.mochi-language-invitation{background:color-mix(in srgb, var(--coral) 6%, var(--panel));color:var(--muted);border-radius:16px;align-items:flex-start;gap:12px;padding:17px;font-size:11px;line-height:1.9;display:flex}.mochi-language-invitation>span:first-child{font-size:23px;line-height:1.5}.mochi-language-invitation strong{color:var(--text)}.mochi-language-history{color:var(--muted);margin-top:16px;font-size:10px;line-height:1.9}.mochi-language-status{color:var(--purple);font-size:12px;line-height:1.8}.mochi-language-status:not(:empty){margin-top:12px}@keyframes mochi-language-hello{0%,75%,to{transform:rotate(0)}82%{transform:rotate(-7deg)}90%{transform:rotate(5deg)}}@media (max-width:650px){.mochi-language-heading{align-items:flex-start;gap:15px}.mochi-language-stamp{border-radius:20px 20px 20px 6px;width:61px;height:75px}.mochi-language-stamp svg{width:40px;height:40px}.mochi-language-heading h2{font-size:21px}.mochi-language-content{grid-template-columns:minmax(0,1fr);gap:20px}.mochi-language-bubble{padding:17px 20px}.mochi-language-bubble p{font-size:14px}.mochi-language-invitation{gap:9px;padding:13px}}@media (prefers-reduced-motion:reduce){.mochi-language-stamp svg{animation:none}}
.mochi-select{border:1px solid color-mix(in srgb, var(--purple) 28%, var(--border));min-width:0;max-width:100%;min-height:42px;color:var(--text);background:var(--panel);box-shadow:0 3px 0 color-mix(in srgb, var(--purple) 9%, transparent);text-align:left;cursor:pointer;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:12px;font-weight:400;display:inline-flex}.mochi-select:hover:not(:disabled),.mochi-select[data-state=open]{background:color-mix(in srgb, var(--purple) 6%, var(--panel));border-color:var(--purple)}.mochi-select-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mochi-select-chevron{width:23px;height:23px;color:var(--purple);background:color-mix(in srgb, var(--purple) 10%, var(--panel));border-radius:8px;flex:none;place-items:center;transition:transform .22s;display:grid}.mochi-select[data-state=open] .mochi-select-chevron{transform:rotate(180deg)}.mochi-select:disabled{cursor:not-allowed;opacity:.5}.mochi-select-native{opacity:0;pointer-events:none;border:0;width:1px;height:1px;padding:0;display:none;position:absolute}.mochi-select-menu{z-index:200;max-width:min(440px,100vw - 24px);min-width:var(--radix-select-trigger-width);max-height:min(320px, var(--radix-select-content-available-height));border:1px solid color-mix(in srgb, var(--purple) 40%, var(--border));color:var(--text);background:var(--panel);box-shadow:0 5px 0 color-mix(in srgb, var(--purple) 12%, transparent), 0 14px 35px color-mix(in srgb, var(--text) 14%, transparent);transform-origin:var(--radix-select-content-transform-origin);border-radius:17px;padding:5px;overflow:hidden}.mochi-select-menu[data-state=open]{animation:.2s cubic-bezier(.2,.8,.2,1) mochi-choice-in}.mochi-select-menu[data-state=closed]{animation:.13s ease-in mochi-choice-out}.mochi-select-options{padding:3px}.mochi-select-option{-webkit-user-select:none;user-select:none;cursor:pointer;overflow-wrap:anywhere;border-radius:11px;outline:none;align-items:center;gap:9px;min-height:39px;padding:10px 31px 10px 10px;font-size:12px;line-height:1.5;transition:background .15s,color .15s;display:flex;position:relative}.mochi-select-option[data-state=checked]{background:color-mix(in srgb, var(--mint) 12%, var(--panel))}.mochi-select-option[data-highlighted]{background:color-mix(in srgb, var(--purple) 14%, var(--panel))}.mochi-select-option[data-disabled]{opacity:.4;cursor:not-allowed}.mochi-select-option-spark{color:var(--purple);opacity:.55;font-size:14px}.mochi-select-option[data-highlighted] .mochi-select-option-spark{opacity:1;animation:.35s mochi-choice-spark}.mochi-select-check{color:var(--mint);place-items:center;display:grid;position:absolute;right:10px}.mochi-select-scroll{height:22px;color:var(--purple);background:var(--panel);justify-content:center;align-items:center;font-size:16px;display:flex}@keyframes mochi-choice-in{0%{opacity:0;transform:translateY(-5px)scale(.96)}to{opacity:1;transform:none}}@keyframes mochi-choice-out{to{opacity:0;transform:scale(.97)}}@keyframes mochi-choice-spark{50%{transform:rotate(60deg)scale(1.2)}}@media (pointer:coarse){.mochi-select,.mochi-select-option{min-height:44px}}@media (prefers-reduced-motion:reduce){.mochi-select-menu[data-state],.mochi-select-option[data-highlighted] .mochi-select-option-spark{animation:none}.mochi-select-chevron{transition:none}}
.mochi-menu-trigger{background:color-mix(in srgb, var(--panel) 65%, transparent);border:1px solid color-mix(in srgb, var(--purple) 20%, var(--border));width:32px;height:34px;color:var(--purple);pointer-events:auto;border-radius:11px;flex:none;place-items:center;padding:0;transition:background .2s,transform .2s;display:inline-grid}.mochi-menu-trigger:hover{background:color-mix(in srgb, var(--purple) 12%, var(--panel));transform:rotate(5deg)}.mochi-menu-trigger[data-state=open]{background:color-mix(in srgb, var(--purple) 15%, var(--panel))}.mochi-action-menu{z-index:210;border:1px solid color-mix(in srgb, var(--purple) 35%, var(--border));background:var(--panel);min-width:165px;max-width:calc(100vw - 24px);color:var(--text);box-shadow:0 4px 0 color-mix(in srgb, var(--purple) 12%, transparent), 0 12px 25px color-mix(in srgb, var(--text) 13%, transparent);transform-origin:var(--radix-dropdown-menu-content-transform-origin);border-radius:16px;padding:6px}.mochi-action-menu[data-state=open]{animation:.18s ease-out mochi-action-arrive}.mochi-action-item{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;outline:none;align-items:center;gap:10px;min-height:40px;padding:10px 12px;font-size:12px;display:flex}.mochi-action-item>svg{color:var(--purple)}.mochi-action-item[data-highlighted]{background:color-mix(in srgb, var(--purple) 11%, var(--panel))}.mochi-action-item.is-destructive{color:var(--coral);border-top:1px dashed var(--border);border-radius:0 0 10px 10px;margin-top:3px}.mochi-action-item.is-destructive>svg{color:var(--coral)}.mochi-action-item.is-destructive[data-highlighted]{background:color-mix(in srgb, var(--coral) 10%, var(--panel))}.mochi-action-item[data-disabled]{opacity:.4;cursor:not-allowed}@keyframes mochi-action-arrive{0%{opacity:0;transform:scale(.95)translateY(-4px)}to{opacity:1;transform:none}}@media (pointer:coarse){.mochi-menu-trigger{min-width:38px;min-height:38px}.mochi-action-item{min-height:44px}}@media (prefers-reduced-motion:reduce){.mochi-action-menu[data-state]{animation:none}.mochi-menu-trigger{transition:none}}
.word-note{--note-accent:var(--mint);--note-paper:color-mix(in srgb, var(--note-accent) 8%, var(--panel));--note-tilt:-.45deg;border:1px solid color-mix(in srgb, var(--note-accent) 28%, var(--border));background:repeating-linear-gradient(transparent 0 27px, color-mix(in srgb, var(--note-accent) 7%, transparent) 27px 28px), var(--note-paper);box-shadow:1px 6px 0 color-mix(in srgb, var(--note-accent) 12%, transparent), 0 9px 18px color-mix(in srgb, var(--text) 6%, transparent);transform:rotate(var(--note-tilt));border-radius:5px 7px 20px 6px;margin-top:12px;padding:30px 21px 19px;transition:transform .22s,box-shadow .22s}.word-note:nth-child(2n){--note-tilt:.5deg}.note-idiom{--note-accent:var(--purple)}.note-phrasal_verb{--note-accent:var(--coral)}.note-word{--note-accent:var(--night-ink-honey-soft,#a88a50)}.word-note:hover,.word-note:focus-within{box-shadow:1px 7px 0 color-mix(in srgb, var(--note-accent) 15%, transparent), 0 12px 23px color-mix(in srgb, var(--text) 9%, transparent);transform:rotate(0)translateY(-3px)}.word-note:after{content:"";background:linear-gradient(135deg, color-mix(in srgb, var(--note-accent) 24%, var(--panel)) 48%, var(--bg) 51%);pointer-events:none;border-radius:3px 0 18px;width:21px;height:21px;position:absolute;bottom:0;right:0}.word-note-tape{z-index:4;width:74px;height:25px;color:var(--note-accent);background:color-mix(in srgb, var(--note-accent) 24%, var(--panel));border:1px dashed color-mix(in srgb, var(--note-accent) 40%, transparent);opacity:.9;pointer-events:none;border-radius:2px;place-items:center;font-size:16px;display:grid;position:absolute;top:-12px;left:calc(50% - 37px);transform:rotate(-5deg)}.word-note-open{z-index:2;border-radius:inherit;cursor:pointer;background:0 0;width:100%;position:absolute;inset:0}.word-note-open:hover:not(:disabled){filter:none;background:0 0}.word-note-open:focus-visible{outline-offset:4px}.word-note-toolbar{z-index:3;pointer-events:none;align-items:center;gap:7px;display:flex;position:relative}.word-note-kind{color:var(--muted);text-transform:uppercase;letter-spacing:.6px;margin-right:auto;font-size:9px}.word-note-toolbar .learning-state{white-space:nowrap;background:color-mix(in srgb, var(--note-accent) 12%, var(--panel));padding:5px 7px;font-size:8px}.word-note>h3{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:13px 0 7px;font-family:Segoe Print,Bradley Hand,Comic Sans MS,cursive;font-size:1.13rem;line-height:1.6;display:-webkit-box;overflow:hidden}.word-note-topic{color:var(--muted);font-size:11px}.word-note-preview{margin-top:13px}.word-note-preview>p{-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:7px 0;font-size:13px;line-height:1.85;display:-webkit-box;overflow:hidden}.word-note-preview blockquote{background:color-mix(in srgb, var(--note-accent) 9%, var(--panel));border-color:var(--note-accent);margin:14px 0;padding:10px 12px;font-size:12px}.word-note-preview blockquote>span{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.word-note-footer{z-index:3;pointer-events:none;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex;position:relative}.word-note-listen{pointer-events:auto}.word-note-listen>small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.word-note-hint{color:var(--note-accent);white-space:nowrap;font-size:10px}.word-note-detail{overflow-wrap:anywhere;line-height:1.9}.word-note-detail .word-note-topic{background:color-mix(in srgb, var(--note-accent,var(--mint)) 10%, var(--panel));border-radius:9px;padding:4px 10px;display:inline-block}.word-note-section{border-top:1px dashed var(--border);margin:19px 0;padding-top:16px}.word-note-section h3{color:var(--purple);margin-bottom:10px;font-size:12px}.word-note-section p,.word-note-section blockquote{margin-bottom:12px;font-size:14px;line-height:1.9}.word-note-personal{white-space:pre-wrap}.word-note-review{color:var(--muted);margin:20px 0;font-size:10px}.word-note-delete{text-align:center;padding:12px 0}.word-note-delete-flower{background:color-mix(in srgb, var(--coral) 10%, var(--panel));width:58px;height:58px;color:var(--coral);border-radius:22px;place-items:center;font-size:33px;display:inline-grid;transform:rotate(-8deg)}.word-note-delete h3{overflow-wrap:anywhere;margin:17px 0 10px;font-size:18px}.word-note-delete>p{color:var(--muted);max-width:430px;margin:0 auto 20px;font-size:13px;line-height:1.9}.word-note-delete>div{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.word-note-delete .danger{color:var(--coral);background:color-mix(in srgb, var(--coral) 10%, var(--panel));border:1px solid color-mix(in srgb, var(--coral) 40%, var(--border))}@media (max-width:620px){.word-note,.word-note:nth-child(2n){--note-tilt:0deg}}@media (prefers-reduced-motion:reduce){.word-note{transition:none}.word-note:hover,.word-note:focus-within{transform:rotate(var(--note-tilt))}}
.feedback-discovery{--expression-accent:var(--purple);border-color:color-mix(in srgb, var(--expression-accent) 32%, var(--border));background:linear-gradient(145deg, color-mix(in srgb, var(--expression-accent) 7%, var(--panel)), var(--panel) 70%);box-shadow:0 5px 0 color-mix(in srgb, var(--expression-accent) 10%, transparent);border-radius:22px 22px 22px 7px;padding:20px 23px 23px;position:relative}.discovery-collocation{--expression-accent:var(--mint)}.discovery-phrasal_verb{--expression-accent:var(--coral)}.feedback-expression-kind{border:1px dashed color-mix(in srgb, var(--expression-accent) 40%, var(--border));color:var(--text);background:color-mix(in srgb, var(--expression-accent) 12%, var(--panel));border-radius:8px;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.expression-stamp{color:var(--purple);flex:none;margin-left:auto;transition:transform .3s;transform:rotate(7deg)}.feedback-discovery:hover .expression-stamp{transform:rotate(-5deg)translateY(-2px)}.feedback-discovery h4{margin-top:5px;font-family:Segoe Print,Bradley Hand,Comic Sans MS,cursive;font-size:1.16rem;line-height:1.65}.feedback-discovery .learning-expression-meaning{border-left:3px solid color-mix(in srgb, var(--expression-accent) 60%, var(--border));padding-left:13px}.feedback-discovery .learning-expression-meaning p:first-child{font-weight:500}.feedback-discovery .learning-expression-source{margin-top:12px}.feedback-discovery .feedback-example{border:1px solid color-mix(in srgb, var(--expression-accent) 30%, var(--border));background:repeating-linear-gradient(transparent 0 27px, color-mix(in srgb, var(--expression-accent) 7%, transparent) 27px 28px), color-mix(in srgb, var(--expression-accent) 5%, var(--panel));border-radius:6px 15px 15px;margin-top:20px;padding:15px 16px;position:relative}.feedback-discovery .feedback-example:before{content:"";border:1px dashed color-mix(in srgb, var(--expression-accent) 40%, transparent);background:color-mix(in srgb, var(--expression-accent) 25%, var(--panel));width:39px;height:10px;position:absolute;top:-6px;left:15px;transform:rotate(-5deg)}.feedback-expression-actions{border-top:1px dashed var(--border);flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;padding-top:16px;display:flex}.feedback-expression-listen{flex-direction:column;gap:6px;display:flex}.feedback-expression-listen>small{color:var(--muted);font-size:11px}.feedback-expression-actions .save-expression{flex:1;margin-top:0}.save-expression[data-saved=true]>button:disabled{opacity:1;color:var(--text);border-color:color-mix(in srgb, var(--mint) 55%, var(--border));background:color-mix(in srgb, var(--mint) 13%, var(--panel))}.save-expression[data-saved=true]>button svg{color:var(--mint)}.word-note-source-unavailable{background:color-mix(in srgb, var(--purple) 7%, var(--panel));color:var(--muted);border-radius:10px;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.word-note-source-unavailable svg{flex:none;margin-top:5px}@media (max-width:620px){.feedback-discovery{padding:17px}}@media (prefers-reduced-motion:reduce){.expression-stamp{transition:none}.feedback-discovery:hover .expression-stamp{transform:rotate(7deg)}}
.topbar-membership{flex:none;align-items:center;display:flex}.topbar .member-topbar{flex:0 auto;gap:8px;min-width:0}.topbar .member-topbar .account-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;max-width:150px;display:inline-block;overflow:hidden}.topbar-sync-issue{border:1px dashed var(--coral);width:28px;height:28px;color:var(--coral);background:var(--panel);border-radius:10px;place-items:center;display:grid}@media (max-width:1100px){.topbar{gap:15px}.topbar .member-topbar .account-name{max-width:90px}}@media (max-width:1000px){.topbar-membership{margin-left:auto}}@media (max-width:720px){.topbar{justify-content:flex-start;gap:8px;padding-inline:15px}.topbar>span:first-child{display:none}.topbar-membership{margin-left:0;margin-right:0}.topbar-membership:empty{display:none}.topbar-membership .member-badge{padding:5px 7px;font-size:8px}.topbar .member-topbar{gap:6px;margin-left:auto;margin-right:0}.topbar .member-topbar .account-name{max-width:65px;font-size:10px}}@media (max-width:360px){.topbar{gap:5px;padding-inline:12px}.topbar .theme-toggle,.topbar .notification-bell{width:30px;height:30px}.topbar .member-topbar .account-name{max-width:48px;font-size:9px}.topbar-membership .member-badge{padding:4px 5px;font-size:7px}}
