.curriculum-program-list,.curriculum-plan-list,.curriculum-program-detail{display:grid;gap:20px;min-width:0}
.curriculum-program-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.curriculum-topic-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px 0;border-bottom:1px solid var(--border);min-width:0}
.curriculum-topic-row>strong,.curriculum-topic-copy{flex:1 1 200px;min-width:0;overflow-wrap:anywhere}
.curriculum-topic-copy small{display:block;margin-top:4px}
.curriculum-topic-row .ui-field{width:90px;flex:0 0 90px}
.curriculum-order{color:var(--muted);min-width:24px}
.curriculum-slot-option{display:flex;align-items:center;gap:10px;padding:10px 0}
.curriculum-slot-option input{width:auto}
.curriculum-graph-viewport{overflow:auto;max-height:480px;border:1px solid var(--border);border-radius:8px;margin:14px 0;background:var(--surface)}
.curriculum-graph{display:block;width:100%;min-width:620px;min-height:420px}
.curriculum-edge{stroke:var(--muted);stroke-opacity:.4;stroke-width:1.5}
.curriculum-edge.is-related{stroke-dasharray:5 5}
.curriculum-node{cursor:pointer;outline:none}
.curriculum-node circle{fill:var(--surface);stroke:var(--text);stroke-width:2}
.curriculum-node.kind-idea circle{fill:var(--accent);stroke:var(--text)}
.curriculum-node.kind-prototype circle{fill:var(--muted);stroke:var(--text)}
.curriculum-node text{fill:var(--text);font:14px var(--font-body,inherit)}
.curriculum-node:hover circle,.curriculum-node:focus circle{stroke:var(--accent);stroke-width:5}
.curriculum-history{min-width:0}
.curriculum-personal-plan details{margin-top:16px}
@media(max-width:600px){.curriculum-topic-row{align-items:flex-start}.curriculum-topic-row>.row{width:100%}.curriculum-graph-viewport{max-height:330px}.curriculum-personal-plan .ui-surface__heading{gap:12px}}
