/* Kanji Forge shares BrainForge's native page heading, settings, study-card,
   progress, feedback, Continue button and vocabulary-session keyboard rhythm. */
#page-kanji [hidden]{display:none!important}
#page-kanji .kanji-dashboard{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:20px 0 26px}
#page-kanji .kanji-stat{min-height:100px;padding:16px}
#page-kanji .kanji-stat strong{font-size:26px;line-height:1.15;font-variant-numeric:tabular-nums}
#page-kanji .kanji-stat span{font-size:12px}
#page-kanji .kanji-setup-card{margin:0}
#page-kanji .kanji-shortcut-label{margin-top:22px}
#page-kanji .kanji-presets{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0 24px}
#page-kanji .kanji-presets button{flex:0 0 auto;min-height:42px;font-size:13px;padding:9px 14px}
#page-kanji .kanji-presets button:hover,#page-kanji .kanji-presets button:focus-visible{border-color:var(--green)}
#page-kanji .kanji-presets button[aria-pressed="true"]{border-color:var(--green);background:#eff3e8;color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}
#page-kanji .kanji-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
#page-kanji .kanji-settings label{min-width:0;font-weight:600;font-size:13px}
#page-kanji .kanji-settings select{width:100%;margin-top:7px;min-height:44px}
#page-kanji #kanji-selected-info{font-size:13px;color:var(--green);font-weight:650}
#page-kanji .kanji-start-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:22px}
#page-kanji .kanji-start-actions .primary{min-width:215px}
#page-kanji .kanji-start-actions span{max-width:420px}
#page-kanji .kanji-setup-caption{margin:20px 0}
#page-kanji .kanji-session-top{gap:14px}
#page-kanji .kanji-session-top .session-actions{align-items:center}
#page-kanji #kanji-progress{width:100%;display:block}
#page-kanji .kanji-study-card{min-height:380px}
#page-kanji .kanji-study-card .kanji-word{font-size:clamp(42px,8vw,72px);line-height:1.4;letter-spacing:-1px;margin:28px 0 6px;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",system-ui,sans-serif;overflow-wrap:anywhere}
#page-kanji .kanji-meaning{font-size:16px;margin:0 0 30px}
#page-kanji #kanji-answer-form label{display:block;margin-bottom:10px}
#page-kanji #kanji-answer{display:block;width:100%;max-width:580px;min-height:56px;font-size:21px;border-radius:8px}
#page-kanji .kanji-response-actions{margin:20px 0 0}
#page-kanji .kanji-response-actions button{min-width:132px}
#page-kanji .kanji-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:25px}
#page-kanji .kanji-choice-grid button{font-size:20px;min-height:62px}
#page-kanji .kanji-choice-grid .kanji-choice-unknown{grid-column:1/-1;background:var(--paper);font-size:14px;min-height:44px}
#page-kanji .kanji-result{border-top:1px solid var(--line);padding-top:20px;margin-top:30px}
#page-kanji .kanji-reading{font-size:clamp(24px,5vw,32px);font-weight:650;line-height:1.4;margin:12px 0;overflow-wrap:anywhere}
#page-kanji .kanji-result p{font-size:14px;margin:12px 0 22px;line-height:1.6}
#page-kanji .kanji-result .continue-button{display:block;width:100%;min-height:54px;font-size:16px}
#page-kanji .kanji-notice{min-height:22px;margin:18px 0 10px}
#page-kanji .kanji-notice.kanji-warning{color:var(--error)}
#page-kanji .kanji-sync-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0}
#page-kanji .kanji-sync-actions button{min-height:40px;font-size:12px}
#page-kanji .kanji-summary .panel{margin-top:28px}
#page-kanji .kanji-summary .actions{flex-wrap:wrap}
#page-kanji .kanji-summary .actions button{flex:1 1 175px}
#page-kanji .kanji-result [data-result=Wrong]{color:var(--error)}
#page-kanji .kanji-result [data-result=Correct]{color:var(--green)}
#page-kanji .kanji-session-top button:focus-visible,
#page-kanji button:focus-visible,
#page-kanji select:focus-visible,
#page-kanji #kanji-answer:focus-visible{outline:3px solid #a9c26a;outline-offset:2px}
@media(max-width:830px){
 #page-kanji .kanji-dashboard{grid-template-columns:repeat(3,minmax(0,1fr))}
 #page-kanji .kanji-settings{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
 #page-kanji .kanji-dashboard{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #page-kanji .kanji-stat{min-height:85px;padding:12px}
 #page-kanji .kanji-stat:last-child{grid-column:span 2}
 #page-kanji .kanji-stat strong{font-size:24px}
 #page-kanji .kanji-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 #page-kanji .kanji-settings label:first-child{grid-column:1/-1}
 #page-kanji .kanji-presets button{flex:1 1 auto}
 #page-kanji .kanji-start-actions .primary{width:100%}
 #page-kanji .kanji-study-card{padding:22px;min-height:350px}
 #page-kanji .kanji-study-card .kanji-word{margin:22px 0 4px}
 #page-kanji .kanji-meaning{margin-bottom:24px}
 #page-kanji .kanji-choice-grid{grid-template-columns:1fr}
 #page-kanji .kanji-choice-grid .kanji-choice-unknown{grid-column:1}
 #page-kanji .kanji-session-top .session-actions{flex-direction:row}
 #page-kanji .kanji-response-actions{display:grid;grid-template-columns:1fr 1fr}
 #page-kanji .kanji-response-actions button{min-width:0}
}
@media(prefers-reduced-motion:reduce){
 #page-kanji *{scroll-behavior:auto}
}
