
/* 659060061 — HANDakU FEATURE / final QA layer */
:root{--tone-h:#6e7b76;--tone-b:#735d83;--tone-p:#2f7084;--feature-line:#dfe5e2;--feature-line-strong:#c7d1cc}
html:not([data-theme="dark"]) body{background:#fff!important}
html:not([data-theme="dark"]) .comparison-page,
html:not([data-theme="dark"]) .comparison-page .section,
html:not([data-theme="dark"]) .comparison-page [class*="section-tint-"]{background:#fff!important}
.comparison-page .section{border-radius:0!important;box-shadow:none!important}
.tone-p{color:var(--tone-p)!important}
@media(min-width:901px){.handaku-heading{max-width:820px!important;margin:0 0 34px!important;text-align:left!important}.handaku-heading h2,.handaku-heading p{text-align:left!important;margin-left:0!important;margin-right:0!important}.handaku-heading>p:not(.section-kicker){max-width:720px!important}}
.sound-family{width:min(930px,100%);margin:0 auto;display:grid;grid-template-columns:190px minmax(0,1fr);gap:34px;align-items:start}.sound-base{padding-top:18px;border-top:2px solid #21302b}.sound-base span{display:block;color:#89958f;font-size:9px;font-weight:850;letter-spacing:.12em}.sound-base strong{display:block;margin-top:8px;font-size:24px;line-height:1.55}.sound-base small{color:#7b8782}.sound-branches{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.sound-result{padding:18px 0;border-top:2px solid currentColor;min-width:0}.sound-result>span{display:block;color:#89958f;font-size:10px;font-weight:800}.sound-result>b{display:block;margin-top:5px;font:700 38px/1 Georgia,serif}.sound-result>strong{display:block;margin-top:10px;color:#17211f;font-size:17px}.sound-result p{margin:8px 0 0!important;color:#65716c!important;font-size:13px!important}.sound-h{color:var(--tone-h)}.sound-b{color:var(--tone-b)}.sound-p{color:var(--tone-p)}.handaku-note{width:min(720px,100%);margin:28px 0 0 auto;padding:13px 0 0 18px;border-left:2px solid var(--feature-line-strong)}.handaku-note span{color:#89958f;font-size:9px;font-weight:850;letter-spacing:.12em}.handaku-note p{margin:5px 0 0!important;color:#56635e!important;font-size:14px!important;line-height:1.85!important}
.handaku-word-bank{width:min(930px,100%);margin:0 auto;border-top:2px solid #21302b}.handaku-word-bank article{display:grid;grid-template-columns:42px 170px 250px minmax(0,1fr);gap:16px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--feature-line)}.word-no{color:#98a39e;font:400 12px/1 Georgia,serif}.word-jp{margin:0!important;color:#17211f!important;font-size:22px!important;font-weight:750!important}.handaku-word-bank article>p:not(.word-jp){margin:0!important;color:#57645f!important;font-size:14px!important}.handaku-word-bank small{color:#7c8883;font-size:12px}.whole-word-reminder{width:min(760px,100%);margin:26px 0 0 auto;padding-top:13px;border-top:1px solid var(--feature-line);display:flex;align-items:baseline;gap:8px 12px;flex-wrap:wrap}.whole-word-reminder>span{color:#89958f;font-size:9px;font-weight:850;letter-spacing:.1em;margin-right:4px}.whole-word-reminder strong{font-size:14px}.whole-word-reminder i{font-style:normal;color:#a0aaa6}.whole-word-reminder p{width:100%;margin:0!important;color:#65716c!important;font-size:13px!important}
.sokuon-layout{width:min(900px,100%);margin:0 auto;display:grid;grid-template-columns:150px minmax(0,1fr);gap:34px}.sokuon-sign{position:sticky;top:110px;align-self:start;padding-top:12px;border-top:2px solid #21302b}.sokuon-sign span{display:block;font-family:"Noto Serif JP","Yu Mincho",serif;font-size:90px;line-height:.9;color:#cad4d0}.sokuon-sign small{display:block;margin-top:9px;color:#82908a;font-size:11px;font-weight:800}.sokuon-list{border-top:2px solid #21302b}.sokuon-list article{display:grid;grid-template-columns:170px 170px minmax(0,1fr);gap:18px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--feature-line)}.sokuon-list article>span{color:#7d8984;font-size:12px}.sokuon-list strong{font-size:21px}.sokuon-list p{margin:0!important;color:#61706a!important;font-size:13px!important}.pronunciation-strip{width:min(720px,100%);margin:26px 0 0 auto;padding-top:13px;border-top:1px solid var(--feature-line)}.pronunciation-strip span{display:block;color:#89958f;font-size:9px;font-weight:850;letter-spacing:.1em}.pronunciation-strip p{margin:5px 0 0!important;color:#596660!important;font-size:14px!important}
.hbp-contrast{width:min(930px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.hbp-item{display:grid;grid-template-columns:48px minmax(0,1fr);gap:13px;padding-top:18px;border-top:2px solid currentColor}.hbp-item>span{font:700 32px/1 Georgia,serif}.hbp-item strong{font-size:22px;color:#17211f}.hbp-item p{margin:5px 0 0!important;color:#5d6964!important;font-size:13px!important}.hbp-item small{display:block;margin-top:5px;color:#87938e}.hbp-h{color:var(--tone-h)}.hbp-b{color:var(--tone-b)}.hbp-p{color:var(--tone-p)}.rule-order{width:min(760px,100%);margin:30px auto 0;padding-top:13px;border-top:1px solid var(--feature-line);display:flex;flex-wrap:wrap;gap:8px 11px;align-items:center}.rule-order>span{color:#89958f;font-size:9px;font-weight:850;letter-spacing:.1em;margin-right:6px}.rule-order b{font-size:13px}.rule-order i{font-style:normal;color:#a0aaa6}.rendaku-vs-handaku{width:min(720px,100%);margin:27px 0 0 auto;padding:13px 0 0 18px;border-left:2px solid var(--feature-line-strong)}.rendaku-vs-handaku>span{display:block;color:#7d8984;font-size:10px;font-weight:850}.rendaku-vs-handaku p{margin:5px 0 0!important;color:#5b6862!important;font-size:13px!important;line-height:1.85!important}
.handaku-mistakes{width:min(880px,100%);margin:0 auto;border-top:2px solid #21302b}.handaku-mistakes article{display:grid;grid-template-columns:48px minmax(0,1fr);gap:18px;padding:21px 0 23px;border-bottom:1px solid var(--feature-line)}.handaku-mistakes article>span{color:#98a39e;font:400 12px/1 Georgia,serif}.handaku-mistakes h3{margin:0 0 5px;font-size:18px}.handaku-mistakes p{margin:0!important;color:#5e6a65!important;font-size:14px!important;line-height:1.85!important}.handaku-steps{width:min(880px,100%);margin-inline:auto!important}#jlpt .beginner-practice{width:min(820px,100%)!important;margin-inline:auto!important}.handaku-summary{width:min(860px,100%);margin:0 auto;border-top:2px solid #21302b}.handaku-summary>div{display:grid;grid-template-columns:48px 150px minmax(0,1fr);gap:18px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--feature-line)}.handaku-summary span{color:#98a39e;font:400 12px/1 Georgia,serif}.handaku-summary strong{font-size:17px}.handaku-summary p{margin:0!important;color:#61706a!important;font-size:13px!important}.handaku-final{width:min(720px,100%);margin:26px 0 0 auto!important;padding-top:13px!important;border-top:1px solid var(--feature-line)!important}.handaku-final span{display:block;color:#89958f;font-size:9px;font-weight:850;letter-spacing:.1em}.handaku-final strong{display:block;margin-top:6px;font-size:16px;line-height:1.75}
.comparison-page .jp-semantic-chunk{display:inline-block!important;white-space:nowrap!important;max-width:100%!important;font-size:inherit!important;line-height:inherit!important;font-family:inherit!important}.comparison-page .tone-p,.comparison-page .sound-result *{font-family:inherit}
html[data-theme="dark"]{--tone-h:#a9b7b1;--tone-b:#c3acd3;--tone-p:#8fc5d6;--feature-line:#34413d;--feature-line-strong:#4b5954}html[data-theme="dark"] .sound-result>strong,html[data-theme="dark"] .word-jp,html[data-theme="dark"] .hbp-item strong{color:#edf3f0!important}html[data-theme="dark"] .sokuon-sign span{color:#34423d!important}html[data-theme="dark"] .sound-base,html[data-theme="dark"] .handaku-word-bank,html[data-theme="dark"] .sokuon-sign,html[data-theme="dark"] .sokuon-list,html[data-theme="dark"] .handaku-mistakes,html[data-theme="dark"] .handaku-summary{border-color:#4b5954!important}
@media(max-width:900px){.sound-family{grid-template-columns:1fr}.sound-base{max-width:420px}.sokuon-layout{grid-template-columns:110px minmax(0,1fr)}.sokuon-sign span{font-size:72px}.handaku-word-bank article{grid-template-columns:36px 150px minmax(0,1fr)}.handaku-word-bank small{grid-column:3}.hbp-contrast{gap:16px}}
@media(max-width:600px){.sound-branches{grid-template-columns:1fr;gap:20px}.sound-result{display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 12px}.sound-result>b{grid-row:1/4}.sound-result>span,.sound-result>strong,.sound-result>p{grid-column:2}.handaku-word-bank article{grid-template-columns:32px minmax(0,1fr);gap:6px 10px}.word-jp,.handaku-word-bank article>p:not(.word-jp),.handaku-word-bank small{grid-column:2}.whole-word-reminder{display:block}.whole-word-reminder>*{margin-right:5px}.sokuon-layout{grid-template-columns:1fr;gap:16px}.sokuon-sign{position:static;display:flex;align-items:baseline;gap:10px}.sokuon-sign span{font-size:52px}.sokuon-list article{grid-template-columns:1fr;gap:5px;padding:18px 0}.hbp-contrast{grid-template-columns:1fr;gap:24px}.rule-order{gap:6px 8px}.handaku-summary>div{grid-template-columns:34px minmax(0,1fr);gap:5px 10px}.handaku-summary p{grid-column:2}}

html[data-theme="dark"] #jlpt .beginner-practice .practice-options button{
  background:#171e1c!important;color:#edf3f0!important;border-color:#46534f!important;
}
html[data-theme="dark"] #jlpt .beginner-practice .practice-options button.is-correct{
  background:#193126!important;color:#c6ead8!important;border-color:#5b8e73!important;
}
html[data-theme="dark"] #jlpt .beginner-practice .practice-options button.is-wrong{
  background:#37201f!important;color:#f0c1bc!important;border-color:#95635d!important;
}
html[data-theme="dark"] .handaku-note p,
html[data-theme="dark"] .whole-word-reminder p,
html[data-theme="dark"] .pronunciation-strip p,
html[data-theme="dark"] .rendaku-vs-handaku p,
html[data-theme="dark"] .handaku-mistakes p,
html[data-theme="dark"] .handaku-summary p,
html[data-theme="dark"] .handaku-word-bank article>p:not(.word-jp){color:#b8c4bf!important}

/* Final visual QA: dark practice must belong to the dark surface system. */
html[data-theme="dark"] #jlpt .beginner-practice{
  background:#17201e!important;
  color:#edf3f0!important;
  border-color:#4b5954!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #jlpt .beginner-practice .practice-head,
html[data-theme="dark"] #jlpt .beginner-practice .practice-question{
  border-color:#34413d!important;
}
html[data-theme="dark"] #jlpt .beginner-practice .practice-title,
html[data-theme="dark"] #jlpt .beginner-practice .question-jp{
  color:#edf3f0!important;
}
html[data-theme="dark"] #jlpt .beginner-practice .practice-lead,
html[data-theme="dark"] #jlpt .beginner-practice .practice-feedback{
  color:#b8c4bf!important;
}
html[data-theme="dark"] #jlpt .beginner-practice .answer-explain{
  background:#192521!important;
  color:#d9e4df!important;
  border-color:#5b8e73!important;
}
html[data-theme="dark"] #jlpt .beginner-practice .answer-explain strong{
  color:#b9ddca!important;
}
html[data-theme="dark"] #jlpt .beginner-practice .answer-explain p{
  color:#c3cec9!important;
}
@media(max-width:600px){
  .rule-order{display:grid!important;grid-template-columns:1fr!important;gap:5px!important;align-items:start!important}
  .rule-order i{display:none!important}
  .rule-order>span{margin-bottom:3px!important}
}
