/* © 2026 Yuri Zivago Yung Grillo (尤立) · Jornada Chinesa (jornadachinesa.com.br). Todos os direitos reservados. Proibida a cópia ou republicação sem autorização. */
/* Ajustes visuais (09/10/2026). Carregado por último: para desfazer, basta remover o <link> deste arquivo. */

/* Menu lateral sem barra de rolagem própria: rola junto com a página. */
@media(min-width:961px){
  .identity-sidebar {max-height:none!important;overflow:visible!important;}
  #socialNavigation {gap:2px!important;}
  #socialNavigation button {min-height:38px;padding-top:8px!important;padding-bottom:8px!important;}
}

/* Cartões do painel: ícone ao lado do texto, mais compactos e fáceis de percorrer. */
.dashboard-card {display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:16px;align-items:start;min-height:0;padding:18px 20px;border-radius:12px;}
.dashboard-card .card-icon {grid-row:1/3;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:var(--surface-alt);font-size:1.5rem;}
.dashboard-card h3 {margin:2px 0 0;font-size:1.15rem;}
.dashboard-card p {margin:4px 0 0;}
.dashboard-card:focus-visible {outline:3px solid var(--accent);outline-offset:2px;}
@media(min-width:1280px){.dashboard-grid {grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:560px){
  .dashboard-grid {gap:10px;}
  .dashboard-card {padding:14px 16px;min-height:0;column-gap:12px;}
  .dashboard-card .card-icon {width:42px;height:42px;font-size:1.3rem;}
  .dashboard-card h3 {font-size:1.05rem;}
  .dashboard-card p {font-size:.85rem;line-height:1.4;}
  .dashboard>h1 {font-size:1.5rem;}
}

/* Cabeçalho mais compacto no celular. */
@media(max-width:560px){
  .app-header {padding:10px 14px!important;gap:8px!important;}
  .header-actions {width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:6px!important;}
  .header-actions .theme-picker {font-size:.85rem;}
  .header-actions button {min-height:40px;}
}

/* Áreas de estudo: títulos, botões e resultado da conferência mais legíveis. */
.learning h2 {font-size:1.6rem;}
.learning .database-button {border-radius:8px;}
.learning .database-button:focus-visible,.hsk-chip:focus-visible {outline:3px solid var(--accent);outline-offset:2px;}
.learning-card {border-radius:12px;}
.learning-card h3 {margin-top:0;}
.learning:not(.hsk) .learning-card div > small {display:block;margin-top:8px;color:var(--text-muted);font-size:.82rem;letter-spacing:.02em;text-transform:uppercase;}
.learning .learning-tip,.learning .learning-card-meta {text-transform:none;}
.learning-prompt {font-size:1.7rem;}
@media(max-width:560px){.learning h2 {font-size:1.35rem;}.learning-prompt {font-size:1.45rem;}}

/* ---------- Paletas de cores (Tema) ---------- */
/* Cada paleta redefine as cores do site; a base clara/escura continua cuidando de contrastes e campos. */
body[data-palette] {
  --paper:var(--page-bg); --paper-dark:var(--surface-alt); --panel:var(--surface);
  --ink:var(--text); --soft-ink:var(--text-muted); --jade:var(--accent);
  --jade-dark:var(--accent-hover); --jade-soft:var(--surface-alt); --red:var(--danger);
}
body[data-palette="ceu"] {
  --page-bg:#dbe6f1; --page-bg-secondary:#f3f7fc; --surface:#fbfdff; --surface-alt:#e7eef7;
  --text:#1f2c3a; --text-muted:#536379; --border:#b7c6d8; --accent:#2c5d8c; --accent-hover:#214a70;
  --input-bg:#fdfeff; --input-text:#1f2c3a; --ornament:#4a6f9a16;
}
body[data-palette="peonia"] {
  --page-bg:#f3e1dd; --page-bg-secondary:#fdf4f1; --surface:#fffaf8; --surface-alt:#f6e9e5;
  --text:#3a2321; --text-muted:#775450; --border:#dcc0b9; --accent:#a3302b; --accent-hover:#82231f;
  --input-bg:#fffcfb; --input-text:#3a2321; --ornament:#a3302b12;
}
body[data-palette="lavanda"] {
  --page-bg:#e5e0ef; --page-bg-secondary:#f6f3fb; --surface:#fdfbff; --surface-alt:#eee9f6;
  --text:#2c253f; --text-muted:#615877; --border:#c8bedb; --accent:#65479a; --accent-hover:#4f377b;
  --input-bg:#fefdff; --input-text:#2c253f; --ornament:#65479a14;
}
body[data-palette="areia"] {
  --page-bg:#efe3c6; --page-bg-secondary:#fbf5e6; --surface:#fffbef; --surface-alt:#f5ecd5;
  --text:#382e1d; --text-muted:#6f613c; --border:#d6c496; --accent:#7f600c; --accent-hover:#634a08;
  --input-bg:#fffdf5; --input-text:#382e1d; --ornament:#7f600c14;
}
body[data-palette="noite"] {
  --page-bg:#111925; --page-bg-secondary:#1c2a3c; --surface:#1b2635; --surface-alt:#253348;
  --text:#e8eef7; --text-muted:#b1bfd3; --border:#3e5170; --accent:#9cc4f2; --accent-hover:#c1dbfb;
  --input-bg:#152030; --input-text:#e8eef7; --button-text:#11203a; --danger:#f3a29a; --ornament:#7ea2d010;
}
body[data-palette="vinho"] {
  --page-bg:#1e1317; --page-bg-secondary:#311d25; --surface:#2a1b21; --surface-alt:#39252d;
  --text:#f6ebee; --text-muted:#d2b6be; --border:#61414c; --accent:#f2a7b1; --accent-hover:#f9c9cf;
  --input-bg:#23161c; --input-text:#f6ebee; --button-text:#3a1720; --danger:#ffb3a8; --ornament:#d0808f10;
}
body[data-palette="floresta"] {
  --page-bg:#101a14; --page-bg-secondary:#1b2b21; --surface:#18251d; --surface-alt:#223429;
  --text:#e9f2e9; --text-muted:#b3c8b6; --border:#3f5a47; --accent:#b6dc8f; --accent-hover:#d2edb5;
  --input-bg:#132018; --input-text:#e9f2e9; --button-text:#1a2a10; --danger:#f4a596; --ornament:#90b87a10;
}
body[data-theme="escuro"][data-palette] :is(input,select,textarea),body[data-theme="escuro"][data-palette] option {background:var(--input-bg);color:var(--input-text);border-color:var(--border);}
body[data-theme="escuro"][data-palette] :is(.login-card,.section-page,.social-card) {background:var(--surface);}
body[data-palette] .theme-picker select {max-width:180px;}

/* ---------- Frase motivacional (rodapé do painel), discreta ---------- */
.quote-card {display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;margin:24px 0 8px;padding:12px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);}
.quote-portrait {margin:0;display:flex;align-items:center;}
.quote-portrait img {width:52px;height:62px;object-fit:cover;border-radius:8px;border:2px solid var(--surface-alt);}
.quote-seal {display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:8px;background:#b3261e;color:#fff6ea;font-size:1.55rem;font-family:"KaiTi","STKaiti","Kaiti SC",serif;box-shadow:inset 0 0 0 2px #b3261e,inset 0 0 0 4px #fff6ea55;transform:rotate(-3deg);}
.quote-seal[hidden] {display:none;}
.quote-portrait figcaption {display:none;}
.quote-body {min-width:0;}
.quote-zh {margin:0;font-size:1.15rem;line-height:1.45;font-family:"KaiTi","STKaiti","Kaiti SC","Songti SC",serif;color:var(--text);}
.quote-py {margin:2px 0 0;font-size:.78rem;color:var(--text-muted);font-style:italic;}
.quote-pt {margin:1px 0 0;font-size:.82rem;color:var(--text);}
.quote-src {display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:4px 0 0;font-size:.74rem;color:var(--text-muted);}
.quote-next {padding:1px 8px;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--accent);font:inherit;font-size:.74rem;cursor:pointer;}
.quote-next:hover {background:var(--surface-alt);}
@media(max-width:560px){.quote-card {gap:10px;padding:10px 12px;}.quote-zh {font-size:1.05rem;}}
.sound-toggle {min-width:42px;min-height:38px;padding:4px 8px!important;font-size:1.05rem;}

