/* V7 M23 — per-class-level spell learning nodes */
.m23-learning-panel{min-width:0;margin:8px 0 10px;border:1px solid rgba(223,189,114,.24);border-radius:11px;background:linear-gradient(180deg,rgba(16,13,10,.92),rgba(9,8,6,.82));box-shadow:inset 0 1px rgba(255,255,255,.025)}
.m23-learning-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:9px 12px;cursor:pointer;list-style:none;color:var(--gold);font-size:12px;font-weight:800}.m23-learning-details>summary::-webkit-details-marker{display:none}.m23-learning-details>summary::after{content:"＋";margin-left:4px}.m23-learning-details[open]>summary::after{content:"−"}.m23-learning-details>summary b{margin-left:auto;color:var(--text);font-size:12px}
.m23-learning-body{display:grid;gap:9px;padding:0 10px 11px;border-top:1px solid rgba(223,189,114,.13)}
.m23-node-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px;padding-top:9px}
.m23-node{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;min-height:52px;padding:7px 9px;border:1px solid rgba(223,189,114,.13);border-radius:8px;background:rgba(255,255,255,.018);color:var(--muted);text-align:left}.m23-node>span{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;background:rgba(223,189,114,.08);color:var(--gold);font-size:11px;font-weight:800}.m23-node div{min-width:0}.m23-node b,.m23-node small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.m23-node b{color:var(--text);font-size:12px}.m23-node small{margin-top:2px;font-size:10px}.m23-node i{color:#9ad49c;font-style:normal}.m23-node:hover,.m23-node:focus-visible{border-color:rgba(223,189,114,.42);background:rgba(223,189,114,.055)}.m23-node.active{border-color:#d9b45f;background:rgba(223,189,114,.12);box-shadow:inset 3px 0 #d9b45f}.m23-node.complete:not(.active){border-color:rgba(126,184,130,.26)}
.m23-active-node{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border-left:2px solid var(--gold);background:rgba(223,189,114,.055)}.m23-active-node div{min-width:0}.m23-active-node span,.m23-active-node b,.m23-active-node small{display:block}.m23-active-node span{color:var(--gold);font-size:10px;font-weight:800}.m23-active-node b{margin-top:2px;font-size:13px}.m23-active-node small{margin-top:3px;color:var(--muted);font-size:10px}.m23-active-node>strong{flex:0 0 auto;color:#f4d77f;font-size:20px}
.m23-replacement{padding:7px 9px;border:1px solid rgba(223,189,114,.12);border-radius:8px;background:rgba(0,0,0,.16)}.m23-replacement>summary{display:flex;justify-content:space-between;cursor:pointer;color:var(--text);font-size:11px;font-weight:700}.m23-replacement p{margin:6px 0;color:var(--muted);font-size:10px}.m23-replace-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:7px;align-items:end}.m23-replace-controls label{display:grid;gap:4px;color:var(--muted);font-size:10px}.m23-replace-controls select{min-width:0;min-height:34px;padding:5px 8px;border:1px solid rgba(223,189,114,.22);border-radius:7px;background:#0e0c09;color:var(--text);font-size:11px}.m23-replace-controls button,.m23-replace-active button{min-height:34px;padding:6px 10px;border:1px solid rgba(223,189,114,.38);border-radius:7px;background:rgba(223,189,114,.10);color:var(--gold);font-size:11px;font-weight:800}.m23-replace-active{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px;padding:7px 8px;border-left:2px solid #ca8c55;background:rgba(202,140,85,.08);color:#efc38e;font-size:11px}.m23-muted{color:var(--muted);font-size:10px}
.m23-learning-warning{display:grid;gap:3px;padding:8px 9px;border-left:2px solid #d96d5d;background:rgba(164,54,43,.13);color:#f1a095;font-size:10px}.m23-spell-locked{display:none!important}.m23-ring-locked{display:none!important}.m23-limit-disabled{cursor:not-allowed!important;opacity:.48!important;filter:saturate(.55)}.m23-replace-button{border-color:#ca8c55!important;background:rgba(202,140,85,.17)!important;color:#ffd49c!important}
@media(min-width:768px){.m23-learning-details>summary{pointer-events:none}.m23-learning-details>summary::after{display:none}.spell-decision-content .m23-learning-panel{flex:0 0 auto}.spell-layout>.m23-learning-panel{margin-inline:0}}
@media(max-width:767px){
  .m19-spell-toolbar-summary>.m22-spell-rules,.m19-spell-toolbar-summary>.m23-learning-panel{grid-column:1/-1;width:100%;margin:0}
  .m19-spell-toolbar .m23-learning-panel{margin:0;background:#100e0b}
  .m23-learning-details>summary{min-height:38px;padding:7px 9px}.m23-learning-details>summary b{font-size:11px}
  .m23-learning-body{max-height:36dvh;overflow-y:auto;padding:0 7px 8px;overscroll-behavior:contain}
  .m23-node-grid{grid-template-columns:1fr;padding-top:7px}.m23-node{min-height:48px}
  .m23-replace-controls{grid-template-columns:1fr}.m23-replace-controls select{font-size:16px}
  .m23-active-node{padding:8px}.m23-active-node>strong{font-size:17px}
}
.character-learning-history{display:grid;gap:8px;margin:10px 0;padding:9px;border:1px solid rgba(223,189,114,.14);border-radius:9px;background:rgba(223,189,114,.025)}
.character-learning-summary{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px}.character-learning-summary span{color:var(--gold);font-size:11px;font-weight:800}.character-learning-summary b{font-size:14px}.character-learning-summary small{overflow:hidden;color:var(--muted);font-size:10px;white-space:nowrap;text-overflow:ellipsis}
.character-learning-nodes{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:5px}.character-learning-node{display:grid;gap:2px;padding:7px 8px;border-left:2px solid rgba(223,189,114,.24);background:rgba(0,0,0,.15)}.character-learning-node span{color:var(--gold);font-size:10px}.character-learning-node b{font-size:11px}.character-learning-node small{overflow:hidden;color:var(--muted);font-size:10px;white-space:nowrap;text-overflow:ellipsis}.character-learning-node.complete{border-left-color:#79b883}
@media(max-width:767px){.character-learning-summary{grid-template-columns:auto auto}.character-learning-summary small{grid-column:1/-1}.character-learning-nodes{grid-template-columns:1fr}}
