@font-face{font-family:Noto Emoji;font-style:normal;font-weight:400;font-display:swap;src:url(../media/NotoEmoji-Regular.1gsn9p3t72-2o.ttf)format("truetype")}@font-face{font-family:Noto Sans JP;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/NotoSansJP-VariableFont_wght.19zm6a308t3aa.ttf)format("truetype")}@font-face{font-family:LS Jyutping;font-style:normal;font-weight:400;font-display:swap;src:url(../media/LS_Jyutping.0dp0i75iq6abf.ttf)format("truetype")}@font-face{font-family:Linja Laso;font-style:normal;font-weight:400;font-display:swap;src:url(../media/linja_laso_regular.3i2kfp4hf1v0w.otf)format("opentype")}.annotated-text-view-wrapper .annotated-text-actions{flex:none;justify-content:center;align-items:stretch;display:flex}.annotated-text-view-wrapper[data-actions-placement=LEFT_RIGHT] .annotated-text-actions,.annotated-text-view-wrapper[data-actions-placement=RIGHT_LEFT] .annotated-text-actions{margin-inline:.25rem}.annotated-text-view-wrapper .annotated-text-action-button{color:#718096;cursor:pointer;background:#ffffff80;border:0;border-radius:.375rem;justify-content:center;align-items:center;min-width:2rem;min-height:2rem;padding:.25rem .375rem;display:inline-flex}.annotated-text-view-wrapper .annotated-text-action-button:hover:not(:disabled){color:#00b5d8;background:#ebf8ff}.annotated-text-view-wrapper .annotated-text-action-button:focus-visible{outline-offset:2px;outline:2px solid}.annotated-text-view-wrapper .annotated-text-action-button:disabled{cursor:default;opacity:.7}.annotated-text-view-wrapper .annotated-text-action-button svg{width:1.25rem;height:1.25rem}.annotated-text-view-wrapper .annotated-text-action-spinner{box-sizing:border-box;border:2px solid;border-right-color:#0000;border-radius:50%;width:1rem;height:1rem;animation:.7s linear infinite lingop-atv-action-spin}.annotated-text-view-loading{color:#718096;justify-content:center;align-items:center;gap:.5rem;width:100%;min-height:2rem;display:inline-flex}.annotated-text-loading-spinner,.annotated-text-view .annotated-text-inline-spinner{box-sizing:border-box;vertical-align:-.08em;will-change:transform;border:.125em solid;border-right-color:#0000;border-radius:50%;width:.875em;height:.875em;animation:.7s linear infinite lingop-atv-action-spin;display:inline-block}@keyframes lingop-atv-action-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.annotated-text-view-wrapper .annotated-text-action-spinner,.annotated-text-loading-spinner,.annotated-text-view .annotated-text-inline-spinner{animation-duration:1.5s}}.annotated-text-view .gloss{-webkit-user-select:none;user-select:none;text-align:center}.annotated-text-view .gloss-emoji,.annotated-text-view .gloss-text-wrapper{box-sizing:border-box;text-align:center;width:100%}.annotated-text-view .token-word-detail{cursor:pointer;border-radius:.375rem}.annotated-text-view .token-word-detail:not(.token-word-detail-only):hover{background-color:#f6e05e}.annotated-text-view .token-word-detail-only:hover{background-color:#94a3b829}.annotated-text-view .token-word-unfamiliar{background-color:#fefcbf}.annotated-text-view .emoji-color-font{font-family:var(--lingop-atv-color-emoji-font-family,initial)}.annotated-text-view .emoji-bw-font{font-family:var(--lingop-atv-bw-emoji-font-family,"Noto Emoji", sans-serif)}.annotated-text-view .gloss-emoji .grapheme.to-flip,.annotated-text-view .emoji-bw-font .grapheme.to-flip-for-noto,.annotated-text-view-wrapper[data-color-emoji-is-noto=true] .emoji-color-font .grapheme.to-flip-for-noto{transform:scaleX(-1)}.annotated-text-view .gloss-emoji .grapheme.reset-font{font-family:Noto Sans,system-ui,serif}.annotated-text-view .gloss-emoji .grapheme.text-number{letter-spacing:-.1em;font-family:Arial,sans-serif}
.lingop-camp-lingo-auth-form{box-sizing:border-box;color:#111827;width:400px;max-width:100%;margin:0 auto;padding:5px 40px 40px;font-family:inherit}.lingop-camp-lingo-auth-form *,.lingop-camp-lingo-auth-form :before,.lingop-camp-lingo-auth-form :after{box-sizing:border-box}.lingop-camp-lingo-auth-form__brand{flex-direction:column;align-items:center;gap:2px;margin:24px 0 16px;display:flex}.lingop-camp-lingo-auth-form__brand span{color:#2563eb;text-transform:uppercase;font-family:Quicksand,sans-serif;font-size:8px;font-weight:700}.lingop-camp-lingo-auth-form__brand img{border-radius:4px;width:48px;height:48px}.lingop-camp-lingo-auth-form h1{text-align:center;margin:0;padding:0 0 20px;font-size:24px;line-height:1.2}.lingop-camp-lingo-auth-form__google{justify-content:center;align-items:center;width:100%;min-height:40px;display:flex}.lingop-camp-lingo-auth-form__separator{color:#6b7280;align-items:center;gap:12px;width:100%;padding:24px 0 16px;display:flex}.lingop-camp-lingo-auth-form__separator span{background:#e5e7eb;flex:1;height:1px}.lingop-camp-lingo-auth-form__separator small{text-transform:uppercase;font-size:12px}.lingop-camp-lingo-auth-form form{text-align:left;flex-direction:column;gap:8px;width:100%;display:flex}.lingop-camp-lingo-auth-form__field{width:100%;display:block;position:relative}.lingop-camp-lingo-auth-form__field input{color:#111827;width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 12px 9px 40px;font-size:16px}.lingop-camp-lingo-auth-form__field input:focus{outline-offset:0;border-color:#3b82f6;outline:2px solid #3b82f633}.lingop-camp-lingo-auth-form__field-icon{z-index:1;color:#4b5563;pointer-events:none;width:18px;height:18px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.lingop-camp-lingo-auth-form__field-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:100%;height:100%}.lingop-camp-lingo-auth-form__forgot-password{color:#6b7280;align-self:flex-end;margin-bottom:2px;font-size:14px;text-decoration:none}.lingop-camp-lingo-auth-form__forgot-password:hover{text-decoration:underline}.lingop-camp-lingo-auth-form__error{color:#dc2626;text-align:center;width:100%;margin:10px 0 2px;font-size:14px}.lingop-camp-lingo-auth-form__submit{color:#fff;cursor:pointer;width:100%;min-height:40px;font:inherit;background:#000;border:0;border-radius:3px;justify-content:center;align-items:center;gap:8px;margin-top:8px;font-weight:600;display:flex}.lingop-camp-lingo-auth-form__submit:hover:not(:disabled){background:#3b82f6}.lingop-camp-lingo-auth-form__submit:disabled{cursor:not-allowed;opacity:.55}.lingop-camp-lingo-auth-form__spinner{border:2px solid #ffffff73;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.75s linear infinite lingop-camp-lingo-auth-form-spin}.lingop-camp-lingo-auth-form__mode-switcher{color:#6b7280;text-align:center;margin:8px 0 0;font-size:14px}.lingop-camp-lingo-auth-form__mode-switcher button{color:#3b82f6;cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.lingop-camp-lingo-auth-form__mode-switcher button:hover{text-decoration:underline}.lingop-camp-lingo-auth-form__visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes lingop-camp-lingo-auth-form-spin{to{transform:rotate(360deg)}}@media (max-width:420px){.lingop-camp-lingo-auth-form{padding-left:20px;padding-right:20px}}
.lingop-word-detail{box-sizing:border-box;flex-direction:column;align-items:flex-start;gap:.5rem;width:100%;display:flex}.lingop-word-detail *,.lingop-word-detail :before,.lingop-word-detail :after{box-sizing:border-box}.lingop-word-detail__word{font-size:2rem;line-height:1.2}.lingop-word-detail__annotated-text{flex-direction:column;align-items:flex-start;width:100%;display:flex}.lingop-word-detail__glosses{margin:.25rem 0 0;padding-left:1.25rem;list-style:outside}.lingop-word-detail__glosses>li{display:list-item}.lingop-word-detail__morphemes{flex-direction:column;align-items:flex-start;gap:1rem;padding-block:1rem;display:flex}.lingop-word-detail__character-components,.lingop-word-detail__character-tabs{border-top:1px solid #0000002e;width:100%;padding-block:.5rem}.lingop-word-detail__character-section-title{margin:0 0 .45rem;font-size:.875rem;font-weight:600}.lingop-word-detail__character-list{flex-direction:column;gap:.5rem;width:100%;display:flex}.lingop-word-detail__character-row{grid-template-columns:auto auto minmax(0,1fr);align-items:start;gap:.35rem;width:100%;display:grid}.lingop-word-detail__character-row[data-core-component]{grid-template-columns:auto minmax(0,1fr);align-items:center}.lingop-word-detail__character{font-size:1.4rem;font-weight:600;line-height:1.35}.lingop-word-detail__decomposition-arrow{color:#1118278c;padding-top:.2rem}.lingop-word-detail__component-list{flex-wrap:wrap;gap:.3rem;min-width:0;margin:0;padding:0;list-style:none;display:flex}.lingop-word-detail__component-list[data-layout=vertical]{flex-direction:column;align-items:flex-start}.lingop-word-detail__component-list[data-layout=horizontal]{flex-direction:row;align-items:flex-start}.lingop-word-detail__component-list[data-layout=overlay]{border:1px dashed #0369a18c;border-radius:.5rem;padding:.25rem;position:relative}.lingop-word-detail__component-list[data-layout=overlay]:before{content:attr(data-operator);color:#075985;background:#e0f2fe;border-radius:.2rem;padding:0 .2rem;font-size:.65rem;font-weight:800;line-height:1.1;position:absolute;top:-.55rem;right:-.35rem}.lingop-word-detail__component-list>li{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.lingop-word-detail__component-list .lingop-word-detail__component-list{border-left:1px solid #1118273d;margin-top:.25rem;padding-left:.45rem}.lingop-word-detail__component{background:#ffffff94;border:1px solid #11182733;border-radius:.375rem;align-items:flex-start;gap:.4rem;max-width:14rem;padding:.25rem .4rem;display:inline-flex}.lingop-word-detail__component-button{appearance:none;color:inherit;cursor:pointer;font:inherit;text-align:left}.lingop-word-detail__component-button:hover{filter:brightness(.97)}.lingop-word-detail__component-button:focus-visible{outline-offset:1px;outline:2px solid #2563eb}.lingop-word-detail__component-expander{color:#111827;flex:none;align-self:center;margin-left:auto;display:inline-flex}.lingop-word-detail__component-expander svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:1.15rem;height:1.15rem}.lingop-word-detail__component[data-role=semantic]{color:#14532d;background:#dcfce7;border-color:#15803d}.lingop-word-detail__component[data-role=phonetic]{color:#581c87;background:#f3e8ff;border-color:#7e22ce}.lingop-word-detail__component[data-role=structural]{color:#075985;background:#e0f2fe;border-color:#0369a1}.lingop-word-detail__core-component{color:#075985;background:#e0f2fe;border:1px solid #0369a1;border-radius:999px;justify-self:start;padding:.22rem .5rem;font-size:.7rem;font-weight:700}.lingop-word-detail__component-literal{flex:none;font-size:1.15rem;line-height:1.25}.lingop-word-detail__component-literal[data-decomposed-glyph],.lingop-word-detail__character[data-decomposed-glyph]{justify-content:center;align-items:center;display:inline-flex}.lingop-word-detail__composition-glyph{justify-content:center;align-items:center;gap:.04em;min-width:1.15em;min-height:1em;line-height:.9;display:inline-flex}.lingop-word-detail__composition-glyph[data-layout=vertical]{flex-direction:column}.lingop-word-detail__composition-glyph[data-layout=horizontal]{flex-direction:row}.lingop-word-detail__composition-glyph[data-layout=overlay]{display:inline-grid}.lingop-word-detail__composition-glyph[data-layout=overlay]>.lingop-word-detail__composition-glyph-part{grid-area:1/1}.lingop-word-detail__composition-glyph-part{justify-content:center;align-items:center;font-size:.72em;line-height:.82;display:inline-flex}.lingop-word-detail__composition-glyph-part>.lingop-word-detail__composition-glyph{font-size:.9em}.lingop-word-detail__component-details{flex-direction:column;align-items:flex-start;gap:.1rem;min-width:0;display:flex}.lingop-word-detail__component-reading{overflow-wrap:anywhere;color:#111827b8;font-size:.7rem;line-height:1.2}.lingop-word-detail__component-gloss{overflow-wrap:anywhere;color:#111827c7;font-size:.7rem;line-height:1.25}.lingop-word-detail__component[data-role=semantic] .lingop-word-detail__component-reading,.lingop-word-detail__component[data-role=phonetic] .lingop-word-detail__component-gloss{font-style:italic}.lingop-word-detail__component-reading-shared{color:#4c1d95;text-underline-offset:.12em;font-weight:800;text-decoration:underline;text-decoration-thickness:.12em}.lingop-word-detail__component-key{color:#1118279e;flex-wrap:wrap;justify-content:flex-end;gap:.3rem .65rem;width:100%;margin-top:.15rem;font-size:.625rem;line-height:1;display:flex}.lingop-word-detail__component-key>span{align-items:center;gap:.2rem;display:inline-flex}.lingop-word-detail__component-key i{background:#e0f2fe;border:1px solid #0369a1;border-radius:.15rem;width:.55rem;height:.55rem}.lingop-word-detail__component-key i[data-role=semantic]{background:#dcfce7;border-color:#15803d}.lingop-word-detail__component-key i[data-role=phonetic]{background:#f3e8ff;border-color:#7e22ce}.lingop-word-detail__segment{background:#ffffff57;border:1px solid #1118272e;border-radius:.5rem;max-width:100%;padding:.125rem;display:inline-flex}.lingop-word-detail__segment button{appearance:none;color:#111827b3;cursor:pointer;font:inherit;white-space:nowrap;background:0 0;border:0;border-radius:.375rem;padding:.3rem .6rem;font-size:.75rem}.lingop-word-detail__segment button[data-selected]{color:#111827;background:#ffffffe0;box-shadow:0 1px 2px #00000024}.lingop-word-detail__segment button:focus-visible{outline-offset:1px;outline:2px solid #2563eb}.lingop-word-detail__character-tab-panel{width:100%;min-height:2rem;padding-top:.5rem}.lingop-word-detail__stroke-results{flex-direction:column;gap:.75rem;width:100%;display:flex}.lingop-word-detail__stroke-character{flex-direction:column;gap:.35rem;min-width:0;display:flex}.lingop-word-detail__stroke-character-header{color:#1118279e;align-items:baseline;gap:.45rem;font-size:.7rem;display:flex}.lingop-word-detail__stroke-character-literal{color:#111827;font-family:Hiragino Mincho ProN,Yu Mincho,Kaiti SC,STKaiti,KaiTi,serif;font-size:1.25rem;font-weight:600;line-height:1}.lingop-word-detail__stroke-source{cursor:help;align-items:center;line-height:1;display:inline-flex}.lingop-word-detail__stroke-source svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;width:.85rem;height:.85rem}.lingop-word-detail__stroke-steps{grid-template-columns:repeat(auto-fill,minmax(min(5rem,100%),1fr));gap:.35rem;width:100%;margin:0;padding:0;list-style:none;display:grid}.lingop-word-detail__stroke-steps>li{aspect-ratio:1;background-color:#ffffffad;background-image:linear-gradient(90deg,#0000 49.5%,#11182717 49.5% 50.5%,#0000 50.5%),linear-gradient(#0000 49.5%,#11182717 49.5% 50.5%,#0000 50.5%);border:1px solid #11182729;border-radius:.35rem;position:relative}.lingop-word-detail__stroke-steps svg{width:100%;height:100%;display:block;overflow:visible}.lingop-word-detail__stroke-steps svg[data-path-kind=stroke] path{fill:none;stroke:#9ca3af;stroke-width:5px;stroke-linecap:round;stroke-linejoin:round}.lingop-word-detail__stroke-steps svg[data-path-kind=outline] path{fill:#9ca3af}.lingop-word-detail__stroke-steps svg[data-path-kind=stroke] path[data-active]{fill:none;stroke:#2563eb}.lingop-word-detail__stroke-steps svg[data-path-kind=outline] path[data-active]{fill:#2563eb;stroke:#2563eb}.lingop-word-detail__stroke-steps>li>span{color:#1d4ed8;background:#ffffffe0;border-radius:999px;justify-content:center;align-items:center;min-width:1rem;height:1rem;padding-inline:.2rem;font-size:.6rem;font-weight:700;line-height:1;display:inline-flex;position:absolute;bottom:.08rem;right:.18rem}.lingop-word-detail__stroke-message{color:#111827a6;margin:0;font-size:.75rem}.lingop-word-detail__stroke-error{color:#b91c1c;margin:0;font-size:.75rem}.lingop-word-detail__alternate-script{border-top:1px solid #0000002e;align-items:flex-start;gap:.25rem;width:100%;padding-block:.5rem;font-size:.875rem;display:flex}.lingop-word-detail__alternate-script-text{font-size:1.25rem;line-height:1.25}.lingop-word-detail__alternate-script-text[data-same]{color:#1118276b}.lingop-word-detail__alternate-script-same{font-size:.7em;font-style:italic}.lingop-word-detail__actions{border-top:1px solid #0000002e;justify-content:flex-end;align-items:center;gap:1rem;width:100%;padding-top:.5rem;display:flex}.lingop-word-detail__streak,.lingop-word-detail__learnt-button{align-items:center;gap:.35rem;display:inline-flex}.lingop-word-detail__streak{font-size:.75rem}.lingop-word-detail__streak svg,.lingop-word-detail__learnt-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1em;height:1em}.lingop-word-detail__learnt-button{appearance:none;color:#713f12;cursor:pointer;font:inherit;background:#fef9c3;border:1px solid #ca8a04;border-radius:.375rem;padding:.3rem .55rem;font-size:.75rem}.lingop-word-detail__learnt-button:disabled{cursor:wait;opacity:.6}.lingop-word-detail__spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:1rem;height:1rem;animation:.75s linear infinite lingop-word-detail-spin;display:inline-block}@keyframes lingop-word-detail-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.lingop-word-detail__spinner{animation-duration:1.5s}}
.lingop-word-detail-popover{z-index:var(--lingop-anchored-popover-z-index,1600);color:#111827;width:min(24rem,100vw - 1rem);max-height:calc(100vh - 1rem);position:fixed;overflow:visible}.lingop-word-detail-popover__panel{box-sizing:border-box;width:100%;max-height:inherit;background:#facc15;border:1px solid #0000001f;border-radius:.75rem;padding:.75rem;overflow:auto;box-shadow:0 12px 32px #0003}.lingop-word-detail-popover__arrow{fill:#facc15}@media (prefers-reduced-motion:reduce){.lingop-word-detail-popover{transition-duration:0s!important}}
.lingop-word-chips-array,.lingop-word-chips-array *,.lingop-word-chips-array__streak-popover,.lingop-word-chips-array__streak-popover *{box-sizing:border-box}.lingop-word-chips-array{flex-wrap:wrap;align-items:stretch;gap:.5rem;width:100%;display:flex}.lingop-word-chips-array__empty{color:#a0aec0;text-align:center;width:100%;font-size:.625rem}.lingop-word-chip{color:#1a202c;background:#fff;border:1px solid #e2e8f0;border-radius:.25rem;align-items:stretch;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;display:inline-flex;overflow:hidden}.lingop-word-chip button,.lingop-word-chips-array__streak-popover button,.lingop-word-chips-array__streak-popover summary{appearance:none;color:inherit;font:inherit}.lingop-word-chip__word,.lingop-word-chip__streak,.lingop-word-chips-array__streak-action{background:0 0;border:0;margin:0}.lingop-word-chip__word{cursor:pointer;padding:.75rem 1rem;line-height:1.2;transition:background-color .15s ease-in-out,color .15s ease-in-out}.lingop-word-chip__word:hover{color:#2b6cb0;background:#bee3f8}.lingop-word-chip__word:focus-visible,.lingop-word-chip__streak:focus-visible,.lingop-word-chips-array__streak-action:focus-visible,.lingop-word-chips-array__streak-info summary:focus-visible{z-index:1;outline-offset:-2px;outline:2px solid #3182ce;position:relative}.lingop-word-chip__streak{color:#718096;cursor:pointer;border-inline-start:1px solid #cbd5e0;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;min-width:2.25rem;padding:.3rem .5rem;font-size:.625rem;line-height:1;transition:background-color .2s ease-in-out,color .2s ease-in-out;display:flex}.lingop-word-chip__streak--none{color:#c53030;background:#fff5f5}.lingop-word-chip__streak--learning{color:#b7791f;background:ivory}.lingop-word-chip__streak--mastered{color:#2f855a;background:#c6f6d5}.lingop-word-chip__streak:hover{filter:brightness(.97)}.lingop-word-chip__icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75px;width:1rem;height:1rem}.lingop-word-chip__mastery-fill{fill:currentColor;stroke:none;opacity:.18}.lingop-word-chips-array__streak-popover{z-index:var(--lingop-anchored-popover-z-index,1600);color:#1a202c;width:max-content;max-width:min(21rem,100vw - 1rem);position:fixed;overflow:visible}.lingop-word-chips-array__streak-popover-panel{background:#fff;border:1px solid #0f172a29;border-radius:.5rem;padding:.5rem;box-shadow:0 8px 24px #00000029}.lingop-word-chips-array__streak-popover-arrow{fill:#fff}.lingop-word-chips-array__streak-actions{align-items:center;gap:.25rem;display:flex}.lingop-word-chips-array__streak-action{cursor:pointer;border-radius:.25rem;align-items:center;gap:.3rem;padding:.35rem .55rem;display:inline-flex}.lingop-word-chips-array__streak-action--mastered{color:#2f855a}.lingop-word-chips-array__streak-action--mastered:hover{background:#c6f6d5}.lingop-word-chips-array__streak-action--reset{color:#c53030}.lingop-word-chips-array__streak-action--reset:hover{background:#fff5f5}.lingop-word-chips-array__streak-info{position:relative}.lingop-word-chips-array__streak-info summary{color:#718096;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:1.8rem;height:1.8rem;list-style:none;display:flex}.lingop-word-chips-array__streak-info summary::-webkit-details-marker{display:none}.lingop-word-chips-array__streak-info summary:hover{background:#edf2f7}.lingop-word-chips-array__streak-info-content{color:#4a5568;width:min(17rem,100vw - 3rem);padding:.5rem;font-size:.75rem;line-height:1.35}.lingop-word-chips-array__streak-info-content p{margin:0 0 .4rem}.lingop-word-chips-array__streak-info-content p:first-child{color:#1a202c;align-items:center;gap:.3rem;font-weight:600;display:flex}.lingop-word-chips-array__streak-info-content p:last-child{margin-bottom:0}@media (prefers-reduced-motion:reduce){.lingop-word-chip,.lingop-word-chip__word,.lingop-word-chip__streak,.lingop-word-chips-array__streak-popover{transition-duration:0s!important}}
:root,:root[data-theme=dark]{--page-bg:#10140f;--page-bg-deep:#090c08;--surface:#1d241ac7;--surface-solid:#1b2119;--surface-hover:#2e3928e6;--text-primary:#f5f1e8;--text-secondary:#afb8a5;--text-muted:#818b79;--accent:#d7f08a;--accent-strong:#b9d668;--accent-ink:#17200d;--warm:#ffc86b;--warm-soft:#ffc86b21;--border:#e2eed324;--border-strong:#e2eed342;--shadow:0 28px 90px #0000006b;--ambient-one:#7b9e4c33;--ambient-two:#da894124;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--page-bg:#f4f0e5;--page-bg-deep:#e9e2d2;--surface:#fffdf6c7;--surface-solid:#fffdf6;--surface-hover:#fffffbfa;--text-primary:#20231c;--text-secondary:#62685b;--text-muted:#878d7d;--accent:#496a2d;--accent-strong:#36531e;--accent-ink:#fffef8;--warm:#a45d18;--warm-soft:#b469221c;--border:#2a342226;--border-strong:#2a342245;--shadow:0 28px 90px #39402b29;--ambient-one:#89ac593d;--ambient-two:#ec9d5433;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{background:var(--page-bg);scroll-behavior:smooth;min-height:100%}body{background:var(--page-bg);min-height:100%;color:var(--text-primary);margin:0;font-family:Avenir Next,Avenir,Segoe UI,sans-serif;overflow-x:hidden}body:before,body:after{content:"";z-index:-2;pointer-events:none;position:fixed}body:before{background:radial-gradient(circle at 22% 24%, var(--ambient-one), transparent 25%), radial-gradient(circle at 80% 16%, var(--ambient-two), transparent 22%), radial-gradient(circle at 68% 78%, color-mix(in srgb, var(--ambient-one) 60%, transparent), transparent 28%);filter:blur(24px)saturate(115%);animation:24s ease-in-out infinite alternate ambient-drift;inset:-28vmax}body:after{z-index:-1;opacity:.18;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E");inset:0}::selection{background:var(--accent);color:var(--accent-ink)}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}.ambient-page{isolation:isolate;position:relative;overflow:hidden}.theme-selector{z-index:1500;right:max(14px, env(safe-area-inset-right));bottom:max(14px, env(safe-area-inset-bottom));border:1px solid var(--border);background:color-mix(in srgb, var(--surface-solid) 78%, transparent);-webkit-backdrop-filter:blur(18px)saturate(140%);backdrop-filter:blur(18px)saturate(140%);border-radius:999px;align-items:center;gap:4px;padding:5px;animation:.5s .18s both rise-in;display:flex;position:fixed;box-shadow:0 12px 42px #00000029}.theme-selector__label{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;padding:0 7px 0 10px;font-size:.68rem;font-weight:800;display:none}.theme-selector__button{width:34px;min-height:34px;color:var(--text-secondary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0;font-size:.76rem;font-weight:750;transition:color .16s,background .16s,transform .16s;display:inline-flex}.theme-selector__button:hover{color:var(--text-primary);transform:translateY(-1px)}.theme-selector__button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.theme-selector__button span{display:none}.brand-header{animation:.65s both rise-in}.brand-header__eyebrow{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px;font-size:.76rem;font-weight:900}.brand-header__title{letter-spacing:-.065em;max-width:9ch;margin:0;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:clamp(4rem,14vw,7.5rem);font-weight:600;line-height:.82}.brand-header__link{color:var(--text-secondary);align-items:center;gap:6px;margin-top:20px;font-size:.9rem;font-weight:750;text-decoration:none;transition:color .16s,transform .16s;display:inline-flex}.brand-header__link:hover{color:var(--text-primary);transform:translate(3px)}.language-page{place-items:center;min-height:100vh;padding:72px 24px 110px;display:grid}.language-picker{z-index:1;width:min(100%,720px);position:relative}.language-picker__intro{max-width:560px;color:var(--text-secondary);margin:34px 0;font-size:clamp(1.08rem,3vw,1.32rem);line-height:1.6;animation:.65s .1s both rise-in}.language-grid{gap:14px;display:grid}.language-card{border:1px solid var(--border-strong);background:var(--surface);min-height:94px;color:var(--text-primary);-webkit-backdrop-filter:blur(18px)saturate(130%);backdrop-filter:blur(18px)saturate(130%);border-radius:22px;grid-template-columns:auto 1fr auto;align-items:center;gap:17px;padding:17px 18px;text-decoration:none;transition:transform .22s cubic-bezier(.2,.8,.2,1),border-color .18s,box-shadow .22s,background .18s;animation:.6s both rise-in;display:grid;box-shadow:0 14px 45px #00000014}.language-card:first-child{animation-delay:.18s}.language-card:nth-child(2){animation-delay:.26s}.language-card:not(.language-card--disabled):hover{border-color:var(--accent);background:var(--surface-hover);box-shadow:var(--shadow);transform:translateY(-5px)rotate(-.2deg)}.language-card__icon,.language-card__action{background:var(--warm-soft);width:54px;height:54px;color:var(--warm);border-radius:17px;place-items:center;display:grid}.language-card__action{background:var(--accent);color:var(--accent-ink);border-radius:50%;transition:transform .18s}.language-card:hover .language-card__action{transform:rotate(8deg)scale(1.06)}.language-card__copy{gap:4px;display:grid}.language-card__copy strong{letter-spacing:-.02em;font-family:Iowan Old Style,Georgia,serif;font-size:1.55rem}.language-card__copy span{color:var(--text-secondary);font-size:.9rem}.language-card--disabled{opacity:.54;box-shadow:none}.language-card__badge{border:1px solid var(--border);color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:7px 10px;font-size:.7rem;font-weight:900}.language-page__orb{z-index:0;filter:blur(2px);opacity:.7;border-radius:50%;width:440px;height:440px;position:absolute}.language-page__orb--one{background:radial-gradient(circle at 35% 35%, var(--ambient-one), transparent 68%);animation:12s ease-in-out infinite alternate orb-float;top:-180px;right:-130px}.language-page__orb--two{background:radial-gradient(circle at 45% 45%, var(--ambient-two), transparent 68%);animation:15s ease-in-out 1s infinite alternate-reverse orb-float;bottom:-240px;left:-130px}.trivia-experience{color:var(--text-primary)!important;background:0 0!important}.trivia-experience:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(125deg, color-mix(in srgb, var(--page-bg) 92%, transparent), color-mix(in srgb, var(--page-bg-deep) 86%, transparent));position:fixed;inset:0}.trivia-experience .session-card{animation:.46s both rise-in}.trivia-experience .session-card:hover{transform:translateY(-4px)}.player-line{animation:.38s cubic-bezier(.2,.8,.2,1) both focus-in}.lingo-trivia-camp-lingo-auth-form{color:var(--text-primary)}.lingo-trivia-camp-lingo-auth-form .lingop-camp-lingo-auth-form__separator,.lingo-trivia-camp-lingo-auth-form .lingop-camp-lingo-auth-form__forgot-password,.lingo-trivia-camp-lingo-auth-form .lingop-camp-lingo-auth-form__mode-switcher{color:var(--text-secondary)}.lingo-trivia-camp-lingo-auth-form .lingop-camp-lingo-auth-form__separator span{background:var(--border-strong)}.lingo-trivia-camp-lingo-auth-form .lingop-camp-lingo-auth-form__field input{border-color:var(--border-strong);background:var(--surface-solid);color:var(--text-primary);color-scheme:normal}.lingo-trivia-camp-lingo-auth-form .lingop-camp-lingo-auth-form__field input::placeholder,.lingo-trivia-camp-lingo-auth-form .lingop-camp-lingo-auth-form__field-icon{color:var(--text-muted)}.lingo-trivia-camp-lingo-auth-form .lingop-camp-lingo-auth-form__submit{background:var(--accent);color:var(--accent-ink);border-radius:999px}.lingo-trivia-camp-lingo-auth-form .lingop-camp-lingo-auth-form__submit:hover:not(:disabled){background:var(--accent-strong)}.lingo-trivia-word-chips{margin-top:.75rem}.lingo-trivia-word-chips .lingop-word-chip{border-color:var(--border-strong);background:var(--surface-solid);color:var(--text-primary)}.lingo-trivia-word-chips .lingop-word-chip__word{font-weight:800}.lingo-trivia-word-chips .lingop-word-chip__word:hover{background:var(--warm-soft);color:var(--warm)}.lingo-trivia-word-chips .lingop-word-chip__word:focus-visible,.lingo-trivia-word-chips .lingop-word-chip__streak:focus-visible{outline-color:var(--accent)}.lingo-trivia-word-chips--earlier .lingop-word-chip{border-color:color-mix(in srgb, var(--warm) 22%, transparent);color:var(--warm)}.lingo-trivia-word-chips--learned .lingop-word-chip__streak{border-inline-start-color:var(--border-strong)}.lingo-trivia-words-dialog.MuiPaper-root{background:var(--page-bg);color:var(--text-primary)}.lingo-trivia-words-dialog .MuiDialogTitle-root,.lingo-trivia-words-dialog .MuiDialogActions-root{color:var(--text-primary);background:0 0}.lingo-trivia-words-dialog .MuiDialogContent-root{border-color:var(--border);background:0 0}.lingo-trivia-words-dialog .MuiButton-root{color:var(--accent)}.lingop-word-chips-array__streak-popover{color:var(--text-primary)}.lingop-word-chips-array__streak-popover-panel{border-color:var(--border-strong);background:var(--surface-solid);box-shadow:var(--shadow)}.lingop-word-chips-array__streak-popover-arrow{fill:var(--surface-solid)}.lingop-word-chips-array__streak-info summary{color:var(--text-secondary)}.lingop-word-chips-array__streak-info summary:hover{background:var(--surface-hover)}.lingop-word-chips-array__streak-info-content{color:var(--text-secondary)}.lingop-word-chips-array__streak-info-content p:first-child{color:var(--text-primary)}.lingop-word-chips-array__streak-action--mastered{color:var(--accent)}.lingop-word-chips-array__streak-action--mastered:hover{background:color-mix(in srgb, var(--accent) 14%, transparent)}.lingop-word-chips-array__streak-action--reset{color:var(--warm)}.lingop-word-chips-array__streak-action--reset:hover{background:var(--warm-soft)}:root[data-theme=dark] .lingop-word-chip__streak--none{background:color-mix(in srgb, #c53030 16%, var(--surface-solid));color:#ff9a9a}:root[data-theme=dark] .lingop-word-chip__streak--learning{background:color-mix(in srgb, var(--warm) 14%, var(--surface-solid));color:var(--warm)}:root[data-theme=dark] .lingop-word-chip__streak--mastered{background:color-mix(in srgb, var(--accent) 14%, var(--surface-solid));color:var(--accent)}@keyframes ambient-drift{0%{transform:translate(-2%,-1%)rotate(-2deg)scale(1)}to{transform:translate(3%,2%)rotate(3deg)scale(1.06)}}@keyframes orb-float{0%{transform:translate(0,0)scale(1)}to{transform:translate(24px,-18px)scale(1.08)}}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes focus-in{0%{opacity:0;filter:blur(4px);transform:scale(.97)translateY(8px)}to{opacity:1;filter:blur();transform:scale(1)translateY(0)}}@media (max-width:640px){.theme-selector__label,.theme-selector__button span{display:none}.theme-selector__button{justify-content:center;width:34px;padding:0}.language-page{place-items:start center;padding-top:72px}.language-card{min-height:84px;padding:14px}.language-card__icon,.language-card__action{border-radius:14px;width:46px;height:46px}.language-card__action{border-radius:50%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
