/* Shared Kana practice and mastery components, including Progress dialogs. */
.ma-kana-muted{color:var(--ma-muted);line-height:1.5;}
.ma-kana-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0;}.ma-kana-actions>*{flex:1 1 150px;}
.ma-kana-segments{display:flex;gap:4px;flex-wrap:wrap;margin:10px 0;padding:3px;border-radius:12px;background:var(--ma-surface-inset);}.ma-kana-segments .ma-button{flex:1 1 0;min-width:max-content;min-height:44px;padding:8px 6px;font-size:.8rem;white-space:nowrap;overflow-wrap:normal;border:0;border-radius:9px;background:transparent;color:var(--ma-muted);box-shadow:none;}
.ma-kana-segments [aria-pressed="true"]{background:var(--ma-card);color:var(--ma-text-strong);box-shadow:var(--ma-shadow-soft);}
.ma-kana-practice-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px;}
.ma-kana-field{display:grid;gap:8px;min-width:0;color:var(--ma-text-soft);font-size:.85rem;}
.ma-kana-field .ma-input{width:100%;box-sizing:border-box;min-height:44px;background:var(--ma-surface-inset);color:var(--ma-text-strong);border:1px solid var(--ma-border);border-radius:10px;padding:10px;font:inherit;}
.ma-kana-row-picker{grid-column:1/-1;border-top:1px solid var(--ma-border);padding-top:10px;}
.ma-kana-picker-path{display:inline-flex;align-items:center;min-height:44px;margin-top:12px;font-size:.78rem;color:var(--ma-text-soft);text-underline-offset:4px;}
.ma-kana-row-picker summary,.ma-kana-mastery-help summary{min-height:44px;align-content:center;cursor:pointer;color:var(--ma-text-strong);}
.ma-kana-row-picker-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 14px;margin:18px 0 8px;}.ma-kana-row-picker-header h4{margin:0;font-size:.95rem;}.ma-kana-row-picker-header label{display:flex;align-items:center;gap:8px;min-height:44px;font-size:.78rem;}.ma-kana-row-picker-header input{accent-color:var(--ma-reading);width:18px;height:18px;}
.ma-kana-row-picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}.ma-kana-row-picker-grid label{display:flex;align-items:center;gap:8px;min-height:44px;font-size:.8rem;line-height:1.4;}.ma-kana-row-picker-grid label:has(:disabled){opacity:.55;}.ma-kana-row-picker-grid input{accent-color:var(--ma-reading);width:18px;height:18px;flex:none;}
.ma-kana-mastery-legend{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0;}.ma-kana-mastery-legend>span{border-left:3px solid var(--ma-border);padding:6px 10px;font-size:.8rem;background:var(--ma-surface-inset);border-radius:6px;}
.ma-kana-mastery-map .ma-mastery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:8px;}.ma-kana-mastery-map .ma-mastery-cell{display:grid;place-items:center;gap:6px;min-height:92px;padding:12px 4px;background:var(--ma-surface-inset);color:var(--ma-text-strong);border:1px solid var(--ma-border);border-bottom-width:4px;border-radius:12px;cursor:pointer;}.ma-kana-mastery-map .ma-mastery-cell strong{font:550 1.7rem/1.3 var(--ma-font-jp);white-space:nowrap;}.ma-kana-mastery-map .ma-mastery-cell span{font-size:.66rem;}
/* Milestone colours remain distinct from branch/theme accent colours. */
:is(.ma-kana-mastery-map,.ma-kana-mastery-detail) [data-stage="0"]{--ma-stage:var(--ma-stage-new);}
:is(.ma-kana-mastery-map,.ma-kana-mastery-detail) [data-stage="1"]{--ma-stage:var(--ma-stage-introduced);}
:is(.ma-kana-mastery-map,.ma-kana-mastery-detail) [data-stage="2"]{--ma-stage:var(--ma-stage-learning);}
:is(.ma-kana-mastery-map,.ma-kana-mastery-detail) [data-stage="3"]{--ma-stage:var(--ma-stage-familiar);}
:is(.ma-kana-mastery-map,.ma-kana-mastery-detail) [data-stage="4"]{--ma-stage:var(--ma-stage-confident);}
:is(.ma-kana-mastery-map,.ma-kana-mastery-detail) [data-stage="5"]{--ma-stage:var(--ma-stage-mastered);}
:is(.ma-kana-mastery-map,.ma-kana-mastery-detail) [data-stage="6"]{--ma-stage:var(--ma-stage-plus);}
.ma-kana-mastery-map :is(.ma-mastery-cell,.ma-kana-mastery-legend>span){border-color:var(--ma-stage);}
.ma-kana-mastery-map .ma-mastery-cell{background:color-mix(in srgb,var(--ma-stage) 9%,var(--ma-surface-inset));}
.ma-kana-mastery-heading>strong{display:inline-block;padding:6px 12px;border-left:4px solid var(--ma-stage);background:var(--ma-surface-inset);border-radius:6px;}
.ma-kana-mastery-skills .ma-button span{border-bottom:3px solid var(--ma-stage);padding-bottom:4px;}

