/* Daylight learner theme: white surfaces, blue actions, lilac and apricot accents. */
:root {
  --lp-ink: #293650;
  --lp-muted: #5c6980;
  --lp-line: #e4eaf5;
  --lp-paper: #fff;
  --lp-bg: #fafcff;
  --lp-green: #4162d9;
  --lp-green-dark: #304fc2;
  --lp-lime: #e4eaff;
  --lp-shadow: 0 8px 28px rgba(76, 103, 164, .06);
  --lav: #f2edff;
  --peach: #fff0e8;
  --mint: #edf4ff;
  --game-violet: #ece3ff;
  --game-coral: #ffe6d9;
  --game-citrus: #f2f8c9;
}

body.lingua-body {
  background: radial-gradient(ellipse at 92% 0, #f2f5ff 0, transparent 36rem), #fafcff;
}
.lingua-body ::selection { background: #e5eaff; color: #304a91; }
.lingua-body .topbar { background: rgba(255, 255, 255, .97); border-color: #e7edf7; }
.lingua-body .topbar .guest-nav { flex: 0 1 auto; margin-left: auto; }
.lingua-body .brand-icon {
  background: #e4eaff;
  color: #4162bd;
  border-color: #d7e1ff;
  box-shadow: 0 4px 12px #7894ef15;
}
.lingua-body .app-sidebar { background: #fff; border-color: #e7edf7; }
.lingua-body .sidebar-caption { color: #62738c; }
.lingua-body .app-sidebar__link { border-radius: 13px; color: #566781; }
.lingua-body .app-sidebar__link:hover { background: #f5f8ff; border-color: #e5ecff; }
.lingua-body .app-sidebar__link.is-active {
  background: #edf4ff;
  border-color: #d7e5ff;
  color: #3e58b5;
  box-shadow: 0 3px 10px #6b88d406;
}
.lingua-body .nav-mark { background: #f4f7fd; color: #6074a1; }
.lingua-body .app-sidebar__link[aria-current=page] .nav-mark { background: #e1e9ff; color: #425ec2; }
.lingua-body .sidebar-note { background: linear-gradient(125deg, #f1f7ff, #fff9ec); border-color: #e1eafa; }
.lingua-body .mobile-nav { background: #fff; border-color: #e3eaf7; }
.lingua-body .mobile-nav__links a[aria-current=page] { background: #edf4ff; color: #3e58b5; }
.lingua-body .footer { background: #ffffff80; border-color: #e7edf7; }
.lingua-body .footer span { color: #61718c; }
.lingua-body .footer span:first-child { color: #45577a; }

/* Clear white surfaces, soft depth and crisp, saturated accents. */
.lingua-body :is(.panel, .stat-card, .content-card, .question-card, .explanation-card,
  .tutor-card, .auth-card, .library-card, .resume-card, .lp-quiz-builder,
  .lp-quiz-history-item, .lp-quiz-question, .lp-wordbook-card, .lp-weak-card,
  .lp-wordbook-toolbar, .lp-weak-overview, .flash-tools, .lp-reward-strip) {
  background-color: #fff;
  border-color: #e3eaf7;
  box-shadow: var(--lp-shadow);
}
.lingua-body :is(.panel, .stat-card, .content-card, .auth-card, .library-card) { border-radius: 20px; }
.lingua-body .button.primary {
  background: #4162d9;
  color: #fff;
  box-shadow: 0 5px 14px #4162d921;
}
.lingua-body .button.primary:hover { background: #304fc2; box-shadow: 0 7px 18px #4162d92b; }
.lingua-body .button.secondary { background: #fff; border-color: #d8e2f6; color: #425ba8; }
.lingua-body .button.secondary:hover { background: #f3f7ff; border-color: #bacbf5; }
.lingua-body :is(input, select, textarea):not([type=radio]):not([type=checkbox]):not([type=hidden]) {
  background-color: #fff;
  color: #344566;
  border-color: #8393b1;
}
.lingua-body :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline-color: #4162d9;
}
.lingua-body :is(.lp-section-heading, .panel-heading) h2 { color: #34456b; }

/* The welcome banner now opens onto a light sky canvas. */
.lingua-body .dashboard-home .dashboard-welcome {
  background: linear-gradient(115deg, #eef6ff 0%, #f7faff 57%, #fff7e7 100%);
  border-color: #dce8fb;
  box-shadow: 0 10px 30px #7699df10;
}
.lingua-body .dashboard-home .dashboard-welcome:after {
  border-color: #d4e2ff;
  box-shadow: 0 0 0 32px #ffffff40, 0 0 0 65px #ffffff30;
}
.lingua-body .dashboard-home .dashboard-welcome .eyebrow { color: #4d66a8; }
.lingua-body .dashboard-home .dashboard-welcome h1 { color: #304674; }
.lingua-body .dashboard-home .dashboard-welcome p { color: #5a6b88; }
.lingua-body .dashboard-home .dashboard-welcome .dashboard-greeting { color: #4b608d; }
.lingua-body .dashboard-home .dashboard-welcome > .button { background: #4162d9; color: #fff; }
.lingua-body .dashboard-home .dashboard-welcome > .button:hover { background: #304fc2; }
.lingua-body .lp-art-caption { color: #546b95; }
.lingua-body .lp-learning-art svg > ellipse:first-child { fill: #cbdfff; }
.lingua-body .lp-discovery-quiz { background: linear-gradient(135deg, #f1eaff, #faf7ff); border-color: #e3d5fb; }
.lingua-body .lp-discovery-words { background: linear-gradient(135deg, #ebf6ff, #f5fbff); border-color: #d5e7fb; }
.lingua-body .lp-discovery-listen { background: linear-gradient(135deg, #ffeddf, #fff9f2); border-color: #f7dcc8; }
.lingua-body .lp-discovery-card h3 { font-weight: 750; }
.lingua-body .lp-discovery-quiz .lp-discovery-icon { background: #e3d3ff; color: #7150aa; }
.lingua-body .lp-discovery-words .lp-discovery-icon { background: #d8eaff; color: #4664a7; }
.lingua-body .lp-discovery-listen .lp-discovery-icon { background: #ffdcc2; color: #95562c; }
.lingua-body .lp-meter { background: #edf2fc; height: 7px; }
.lingua-body .lp-meter > span { background: #6487ed; }
.lingua-body .lp-reward-level .lp-meter > span { background: #a283df; }
.lingua-body .lp-meter-sun > span { background: #d5b64d; }
.lingua-body .dashboard-home .stat-icon.lavender { background: #f0e8ff; color: #7754ad; }
.lingua-body .dashboard-home .stat-icon.peach { background: #ffede1; color: #a05c33; }
.lingua-body .dashboard-home .stat-icon.mint { background: #e1f7ed; color: #2e805e; }
.lingua-body .dashboard-home .cefr-summary { background: #f3f7ff; border-color: #e0e9fb; }
.lingua-body .lp-badge.is-earned { background: #fff9df; border-color: #f1e2a6; }

/* Vocabulary keeps both faces bright; text and controls change together. */
.lingua-body .flashcard-workspace .vocab-heading {
  background: linear-gradient(115deg, #eef7ff, #fff9eb);
  border-color: #dce9fb;
  color: #384f7a;
  box-shadow: 0 8px 26px #7699df10;
}
.lingua-body .flashcard-workspace .vocab-heading .eyebrow { color: #4a69ac; }
.lingua-body .flashcard-workspace .vocab-heading h1 { color: #344d7c; }
.lingua-body .flashcard-workspace .vocab-heading h1 em { color: #4162d9; }
.lingua-body .flashcard-workspace .vocab-heading-copy > p { color: #5b6d89; }
.lingua-body .flashcard-workspace .learner-level-note { color: #5b6d89!important; }
.lingua-body .flashcard-workspace .learner-level-note strong { background: #ffffffb3; border-color: #dae5f8; color: #4963a2; }
.lingua-body .flashcard-workspace .learner-level-note > span { color: #5b6d89; }
.lingua-body .flashcard-workspace .deck-count { background: #fffce7; border-color: #eee6b4; }
.lingua-body .flashcard-workspace .flash-front {
  background: linear-gradient(140deg, #fff 0%, #f4f9ff 65%, #eef5ff 100%);
  color: #3d5786;
  box-shadow: 0 9px 25px #6b8fe512;
  border: 1px solid #dce7f9;
}
.lingua-body .flashcard-workspace .flash-front:after { border-color: #e0e9fb; box-shadow: 0 0 0 22px #deebff30; }
.lingua-body .flashcard-workspace .flash-meta { color: #5c6e89; }
.lingua-body .flashcard-workspace .flash-word-kicker { color: #536db1; }
.lingua-body .flashcard-workspace .flash-card .flash-word-block h2 { color: #3b5488; }
.lingua-body .flashcard-workspace .flash-card .pronunciation { color: #63738b; }
.lingua-body .flashcard-workspace .word-speak { background: #fff; border-color: #d5e2f8; color: #4866ad; }
.lingua-body .flashcard-workspace .word-speak:hover { background: #f0f6ff; }
.lingua-body .flashcard-workspace .flash-front-bottom { border-color: #dce7fa; }
.lingua-body .flashcard-workspace .flash-back,
.lingua-body .flashcard-workspace .flash-back-actions { background: #fff; }
.lingua-body .flashcard-workspace .flip-button { background: #e4ebff; color: #3d57a3; }
.lingua-body .flashcard-workspace .flip-button:hover { background: #d9e4ff; }
.lingua-body .flash-front .lp-save-word-button { background: #fff; border-color: #d8e4fa; color: #4e67a3; }
.lingua-body .flash-front .lp-save-word-button.is-saved { background: #fff4cb; border-color: #efdfa0; color: #755c20; }
.lingua-body .flash-front .lp-save-word-status { color: #61718c; }
.lingua-body .flash-front .lp-save-word-status[data-state=error] { color: #9f3a35; }

/* Personal collections and quiz share the same airy pastel palette. */
.lingua-body .lp-quiz-hero { background: linear-gradient(115deg, #f0e8ff, #fbf7ff); border-color: #e3d6f6; }
.lingua-body .lp-quiz-hero h1 { color: #4a356d; }
.lingua-body .lp-quiz-hero p { color: #6b587e; }
.lingua-body .lp-quiz-orbit:before { background: #eae0ff; border-color: #e0d2f6; }
.lingua-body .lp-quiz-lightning { background: #fff6bd; border-color: #efe0a0; }
.lingua-body .lp-quiz-how { background: #fff9e8; border-color: #efe2bd; }
.lingua-body .lp-quiz-result-hero { background: linear-gradient(125deg, #f2f8ff, #fffce9); border-color: #e2eafa; }
.lingua-body .lp-wordbook-hero { background: linear-gradient(115deg, #f1eaff, #fcf8ff); border-color: #e3d7f5; }
.lingua-body .lp-wordbook-count { background: #fff; border-color: #eadff7; }
.lingua-body .lp-wordbook-card:nth-child(3n+1) { border-top-color: #bfdbff; }
.lingua-body .lp-wordbook-card:nth-child(3n+2) { border-top-color: #ddcdf5; }
.lingua-body .lp-wordbook-card:nth-child(3n) { border-top-color: #f5d8c0; }
.lingua-body .lp-weak-hero { background: linear-gradient(115deg, #fff0e4, #fffbf3); border-color: #f2ddc6; }
.lingua-body .lp-weak-hero h1 { color: #604a34; }
.lingua-body .lp-weak-hero h1 em { color: #9b643d; }
.lingua-body .lp-weak-filters { background: #f1f7ff; border-color: #dce7fb; }
.lingua-body :is(.lp-weak-example, .lp-wordbook-example) { background: #f5f8ff; }
.lingua-body :is(.lp-weak-card, .lp-wordbook-card) :is(h2, h3) { color: #425d98; }
.lingua-body :is(.lp-weak-meaning, .lp-wordbook-meaning) { color: #536b9c; }

/* Supporting screens use white forms and light, welcoming section headers. */
.lingua-body .library-hero { background: linear-gradient(115deg, #edf6ff, #fff9ee); border-color: #deebfb; }
.lingua-body .landing-preview { background: linear-gradient(135deg, #edf7ff, #fff6e8); border-color: #dfebfc; }
.lingua-body .landing-sample__face { background: #fff; border-color: #e0e9fa; }
.lingua-body .landing-hero h1 > span { color: #4162d9; }
.lingua-body .auth-story-card { background: #f0f6ff; border-color: #e0e9fb; }
.lingua-body .lp-quiz-source-tabs > a[aria-current=page] { background: #eee4ff; border-color: #d5bfef; color: #624088; }
.lingua-body .lp-quiz-source-tabs > a[data-source=weak][aria-current=page] { background: #fff0e1; border-color: #eac9aa; color: #825b36; }

@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  .lingua-body :is(.lp-weak-card, .lp-wordbook-card, .library-card) { transition: box-shadow .18s ease, border-color .18s ease; }
  .lingua-body :is(.lp-weak-card, .lp-wordbook-card, .library-card):hover { border-color: #c4d6f8; box-shadow: 0 12px 30px #5d78bf0c; }
}
@media (max-width:620px) {
  .lingua-body .dashboard-home .dashboard-welcome { border-radius: 22px; }
  .lingua-body .lp-learning-art { opacity: 1; }
}

/* Shared copy stays crisp against light surfaces; dark green editorial panels are retired. */
.lingua-body .eyebrow { color: #5366a1; }
.lingua-body .account-name { color: #4c5f83; }
.lingua-body .landing-hero h1 { color: #2e3e60; }
.lingua-body .landing-kicker { color: #56699b; }
.lingua-body .landing-kicker > span { color: #7470cd; }
.lingua-body .landing-hero__copy > p { color: #5b6980; }
.lingua-body .landing-text-link { color: #435cab; }
.lingua-body .landing-scope { color: #62718a; }
.lingua-body .landing-scope > span { color: #4c66a6; }
.lingua-body .landing-preview__heading { color: #566b91; }
.lingua-body .landing-preview__symbol { background: #e2eaff; color: #5268b7; }
.lingua-body .landing-preview__foot strong { color: #455c87; }
.lingua-body .landing-preview__foot p { color: #64728a; }
.lingua-body .landing-sample h2 { color: #344970; }
.lingua-body .landing-sample :is(p, .landing-sample__hint, .landing-sample__translation) { color: #61708a; }
.lingua-body .landing-sample__meta { color: #5b6e92; }
.lingua-body .landing-sample__meta > span:last-child { background: #f0edff; color: #68579a; }
.lingua-body .landing-flip { color: #4b63a0; border-color: #e4eaf7; }
.lingua-body .landing-flip > span:last-child { background: #edf2ff; }
.lingua-body .landing-path { border-color: #e3eaf7; }
.lingua-body .landing-path__grid article { border-color: #dde6f7; }
.lingua-body .landing-step { background: #edf3ff; border-color: #dce6fb; color: #536aaa; }
.lingua-body :is(.landing-path h3, .landing-section-heading h2, .landing-feature h3, .landing-final h2) { color: #354b76; }
.lingua-body :is(.landing-path p, .landing-feature p, .landing-section-heading > p, .landing-editorial-note) { color: #63718a; }
.lingua-body .landing-tag { color: #596da1; }
.lingua-body .landing-feature { border-color: #e0e8f8; box-shadow: var(--lp-shadow); }
.lingua-body .landing-feature__icon { background: #edf3ff; color: #5972ba; }
.lingua-body .landing-feature--dark { background: linear-gradient(135deg, #edf5ff, #f3f0ff); border-color: #dfe7fb; }
.lingua-body .landing-feature--dark .landing-feature__icon { background: #e1e8ff; color: #596ac0; }
.lingua-body .landing-feature a { color: #4162c5; }
.lingua-body .landing-final { background: linear-gradient(115deg, #f0f6ff, #fff7eb); border-color: #e4e9f8; }
.lingua-body :is(.auth-story h2, .auth-layout .auth-card h1) { color: #354b76; }
.lingua-body :is(.auth-story > p, .auth-story > small, .auth-layout .auth-card > p, .auth-layout .field-help) { color: #62718a; }
.lingua-body .auth-story-card > span { background: #e3eaff; color: #5b70b5; }
.lingua-body .auth-story-card strong { color: #496293; }
.lingua-body .auth-story-card p { color: #64738d; }
.lingua-body .auth-story > a { color: #4964af; }
.lingua-body .auth-layout .auth-field label { color: #495e82; }
.lingua-body .auth-layout .auth-card .auth-foot { border-color: #e5ebf7; }
.lingua-body .auth-story-steps li { color: #5a6e93; }
.lingua-body .auth-story-steps span { background: #edf2ff; color: #5c6fa8; }
