/* NuzLabs v6.38.4.5 — Training Plan Completed Module Group State Hotfix */
.planner-components-grouped{display:grid;gap:8px;min-width:0}
.planner-module-group{margin:0;min-width:0;border:1px solid var(--line,#cfd9e6);border-radius:12px;background:var(--panel2,var(--panel,#f7f9fc));overflow:hidden}
.planner-module-group-summary{list-style:none;display:grid;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:8px;min-width:0;padding:9px 10px;cursor:pointer;user-select:none}
.planner-module-group-summary::-webkit-details-marker{display:none}
.planner-module-group-summary::marker{display:none;content:""}
.planner-module-group-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#0b2344;color:#fff;font-family:"Barlow Condensed",sans-serif;font-size:17px;font-weight:900;line-height:1}
.planner-module-group-copy{display:grid;gap:1px;min-width:0}
.planner-module-group-copy b{min-width:0;color:var(--text,#0b1d39);font-size:13px;line-height:1.08;overflow-wrap:normal;word-break:normal;hyphens:none}
.planner-module-group-copy small{min-width:0;color:var(--muted,#64748b);font-size:10px;line-height:1.25;overflow-wrap:normal;word-break:normal;hyphens:none}
.planner-module-group-toggle{display:grid;place-items:center;width:18px;height:18px;color:var(--muted,#64748b);font-size:18px;font-weight:800;line-height:1}
.planner-module-group-toggle::before{content:"+"}
.planner-module-group[open]>.planner-module-group-summary .planner-module-group-toggle::before{content:"−"}
.planner-module-group[open]>.planner-module-group-summary{border-bottom:1px solid var(--line,#cfd9e6)}
.planner-module-group-items{display:grid;gap:6px;min-width:0;padding:7px}
.planner-module-group-items>.planner-component{margin:0;min-width:0}
/* Fully resolved module groups need an unmistakable completed state. Keep the module mark/text, but use the same green completion language as completed plan days/cards. */
.planner-module-group.status-completed{border-color:#8bd7b0;background:#eefaf4}
.planner-module-group.status-completed>.planner-module-group-summary{background:#eefaf4}
.planner-module-group.status-completed .planner-module-group-mark{background:#16875b;color:#fff}
.planner-module-group.status-completed .planner-module-group-copy b{color:#124c3a}
.planner-module-group.status-completed .planner-module-group-copy small{color:#2a6b57}
.planner-module-group.status-completed .planner-module-group-toggle{color:#16875b}
html[data-theme="dark"] .planner-module-group.status-completed{border-color:#2f8f6b;background:#0d2b25}
html[data-theme="dark"] .planner-module-group.status-completed>.planner-module-group-summary{background:#0d2b25}
html[data-theme="dark"] .planner-module-group.status-completed .planner-module-group-mark{background:#25795d;color:#fff}
html[data-theme="dark"] .planner-module-group.status-completed .planner-module-group-copy b{color:#e4fff3}
html[data-theme="dark"] .planner-module-group.status-completed .planner-module-group-copy small{color:#a9dbc6}
html[data-theme="dark"] .planner-module-group.status-completed .planner-module-group-toggle{color:#83d8b5}
.planner-module-group.status-held{border-style:dashed}
html[data-theme="dark"] .planner-module-group-mark{background:#0f315f;color:#fff}
@media(max-width:760px){
  .planner-module-group-summary{grid-template-columns:30px minmax(0,1fr) 20px;padding:10px}
  .planner-module-group-copy b{font-size:14px}
  .planner-module-group-copy small{font-size:11px}
}