.ma-kana-mastery-help{color:var(--ma-muted);font-size:.83rem;line-height:1.55;}.ma-kana-mastery-heading{text-align:center;}.ma-kana-mastery-heading h3{font:550 4rem var(--ma-font-jp);margin:10px;}.ma-kana-mastery-heading>p{font-size:.9rem;color:var(--ma-muted);}
.ma-kana-stage-guide{display:grid;grid-template-columns:minmax(85px,auto) minmax(0,1fr);gap:12px 16px;}.ma-kana-stage-guide dt{font-weight:650;color:var(--ma-text-strong);}.ma-kana-stage-guide dd{margin:0;}
.ma-kana-mastery-skills .ma-button{display:grid;gap:5px;min-width:0;white-space:normal;}.ma-kana-mastery-skills .ma-button span{font-size:.72rem;font-weight:450;}
.ma-kana-target-heading{font-weight:650;color:var(--ma-text-strong);margin:14px 0 6px;}.ma-kana-evidence-summary{font-size:.76rem;color:var(--ma-muted);line-height:1.5;}
.ma-kana-targets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;margin:20px 0;}.ma-kana-target{min-width:0;padding-left:10px;border-left:3px solid var(--ma-border);}.ma-kana-target dt{font-size:.76rem;line-height:1.4;color:var(--ma-text-soft);}.ma-kana-target dd{display:grid;gap:4px;margin:6px 0 0;}.ma-kana-target strong{font-size:1.12rem;font-variant-numeric:tabular-nums;}.ma-kana-target-goal,.ma-kana-target-state{font-size:.7rem;line-height:1.4;}.ma-kana-target-goal{color:var(--ma-muted);}.ma-kana-target-state{font-weight:650;color:var(--ma-muted);}
.ma-kana-target[data-status="met"]{border-color:var(--ma-success);}.ma-kana-target[data-status="met"] :is(strong,.ma-kana-target-state){color:var(--ma-success);}.ma-kana-target[data-status="needed"]{border-color:var(--ma-danger);}.ma-kana-target[data-status="needed"] :is(strong,.ma-kana-target-state){color:var(--ma-danger);}
.ma-kana-skill-evidence{padding:18px 0;border-top:1px solid var(--ma-border);font-size:.85rem;}.ma-kana-skill-title{display:flex;justify-content:space-between;gap:12px;align-items:center;}.ma-kana-skill-title h4{margin:0;font-size:1rem;}.ma-kana-review-note{color:var(--ma-text-soft);}
.ma-kana-mastery-map :is(button,a):focus-visible,.ma-kana-practice-form :is(input,select,summary):focus-visible{outline:3px solid var(--ma-focus-ring);outline-offset:3px;}
@media(max-width:420px){.ma-kana-practice-form{gap:12px 8px;}.ma-kana-field .ma-input{font-size:16px;}}
html[data-ma-large-text] :is(.ma-kana-practice-form,.ma-kana-row-picker-grid,.ma-kana-targets,.ma-kana-stage-guide){grid-template-columns:1fr;}

.ma-kana-mastery-map .ma-mastery-skill-marks{display:flex;gap:4px;width:32px;margin-top:3px;}
.ma-kana-mastery-map .ma-mastery-skill-marks i{display:block;width:14px;height:5px;border-radius:3px;background:var(--ma-border);box-shadow:none;}
.ma-kana-mastery-map .ma-mastery-skill-marks [data-stage]{background:var(--ma-stage);}
