/* MDSP2630 planner styles. Scoped to the stage; theme vars with light fallbacks. */
#djc-mdsp-stage{--m-navy:#003594;--m-gold:#FFB81C;--m-yes-bg:#d9f2df;--m-yes-fg:#186a34;--m-no-bg:#fadadd;--m-no-fg:#a63a50;--m-dup-bg:#fff3d6;--m-dup-fg:#8a6100;--m-line:var(--border,#d9dee8);--m-surface:var(--surface,#fff);--m-muted:var(--muted,#5c6577)}
#djc-mdsp-stage .m-band{background:var(--m-surface);border:1px solid var(--m-line);border-left:4px solid var(--m-gold);border-radius:var(--radius,10px);display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;padding:16px 18px}
#djc-mdsp-stage .m-band h2{margin:0;font-size:1.3rem;color:inherit}
#djc-mdsp-stage .m-badge{background:var(--m-gold);color:var(--m-navy);font-weight:700;font-size:.75rem;padding:2px 8px;border-radius:10px;letter-spacing:.05em}

#djc-mdsp-stage .m-top{display:flex;align-items:center;gap:12px;margin-top:16px}
#djc-mdsp-stage .m-b{border:1px solid var(--m-line);background:var(--m-surface);color:inherit;border-radius:6px;padding:6px 12px;cursor:pointer;font-size:.85rem}
#djc-mdsp-stage .m-b:hover{border-color:var(--m-gold)}
#djc-mdsp-stage .m-status{flex:1;font-size:.85rem;color:var(--m-muted)}
#djc-mdsp-stage .m-status .m-bad{color:var(--m-no-fg);font-weight:600}
#djc-mdsp-stage .m-status .m-dup{color:var(--m-dup-fg);font-weight:600}

#djc-mdsp-stage .m-card{background:var(--m-surface);border:1px solid var(--m-line);border-radius:var(--radius,10px);padding:14px 16px;margin-top:16px}
#djc-mdsp-stage .m-card h3{font-size:1rem;border-left:3px solid var(--m-gold);padding-left:8px}
#djc-mdsp-stage .m-card > h3{margin:0 0 10px}
#djc-mdsp-stage .m-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
#djc-mdsp-stage .m-head h3{margin:0}
#djc-mdsp-stage .m-lock{display:flex;align-items:center;gap:8px;font-size:1rem;color:var(--m-muted);cursor:pointer}
#djc-mdsp-stage .m-lock input{accent-color:var(--m-gold);cursor:pointer;width:18px;height:18px}
#djc-mdsp-stage .m-addplan{margin-top:16px;display:flex;justify-content:center}
#djc-mdsp-stage .m-addplan .m-b{font-size:1.1rem;padding:12px 32px}

/* Semesters card runs double-size: it is the control deck */
#djc-mdsp-stage .m-semcard h3{font-size:1.2rem}
#djc-mdsp-stage .m-terms{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end}
#djc-mdsp-stage .m-term{display:flex;flex-direction:column;gap:6px}
#djc-mdsp-stage .m-term small{color:var(--m-muted);font-size:1rem}
#djc-mdsp-stage .m-terms select{font-size:1.15rem;padding:10px 14px;max-width:280px}
#djc-mdsp-stage .m-terms .m-b{font-size:1.05rem;padding:10px 18px}
#djc-mdsp-stage .m-x{align-self:center;border:none;background:none;color:var(--m-muted);cursor:pointer;font-size:.85rem;padding:2px}
#djc-mdsp-stage .m-x:hover{color:var(--m-no-fg)}
#djc-mdsp-stage select{font:inherit;font-size:.85rem;padding:5px 6px;border:1px solid var(--m-line);border-radius:6px;background:var(--m-surface);color:inherit;max-width:220px}
#djc-mdsp-stage option{color:#1c2333;background:#fff} /* native dropdown list is always light */

#djc-mdsp-stage .m-scroll{overflow-x:auto}
#djc-mdsp-stage .m-table{border-collapse:collapse;width:100%}
#djc-mdsp-stage .m-table th,#djc-mdsp-stage .m-table td{border:1px solid var(--m-line);padding:6px 8px;font-size:.85rem;text-align:center}
#djc-mdsp-stage .m-table th{background:color-mix(in srgb,var(--m-gold) 10%,var(--m-surface));white-space:nowrap}
#djc-mdsp-stage td.m-name{text-align:left;white-space:nowrap;font-weight:600;font-size:.95rem;color:var(--m-gold)}
[data-dark="false"] #djc-mdsp-stage td.m-name{color:#8a5f00}
#djc-mdsp-stage td.m-slot{padding:3px}
#djc-mdsp-stage td.m-slot select{width:100%;max-width:none;border:none;background:transparent}
#djc-mdsp-stage td.m-ok{background:var(--m-yes-bg)}
#djc-mdsp-stage td.m-ok select{color:var(--m-yes-fg)}
#djc-mdsp-stage td.m-bad{background:var(--m-no-bg)}
#djc-mdsp-stage td.m-bad select{color:var(--m-no-fg);font-weight:600}
#djc-mdsp-stage td.m-dup{background:var(--m-dup-bg)}
#djc-mdsp-stage td.m-dup select{color:var(--m-dup-fg);font-weight:600}
#djc-mdsp-stage td.m-yes{background:var(--m-yes-bg);color:var(--m-yes-fg);font-weight:600}
#djc-mdsp-stage td.m-no{background:var(--m-no-bg);color:var(--m-no-fg);font-weight:600}

#djc-mdsp-stage .m-foot{margin-top:20px;font-size:.8rem;color:var(--m-muted);text-align:center}
#djc-mdsp-stage .m-foot a{color:inherit;text-decoration:underline}
#djc-mdsp-stage .m-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--m-gold);color:#1c2333;font-weight:600;padding:9px 18px;border-radius:8px;font-size:.85rem;opacity:0;pointer-events:none;transition:opacity .25s;z-index:60}
#djc-mdsp-stage .m-toast.m-show{opacity:1}

@media print{
#djc-mdsp-stage .m-b,#djc-mdsp-stage .m-lock,#djc-mdsp-stage .m-x,#djc-mdsp-stage .m-status{display:none!important}
}