/* ---------- Jogos: barra de controles proporcional ---------- */
.games-area .learning-actions {align-items:center;}
.games-area .learning-actions .database-button {height:auto;min-height:38px;padding:7px 14px;font-size:.92rem;line-height:1.2;}
.games-area .game-audio {display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
.games-area .game-mode {flex-direction:row!important;align-items:center;gap:8px;margin:0;}
.games-area .game-mode span {font-weight:700;font-size:.92rem;}
.games-area .game-mode select {width:auto;min-height:38px;padding:6px 10px;font-size:.92rem;}
@media(max-width:560px){.games-area .game-mode {flex:1 1 100%;}.games-area .game-mode select {flex:1;}}
/* A frase fica sempre na base da tela quando o conteúdo é curto (sem espaço vazio embaixo). */
@media(min-width:961px){
  #appScreen .dashboard {position:relative;min-height:calc(100vh - 80px);padding-bottom:170px!important;}
  #appScreen .dashboard>.quote-card {position:absolute;left:0;right:0;bottom:16px;margin:0;}
}
/* Decoração à direita da frase (bambu e pincel, estrela, ameixeira) */
.quote-card {position:relative;overflow:hidden;}
.quote-deco {position:absolute;right:10px;top:50%;transform:translateY(-50%);width:230px;height:120px;pointer-events:none;opacity:.85;}
.quote-deco svg {width:100%;height:100%;}
@media(min-width:961px){.quote-card {padding-right:250px;}}
@media(max-width:960px){.quote-deco {width:120px;height:70px;right:6px;top:auto;bottom:6px;transform:none;opacity:.35;}}
body[data-theme="escuro"] .quote-deco {opacity:.7;}

/* ---------- Flashcards · modo foco ---------- */
.learning-study .learning-setup {padding:4px 0 6px;}
.learning-study .learning-setup[hidden] {display:none;}
.learning-session-head {display:flex;align-items:center;justify-content:space-between;gap:10px;}
.learning-session-head .learning-card-meta {margin:0;}
.learning .learning-gear {width:auto;min-height:34px;padding:4px 10px;font-size:1rem;}
.learning-progress {height:6px;border-radius:9px;background:var(--surface-alt);overflow:hidden;margin:8px 0 6px;}
.learning-progress i {display:block;height:100%;background:var(--accent);transition:width .25s;}
.learning-hero {text-align:center;padding:6px 0 10px;}
.learning-study .learning-hero small {text-align:center;margin-top:6px;}
.learning-prompt.learning-prompt-main {font-size:2.1rem;margin:2px 0 8px;line-height:1.25;}
.learning-prompt.learning-prompt-main.is-hanzi {font-size:5.6rem;line-height:1.1;font-family:"KaiTi","STKaiti","Kaiti SC","Songti SC",serif;}
.learning-prompt.learning-prompt-sub {font-size:1.1rem;color:var(--text-muted);margin:0 0 6px;}
.learning .learning-answer {max-width:560px;margin:10px auto;text-align:center;}
.learning .learning-answer input {font-size:1.35rem;text-align:center;padding:12px 14px;border:2px solid var(--accent);border-radius:10px;}
.learning-session > .database-button {display:block;margin:6px auto 10px;}
@media(max-width:560px){.learning-prompt.learning-prompt-main.is-hanzi {font-size:4.2rem;}.learning-prompt.learning-prompt-main {font-size:1.7rem;}}
.learning-result {margin-top:8px;padding:12px 14px;border-radius:12px;background:var(--surface-alt);}
.learning-verdict {display:block;font-size:1.1rem;margin:2px 0 4px;}
.learning-verdict.is-ok {color:#2f7d4a;}
.learning-verdict.is-bad {color:var(--danger);}
.learning-expected {font-size:1.25rem;font-weight:700;}
body[data-theme="escuro"] .learning-verdict.is-ok {color:#8fd3a5;}
.learning-result .learning-actions {align-items:center;}
.learning-result .learning-actions .learning-learn {align-self:center;}
.learning-result .learning-actions .database-button {margin:0;height:auto;}
/* Exemplo dentro do campo de resposta: claro e em itálico, para não parecer texto já digitado. */
.learning .learning-answer input::placeholder {color:var(--text-muted);opacity:.45;font-style:italic;font-size:.95rem;}
body[data-theme] .learning .learning-answer input::placeholder {color:var(--text-muted);opacity:.45;}
/* Aviso de autoria */
.site-copyright {display:block;margin:14px auto 10px;text-align:center;font-size:.72rem;color:var(--text-muted,#7a7a7a);opacity:.85;}
footer .site-copyright {margin-top:6px;}
/* Aba atual nos Flashcards */
.learning-actions .database-button.is-current {background:var(--surface-alt);border-color:var(--accent);box-shadow:inset 0 -3px 0 var(--accent);}
.sentence-prompt-pt {margin:0 0 12px;font-size:1.25rem;font-weight:700;text-align:center;}

/* Alunos sem turma: sem Diário de Aulas, Tarefa da semana, Turma e Publicações da turma */
body.sem-turma #studentDashboard [data-turma],body.sem-turma #socialNavigation [data-turma] {display:none !important;}
/* Mensalidade: avisos flutuantes (não empurram a página) e bloqueio */
.fee-notice {position:fixed;top:calc(env(safe-area-inset-top,0px) + 14px);left:50%;transform:translateX(-50%);z-index:2000;display:flex;align-items:center;gap:10px;max-width:min(560px,calc(100vw - 32px));padding:10px 14px;border-radius:12px;box-shadow:0 8px 24px #0003;font-size:.95rem;line-height:1.35;transition:opacity .5s,transform .5s;}
.fee-notice.is-leaving {opacity:0;transform:translate(-50%,-8px);}
.fee-notice-leve {background:#fbf6e9;color:#4b3a1d;border:1px solid #e3cf9c;}
.fee-notice-medio {background:#fff1cc;color:#5c3b00;border:2px solid #e0a100;font-weight:600;}
.fee-notice-grave {background:#fde3e1;color:#7a1410;border:2px solid #c0362c;font-weight:700;}
.fee-notice-close {border:0;background:transparent;color:inherit;font-size:1rem;cursor:pointer;padding:2px 6px;border-radius:6px;}
.fee-notice-close:hover {background:#0000000f;}
body.fee-blocked .app-screen {filter:blur(3px);pointer-events:none;user-select:none;}
.fee-block {position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:16px;background:#1b1410cc;}
.fee-block-card {max-width:460px;width:100%;padding:26px 22px;border-radius:16px;background:#fffaf0;color:#2b1d14;text-align:center;box-shadow:0 18px 50px #0006;border-top:6px solid #a3201c;}
.fee-block-card h2 {margin:6px 0 10px;color:#7a1410;}
.fee-block-icon {font-size:2.4rem;}
.fee-block-help {font-size:.9rem;color:#6b5643;}
.fee-block-actions {display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:14px;}
.fee-chip {display:inline-block;margin-top:4px;padding:1px 8px;border-radius:999px;font-size:.75rem;font-weight:700;border:1px solid currentColor;white-space:nowrap;}
.fee-isento,.fee-em-dia {color:#2f7a5a;}
.fee-a-vencer {color:#8a6a1d;}
.fee-ultimo-dia {color:#b06a00;}
.fee-atrasado {color:#c0362c;}
.fee-bloqueado {color:#fff;background:#a3201c;border-color:#a3201c;}
.fee-exempt-label {display:flex !important;flex-direction:row !important;align-items:center;gap:8px;}
.fee-exempt-label input {width:auto;}
/* Botões de tom nos campos de pinyin */
.tone-keys-mini {display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 2px;}
.tone-key {min-width:38px;height:32px;padding:0 8px;border-radius:8px;border:1px solid var(--border,#c9b98f);background:transparent;color:inherit;font-size:1.1rem;line-height:1;cursor:pointer;opacity:.8;}
.tone-key:hover,.tone-key:focus-visible {opacity:1;background:#c9a24a22;}

/* ===== Leitura ===== */
.reader-area .reader-tabs .is-current {border-color:var(--accent,#2f7a5a);box-shadow:inset 0 -3px 0 var(--accent,#2f7a5a);font-weight:700;}
.reader-filters {display:flex;flex-wrap:wrap;gap:10px 16px;margin:10px 0 14px;}
.reader-filters label {display:flex;flex-direction:column;gap:4px;font-size:.85rem;min-width:150px;}
.reader-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;}
.reader-card {display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;min-height:118px;padding:14px;border:1px solid var(--border,#d8ccb0);border-radius:14px;background:var(--surface,#fffaf0);color:inherit;text-align:left;cursor:pointer;}
.reader-card:hover,.reader-card:focus-visible {border-color:var(--accent,#2f7a5a);}
.reader-card-title {font-family:"KaiTi","STKaiti","Kaiti SC","Noto Serif SC",serif;font-size:1.45rem;line-height:1.2;}
.reader-card-sub {font-size:.9rem;opacity:.8;}
.reader-card-meta {display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:6px;}
.reader-card-wrap {display:flex;flex-direction:column;gap:6px;}
.reader-card-acts {display:flex;gap:6px;}
.reader-mini {padding:4px 10px !important;font-size:.82rem !important;min-height:0 !important;}
.reader-mini.danger {color:#b3261e;}
.reader-chip {display:inline-flex;align-items:center;padding:1px 8px;border-radius:999px;font-size:.75rem;font-weight:700;border:1.5px solid #c0362c;color:#a3201c;}
.reader-chip.is-soft {border-color:var(--border,#cdbf9c);color:inherit;font-weight:600;opacity:.85;}
.reader-chip.is-done {border-color:#2f7a5a;color:#2f7a5a;}
.reader-article {max-width:760px;margin:0 auto;padding:18px;border:1px solid var(--border,#d8ccb0);border-radius:16px;background:var(--surface,#fffaf0);}
.reader-title {font-family:"KaiTi","STKaiti","Kaiti SC","Noto Serif SC",serif;font-size:2rem;margin:0 0 6px;}
.reader-meta {display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 6px;}
.reader-stats {margin:4px 0;font-size:.9rem;}
.reader-legend {display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.8rem;margin:2px 0 12px;}
.reader-text {position:relative;font-family:"Noto Serif SC","Songti SC","SimSun",serif;font-size:1.45rem;line-height:2.15;white-space:pre-wrap;overflow-wrap:anywhere;letter-spacing:.03em;}
.reader-legend .rd-w {font-family:inherit;}
.rd-w {cursor:pointer;border-radius:4px;padding:0 1px;transition:background-color .15s;}
.rd-w.rd-learning {color:#b3261e;background:#c0362c14;box-shadow:inset 0 -2px 0 #c0362c66;}
.rd-w.rd-known:hover,.rd-w.rd-known.is-open {box-shadow:inset 0 -1px 0 currentColor;}
.rd-w.rd-gloss:hover,.rd-w.rd-gloss.is-open {box-shadow:inset 0 -1px 0 #8a7a6699;}
.reader-legend .rd-gloss,.reader-legend .rd-known {box-shadow:inset 0 -1px 0 #8a7a6699;}
.rd-w.is-open {background:#e0a10033;}
.rd-w:focus-visible {outline:2px solid #e0a100;outline-offset:1px;}
.rd-pop {position:absolute;z-index:20;padding:10px 12px;border-radius:12px;background:var(--surface,#fffdf7);color:var(--text,#2b1d14);border:1px solid #c9a24a;box-shadow:0 10px 28px #0003;font-family:system-ui,sans-serif;font-size:.95rem;line-height:1.4;letter-spacing:0;white-space:normal;}
.rd-pop-head {display:flex;align-items:baseline;gap:10px;}
.rd-pop-h {font-family:"KaiTi","STKaiti","Noto Serif SC",serif;font-size:1.6rem;font-weight:400;}
.rd-pop-p {font-weight:700;color:#a3201c;}
.rd-pop-x {margin-left:auto;border:0;background:transparent;color:inherit;cursor:pointer;font-size:1rem;}
.rd-pop-t {margin:4px 0 8px;}
.rd-pop-acts {display:flex;flex-wrap:wrap;align-items:center;gap:6px;}
.rd-learn[aria-pressed="true"] {border-color:#2f7a5a;color:#2f7a5a;}
.reader-translation {margin-top:14px;}
.reader-translation summary {cursor:pointer;font-weight:700;}
.reader-translation p {white-space:pre-wrap;line-height:1.6;}
.reader-source {margin-top:12px;font-size:.8rem;opacity:.75;border-top:1px solid var(--border,#d8ccb0);padding-top:8px;}
.reader-done {margin-top:10px;}
.reader-form label {display:flex;flex-direction:column;gap:4px;margin:8px 0;}
.reader-form textarea {font-size:1.1rem;line-height:1.7;}
.reader-form-row {display:flex;flex-wrap:wrap;gap:12px;}
.reader-check {flex-direction:row !important;align-items:center;flex-wrap:wrap;}
.reader-check input {width:auto;}
.reader-count {display:block;text-align:right;}
body[data-theme="escuro"] .rd-w.rd-learning {color:#ff8f86;background:#ff8f8618;box-shadow:inset 0 -2px 0 #ff8f8677;}
body[data-theme="escuro"] .rd-pop-p,body[data-theme="escuro"] .reader-chip {color:#ff9d94;border-color:#ff9d94;}
@media (max-width:520px){.reader-text{font-size:1.3rem;line-height:2}.reader-article{padding:14px}.reader-title{font-size:1.7rem}}
/* Áudio nos flashcards */
.learning-audio-opts label {display:flex;align-items:flex-start;gap:6px;margin:4px 0;}
.learning-audio-opts input {width:auto;margin-top:3px;}
.learning-listen {font-size:1.25rem !important;padding:14px 26px !important;margin:6px auto;display:block;width:fit-content;}
.learning-session-head .learning-audio-toggle {margin-left:auto;margin-right:6px;}
.learning-listen-tips {margin-top:6px;}
.learning-audio-row {display:flex;align-items:center;gap:12px;margin:8px 0;}
.learning-audio-hanzi {font-size:2rem;font-family:"KaiTi","STKaiti","Noto Serif SC",serif;}
.learning-audio-toggle[aria-pressed="true"] {border-color:var(--accent,#2f7a5a);}
.learning-hero .learning-listen {display:block !important;margin:6px auto !important;}
/* Leitura: cores por nível HSK (palavras aprendidas ficam sem cor) */
.reader-text,.reader-legend {--lv1:#2e7d32;--lv2:#1565c0;--lv3:#6a1b9a;--lv4:#c25e00;--lv5:#ad1457;--lv6:#b3261e;--lv7:#00796b;--lv0:#5d6b7a;}
body[data-theme="escuro"] .reader-text,body[data-theme="escuro"] .reader-legend {--lv1:#81c784;--lv2:#64b5f6;--lv3:#ce93d8;--lv4:#ffb74d;--lv5:#f48fb1;--lv6:#ff8a80;--lv7:#4db6ac;--lv0:#b0bec5;}
.rd-w.rd-lv1{color:var(--lv1);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--lv1) 45%,transparent);}
.rd-w.rd-lv2{color:var(--lv2);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--lv2) 45%,transparent);}
.rd-w.rd-lv3{color:var(--lv3);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--lv3) 45%,transparent);}
.rd-w.rd-lv4{color:var(--lv4);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--lv4) 45%,transparent);}
.rd-w.rd-lv5{color:var(--lv5);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--lv5) 45%,transparent);}
.rd-w.rd-lv6{color:var(--lv6);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--lv6) 45%,transparent);}
.rd-w.rd-lv7{color:var(--lv7);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--lv7) 45%,transparent);}
.rd-w.rd-lv0{color:var(--lv0);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--lv0) 40%,transparent);}
.rd-w.rd-char{box-shadow:inset 0 -1px 0 #9e9e9e;text-decoration:none;opacity:.85;}
.rd-w.rd-learning{background:none;}
.reader-legend .rd-w{padding:0 4px;}
.rd-chip-lv1{border-color:#2e7d32 !important;color:#2e7d32 !important}.rd-chip-lv2{border-color:#1565c0 !important;color:#1565c0 !important}.rd-chip-lv3{border-color:#6a1b9a !important;color:#6a1b9a !important}.rd-chip-lv4{border-color:#c25e00 !important;color:#c25e00 !important}.rd-chip-lv5{border-color:#ad1457 !important;color:#ad1457 !important}.rd-chip-lv6{border-color:#b3261e !important;color:#b3261e !important}.rd-chip-lv7{border-color:#00796b !important;color:#00796b !important}.rd-chip-lv0{border-color:#5d6b7a !important;color:#5d6b7a !important}
/* Dicionário */
.reader-search {display:flex;flex-direction:column;gap:4px;max-width:520px;}
.reader-search input {font-size:1.1rem;}
.reader-dict-list {display:flex;flex-direction:column;gap:8px;max-width:820px;}
.reader-dict-row {display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border,#d8ccb0);border-radius:12px;background:var(--surface,#fffaf0);}
.reader-dict-h {font-family:"KaiTi","STKaiti","Kaiti SC","Noto Serif SC",serif;font-size:1.7rem;min-width:2.2em;}
.reader-dict-mid {display:flex;flex-direction:column;min-width:0;}
.reader-dict-p {color:#a3201c;}
.reader-dict-t {overflow-wrap:anywhere;}
.reader-dict-acts {display:flex;flex-wrap:wrap;align-items:center;gap:6px;justify-content:flex-end;}
@media (max-width:560px){.reader-dict-row{grid-template-columns:auto 1fr}.reader-dict-acts{grid-column:1/-1;justify-content:flex-start}}
.rd-pop-review {display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border,#e3d2a6);}
.rd-pop-state {flex-basis:100%;opacity:.8;}
.rd-pop-note {display:block;margin-top:6px;line-height:1.35;}
.rd-pop .rd-pop-acts + .rd-pop-acts {margin-top:6px;}
.reader-auto-audio[aria-pressed="true"] {border-color:var(--accent,#2f7a5a);}
.fee-pay-button {display:inline-block;margin:4px 0 0 6px;padding:1px 8px;border-radius:999px;font-size:.75rem;font-weight:700;border:1px dashed #2f7a5a;color:#2f7a5a;background:transparent;cursor:pointer;white-space:nowrap;}
.fee-pay-button:hover {background:#2f7a5a14;}
.rd-pop-acts .rd-pop-note {flex-basis:100%;}
/* Planos */
.access-plan {display:inline-flex;align-items:center;gap:6px;font-size:.85rem;margin:4px 6px;}
.access-plan select {padding:4px 6px;}
.game-choice.is-plan-locked {opacity:.6;filter:grayscale(.5);}
.game-plan-badge {display:inline-block;margin-top:6px;padding:1px 8px;border-radius:999px;font-size:.75rem;font-weight:700;border:1px solid currentColor;}
.game-plan-note {min-height:1.4em;margin:0 0 10px;}
.maze-avatar.is-plan-locked {opacity:.45;filter:grayscale(.8);cursor:not-allowed;}

/* ===== Rodada 25: cadastro, assinatura, Pix, cursos ===== */
.signup-fields {display:flex;flex-direction:column;gap:6px;margin:6px 0 10px;text-align:left;}
.signup-fields label {font-size:.92rem;}
.signup-intro {font-size:.86rem;color:var(--soft-ink);margin:0 0 6px;line-height:1.4;}
.signup-invite {font-size:.9rem;background:#fbf3dc;border:1px solid #e3cf9c;color:#4b3a1d;border-radius:8px;padding:8px 10px;margin:0;}
.signup-guardian {display:flex;flex-direction:column;gap:6px;border:1px dashed var(--red);border-radius:10px;padding:10px;margin:4px 0;}
.signup-guardian p {font-size:.85rem;margin:0;line-height:1.4;}
.signup-terms {display:flex;gap:8px;align-items:flex-start;font-size:.86rem;line-height:1.4;}
.signup-terms input {margin-top:3px;flex:none;width:auto;}
.signup-terms a {color:var(--red);}
.fee-notice-pay {flex:none;border:1px solid currentColor;background:#ffffffaa;color:inherit;border-radius:8px;padding:4px 10px;font:inherit;font-size:.88rem;font-weight:600;cursor:pointer;white-space:nowrap;}
.fee-notice-pay:hover {background:#fff;}
.fee-value {display:inline-block;margin-left:6px;font-size:.8rem;color:var(--soft-ink);white-space:nowrap;}
.access-account-extra {display:block;font-size:.82rem;color:var(--soft-ink);}
.md-modal {position:fixed;inset:0;z-index:4000;display:flex;align-items:center;justify-content:center;padding:16px;background:#1b1410aa;}
.md-modal-card {position:relative;width:100%;max-width:480px;max-height:calc(100vh - 32px);overflow:auto;padding:22px 20px;border-radius:16px;background:var(--paper,#fffaf0);color:var(--ink,#2b1d14);box-shadow:0 18px 50px #0006;}
.md-modal-card h2 {margin:0 32px 12px 0;font-size:1.2rem;color:var(--red-dark,#7a1410);}
.md-modal-close {position:absolute;top:10px;right:10px;border:0;background:transparent;color:inherit;font-size:1.1rem;cursor:pointer;padding:4px 8px;border-radius:8px;}
.md-modal-close:hover {background:#0000000f;}
.md-modal-body {display:flex;flex-direction:column;gap:8px;}
.md-field {display:flex;flex-direction:column;gap:3px;font-size:.92rem;}
.md-field input,.md-field select,.md-field textarea {font:inherit;}
.md-check {display:flex;gap:8px;align-items:flex-start;font-size:.92rem;}
.md-check input {width:auto;margin-top:3px;}
.md-checks {border:1px solid var(--border);border-radius:10px;padding:6px 10px 8px;display:flex;flex-wrap:wrap;gap:4px 14px;}
.md-checks legend {font-size:.9rem;padding:0 4px;}
.md-checks label {display:flex;align-items:center;gap:5px;font-size:.9rem;}
.md-checks input {width:auto;}
.pix-desc {margin:0;color:var(--soft-ink);}
.pix-valor {margin:0;font-size:1.7rem;font-weight:700;color:var(--jade-dark,#385346);}
.pix-qr {display:flex;justify-content:center;}
.pix-qr svg {max-width:100%;height:auto;border-radius:8px;background:#fff;}
.pix-help {font-size:.88rem;margin:4px 0 0;}
.pix-code {width:100%;box-sizing:border-box;font:12px/1.35 ui-monospace,Consolas,monospace;word-break:break-all;resize:none;}
.md-page .md-card {margin-bottom:14px;}
.md-plan-name {font-size:1.25rem;font-weight:700;margin:0;}
.md-strong {font-weight:600;}
.md-plans {display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:8px 0 12px;}
.md-plan-option {display:flex;flex-direction:column;gap:3px;text-align:left;padding:12px;border-radius:12px;border:2px solid var(--border);background:var(--panel);color:var(--ink);cursor:pointer;font:inherit;}
.md-plan-option[aria-pressed="true"] {border-color:var(--jade);box-shadow:0 0 0 3px var(--jade-soft);}
.md-plan-option small {color:var(--soft-ink);line-height:1.35;}
.md-plan-price {font-weight:700;color:var(--jade-dark);}
.md-table-wrap {overflow-x:auto;margin:8px 0;}
.md-table {border-collapse:collapse;width:100%;font-size:.9rem;}
.md-table th,.md-table td {padding:6px 8px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;}
.md-table tr.is-muted {opacity:.55;}
.md-table td.md-actions {white-space:normal;}
.md-table td.md-actions > * {margin:2px 6px 2px 0;}
.md-row {display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--border);}
.md-row > span {flex:1 1 260px;}
.md-invite-link {width:100%;box-sizing:border-box;font-family:ui-monospace,Consolas,monospace;}
.md-data {display:grid;grid-template-columns:max-content 1fr;gap:4px 12px;margin:6px 0;font-size:.93rem;}
.md-data dt {color:var(--soft-ink);}
.md-data dd {margin:0;}
.md-tabs {display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 12px;}
.md-tabs button.is-current,.md-tabs button.is-current:hover {background:var(--jade) !important;color:#fff !important;border-color:var(--jade) !important;}
.md-courses {display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-bottom:14px;}
.md-course h3 {margin:6px 0;}
.md-chip {display:inline-block;font-size:.78rem;padding:2px 8px;border-radius:999px;background:var(--jade-soft);color:var(--jade-dark);border:1px solid var(--border);}
.md-chip-inscricoes {background:#e4f3e8;color:#1f5f35;}
.md-chip-em_breve {background:#fbf3dc;color:#6b4b00;}
.md-teacher {border:1px solid var(--border);border-radius:10px;padding:6px 10px;margin:8px 0;}
.md-teacher summary {cursor:pointer;}
.md-teacher-body img {width:84px;height:84px;object-fit:cover;border-radius:50%;float:right;margin:0 0 8px 8px;}
.md-teacher-body::after {content:"";display:block;clear:both;}
@media (max-width:520px){.md-data{grid-template-columns:1fr;}.md-data dd{margin-bottom:6px;}}
.md-page a.database-button {display:inline-flex;align-items:center;justify-content:center;text-decoration:none;}
.fee-block-card .md-field {margin:12px 0 4px;text-align:left;}
.fee-block-card .md-field select {width:100%;padding:8px;border-radius:8px;}
.signup-fields select {width:100%;min-height:46px;padding:8px 10px;border:1px solid var(--border);border-radius:4px;background:#fff;color:var(--ink);font:inherit;}
.signup-terms,.signup-terms span {font-weight:400;letter-spacing:0;line-height:1.45;}
.signup-guardian label {margin-top:4px;}
.signup-terms a {display:inline;padding:0;line-height:inherit;min-height:0;}
.chinese-title {font-size:clamp(2.6rem,12vw,3.6rem);letter-spacing:3px;white-space:nowrap;}
