:root{--bg:#f6f7fb;--card:#fff;--ink:#172033;--muted:#667085;--line:#d9deea;--accent:#2346f0;--danger:#b42318;--ok:#067647}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink)}.top{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand{font-weight:800;font-size:18px}.top nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.top a,.button{color:var(--accent);text-decoration:none}.who{color:var(--muted);font-size:14px}.container{max-width:1180px;margin:0 auto;padding:24px}h1{margin:0 0 18px}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;margin:16px 0;box-shadow:0 8px 24px rgba(20,32,64,.04)}.narrow{max-width:520px}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.tile{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;text-decoration:none;color:var(--ink);box-shadow:0 8px 24px rgba(20,32,64,.04)}.tile b{display:block;font-size:20px;margin-bottom:10px}.tile span,.muted{color:var(--muted)}label{display:block;font-weight:600;margin:12px 0 6px}input,select,textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff}textarea{resize:vertical}button,.button{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:10px;border:1px solid var(--line);background:#fff;cursor:pointer;font:inherit;font-weight:700;text-decoration:none}.primary{background:var(--accent);border-color:var(--accent);color:#fff}.rowform{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;align-items:end}.check{display:flex;gap:8px;align-items:center}.check input{width:auto}.flash{padding:12px 14px;border-radius:12px;margin:12px 0}.flash.ok{background:#ecfdf3;color:var(--ok);border:1px solid #abefc6}.flash.error{background:#fef3f2;color:var(--danger);border:1px solid #fecdca}.flash.info{background:#eff8ff;color:#175cd3;border:1px solid #b2ddff}table{width:100%;border-collapse:collapse}th,td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}pre{white-space:pre-wrap;background:#f2f4f7;padding:12px;border-radius:10px;border:1px solid var(--line);overflow:auto}.tabs{display:flex;gap:8px;margin:10px 0}.tab.active,.toolbar button.active{background:#dbe4ff;border-color:#9eb3ff;color:#1732b8}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0}.toolbar label{display:flex;gap:8px;margin:0;align-items:center}.toolbar input{width:140px}#mathCanvas{width:100%;height:min(68vh,650px);background:#fff;border:2px solid #b8c1d9;border-radius:14px;touch-action:none;user-select:none;-webkit-user-select:none;overscroll-behavior:contain;cursor:crosshair;box-shadow:inset 0 0 0 1px rgba(0,0,0,.02)}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.submission-img{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff}@media(max-width:800px){.top{align-items:flex-start;flex-direction:column}.split{grid-template-columns:1fr}.container{padding:14px}#mathCanvas{height:56vh}}
button.danger { border-color: #b42318; color: #b42318; }
button.danger:hover { background: #fee4e2; }
.actions { white-space: nowrap; }
.muted { color: #667085; font-size: 0.92rem; }
.math-content{line-height:1.65;overflow-x:auto;white-space:pre-wrap}.math-content mjx-container{overflow-x:auto;overflow-y:hidden;max-width:100%}.math-content p{margin:.35rem 0}.math-hint{font-size:.92rem;color:var(--muted);margin-top:4px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.cards>.card{margin:0}.status-pill{display:inline-block;padding:3px 8px;border-radius:999px;background:#eef2ff;color:#253ea7;font-size:.85rem;font-weight:700}

.badge{display:inline-block;padding:4px 9px;border-radius:999px;background:#eef2ff;color:#253ea7;font-size:.85rem;font-weight:700;margin:2px 4px 2px 0}

.flash-popup-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.45);display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.flash-popup{max-width:560px;width:min(560px,100%);background:#fff;border-radius:18px;border:1px solid var(--line);padding:22px;box-shadow:0 24px 80px rgba(15,23,42,.22)}.flash-popup h2{margin:0 0 10px}.flash-popup p{line-height:1.5}.flash-popup-error{border-color:#fecdca}.flash-popup-ok{border-color:#abefc6}.danger-zone{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}

.rubric-builder{border:1px solid var(--line);border-radius:14px;padding:14px;margin:14px 0;background:#fbfcff}.rubric-builder legend{font-weight:800;padding:0 6px}.rubric-rows{display:flex;flex-direction:column;gap:10px}.rubric-row{display:grid;grid-template-columns:minmax(0,1fr) 130px auto;gap:10px;align-items:end}.rubric-row label{margin:0}.rubric-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px}.rubric-json-details{margin-top:12px}.rubric-json-details summary{cursor:pointer;color:var(--accent);font-weight:700}.rubric-remove{white-space:nowrap}@media(max-width:700px){.rubric-row{grid-template-columns:1fr}.rubric-remove{width:100%}}
.rag-list{display:grid;grid-template-columns:1fr;gap:12px}.mini-card{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfcff}.mini-card p{margin:.4rem 0}

/* ------------------------------------------------------------
   MathLoop v0.9.9 — Modern UI polish layer
   Visual-only layer: no workflow, route, DB, AI or submit logic changes.
   ------------------------------------------------------------ */
:root{
  color-scheme:light;
  --bg:#f7f9fc;
  --card:rgba(255,255,255,.86);
  --ink:#172033;
  --muted:#64748b;
  --line:#e2e8f0;
  --accent:#4f46e5;
  --accent-2:#0f766e;
  --danger:#dc2626;
  --ok:#047857;
  --warn:#b45309;
  --surface:#ffffff;
  --surface-2:#f8fafc;
  --soft:#eef2ff;
  --shadow-sm:0 4px 14px rgba(15,23,42,.06);
  --shadow:0 18px 55px rgba(15,23,42,.09);
  --radius:22px;
  --radius-sm:14px;
  --focus:0 0 0 4px rgba(79,70,229,.16);
}
html[data-theme="dark"]{
  color-scheme:dark;
  --bg:#090f1d;
  --card:rgba(17,24,39,.86);
  --ink:#e5edf8;
  --muted:#9aa8bd;
  --line:#283447;
  --accent:#8b8cff;
  --accent-2:#2dd4bf;
  --danger:#fb7185;
  --ok:#34d399;
  --warn:#fbbf24;
  --surface:#101827;
  --surface-2:#0f172a;
  --soft:#1e1b4b;
  --shadow-sm:0 4px 14px rgba(0,0,0,.22);
  --shadow:0 22px 70px rgba(0,0,0,.36);
  --focus:0 0 0 4px rgba(139,140,255,.22);
}
*{scrollbar-width:thin;scrollbar-color:rgba(100,116,139,.55) transparent}
body{
  min-height:100vh;
  background:
    radial-gradient(circle at 0 0, rgba(99,102,241,.17), transparent 34rem),
    radial-gradient(circle at 100% 8%, rgba(20,184,166,.12), transparent 28rem),
    linear-gradient(180deg, var(--bg), var(--surface-2));
  letter-spacing:-.01em;
}
html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 0 0, rgba(99,102,241,.18), transparent 34rem),
    radial-gradient(circle at 100% 8%, rgba(45,212,191,.10), transparent 28rem),
    linear-gradient(180deg, #07101f, #090f1d 52%, #070b14);
}
a{color:var(--accent);font-weight:760;text-decoration:none;text-underline-offset:3px}
a:hover{text-decoration:underline}
.top{
  min-height:70px;
  padding:12px clamp(14px,2.5vw,28px);
  background:rgba(255,255,255,.72);
  border-bottom:1px solid rgba(226,232,240,.85);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 8px 30px rgba(15,23,42,.06);
}
html[data-theme="dark"] .top{background:rgba(15,23,42,.72);border-bottom-color:rgba(40,52,71,.9)}
.brand{display:inline-flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;font-weight:900;letter-spacing:-.03em}
.brand:hover{text-decoration:none}.brand-mark{width:42px;height:42px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),#14b8a6);color:#fff;font-size:23px;box-shadow:0 12px 30px rgba(79,70,229,.24)}.brand-copy{display:grid;line-height:1.05}.brand-copy strong{font-size:18px}.brand-copy small{font-size:12px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-top:3px}.main-nav{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.main-nav a,.theme-toggle{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:999px;padding:8px 11px;background:rgba(255,255,255,.62);color:var(--ink);box-shadow:0 2px 8px rgba(15,23,42,.035);font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap}.main-nav a::before{content:attr(data-icon);display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:var(--soft);color:var(--accent);font-size:12px;line-height:1}.main-nav a:hover,.theme-toggle:hover{border-color:var(--line);background:var(--surface);text-decoration:none;transform:translateY(-1px);box-shadow:var(--shadow-sm)}html[data-theme="dark"] .main-nav a,html[data-theme="dark"] .theme-toggle{background:rgba(15,23,42,.70);color:var(--ink)}.theme-toggle{cursor:pointer;font:inherit}.theme-symbol{font-size:15px;color:var(--accent)}.theme-text{font-size:13px}.who{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:8px 11px;background:rgba(248,250,252,.78);color:var(--muted);font-weight:780}.who-dot{width:8px;height:8px;border-radius:999px;background:var(--ok);box-shadow:0 0 0 4px rgba(4,120,87,.12)}html[data-theme="dark"] .who{background:rgba(15,23,42,.72)}
.container{max-width:1260px;padding:clamp(16px,2.6vw,32px)}
h1{font-size:clamp(28px,4vw,46px);line-height:1.05;letter-spacing:-.055em;margin:4px 0 22px;color:var(--ink)}h2{letter-spacing:-.03em}h3{letter-spacing:-.02em}.card,.tile,.panel,.mini-card,.rubric-builder,.field{background:var(--card);border-color:var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.card,.tile{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}.card:hover,.tile:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:rgba(79,70,229,.22);text-decoration:none}.tile{display:block;background:linear-gradient(180deg,var(--card),rgba(248,250,252,.78))}.tile b{font-size:21px;letter-spacing:-.035em}.grid3,.cards{gap:18px}.muted,.small,.tiny{color:var(--muted)}
input,select,textarea{background:var(--surface);color:var(--ink);border-color:var(--line);border-radius:var(--radius-sm);box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 1px 2px rgba(15,23,42,.03);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus)}input[type="checkbox"],input[type="radio"]{accent-color:var(--accent);box-shadow:none}input[type="range"]{accent-color:var(--accent)}label{color:var(--ink)}
button,.button{gap:8px;border-color:var(--line);background:var(--surface);color:var(--ink);border-radius:999px;box-shadow:var(--shadow-sm);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease,color .16s ease}button:hover,.button:hover{transform:translateY(-1px);box-shadow:var(--shadow);text-decoration:none}button:focus-visible,.button:focus-visible{outline:none;box-shadow:var(--focus)}button.primary,.button.primary,.primary{background:linear-gradient(135deg,var(--accent),#6366f1);border-color:transparent;color:#fff}.primary:hover{filter:saturate(1.05)}button.danger,.button.danger{border-color:rgba(220,38,38,.32);color:var(--danger);background:rgba(254,242,242,.78)}button.danger:hover,.button.danger:hover{background:#fee2e2}html[data-theme="dark"] button.danger,html[data-theme="dark"] .button.danger{background:rgba(127,29,29,.20);border-color:rgba(251,113,133,.32)}html[data-theme="dark"] button.danger:hover,html[data-theme="dark"] .button.danger:hover{background:rgba(127,29,29,.32)}button:not(.tab):not(.theme-toggle)::before,.button::before{content:"✦";font-size:.86em;line-height:1;opacity:.86}button.primary:not(.tab)::before,.button.primary::before{content:"✓"}button.danger:not(.tab)::before,.button.danger::before{content:"!"}#penBtn::before{content:"✎"}#eraserBtn::before{content:"⌫"}#undoBtn::before{content:"↶"}#clearBtn::before{content:"⌧"}#addPageBtn::before{content:"+"}#deletePageBtn::before{content:"−"}button[name="format"]::before{content:"⇩"}.rubric-remove::before{content:"×"}
.flash{border-radius:18px;box-shadow:var(--shadow-sm)}.flash.ok{background:rgba(236,253,245,.86);color:var(--ok);border-color:rgba(52,211,153,.42)}.flash.error{background:rgba(254,242,242,.88);color:var(--danger);border-color:rgba(251,113,133,.42)}.flash.info{background:rgba(239,246,255,.90);color:#2563eb;border-color:rgba(147,197,253,.48)}html[data-theme="dark"] .flash.ok{background:rgba(6,78,59,.28)}html[data-theme="dark"] .flash.error{background:rgba(127,29,29,.26)}html[data-theme="dark"] .flash.info{background:rgba(30,58,138,.25);color:#93c5fd}.flash-popup{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:0 30px 100px rgba(0,0,0,.24)}.flash-popup-backdrop{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.status-pill,.badge,.pill{background:var(--soft);color:var(--accent);border:1px solid rgba(79,70,229,.16)}.tabs{gap:9px;flex-wrap:wrap}.tab{border-radius:999px;background:var(--surface);color:var(--muted)}.tab.active,.toolbar button.active{background:linear-gradient(135deg,var(--accent),#6366f1);border-color:transparent;color:#fff;box-shadow:0 12px 24px rgba(79,70,229,.22)}.toolbar{padding:10px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.50);box-shadow:var(--shadow-sm)}html[data-theme="dark"] .toolbar{background:rgba(15,23,42,.54)}.toolbar label{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:7px 11px;font-size:14px}.toolbar input{width:130px}
#mathCanvas{border-color:rgba(79,70,229,.35);border-radius:24px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.75),0 18px 50px rgba(15,23,42,.10);background:#fff}.submission-page{margin:18px 0}.submission-page h3{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:var(--soft);color:var(--accent);padding:7px 12px;font-size:14px}.submission-img{border-radius:18px;border-color:var(--line);box-shadow:var(--shadow-sm)}
table{border-collapse:separate;border-spacing:0}th{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.045em;background:rgba(248,250,252,.82)}th:first-child{border-top-left-radius:14px}th:last-child{border-top-right-radius:14px}td,th{border-bottom-color:var(--line)}tr:hover td{background:rgba(248,250,252,.72)}html[data-theme="dark"] th{background:rgba(15,23,42,.76)}html[data-theme="dark"] tr:hover td{background:rgba(15,23,42,.52)}pre{background:var(--surface-2);color:var(--ink);border-radius:18px}.split{gap:20px}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.rowform{gap:12px}.check{border:1px solid var(--line);border-radius:999px;padding:8px 11px;background:var(--surface);font-weight:760}.math-content{line-height:1.72}.math-hint{color:var(--muted)}.danger-zone{border-top-color:var(--line)}
@media(max-width:900px){.top{align-items:stretch;flex-direction:column;gap:12px}.main-nav{justify-content:flex-start;width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.main-nav a,.theme-toggle,.who{flex:0 0 auto}.brand-mark{width:38px;height:38px}.container{padding:16px}.split{grid-template-columns:1fr}.rowform{grid-template-columns:1fr}.grid3,.cards{grid-template-columns:1fr}.toolbar{align-items:stretch}.toolbar label{width:100%;justify-content:space-between}.toolbar input{width:min(180px,45vw)}}
@media(max-width:620px){h1{font-size:32px}.card,.tile,.panel,.mini-card,.rubric-builder{border-radius:18px;padding:16px}.main-nav a,.theme-toggle,.who{font-size:13px;padding:8px 10px}.brand-copy small{display:none}button,.button{width:100%;min-height:42px}.top button,.top .button,.toolbar button,.tabs button{width:auto}.actions{white-space:normal}.actions button,.actions .button,.actions a{width:auto}.tabs{overflow-x:auto;flex-wrap:nowrap}.tab{flex:0 0 auto}table{font-size:14px}th,td{padding:8px}.card:has(table){overflow-x:auto}#mathCanvas{height:58vh;border-radius:18px}}
@supports not selector(:has(*)){@media(max-width:620px){.card{overflow-x:auto}}}

/* v1.0.0 — Multi-target alignment UI */
.alignment-target-picker{grid-column:1/-1;border:1px solid var(--line);border-radius:var(--radius);padding:16px;background:linear-gradient(180deg,var(--card),rgba(248,250,252,.62));box-shadow:var(--shadow-sm);margin:8px 0}.alignment-target-picker legend{font-weight:900;padding:0 8px;letter-spacing:-.02em}.target-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px}.target-actions button,.target-group-title button{min-height:34px;padding:7px 11px;font-size:13px}.target-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:12px}.target-group{border:1px solid var(--line);border-radius:18px;padding:12px;background:rgba(255,255,255,.48);display:flex;flex-direction:column;gap:8px;max-height:360px;overflow:auto}html[data-theme="dark"] .target-group{background:rgba(15,23,42,.44)}.target-group-title{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:900;color:var(--ink);position:sticky;top:0;background:var(--card);padding-bottom:6px;z-index:1}.target-check{display:flex;align-items:flex-start;gap:10px;margin:0;padding:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface);font-weight:700;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.target-check:hover{border-color:rgba(79,70,229,.35);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.target-check input{width:auto;margin-top:3px;flex:0 0 auto}.target-check span{display:grid;gap:2px}.target-check small{color:var(--muted);font-weight:650;line-height:1.3}.target-check:has(input:checked){border-color:rgba(79,70,229,.55);background:var(--soft)}html[data-theme="dark"] .target-check:has(input:checked){background:rgba(79,70,229,.20)}
@media(max-width:620px){.target-grid{grid-template-columns:1fr}.target-actions button{width:auto}.target-group{max-height:300px}}


/* v1.1.4 — Knowledge Pack authoring and bulk item tools */
.knowledge-filter-bar,.knowledge-bulk-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;align-items:end;margin:14px 0;padding:12px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.50);box-shadow:var(--shadow-sm)}
html[data-theme="dark"] .knowledge-filter-bar,html[data-theme="dark"] .knowledge-bulk-bar{background:rgba(15,23,42,.48)}
.knowledge-bulk-bar button,.knowledge-filter-bar button,.knowledge-filter-bar .button{min-height:42px}
.bulk-authoring{margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,var(--card),rgba(248,250,252,.60));box-shadow:var(--shadow-sm)}
html[data-theme="dark"] .bulk-authoring{background:rgba(15,23,42,.45)}
.bulk-authoring>summary{cursor:pointer;font-weight:900;color:var(--ink);letter-spacing:-.02em}
.knowledge-items-card table input[type="checkbox"]{width:auto;min-width:18px;min-height:18px}
@media(max-width:620px){.knowledge-filter-bar,.knowledge-bulk-bar{grid-template-columns:1fr}.knowledge-bulk-bar button,.knowledge-filter-bar button,.knowledge-filter-bar .button{width:100%}}

/* v1.1.5 — Knowledge Pack export / import preview diagnostics */
.knowledge-import-preview{border-color:rgba(79,70,229,.30)}
.knowledge-import-preview details{margin-top:14px}
.knowledge-import-preview summary{cursor:pointer;font-weight:900;color:var(--ink)}
.item-diagnostics{margin:8px 0 10px;padding-left:0;list-style:none;display:grid;gap:6px}
.item-diagnostics li{border:1px solid var(--line);border-radius:14px;padding:7px 9px;background:rgba(248,250,252,.72);font-size:.92rem}
.item-diagnostics .diag-error{border-color:rgba(220,38,38,.35);background:rgba(254,242,242,.80)}
.item-diagnostics .diag-warn{border-color:rgba(180,83,9,.35);background:rgba(255,251,235,.82)}
.item-diagnostics .diag-info{border-color:rgba(37,99,235,.25);background:rgba(239,246,255,.82)}
html[data-theme="dark"] .item-diagnostics li{background:rgba(15,23,42,.55)}
html[data-theme="dark"] .item-diagnostics .diag-error{background:rgba(127,29,29,.24)}
html[data-theme="dark"] .item-diagnostics .diag-warn{background:rgba(120,53,15,.22)}
html[data-theme="dark"] .item-diagnostics .diag-info{background:rgba(30,58,138,.22)}

/* MathLoop v1.1.6.1 — Knowledge Pack activation/import safety hotfix */
.activation-review-card h4{margin:18px 0 10px}.activation-review-form{margin-top:16px}.activation-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:12px 0}.activation-checklist section{border:1px solid var(--line);border-radius:18px;padding:12px;background:rgba(248,250,252,.64)}html[data-theme="dark"] .activation-checklist section{background:rgba(15,23,42,.52)}.activation-checklist h4{margin:0 0 8px}.activation-checklist ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}.activation-checklist li{border:1px solid var(--line);border-radius:14px;padding:8px 10px;background:var(--surface);font-size:.94rem}.activation-checklist .check-pass{border-color:rgba(4,120,87,.28)}.activation-checklist .check-warn{border-color:rgba(180,83,9,.36);background:rgba(255,251,235,.78)}.activation-checklist .check-error{border-color:rgba(220,38,38,.36);background:rgba(254,242,242,.82)}.activation-checklist .check-info{border-color:rgba(37,99,235,.24);background:rgba(239,246,255,.78)}html[data-theme="dark"] .activation-checklist .check-warn{background:rgba(120,53,15,.22)}html[data-theme="dark"] .activation-checklist .check-error{background:rgba(127,29,29,.24)}html[data-theme="dark"] .activation-checklist .check-info{background:rgba(30,58,138,.22)}.compact-table{font-size:.94rem}.activation-type-breakdown .empty-type{opacity:.58}.activation-type-breakdown .has-items td:first-child{font-weight:800}.activation-review-form textarea{min-height:110px}

/* ------------------------------------------------------------
   MathLoop v1.1.6.2 — Index-inspired professional UI layer
   Visual-only polish inspired by the uploaded index.html interface.
   No route, DB, AI-provider, submit, assessment, export or KB logic changes.
   ------------------------------------------------------------ */
:root{
  --ml-bg:#eef4f8;
  --ml-panel:rgba(253,254,255,.86);
  --ml-panel-strong:#ffffff;
  --ml-ink:#263244;
  --ml-muted:#6d7a8c;
  --ml-line:#d7e1ec;
  --ml-soft:#edf5ff;
  --ml-accent:#4f6fb8;
  --ml-accent-2:#14847c;
  --ml-danger:#d94b4b;
  --ml-ok:#14847c;
  --ml-warn:#b86a22;
  --ml-shadow:0 18px 55px -28px rgba(55,72,94,.34);
  --ml-shadow-card:0 16px 38px -30px rgba(55,72,94,.36);
  --ml-radius-xl:30px;
  --ml-radius-lg:22px;
  --ml-radius-md:16px;
  --ml-focus:0 0 0 4px rgba(79,111,184,.16);
  --bg:var(--ml-bg);
  --card:var(--ml-panel);
  --ink:var(--ml-ink);
  --muted:var(--ml-muted);
  --line:var(--ml-line);
  --accent:var(--ml-accent);
  --accent-2:var(--ml-accent-2);
  --danger:var(--ml-danger);
  --ok:var(--ml-ok);
  --warn:var(--ml-warn);
  --surface:var(--ml-panel-strong);
  --surface-2:#f5f9fc;
  --soft:var(--ml-soft);
  --shadow:var(--ml-shadow);
  --shadow-sm:var(--ml-shadow-card);
  --radius:var(--ml-radius-lg);
  --radius-sm:var(--ml-radius-md);
  --focus:var(--ml-focus);
}
html[data-theme="dark"]{
  color-scheme:dark;
  --ml-bg:#050505;
  --ml-panel:rgba(16,16,16,.96);
  --ml-panel-strong:#101010;
  --ml-ink:#f2f2f2;
  --ml-muted:#b8b8b8;
  --ml-line:#303030;
  --ml-soft:#171717;
  --ml-accent:#31d0ff;
  --ml-accent-2:#3ddc97;
  --ml-danger:#ff6b86;
  --ml-ok:#3ddc97;
  --ml-warn:#f6b73c;
  --ml-shadow:0 22px 64px rgba(0,0,0,.52);
  --ml-shadow-card:0 18px 54px rgba(0,0,0,.34);
  --ml-focus:0 0 0 3px rgba(49,208,255,.16);
  --bg:var(--ml-bg);
  --card:var(--ml-panel);
  --ink:var(--ml-ink);
  --muted:var(--ml-muted);
  --line:var(--ml-line);
  --accent:var(--ml-accent);
  --accent-2:var(--ml-accent-2);
  --danger:var(--ml-danger);
  --ok:var(--ml-ok);
  --warn:var(--ml-warn);
  --surface:var(--ml-panel-strong);
  --surface-2:#0a0a0a;
  --soft:var(--ml-soft);
  --shadow:var(--ml-shadow);
  --shadow-sm:var(--ml-shadow-card);
  --focus:var(--ml-focus);
}
body{
  background-color:var(--ml-bg)!important;
  background-image:
    radial-gradient(circle at 8% -10%, rgba(200,218,240,.75) 0, transparent 34%),
    radial-gradient(circle at 100% 0%, rgba(212,238,235,.55) 0, transparent 30%),
    linear-gradient(180deg,#f8fbfe 0%,#eef4f8 55%,#e9f0f6 100%)!important;
  color:var(--ml-ink)!important;
  letter-spacing:-.01em;
}
html[data-theme="dark"] body{
  background-color:#050505!important;
  background-image:
    linear-gradient(90deg, rgba(49,208,255,.045) 0, transparent 1px),
    linear-gradient(180deg, rgba(167,139,250,.035) 0, transparent 1px),
    radial-gradient(circle at 12% -6%, rgba(49,208,255,.09) 0, transparent 30%),
    radial-gradient(circle at 88% 0%, rgba(61,220,151,.055) 0, transparent 28%),
    linear-gradient(180deg,#070707 0%,#050505 55%,#030303 100%)!important;
  background-size:72px 72px,72px 72px,auto,auto,auto!important;
  color:var(--ml-ink)!important;
}
.top{
  min-height:76px!important;
  padding:12px clamp(14px,2vw,36px)!important;
  background:rgba(253,254,255,.78)!important;
  border-bottom:1px solid rgba(215,225,236,.88)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
  box-shadow:0 12px 38px -28px rgba(55,72,94,.36)!important;
}
html[data-theme="dark"] .top{
  background:rgba(8,8,8,.94)!important;
  border-bottom-color:#262626!important;
  box-shadow:0 16px 44px rgba(0,0,0,.28)!important;
}
.brand-mark{
  width:44px!important;height:44px!important;border-radius:17px!important;
  background:linear-gradient(135deg,var(--ml-accent),var(--ml-accent-2))!important;
  box-shadow:0 14px 32px rgba(79,111,184,.24)!important;
}
html[data-theme="dark"] .brand-mark{box-shadow:0 0 0 1px rgba(49,208,255,.20),0 16px 38px rgba(0,0,0,.45)!important;}
.brand-copy strong{font-weight:850!important;letter-spacing:-.03em!important;}
.main-nav{gap:8px!important;}
.main-nav a,.theme-toggle,.who{
  min-height:40px!important;
  border-radius:999px!important;
  border:1px solid rgba(215,225,236,.72)!important;
  background:rgba(255,255,255,.72)!important;
  color:var(--ml-ink)!important;
  box-shadow:0 4px 14px rgba(55,72,94,.045)!important;
  font-weight:680!important;
}
.main-nav a::before{
  background:rgba(79,111,184,.12)!important;
  color:var(--ml-accent)!important;
  border:1px solid rgba(79,111,184,.10)!important;
}
.main-nav a:hover,.theme-toggle:hover{
  transform:translateY(-1px)!important;
  border-color:#c7d2fe!important;
  background:#fff!important;
  box-shadow:0 10px 26px -18px rgba(55,72,94,.45)!important;
}
html[data-theme="dark"] .main-nav a,
html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .who{
  background:#151515!important;
  border-color:#343434!important;
  color:#eeeeee!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .main-nav a::before{background:#101010!important;border-color:#383838!important;color:var(--ml-accent)!important;}
html[data-theme="dark"] .main-nav a:hover,
html[data-theme="dark"] .theme-toggle:hover{background:#202020!important;border-color:#555!important;color:#fff!important;}
.container{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
  padding:24px clamp(14px,2vw,36px) 36px!important;
}
.page-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  margin:0 0 20px;
  padding:24px 28px;
  border:1px solid rgba(215,225,236,.88);
  border-radius:var(--ml-radius-xl);
  background:rgba(253,254,255,.84);
  box-shadow:var(--ml-shadow);
  overflow:hidden;
  position:relative;
}
.page-hero::after{
  content:"";
  position:absolute;
  width:260px;height:260px;right:-90px;top:-120px;border-radius:50%;
  background:radial-gradient(circle,rgba(79,111,184,.17),transparent 68%);
  pointer-events:none;
}
.page-hero-main{min-width:0;position:relative;z-index:1;}
.page-kicker{
  display:inline-flex;align-items:center;gap:7px;
  background:var(--ml-soft);
  color:var(--ml-accent);
  padding:7px 11px;
  border-radius:999px;
  border:1px solid rgba(79,111,184,.12);
  font-size:12px;
  font-weight:820;
}
.page-hero h1{
  margin:10px 0 0!important;
  font-size:clamp(30px,4vw,52px)!important;
  line-height:1.07!important;
  letter-spacing:-.05em!important;
  font-weight:850!important;
  color:var(--ml-ink)!important;
  background:linear-gradient(135deg,#1e293b 10%,var(--ml-accent) 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  overflow-wrap:anywhere;
}
.page-hero-meta{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;position:relative;z-index:1;}
.page-chip{
  display:inline-flex;align-items:center;min-height:34px;
  border:1px solid var(--ml-line);
  border-radius:999px;
  padding:7px 11px;
  background:rgba(255,255,255,.72);
  color:var(--ml-muted);
  font-size:12px;
  font-weight:720;
  white-space:nowrap;
}
html[data-theme="dark"] .page-hero{
  background:rgba(16,16,16,.96)!important;
  border-color:var(--ml-line)!important;
  box-shadow:var(--ml-shadow-card)!important;
}
html[data-theme="dark"] .page-hero::after{background:radial-gradient(circle,rgba(49,208,255,.12),transparent 68%);}
html[data-theme="dark"] .page-hero h1{
  background:linear-gradient(135deg,#f5f5f5 10%,var(--ml-accent) 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
html[data-theme="dark"] .page-kicker,
html[data-theme="dark"] .page-chip{background:#181818!important;border-color:#383838!important;color:#d8d8d8!important;}
.card,.tile,.mini-card,.rubric-builder,.alignment-target-picker,.bulk-authoring,.knowledge-filter-bar,.knowledge-bulk-bar,.activation-checklist section{
  background:var(--ml-panel)!important;
  border-color:var(--ml-line)!important;
  border-radius:var(--ml-radius-lg)!important;
  box-shadow:var(--ml-shadow-card)!important;
}
.tile,.card{transition:transform .22s cubic-bezier(.4,0,.2,1),box-shadow .22s cubic-bezier(.4,0,.2,1),border-color .22s cubic-bezier(.4,0,.2,1)!important;}
.tile{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr);
  column-gap:14px;
  row-gap:4px;
  align-items:start;
  min-height:132px;
  background:linear-gradient(180deg,#fbfdff 0%,#f5f9fc 100%)!important;
}
.tile::before{
  content:"↗";
  grid-row:1/3;
  display:inline-flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:16px;
  background:rgba(79,111,184,.10);
  color:var(--ml-accent);
  border:1px solid rgba(79,111,184,.12);
  font-weight:900;
}
.tile b{font-weight:780!important;letter-spacing:-.025em!important;color:var(--ml-ink)!important;line-height:1.25!important;}
.tile span{line-height:1.45!important;}
.tile:hover,.card:hover{
  transform:translateY(-3px)!important;
  border-color:#cfdcea!important;
  box-shadow:0 18px 44px -28px rgba(55,72,94,.42)!important;
  text-decoration:none!important;
}
html[data-theme="dark"] .card,
html[data-theme="dark"] .tile,
html[data-theme="dark"] .mini-card,
html[data-theme="dark"] .rubric-builder,
html[data-theme="dark"] .alignment-target-picker,
html[data-theme="dark"] .bulk-authoring,
html[data-theme="dark"] .knowledge-filter-bar,
html[data-theme="dark"] .knowledge-bulk-bar,
html[data-theme="dark"] .activation-checklist section{
  background:linear-gradient(180deg,#141414 0%,#0d0d0d 100%)!important;
  border-color:var(--ml-line)!important;
  color:var(--ml-ink)!important;
  box-shadow:var(--ml-shadow-card)!important;
}
html[data-theme="dark"] .tile::before{background:#101010!important;border-color:#383838!important;color:var(--ml-accent)!important;}
html[data-theme="dark"] .tile b{color:#f5f5f5!important;}
html[data-theme="dark"] .tile:hover,
html[data-theme="dark"] .card:hover{border-color:#555!important;box-shadow:0 20px 60px rgba(0,0,0,.42)!important;}
.grid3,.cards{gap:16px!important;}
.grid3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;}
.cards{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;}
button,.button,input,select,textarea{border-radius:var(--ml-radius-md)!important;}
input,select,textarea{
  background:#fcfeff!important;
  border-color:#d5e0eb!important;
  color:var(--ml-ink)!important;
  box-shadow:0 2px 8px rgba(55,72,94,.025)!important;
}
input:focus,select:focus,textarea:focus{
  border-color:#8da0ee!important;
  box-shadow:var(--ml-focus)!important;
  outline:0!important;
}
button,.button{
  border-color:#d6e1ec!important;
  background:#fbfdff!important;
  color:var(--ml-ink)!important;
  box-shadow:0 4px 14px rgba(55,72,94,.045)!important;
  font-weight:650!important;
  gap:8px!important;
}
button:hover,.button:hover{transform:translateY(-1px);box-shadow:0 10px 26px -18px rgba(55,72,94,.45)!important;text-decoration:none!important;}
.primary,button.primary,.button.primary{background:var(--ml-accent)!important;border-color:var(--ml-accent)!important;color:#fff!important;}
button.danger,.button.danger{background:#fff8f8!important;border-color:#f0bbbb!important;color:var(--ml-danger)!important;}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea{
  background:#090909!important;
  border-color:#343434!important;
  color:#f3f3f3!important;
  box-shadow:none!important;
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{color:#7d7d7d!important;}
html[data-theme="dark"] button,
html[data-theme="dark"] .button{
  background:#151515!important;
  border-color:#3a3a3a!important;
  color:#eeeeee!important;
  box-shadow:none!important;
}
html[data-theme="dark"] button:hover,
html[data-theme="dark"] .button:hover{background:#202020!important;border-color:#555!important;color:#fff!important;}
html[data-theme="dark"] .primary,
html[data-theme="dark"] button.primary,
html[data-theme="dark"] .button.primary{background:#16232a!important;border-color:var(--ml-accent)!important;color:#eafcff!important;}
html[data-theme="dark"] button.danger,
html[data-theme="dark"] .button.danger{background:#2a1116!important;border-color:var(--ml-danger)!important;color:#ffe4e8!important;}
.tabs{
  display:flex!important;gap:8px!important;flex-wrap:wrap!important;
  background:rgba(255,255,255,.62)!important;
  border:1px solid var(--ml-line)!important;
  border-radius:24px!important;
  padding:8px!important;
  box-shadow:inset 0 2px 4px rgba(0,0,0,.02)!important;
}
.tab{
  border:none!important;
  border-radius:15px!important;
  box-shadow:none!important;
  background:transparent!important;
  color:var(--ml-muted)!important;
  font-weight:650!important;
}
.tab:hover:not(.active){background:rgba(0,0,0,.04)!important;color:var(--ml-ink)!important;}
.tab.active,.toolbar button.active{
  background:#fff!important;
  color:var(--ml-ink)!important;
  box-shadow:0 2px 10px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.1)!important;
  font-weight:760!important;
}
html[data-theme="dark"] .tabs{background:#080808!important;border-color:#262626!important;box-shadow:inset 0 2px 4px rgba(0,0,0,.2)!important;}
html[data-theme="dark"] .tab{background:#111!important;color:#d7d7d7!important;}
html[data-theme="dark"] .tab:hover:not(.active){background:#1b1b1b!important;color:#fff!important;}
html[data-theme="dark"] .tab.active,
html[data-theme="dark"] .toolbar button.active{background:linear-gradient(180deg,#172326,#101010)!important;border-color:var(--ml-accent)!important;color:#ecfeff!important;box-shadow:inset 0 -3px 0 rgba(49,208,255,.55)!important;}
.toolbar{
  background:rgba(253,254,255,.74)!important;
  border-color:var(--ml-line)!important;
  border-radius:22px!important;
  box-shadow:var(--ml-shadow-card)!important;
}
html[data-theme="dark"] .toolbar{background:rgba(16,16,16,.96)!important;border-color:#303030!important;box-shadow:0 16px 44px rgba(0,0,0,.28)!important;}
.flash{border-radius:18px!important;box-shadow:var(--ml-shadow-card)!important;}
.status-pill,.badge,.pill{
  border:1px solid rgba(79,111,184,.14)!important;
  background:var(--ml-soft)!important;
  color:var(--ml-accent)!important;
  font-weight:750!important;
}
html[data-theme="dark"] .status-pill,
html[data-theme="dark"] .badge,
html[data-theme="dark"] .pill{background:#181818!important;border-color:#383838!important;color:#d8d8d8!important;}
table{border-collapse:separate!important;border-spacing:0!important;}
th{
  background:#eef3f8!important;
  color:#56657a!important;
  font-size:12px!important;
  text-transform:uppercase;
  letter-spacing:.045em;
}
td{border-bottom-color:#e8eef5!important;}
tr:hover td{background:rgba(248,251,255,.74)!important;}
html[data-theme="dark"] th{background:#151515!important;color:#d5d5d5!important;border-bottom-color:#3a3a3a!important;}
html[data-theme="dark"] td{border-bottom-color:#252525!important;}
html[data-theme="dark"] tr:hover td{background:rgba(49,208,255,.04)!important;}
pre,.math-content{border-radius:18px!important;}
#mathCanvas{
  border-radius:24px!important;
  border-color:rgba(79,111,184,.28)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.75),0 18px 50px rgba(15,23,42,.10)!important;
}
html[data-theme="dark"] #mathCanvas{border-color:#303030!important;box-shadow:0 18px 54px rgba(0,0,0,.34)!important;}
html[data-theme="dark"] *{scrollbar-color:#5a5a5a #090909;}
html[data-theme="dark"] ::-webkit-scrollbar{width:12px;height:12px;}
html[data-theme="dark"] ::-webkit-scrollbar-track{background:#090909;}
html[data-theme="dark"] ::-webkit-scrollbar-thumb{background:#4b4b4b;border:3px solid #090909;border-radius:999px;}
html[data-theme="dark"] ::-webkit-scrollbar-thumb:hover{background:#686868;}
@media(max-width:980px){
  .top{align-items:stretch!important;flex-direction:column!important;gap:12px!important;}
  .main-nav{justify-content:flex-start!important;width:100%!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:4px!important;}
  .main-nav a,.theme-toggle,.who{flex:0 0 auto!important;}
  .page-hero{grid-template-columns:1fr!important;padding:22px!important;}
  .page-hero-meta{justify-content:flex-start!important;}
  .cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;}
}
@media(max-width:640px){
  .container{padding:14px!important;}
  .page-hero{border-radius:22px!important;padding:18px!important;margin-bottom:14px!important;}
  .page-hero h1{font-size:clamp(28px,8vw,40px)!important;}
  .page-hero-meta{display:none!important;}
  .grid3,.cards{grid-template-columns:1fr!important;}
  .tile{grid-template-columns:1fr!important;min-height:0!important;}
  .tile::before{margin-bottom:4px;}
  .tabs{overflow-x:auto!important;flex-wrap:nowrap!important;}
  .tab{flex:0 0 auto!important;}
  .actions{white-space:normal!important;}
  button,.button{min-height:42px!important;}
  .top button,.top .button,.toolbar button,.tabs button{width:auto!important;}
}

/* v1.1.7 — Knowledge Pack authoring templates / unsaved item preview */
.knowledge-template-picker,
.knowledge-authoring-preview{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,251,255,.92))!important;
  border:1px solid rgba(79,111,184,.16)!important;
}
.knowledge-template-preview{
  margin-top:12px!important;
  padding:14px!important;
  border:1px dashed rgba(79,111,184,.28)!important;
  border-radius:20px!important;
  background:rgba(247,251,255,.82)!important;
}
.template-body-preview{
  white-space:pre-wrap!important;
  overflow:auto!important;
  max-height:360px!important;
  padding:14px!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid var(--ml-line)!important;
  border-radius:18px!important;
}
.knowledge-authoring-preview h3{margin-top:14px!important;}
html[data-theme="dark"] .knowledge-template-picker,
html[data-theme="dark"] .knowledge-authoring-preview{
  background:linear-gradient(180deg,#151515,#101010)!important;
  border-color:#303030!important;
}
html[data-theme="dark"] .knowledge-template-preview{
  background:#111!important;
  border-color:#3a3a3a!important;
}
html[data-theme="dark"] .template-body-preview{
  background:#090909!important;
  border-color:#303030!important;
  color:#eeeeee!important;
}

/* v1.1.9 — Knowledge Pack external authoring workflow / quality gate */
.quality-gate{
  margin:12px 0 18px!important;
  padding:14px!important;
  border:1px solid rgba(79,111,184,.18)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,251,255,.88))!important;
}
.quality-gate .quality-checklist{margin-top:12px!important;}
.quality-gate.quality-ready{border-color:rgba(4,120,87,.30)!important;}
.quality-gate.quality-review{border-color:rgba(180,83,9,.34)!important;}
.quality-gate.quality-blocked{border-color:rgba(220,38,38,.36)!important;}
html[data-theme="dark"] .quality-gate{
  background:linear-gradient(180deg,#151515,#101010)!important;
  border-color:#303030!important;
}
html[data-theme="dark"] .quality-gate.quality-ready{border-color:rgba(52,211,153,.30)!important;}
html[data-theme="dark"] .quality-gate.quality-review{border-color:rgba(251,191,36,.34)!important;}
html[data-theme="dark"] .quality-gate.quality-blocked{border-color:rgba(248,113,113,.36)!important;}

/* v1.2.0 — Knowledge Pack source traceability / content production pipeline */
.source-trace-summary{margin:10px 0 16px!important;}
.source-trace{
  margin:8px 0!important;
  padding:8px 10px!important;
  border-radius:14px!important;
  border:1px solid rgba(79,111,184,.16)!important;
  background:rgba(247,251,255,.72)!important;
  font-size:.92rem!important;
}
.source-trace.trace-ok{border-color:rgba(4,120,87,.24)!important;}
.source-trace.trace-missing{border-color:rgba(180,83,9,.22)!important;color:var(--ml-muted)!important;}
html[data-theme="dark"] .source-trace{
  background:#111!important;
  border-color:#303030!important;
}
html[data-theme="dark"] .source-trace.trace-ok{border-color:rgba(52,211,153,.28)!important;}
html[data-theme="dark"] .source-trace.trace-missing{border-color:rgba(251,191,36,.26)!important;}

/* v1.2.1 — Knowledge Pack manual source-batch worksheet UX */
.worksheet-guide,.source-batch-fields{border:1px solid var(--line);border-radius:16px;padding:14px;margin:12px 0;background:var(--surface-2)}
.worksheet-guide summary,.source-batch-fields summary{cursor:pointer;font-weight:900;color:var(--accent)}
.worksheet-guide table{margin-top:10px}.worksheet-guide code{font-weight:800;color:var(--accent)}
html[data-theme="dark"] .worksheet-guide,html[data-theme="dark"] .source-batch-fields{background:rgba(15,23,42,.55)}

/* v1.2.2 — Knowledge Pack source manifest editor / missing trace review filters */
.source-manifest-editor{
  margin:12px 0 18px!important;
  padding:14px!important;
  border:1px solid rgba(79,111,184,.18)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,251,255,.88))!important;
}
.source-manifest-editor table{margin:12px 0!important;}
.source-manifest-editor details{margin-top:12px!important;}
.source-manifest-editor summary{cursor:pointer;font-weight:900;color:var(--ml-accent, var(--accent));}
.source-manifest-form{margin-top:10px!important;}
.trace-review-links{margin:8px 0 16px!important;}
.trace-missing-row td{background:rgba(255,251,235,.46)!important;}
.trace-missing-row:hover td{background:rgba(255,251,235,.72)!important;}
html[data-theme="dark"] .source-manifest-editor{
  background:linear-gradient(180deg,#151515,#101010)!important;
  border-color:#303030!important;
}
html[data-theme="dark"] .trace-missing-row td{background:rgba(251,191,36,.055)!important;}
html[data-theme="dark"] .trace-missing-row:hover td{background:rgba(251,191,36,.085)!important;}

/* v1.2.3 — Knowledge Pack item trace fill helper / manifest source picker */
.trace-fill-helper{
  margin:10px 0!important;
  padding:12px!important;
  border:1px dashed rgba(79,111,184,.26)!important;
  border-radius:18px!important;
  background:rgba(247,251,255,.72)!important;
}
.trace-fill-helper summary{cursor:pointer;font-weight:900;color:var(--ml-accent, var(--accent));}
.trace-fill-form{margin-top:10px!important;display:grid;gap:10px!important;}
.knowledge-bulk-bar .trace-fill-helper{grid-column:1/-1;margin-top:8px!important;}
.trace-fill-helper textarea{min-height:58px!important;}
html[data-theme="dark"] .trace-fill-helper{
  background:rgba(15,23,42,.48)!important;
  border-color:rgba(148,163,184,.24)!important;
}

/* v1.2.4 — Knowledge Pack trace consistency validator / orphan source audit */
.trace-consistency-audit{
  margin:12px 0 18px!important;
  padding:14px!important;
  border:1px solid rgba(79,111,184,.18)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,251,255,.88))!important;
}
.trace-consistency-audit details{margin-top:12px!important;}
.trace-consistency-audit summary{cursor:pointer;font-weight:900;color:var(--ml-accent, var(--accent));}
.trace-consistency-audit .rowform{margin:10px 0!important;}
.trace-audit-ready{border-color:rgba(4,120,87,.28)!important;}
.trace-audit-review{border-color:rgba(180,83,9,.30)!important;}
.trace-audit-blocked{border-color:rgba(220,38,38,.34)!important;}
.trace-issue-error td{background:rgba(254,226,226,.42)!important;}
.trace-issue-warn td{background:rgba(255,251,235,.48)!important;}
.trace-issue-info td{background:rgba(239,246,255,.42)!important;}
html[data-theme="dark"] .trace-consistency-audit{
  background:linear-gradient(180deg,#151515,#101010)!important;
  border-color:#303030!important;
}
html[data-theme="dark"] .trace-audit-ready{border-color:rgba(52,211,153,.28)!important;}
html[data-theme="dark"] .trace-audit-review{border-color:rgba(251,191,36,.30)!important;}
html[data-theme="dark"] .trace-audit-blocked{border-color:rgba(248,113,113,.34)!important;}
html[data-theme="dark"] .trace-issue-error td{background:rgba(248,113,113,.08)!important;}
html[data-theme="dark"] .trace-issue-warn td{background:rgba(251,191,36,.075)!important;}
html[data-theme="dark"] .trace-issue-info td{background:rgba(96,165,250,.075)!important;}


/* v1.2.8 tabular import review UX */
.tabular-preview-summary { margin-top: 1rem; padding: .9rem; border: 1px solid var(--line); border-radius: 16px; background: var(--surface-soft); }
.preview-repair-tools { margin-top: 1rem; border: 1px solid var(--line); border-radius: 16px; padding: .75rem .9rem; background: var(--surface); }
.preview-repair-tools summary { cursor: pointer; font-weight: 700; }
.table-scroll { overflow-x: auto; }
.preview-repair-table { min-width: 1120px; }
.preview-repair-table input, .preview-repair-table textarea, .preview-repair-table select { width: 100%; min-width: 0; margin: .15rem 0; }
.preview-repair-table textarea { font-family: inherit; resize: vertical; }

/* v1.2.9 — Knowledge Pack review dashboard / activation checklist */
.knowledge-review-dashboard{border-color:rgba(37,99,235,.18)!important;}
.review-kpi-grid{margin:12px 0 16px!important;}
.review-dashboard-table td{vertical-align:top!important;}
.review-gate-blocked td{background:rgba(254,242,242,.56)!important;}
.review-gate-review td{background:rgba(255,251,235,.48)!important;}
.review-gate-ready td{background:rgba(240,253,244,.44)!important;}
.review-queue-links{margin:12px 0 18px!important;}
.review-state-line{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px!important;align-items:center;}
.review-state-line .badge{font-size:.78rem!important;}
html[data-theme="dark"] .knowledge-review-dashboard{border-color:rgba(96,165,250,.20)!important;}
html[data-theme="dark"] .review-gate-blocked td{background:rgba(248,113,113,.075)!important;}
html[data-theme="dark"] .review-gate-review td{background:rgba(251,191,36,.070)!important;}
html[data-theme="dark"] .review-gate-ready td{background:rgba(52,211,153,.060)!important;}

/* v1.3.0 — Runtime Knowledge Selection Audit */
.runtime-audit{
  margin:14px 0 18px!important;
  padding:14px!important;
  border:1px solid rgba(37,99,235,.18)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.86))!important;
}
.runtime-audit h3{margin-top:0!important;}
.runtime-audit details{margin-top:12px!important;}
.runtime-audit summary{cursor:pointer;font-weight:900;color:var(--ml-accent, var(--accent));}
.runtime-audit table td{vertical-align:top!important;}
html[data-theme="dark"] .runtime-audit{
  background:linear-gradient(180deg,#151515,#101010)!important;
  border-color:#303030!important;
}

/* v1.3.1 — Teacher-facing assessment trace / KB influence panel */
.assessment-trace-panel{
  margin:16px 0 20px!important;
  padding:14px!important;
  border:1px solid rgba(37,99,235,.18)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(248,250,252,.88))!important;
}
.assessment-trace-panel h3{margin-top:0!important;}
.trace-panel-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px!important;}
.trace-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px!important;}
.trace-chip{display:inline-flex;gap:6px;align-items:center;border:1px solid rgba(37,99,235,.16);border-radius:999px;padding:7px 10px;background:rgba(239,246,255,.74);font-size:.92rem;}
.trace-chip b{font-size:1rem;}
.trace-group-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:10px!important;}
.trace-group-card{border:1px solid var(--line);border-radius:16px;padding:10px;background:rgba(255,255,255,.72);}
.assessment-trace-panel summary{cursor:pointer;font-weight:900;color:var(--ml-accent, var(--accent));}
.assessment-trace-panel details{margin-top:10px!important;}
.assessment-trace-panel table td{vertical-align:top!important;}
.trace-map-table td:first-child{white-space:nowrap;}
html[data-theme="dark"] .assessment-trace-panel{
  background:linear-gradient(180deg,#151515,#101010)!important;
  border-color:#303030!important;
}
html[data-theme="dark"] .trace-chip{background:rgba(30,58,138,.22);border-color:rgba(96,165,250,.24);}
html[data-theme="dark"] .trace-group-card{background:rgba(15,23,42,.48);border-color:rgba(148,163,184,.22);}

/* v1.3.2 — Teacher decision analytics */
.teacher-decision-panel{
  margin:16px 0 20px!important;
  padding:14px!important;
  border:1px solid rgba(15,118,110,.20)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(240,253,250,.92),rgba(248,250,252,.88))!important;
}
.teacher-decision-panel h3{margin-top:0!important;}
.teacher-decision-panel table td{vertical-align:top!important;}
.decision-delta-table td:first-child{white-space:nowrap;}
html[data-theme="dark"] .teacher-decision-panel{
  background:linear-gradient(180deg,rgba(19,78,74,.30),#101010)!important;
  border-color:rgba(45,212,191,.20)!important;
}

/* v1.3.3 — Teacher review history / decision timeline */
.teacher-history-panel{
  margin:16px 0 20px!important;
  padding:14px!important;
  border:1px solid rgba(124,58,237,.20)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(250,245,255,.94),rgba(248,250,252,.88))!important;
}
.teacher-history-panel h3{margin-top:0!important;}
.teacher-history-panel details{margin-top:12px!important;}
.teacher-history-panel summary{cursor:pointer;font-weight:900;color:var(--ml-accent, var(--accent));}
.teacher-history-panel table td{vertical-align:top!important;}
.teacher-timeline-table td:first-child,.teacher-review-history-table td:first-child{white-space:nowrap;}
html[data-theme="dark"] .teacher-history-panel{
  background:linear-gradient(180deg,rgba(88,28,135,.26),#101010)!important;
  border-color:rgba(196,181,253,.22)!important;
}

/* v1.3.5 — canvas ink smoothing + teacher queue triage */
#mathCanvas{touch-action:none!important;user-select:none!important;-webkit-user-select:none!important;image-rendering:auto!important;}
.triage-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px;margin-top:12px}.triage-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 8px 24px rgba(20,32,64,.04)}.triage-card b{font-size:22px}.triage-card.active{outline:2px solid rgba(35,70,240,.35);border-color:rgba(35,70,240,.45)}.triage-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;white-space:nowrap}.triage-pending-ai{background:#eff8ff;border-color:#b2ddff;color:#175cd3}.triage-ai-error{background:#fef3f2;border-color:#fecdca;color:#b42318}.triage-human-review{background:#fffaeb;border-color:#fedf89;color:#b54708}.triage-pending-teacher{background:#f4f3ff;border-color:#d9d6fe;color:#5925dc}.triage-feedback-ready{background:#ecfdf3;border-color:#abefc6;color:#067647}.triage-all{background:#f2f4f7;border-color:#d0d5dd;color:#344054}html[data-theme="dark"] .triage-card{background:#111!important;border-color:#303030!important;color:#f1f1f1!important}html[data-theme="dark"] .triage-card.active{outline-color:rgba(49,208,255,.35)!important;border-color:rgba(49,208,255,.45)!important}html[data-theme="dark"] .triage-badge{border-color:#303030!important}

/* v1.3.6 — AI provider diagnostics */
.ai-diagnostics code,.ai-diagnostics-results code{font-size:.88rem}.diag-pill{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;border:1px solid var(--line);font-weight:800;font-size:.82rem}.diag-ok{background:#ecfdf3;border-color:#abefc6;color:#067647}.diag-missing{background:#fffaeb;border-color:#fedf89;color:#b54708}.diag-error{background:#fef3f2;border-color:#fecdca;color:#b42318}.diag-check{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;background:#ecfdf3;color:#067647;font-weight:900}.diag-x{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;background:#fef3f2;color:#b42318;font-weight:900}.diag-details{border:1px solid var(--line);border-radius:16px;padding:10px 12px;margin:10px 0;background:var(--surface)}.diag-details summary{cursor:pointer;font-weight:800}html[data-theme="dark"] .diag-details{background:#111!important;border-color:#303030!important}

/* v1.3.7 — UX modernization / navigation + accordion refresh
   Visual-only layer: no DB, AI provider, assessment or student.submit logic changes. */
:root{
  --radius:10px;
  --radius-sm:8px;
  --ml-radius-xl:12px;
  --ml-radius-lg:10px;
  --ml-radius-md:8px;
  --shadow-sm:0 8px 22px rgba(15,23,42,.06);
  --shadow:0 18px 44px rgba(15,23,42,.08);
}
.card,.tile,.mini-card,.rubric-builder,.alignment-target-picker,.bulk-authoring,.knowledge-filter-bar,.knowledge-bulk-bar,.activation-checklist section,.runtime-audit,.assessment-trace-panel,.teacher-decision-panel,.teacher-history-panel,.diag-details,.triage-card,.flash,.flash-popup,.page-hero{
  border-radius:10px!important;
}
button,.button,input,select,textarea,.status-pill,.badge,.triage-badge,.diag-pill,.trace-chip,.who,.theme-toggle,.main-nav a{
  border-radius:8px!important;
}
.brand-mark{border-radius:10px!important;}
.card,.tile,.mini-card{box-shadow:0 10px 28px rgba(15,23,42,.055)!important;}
.card:hover,.tile:hover{transform:none!important;}
.page-hero{padding:18px 20px!important;margin-bottom:18px!important;}
.page-hero-meta{display:none!important;}

/* Role-aware dropdown navigation. */
.top{align-items:center!important;gap:16px!important;}
.main-nav{gap:8px!important;position:relative!important;}
.nav-dropdown{position:relative;display:inline-flex;align-items:center;}
.nav-dropdown>summary{list-style:none;min-height:38px;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid transparent;border-radius:8px;background:rgba(255,255,255,.72);font-size:14px;font-weight:850;cursor:pointer;user-select:none;color:var(--ink);box-shadow:0 2px 8px rgba(15,23,42,.035);}
.nav-dropdown>summary::-webkit-details-marker{display:none;}
.nav-dropdown>summary::after{content:'⌄';font-size:12px;color:var(--muted);margin-left:2px;transition:transform .16s ease;}
.nav-dropdown[open]>summary{border-color:var(--line);background:var(--surface);box-shadow:var(--shadow-sm);}
.nav-dropdown[open]>summary::after{transform:rotate(180deg);}
.nav-dropdown-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:40;min-width:230px;display:grid;gap:6px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 22px 60px rgba(15,23,42,.15);}
.nav-dropdown-panel a{justify-content:flex-start!important;width:100%;background:transparent!important;border-color:transparent!important;box-shadow:none!important;padding:9px 10px!important;}
.nav-dropdown-panel a:hover{background:var(--surface-2)!important;border-color:var(--line)!important;}
html[data-theme="dark"] .nav-dropdown>summary{background:rgba(15,23,42,.70);border-color:transparent;color:var(--ink);}
html[data-theme="dark"] .nav-dropdown[open]>summary,html[data-theme="dark"] .nav-dropdown-panel{background:#111827;border-color:#303a4d;}
html[data-theme="dark"] .nav-dropdown-panel a:hover{background:#0f172a!important;}

/* Generic accordions: compact by default, readable when opened. */
.section-accordion{border:1px solid var(--line);border-radius:10px!important;background:rgba(255,255,255,.62);margin:10px 0!important;overflow:hidden;}
.section-accordion>summary{cursor:pointer;font-weight:900;color:var(--ink);padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;}
.section-accordion>summary::after{content:'+';width:22px;height:22px;border:1px solid var(--line);border-radius:7px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);font-weight:900;}
.section-accordion[open]>summary{border-bottom:1px solid var(--line);background:rgba(248,250,252,.82);}
.section-accordion[open]>summary::after{content:'−';}
.section-accordion>*:not(summary){margin-left:14px;margin-right:14px;}
.section-accordion>table,.section-accordion>.table-scroll,.section-accordion>.rag-list{margin:12px 14px 14px!important;width:calc(100% - 28px)!important;}
html[data-theme="dark"] .section-accordion{background:rgba(15,23,42,.46);border-color:#303a4d;}
html[data-theme="dark"] .section-accordion[open]>summary{background:rgba(17,24,39,.88);border-bottom-color:#303a4d;}

/* Teacher review: summary-first, fewer always-open technical blocks. */
.review-shell{display:grid;gap:14px;}
.review-summary-card{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.9fr) auto;gap:16px;align-items:center;margin-top:0!important;}
.review-summary-card h2{margin:4px 0 6px!important;font-size:clamp(22px,2.6vw,32px);line-height:1.1;}
.review-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.review-kpis span{border:1px solid var(--line);border-radius:10px;background:var(--surface-2);padding:10px 11px;min-width:0;}
.review-kpis b{display:block;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.review-kpis small{display:block;color:var(--muted);font-weight:800;margin-top:2px;}
.review-summary-actions{display:flex;justify-content:flex-end;align-items:center;}
.review-main-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:14px;align-items:start;}
.review-student-card,.review-ai-card{margin:0!important;}
.review-ai-card h2,.review-action-card h2{margin-top:0!important;}
.review-kpis-inline{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin:12px 0 14px;}
.review-action-card{position:sticky;bottom:12px;z-index:3;border-color:rgba(79,70,229,.22)!important;}
.review-action-card form{display:grid;gap:10px;}
.review-action-card label{margin-top:4px!important;}
.assessment-trace-panel,.teacher-decision-panel,.teacher-history-panel{margin:12px 0!important;padding:12px!important;border-radius:10px!important;}
.trace-chip-row{gap:6px!important;}
.trace-chip{padding:6px 8px!important;font-size:.88rem!important;}
.trace-group-card{border-radius:10px!important;}
.compact-grid>.card{margin:10px 0!important;}

/* Tables: less visually heavy in dense pages. */
table{font-size:.95rem;}
th{font-size:.8rem;text-transform:uppercase;letter-spacing:.035em;color:var(--muted);}
th,td{padding:9px 10px;}
.table-scroll{overflow-x:auto;}

@media(max-width:980px){
  .top{align-items:stretch!important;flex-direction:column!important;}
  .main-nav{justify-content:flex-start!important;overflow-x:visible!important;flex-wrap:wrap!important;}
  .nav-dropdown{position:static;}
  .nav-dropdown-panel{left:0;right:auto;width:min(520px,calc(100vw - 28px));}
  .review-summary-card{grid-template-columns:1fr;}
  .review-summary-actions{justify-content:flex-start;}
  .review-main-grid{grid-template-columns:1fr;}
  .review-action-card{position:static;}
}
@media(max-width:640px){
  .review-kpis{grid-template-columns:1fr;}
  .nav-dropdown-panel{position:static;width:100%;box-shadow:none;margin-top:6px;}
  .nav-dropdown{width:100%;display:block;}
  .nav-dropdown>summary{width:100%;justify-content:space-between;}
}

/* v1.3.7.1 — UI bugfix / compact professional shape pass
   Fixes visual regressions from v1.3.7 without touching workflows, DB or AI calls. */
:root{
  --ml-radius-xl:12px;
  --ml-radius-lg:10px;
  --ml-radius-md:8px;
}

/* Remove remaining “pill/oval” feeling from structural UI elements. */
.card,.tile,.mini-card,.page-hero,.flash,.flash-popup,.toolbar,.tabs,
.rubric-builder,.alignment-target-picker,.knowledge-filter-bar,.knowledge-bulk-bar,
.bulk-authoring,.worksheet-guide,.source-batch-fields,.runtime-audit,
.assessment-trace-panel,.teacher-decision-panel,.teacher-history-panel,.diag-details,
.triage-card,.activation-checklist section,.target-group,.target-check,
.tabular-preview-summary,.preview-repair-tools{
  border-radius:10px!important;
}
button,.button,input,select,textarea,.tab,.toolbar label,.check,
.status-pill,.badge,.pill,.triage-badge,.diag-pill,.trace-chip,
.main-nav a,.theme-toggle,.who,.submission-page h3{
  border-radius:8px!important;
}
.brand-mark,.tile::before{border-radius:10px!important;}
#mathCanvas,.submission-img,pre,.math-content{border-radius:10px!important;}

/* The final review form is too large to be sticky; sticky positioning made it cover content. */
.review-action-card{position:static!important;bottom:auto!important;z-index:auto!important;}
.review-action-card form{max-width:920px;}

/* Dropdowns should feel like menus, not floating oversized pills. */
.nav-dropdown>summary{border-radius:8px!important;}
.nav-dropdown-panel{border-radius:10px!important;max-height:min(70vh,520px);overflow:auto;}
.nav-dropdown-panel a{border-radius:8px!important;}
.nav-dropdown-panel a::before{border-radius:7px!important;}

/* Keep dense pages usable on small screens: accordions and cards can scroll horizontally instead of clipping tables. */
.section-accordion{overflow-x:auto!important;overflow-y:visible!important;}
.card:has(table),.section-accordion:has(table){overflow-x:auto!important;}
@media(max-width:760px){
  table{min-width:640px;}
  .card,.section-accordion{max-width:100%;}
  .rowform{grid-template-columns:1fr!important;}
  .toolbar{align-items:stretch!important;}
  .toolbar label{width:100%;justify-content:space-between;}
  .toolbar input,.toolbar select{width:100%!important;}
}

/* Teacher review: avoid cramped summary overflow and keep action buttons readable. */
.review-summary-card{grid-template-columns:minmax(0,1fr) minmax(260px,.85fr) auto!important;}
.review-summary-card,.review-kpis span,.review-summary-actions{min-width:0;}
.review-summary-actions .button{white-space:nowrap;}
.review-kpis b{font-size:.95rem!important;}
@media(max-width:1100px){
  .review-summary-card{grid-template-columns:1fr!important;}
  .review-summary-actions{justify-content:flex-start!important;}
}
@media(max-width:640px){
  .review-summary-actions .button{white-space:normal;width:100%!important;}
}

/* Reduce accidental visual noise from auto-generated button icons in form-heavy pages. */
.review-action-card button::before,
.ai-diagnostics button::before,
.ai-diagnostics-results button::before{
  content:none!important;
}

/* v1.3.8 — Model routing presets
   Teacher-facing presets resolve to provider/model IDs without changing DB schema. */
.model-routing-control{border:1px solid var(--line);border-radius:10px;background:var(--surface-2);padding:12px;margin:10px 0;display:grid;gap:8px;}
.model-routing-control label{margin:0!important;}
.model-routing-hint{margin:0!important;font-size:.9rem;}
.model-routing-advanced{border:1px dashed var(--line);border-radius:8px;background:var(--surface);padding:8px 10px;margin-top:2px;}
.model-routing-advanced>summary{cursor:pointer;font-weight:850;color:var(--ink);}
.model-routing-advanced label{margin-top:8px!important;}
.model-routing-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(79,70,229,.20);background:rgba(79,70,229,.08);color:var(--ink);padding:4px 7px;border-radius:8px;font-size:.82rem;font-weight:900;}
html[data-theme="dark"] .model-routing-control{background:rgba(15,23,42,.46);border-color:#303a4d;}
html[data-theme="dark"] .model-routing-advanced{background:#111827;border-color:#303a4d;}
html[data-theme="dark"] .model-routing-badge{background:rgba(129,140,248,.16);border-color:rgba(129,140,248,.32);}

/* v1.3.9 usage / cost dashboard */
.usage-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:16px 0;}
.usage-kpi{border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:var(--shadow-sm);padding:14px;min-width:0;}
.usage-kpi b{display:block;font-size:clamp(1.25rem,2.2vw,2rem);letter-spacing:-.045em;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.usage-kpi span{display:block;color:var(--ink);font-weight:900;margin-top:5px;}
.usage-kpi small{display:block;color:var(--muted);font-weight:750;margin-top:5px;line-height:1.35;}
html[data-theme="dark"] .usage-kpi{background:rgba(15,23,42,.78);border-color:#303a4d;}

/* v1.3.9.6.2 — inline action forms for destructive profile actions */
.inline-form{display:inline-flex;margin:0;gap:8px;align-items:center;}
.actions .inline-form button{width:auto;}


/* v1.3.9.7 — Knowledge backup ZIP preview / restore draft MVP */
.knowledge-backup-preview .compact-list{margin:6px 0 0 18px;padding:0;display:grid;gap:4px;}
.knowledge-backup-preview .compact-list li{line-height:1.35;}
.knowledge-backup-preview table td{vertical-align:top;}

/* v1.3.9.8 — Backup import mapping / conflict resolution UI */
.knowledge-backup-preview .backup-pack-stack{display:grid;gap:14px;margin:14px 0;}
.knowledge-backup-preview .backup-pack-card{border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:var(--shadow-sm);padding:14px;display:grid;gap:12px;}
.knowledge-backup-preview .backup-pack-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;}
.knowledge-backup-preview .backup-pack-head h3{margin:0 0 4px;font-size:1.05rem;}
.knowledge-backup-preview .backup-pack-head p{margin:0;}
.knowledge-backup-preview .backup-pack-status{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end;}
.knowledge-backup-preview .backup-pack-body{align-items:start;}
.knowledge-backup-preview .backup-pack-body h4{margin:0 0 8px;font-size:.95rem;}
.knowledge-backup-preview .backup-target-mapping,.knowledge-backup-preview .backup-comparison{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:10px;}
.knowledge-backup-preview .backup-target-mapping label{margin-top:8px!important;}
.knowledge-backup-preview .backup-diagnostics,.knowledge-backup-preview .backup-item-selector{border:1px dashed var(--line);border-radius:12px;background:var(--surface);padding:10px;}
.knowledge-backup-preview .backup-diagnostics>summary,.knowledge-backup-preview .backup-item-selector>summary{cursor:pointer;font-weight:900;}
.knowledge-backup-preview .backup-item-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px;margin-top:10px;max-height:440px;overflow:auto;padding-right:4px;}
.knowledge-backup-preview .backup-item-check{display:flex!important;gap:8px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:8px;margin:0!important;}
.knowledge-backup-preview .backup-item-check input{margin-top:3px;width:auto!important;}
.knowledge-backup-preview .backup-item-check span{display:grid;gap:3px;min-width:0;}
.knowledge-backup-preview .backup-item-check small{color:var(--muted);font-weight:800;}
.knowledge-backup-preview .backup-item-check em{color:var(--muted);font-style:normal;font-size:.86rem;line-height:1.35;}
.knowledge-backup-preview .sticky-actions{position:sticky;bottom:8px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px;box-shadow:var(--shadow-sm);z-index:2;}
html[data-theme="dark"] .knowledge-backup-preview .backup-pack-card,
html[data-theme="dark"] .knowledge-backup-preview .backup-item-check,
html[data-theme="dark"] .knowledge-backup-preview .sticky-actions{background:rgba(15,23,42,.78);border-color:#303a4d;}
html[data-theme="dark"] .knowledge-backup-preview .backup-target-mapping,
html[data-theme="dark"] .knowledge-backup-preview .backup-comparison{background:rgba(15,23,42,.46);border-color:#303a4d;}
@media(max-width:760px){
  .knowledge-backup-preview .backup-pack-head{display:grid;}
  .knowledge-backup-preview .backup-pack-status{justify-content:flex-start;}
  .knowledge-backup-preview .backup-item-grid{grid-template-columns:1fr;max-height:none;}
}

/* v1.3.9.9 — Imported draft review workflow polish */
.imported-draft-review-queue,.restore-import-review-panel{border-color:rgba(14,165,233,.24)!important;background:linear-gradient(180deg,rgba(240,249,255,.72),rgba(255,255,255,.80));}
html[data-theme="dark"] .imported-draft-review-queue,html[data-theme="dark"] .restore-import-review-panel{background:linear-gradient(180deg,rgba(12,74,110,.18),rgba(15,23,42,.56));border-color:rgba(56,189,248,.24)!important;}
.imported-draft-table td{vertical-align:top;}
.restore-import-meta{border:1px solid var(--line);border-radius:18px;padding:12px;margin:10px 0;background:rgba(255,255,255,.62);box-shadow:var(--shadow-sm);}
html[data-theme="dark"] .restore-import-meta{background:rgba(15,23,42,.52);}
.restore-import-meta h4{margin:0 0 10px;}
.restore-import-facts{display:grid;grid-template-columns:minmax(130px,.35fr) 1fr;gap:8px 12px;margin:12px 0 0;}
.restore-import-facts dt{font-weight:800;color:var(--muted);}
.restore-import-facts dd{margin:0;}
.restore-ready-checklist{margin-top:14px;}
.knowledge-items-card .restore-import-meta{font-size:.94rem;margin:8px 0 12px;padding:10px;}
.knowledge-items-card .restore-import-meta .grid3{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;}
@media(max-width:680px){.restore-import-facts{grid-template-columns:1fr}.imported-draft-table td{display:block;width:100%;}}

/* v1.3.10 — Knowledge import QA / hardening diagnostics */
.knowledge-backup-preview .backup-import-qa-panel{border:1px solid var(--line);border-radius:14px;background:var(--surface-2);padding:12px;margin:12px 0;box-shadow:var(--shadow-sm);}
.knowledge-backup-preview .backup-import-qa-panel h3{margin:0 0 6px;font-size:1rem;}
.knowledge-backup-preview .backup-import-qa-panel.qa-blocked{border-color:rgba(239,68,68,.45);}
.knowledge-backup-preview .backup-import-qa-panel.qa-ok{border-color:rgba(34,197,94,.35);}
html[data-theme="dark"] .knowledge-backup-preview .backup-import-qa-panel{background:rgba(15,23,42,.52);border-color:#303a4d;}
html[data-theme="dark"] .knowledge-backup-preview .backup-import-qa-panel.qa-blocked{border-color:rgba(248,113,113,.55);}
html[data-theme="dark"] .knowledge-backup-preview .backup-import-qa-panel.qa-ok{border-color:rgba(74,222,128,.45);}

/* v1.3.11 — Backup import result summary / duplicate detection */
.backup-preview-expiry{border-color:rgba(14,165,233,.32)!important;}
.knowledge-backup-preview .backup-possible-duplicate{border-color:rgba(245,158,11,.42)!important;}
.knowledge-backup-preview .duplicate-badge{border-color:rgba(245,158,11,.38);background:rgba(245,158,11,.12);}
.knowledge-backup-preview .duplicate-import-warning{margin:0;}
.backup-import-result-panel{border-color:rgba(34,197,94,.30)!important;background:linear-gradient(180deg,rgba(240,253,244,.72),rgba(255,255,255,.82));}
.backup-import-result-panel table td{vertical-align:top;}
html[data-theme="dark"] .backup-import-result-panel{background:linear-gradient(180deg,rgba(20,83,45,.18),rgba(15,23,42,.56));border-color:rgba(74,222,128,.28)!important;}
html[data-theme="dark"] .knowledge-backup-preview .backup-possible-duplicate{border-color:rgba(251,191,36,.45)!important;}
html[data-theme="dark"] .knowledge-backup-preview .duplicate-badge{background:rgba(251,191,36,.16);border-color:rgba(251,191,36,.36);}

/* v1.3.12 — Backup import history / cleanup management MVP */
.backup-import-history-cleanup{border-color:rgba(14,165,233,.26)!important;background:linear-gradient(180deg,rgba(240,249,255,.70),rgba(255,255,255,.84));}
.backup-import-history-cleanup details{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:12px;margin-top:12px;}
.backup-import-history-cleanup details>summary{cursor:pointer;font-weight:900;}
.backup-import-history-cleanup table td{vertical-align:top;}
.backup-import-history-cleanup .inline-form{display:inline-flex;}
html[data-theme="dark"] .backup-import-history-cleanup{background:linear-gradient(180deg,rgba(12,74,110,.16),rgba(15,23,42,.58));border-color:rgba(56,189,248,.24)!important;}
html[data-theme="dark"] .backup-import-history-cleanup details{background:rgba(15,23,42,.58);border-color:#303a4d;}
@media(max-width:780px){.backup-import-history-cleanup table.compact-table td{display:block;width:100%;}.backup-import-history-cleanup table.compact-table th{display:none;}}

/* v1.3.13 — Import/review audit timeline MVP */
.json-preview{white-space:pre-wrap;max-height:320px;overflow:auto;font-size:.85rem}.compact-list{list-style:none;padding:0;margin:.5rem 0}.compact-list li{display:flex;justify-content:space-between;gap:1rem;padding:.35rem 0;border-bottom:1px solid var(--line)}


/* v1.3.14 — Lifecycle docs / research manual UX */
.lifecycle-guide-card,.lifecycle-manual{border-color:rgba(99,102,241,.24)!important;background:linear-gradient(180deg,rgba(238,242,255,.70),rgba(255,255,255,.86));}
html[data-theme="dark"] .lifecycle-guide-card,html[data-theme="dark"] .lifecycle-manual{background:linear-gradient(180deg,rgba(49,46,129,.18),rgba(15,23,42,.58));border-color:rgba(129,140,248,.24)!important;}
.lifecycle-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:12px 0;}
.lifecycle-steps-wide{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));}
.lifecycle-step{border:1px solid var(--line);border-radius:14px;background:var(--card);padding:12px;box-shadow:var(--shadow-sm);min-width:0;}
.lifecycle-step b,.lifecycle-step h3{display:block;margin:0 0 6px;font-size:1rem;}
.lifecycle-step span,.lifecycle-step p,.lifecycle-step dd{color:var(--muted);font-weight:750;line-height:1.45;}
.lifecycle-step dl{margin:8px 0 0;display:grid;gap:5px;}
.lifecycle-step dt{font-weight:900;color:var(--ink);}
.lifecycle-step dd{margin:0;}
.lifecycle-help{border:1px dashed var(--line);border-radius:14px;background:var(--surface);padding:10px;margin:12px 0;}
.lifecycle-help>summary{cursor:pointer;font-weight:900;}
html[data-theme="dark"] .lifecycle-step{background:rgba(15,23,42,.78);border-color:#303a4d;}
html[data-theme="dark"] .lifecycle-help{background:rgba(15,23,42,.52);border-color:#303a4d;}
@media(max-width:760px){.lifecycle-steps,.lifecycle-steps-wide{grid-template-columns:1fr;}}


/* v1.3.16 — External QA security/methodology hotfix UX */
.qa-checklist-card .qa-checklist li { margin-bottom: 0.45rem; }
.qa-checklist-card h2 { display: flex; align-items: center; gap: 0.45rem; }
.qa-checklist-card h2::before { content: '☑'; font-size: 0.9em; opacity: 0.8; }

/* v1.3.18 — Final UX / Research Manual Polish */
.field-help{display:block;margin:.25rem 0 .45rem;color:var(--muted);font-size:.88rem;font-weight:750;line-height:1.35;}
.canvas-draft-status{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:var(--surface-2);font-size:.86rem;font-weight:850;}
#mathCanvas{background:linear-gradient(180deg,#fff,#fff 97%,#fafafa);}
.review-flow-card{border-color:rgba(20,184,166,.25)!important;background:linear-gradient(180deg,rgba(240,253,250,.72),rgba(255,255,255,.86));}
.review-flow-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;list-style:none;margin:0;padding:0;counter-reset:review-step;}
.review-flow-list li{counter-increment:review-step;border:1px solid var(--line);border-radius:16px;background:var(--card);padding:12px 12px 12px 46px;box-shadow:var(--shadow-sm);position:relative;min-height:96px;}
.review-flow-list li::before{content:counter(review-step);position:absolute;left:12px;top:13px;width:24px;height:24px;border-radius:999px;background:var(--accent-2);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:950;font-size:.82rem;}
.review-flow-list b{display:block;margin-bottom:4px;line-height:1.25;}
.review-flow-list span{display:block;color:var(--muted);font-weight:760;line-height:1.38;font-size:.92rem;}
.review-method-note{border-color:rgba(14,165,233,.30)!important;}
.review-action-card{position:relative;}
.review-action-card form{display:grid;gap:8px;}
.review-action-card label{margin:4px 0;}
.lifecycle-manual .method-notes{display:grid;gap:8px;}
.lifecycle-manual .method-notes li{display:block;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--card);line-height:1.45;}
.qa-checklist-card .compact-list li{display:list-item;border-bottom:0;padding:.2rem 0;}
@media(max-width:760px){
  .review-flow-list{grid-template-columns:1fr;}
  .toolbar .canvas-draft-status{width:100%;justify-content:center;}
  .review-summary-actions .button{width:100%;}
}
html[data-theme="dark"] .canvas-draft-status{background:rgba(15,23,42,.58);border-color:#303a4d;}
html[data-theme="dark"] .review-flow-card{background:linear-gradient(180deg,rgba(19,78,74,.16),rgba(15,23,42,.58));border-color:rgba(45,212,191,.24)!important;}
html[data-theme="dark"] .review-flow-list li,html[data-theme="dark"] .lifecycle-manual .method-notes li{background:rgba(15,23,42,.76);border-color:#303a4d;}


/* v1.4.1 — RC Deployment Smoke Test / Install Fixes */

/* MathLoop v1.4.2 — lightweight loading states for uploads and teacher-triggered AI waits */
.ml-loading-overlay[hidden]{display:none!important}
.ml-loading-overlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:20px;background:rgba(15,23,42,.28);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.ml-loading-card{display:flex;align-items:center;gap:14px;width:min(440px,calc(100vw - 32px));padding:18px 20px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow);color:var(--ink)}
.ml-loading-card strong{display:block;font-size:1rem;letter-spacing:-.02em}.ml-loading-card small{display:block;margin-top:3px;color:var(--muted);line-height:1.35}.ml-spinner{width:34px;height:34px;flex:0 0 34px;border-radius:50%;border:4px solid rgba(100,116,139,.22);border-top-color:var(--accent);animation:ml-spin .8s linear infinite}.is-loading{position:relative;opacity:.78;cursor:progress!important}.is-loading::after{content:"";display:inline-block;width:1em;height:1em;margin-left:.55em;vertical-align:-.15em;border-radius:50%;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;animation:ml-spin .8s linear infinite}@keyframes ml-spin{to{transform:rotate(360deg)}}
html.ml-loading-active body{cursor:progress}
@media (prefers-reduced-motion:reduce){.ml-spinner,.is-loading::after{animation:none}}
.multi-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:12px 0}.multi-review-grid .mini-card{height:100%}

/* MathLoop v1.4.3 — optional 2+1 careful review controls */
.review-ai-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin: 12px 0;
}
.careful-review-cta form {
    display: inline-block;
}
.multi-review-grid .mini-card ul {
    margin: 8px 0 0;
    padding-left: 18px;
}

/* v1.4.4 — user lifecycle / multi-role admin controls */
.inline-fieldset{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--line);border-radius:16px;padding:8px 12px;background:var(--surface);min-height:42px;}
.inline-fieldset legend{font-weight:800;padding:0 6px;color:var(--muted);font-size:.88rem;}
.check-inline{display:inline-flex;align-items:center;gap:6px;margin:2px 8px 2px 0;font-weight:760;white-space:nowrap;}
.check-inline input[type="checkbox"]{width:auto;min-width:16px;}
.pill.ok{background:#ecfdf3;border-color:#abefc6;color:#067647;}
.pill.warn{background:#fffaeb;border-color:#fedf89;color:#b54708;}
html[data-theme="dark"] .pill.ok{background:rgba(6,118,71,.18)!important;border-color:rgba(171,239,198,.35)!important;color:#abefc6!important;}
html[data-theme="dark"] .pill.warn{background:rgba(181,71,8,.18)!important;border-color:rgba(254,223,137,.35)!important;color:#fedf89!important;}
/* v1.4.5 maintenance reset polish */
.reset-mode-card{border-color:rgba(220,38,38,.18)}
.reset-confirm-form{display:grid;gap:14px;margin-top:16px}
.compact-table .strong-row td{font-weight:900;background:rgba(254,242,242,.72)}
html[data-theme="dark"] .compact-table .strong-row td{background:rgba(127,29,29,.22)}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.pre-reset-backup-gate{border-color:rgba(35,70,240,.18)}.backup-scope-card{border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--surface,#fff)}.check-grid{display:grid;gap:8px;margin-top:10px}.check-grid .check{align-items:flex-start;border-radius:14px}.loss-preview-list li{justify-content:flex-start}.reset-confirm-form.danger-zone{border:1px solid rgba(180,35,24,.22);border-radius:16px;padding:16px;background:rgba(254,243,242,.35)}html[data-theme="dark"] .reset-confirm-form.danger-zone{background:rgba(127,29,29,.16)}

/* v1.5.3 — Vector rebuild notifications / dry-run export */
.progress-mini{display:inline-block;width:120px;height:10px;border-radius:999px;background:var(--surface-2,#eef2f7);border:1px solid var(--line);overflow:hidden;vertical-align:middle;margin-right:8px;}
.progress-mini span{display:block;height:100%;background:var(--accent);border-radius:999px;}
.json-block{max-height:360px;overflow:auto;border:1px solid var(--line);border-radius:16px;padding:12px;background:var(--surface-2,#f8fafc);white-space:pre-wrap;font-size:.84rem;line-height:1.35;}
.card.subtle{background:linear-gradient(180deg,rgba(248,250,252,.72),rgba(255,255,255,.92));}
html[data-theme="dark"] .progress-mini{background:rgba(15,23,42,.7);border-color:#303a4d;}
html[data-theme="dark"] .json-block{background:rgba(15,23,42,.68);border-color:#303a4d;}
html[data-theme="dark"] .card.subtle{background:linear-gradient(180deg,rgba(15,23,42,.72),rgba(15,23,42,.58));}

/* ------------------------------------------------------------
   MathLoop v2.1.6 — UI Simplification CSS-only polish
   Visual-only refinements: no route, form, JS, DB, upload,
   submission, review, AI-provider or runtime behavior changes.
   ------------------------------------------------------------ */
.container{padding-top:clamp(18px,3vw,30px);}
.card,.tile,.mini-card{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;}
.tile:hover{transform:translateY(-2px);box-shadow:0 18px 46px -32px rgba(55,72,94,.42);}
button:focus-visible,.button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:0;box-shadow:var(--focus);}
.flash,.muted,label{line-height:1.45;}
button,.button{line-height:1.2;}
table tr:hover td{background:rgba(79,111,184,.035);}
html[data-theme="dark"] table tr:hover td{background:rgba(49,208,255,.045);}
@media(max-width:620px){.container{padding-left:16px;padding-right:16px}.card,.tile{padding:15px}}

/* ------------------------------------------------------------
   MyEClass v2.9.272 — Product-facing branding layer.
   UI-only: internal MathLoop names/routes/tables/helpers remain unchanged.
   ------------------------------------------------------------ */
.brand-logo-shell{
  width:64px;
  height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  overflow:hidden;
}
.brand-logo{
  max-width:64px;
  max-height:44px;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
}
.brand-logo-dark{display:none;}
html[data-theme="dark"] .brand-logo-light{display:none;}
html[data-theme="dark"] .brand-logo-dark{display:block;}
.brand .brand-mark{display:none!important;}
.brand-copy strong{font-size:20px!important;letter-spacing:-.035em!important;}
.brand-copy small{text-transform:none!important;letter-spacing:.01em!important;color:var(--muted)!important;}
@media(max-width:620px){
  .brand-logo-shell{width:52px;height:36px;}
  .brand-logo{max-width:52px;max-height:36px;}
  .brand-copy small{display:none!important;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.273 — LMS-style responsive navigation shell.
   UI-only shell foundation: no internal MathLoop route/table/helper rename,
   no schema/write/AI/OCR/notification/student.submit/publication/visibility change.
   ------------------------------------------------------------ */
.myeclass-body{min-height:100vh;}
.myeclass-app-shell{min-height:100vh;display:grid!important;grid-template-columns:minmax(235px,286px) minmax(0,1fr);grid-template-rows:auto 1fr;align-items:start;}
.myeclass-shell-guest{display:block!important;}
.myeclass-topbar{grid-column:1 / -1;min-height:74px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:11px clamp(14px,2vw,28px)!important;z-index:60!important;}
.myeclass-topbar-left{display:flex;align-items:center;gap:12px;min-width:0;}
.myeclass-brand{min-width:0;}
.shell-icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;}
.shell-icon svg{width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.myeclass-nav-toggle{display:none;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-weight:900;padding:9px 12px;box-shadow:var(--shadow-sm);cursor:pointer;}
.myeclass-user-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:0;}
.myeclass-top-action,.myeclass-user-pill{min-height:40px!important;display:inline-flex!important;align-items:center!important;gap:8px!important;border:1px solid rgba(215,225,236,.74)!important;border-radius:999px!important;padding:8px 11px!important;background:rgba(255,255,255,.72)!important;color:var(--ink)!important;text-decoration:none!important;font-size:14px!important;font-weight:820!important;box-shadow:0 4px 14px rgba(55,72,94,.045)!important;white-space:nowrap;}
.myeclass-top-action:hover{border-color:rgba(79,111,184,.28)!important;background:var(--surface)!important;transform:translateY(-1px);}
.myeclass-user-pill{max-width:240px;overflow:hidden;}
.myeclass-user-pill span:last-child{overflow:hidden;text-overflow:ellipsis;}
html[data-theme="dark"] .myeclass-top-action,html[data-theme="dark"] .myeclass-user-pill{background:rgba(15,23,42,.70)!important;border-color:#303030!important;color:var(--ink)!important;}
.myeclass-sidebar{grid-column:1;grid-row:2;position:sticky;top:74px;align-self:start;height:calc(100vh - 74px);overflow:auto;padding:18px 14px 22px;border-right:1px solid rgba(215,225,236,.88);background:linear-gradient(180deg,rgba(253,254,255,.78),rgba(245,249,252,.72));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);z-index:45;}
html[data-theme="dark"] .myeclass-sidebar{background:linear-gradient(180deg,rgba(10,10,10,.96),rgba(8,8,8,.92));border-right-color:#262626;}
.myeclass-sidebar-inner{display:grid;gap:14px;}
.myeclass-sidebar-heading{display:grid;gap:2px;padding:5px 8px 10px;color:var(--ink);}
.myeclass-sidebar-heading span{font-size:13px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:950;}
.myeclass-sidebar-heading small{font-size:16px;font-weight:950;letter-spacing:-.03em;color:var(--ink);}
.myeclass-nav-section{display:grid;gap:8px;}
.myeclass-nav-section h2{font-size:12px;text-transform:uppercase;letter-spacing:.10em;color:var(--muted);font-weight:950;margin:2px 8px 0;}
.myeclass-nav-list,.myeclass-secondary-list{display:grid;gap:7px;}
.myeclass-nav-link{min-height:46px;display:flex!important;align-items:center;gap:11px;border:1px solid transparent;border-radius:16px;padding:10px 12px;background:transparent;color:var(--ink)!important;text-decoration:none!important;font-weight:880;letter-spacing:-.015em;}
.myeclass-nav-link .shell-icon{color:var(--accent);background:var(--soft);border:1px solid rgba(79,111,184,.11);border-radius:12px;width:30px;height:30px;}
.myeclass-nav-link .shell-icon svg{width:18px;height:18px;}
.myeclass-nav-link:hover{background:var(--surface);border-color:var(--line);box-shadow:var(--shadow-sm);transform:translateY(-1px);}
.myeclass-nav-link.is-active{background:linear-gradient(135deg,rgba(79,111,184,.14),rgba(20,132,124,.10));border-color:rgba(79,111,184,.30);box-shadow:var(--shadow-sm);}
.myeclass-nav-link.is-active .shell-icon{background:var(--accent);color:#fff;border-color:var(--accent);}
html[data-theme="dark"] .myeclass-nav-link .shell-icon{background:#101010;border-color:#303030;color:var(--ml-accent);}
html[data-theme="dark"] .myeclass-nav-link:hover{background:#111827;border-color:#303030;}
html[data-theme="dark"] .myeclass-nav-link.is-active{background:linear-gradient(135deg,rgba(49,208,255,.16),rgba(61,220,151,.10));border-color:rgba(49,208,255,.32);}
html[data-theme="dark"] .myeclass-nav-link.is-active .shell-icon{background:var(--ml-accent);border-color:var(--ml-accent);color:#020617;}
.myeclass-secondary-nav{border:1px solid var(--line);border-radius:18px;padding:8px;background:rgba(255,255,255,.54);box-shadow:var(--shadow-sm);}
.myeclass-secondary-nav>summary{list-style:none;display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:950;color:var(--ink);padding:8px;border-radius:14px;}
.myeclass-secondary-nav>summary::-webkit-details-marker{display:none;}
.myeclass-secondary-nav>summary::after{content:'⌄';margin-left:auto;color:var(--muted);transition:transform .16s ease;}
.myeclass-secondary-nav[open]>summary::after{transform:rotate(180deg);}
.myeclass-secondary-list{margin-top:7px;}
.myeclass-secondary-list .myeclass-nav-link{min-height:40px;border-radius:13px;font-size:14px;padding:8px 10px;}
.myeclass-secondary-list .myeclass-nav-link .shell-icon{width:26px;height:26px;border-radius:10px;}
html[data-theme="dark"] .myeclass-secondary-nav{background:rgba(15,23,42,.58);border-color:#303030;}
.myeclass-sidebar-note{display:grid;gap:4px;border:1px solid rgba(20,132,124,.20);border-radius:18px;padding:13px;background:linear-gradient(180deg,rgba(240,253,250,.72),rgba(255,255,255,.70));color:var(--ink);}
.myeclass-sidebar-note b{font-size:14px;letter-spacing:-.02em;}
.myeclass-sidebar-note span{font-size:13px;color:var(--muted);line-height:1.35;font-weight:720;}
html[data-theme="dark"] .myeclass-sidebar-note{background:rgba(20,83,45,.18);border-color:rgba(61,220,151,.24);}
.myeclass-main{grid-column:2;grid-row:2;width:100%;max-width:1280px!important;margin:0 auto!important;padding:clamp(16px,2.2vw,28px)!important;}
.myeclass-shell-guest .myeclass-main{max-width:1180px!important;}
.myeclass-breadcrumbs{margin:0 0 12px;}
.myeclass-breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0;}
.myeclass-breadcrumbs li{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;font-weight:850;}
.myeclass-breadcrumbs li+li::before{content:'›';color:var(--muted);opacity:.72;font-weight:950;}
.myeclass-breadcrumbs a{color:var(--accent);text-decoration:none;border:1px solid transparent;border-radius:999px;padding:5px 8px;background:rgba(255,255,255,.42);}
.myeclass-breadcrumbs a:hover{background:var(--surface);border-color:var(--line);text-decoration:none;}
.myeclass-breadcrumbs span[aria-current="page"]{color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:5px 8px;background:var(--surface);}
html[data-theme="dark"] .myeclass-breadcrumbs a{background:rgba(15,23,42,.44);}
.myeclass-nav-backdrop[hidden]{display:none!important;}
.myeclass-nav-backdrop{position:fixed;inset:0;border:0;padding:0;background:rgba(15,23,42,.44);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:42;}
.myeclass-brand .brand-logo-shell{width:64px;height:44px;}
.myeclass-brand .brand-copy strong{font-size:20px!important;}
@media(max-width:1100px){
  .myeclass-user-pill{max-width:170px;}
  .myeclass-top-action span:not(.learning-loop-notification-badge){max-width:96px;overflow:hidden;text-overflow:ellipsis;}
}
@media(max-width:980px){
  .myeclass-app-shell{display:block!important;}
  .myeclass-topbar{position:sticky!important;top:0!important;flex-direction:row!important;align-items:center!important;gap:10px!important;}
  .myeclass-nav-toggle{display:inline-flex;}
  .myeclass-sidebar{position:fixed;top:0;bottom:0;left:0;height:100vh;width:min(86vw,318px);padding-top:86px;transform:translateX(-106%);transition:transform .22s ease;box-shadow:28px 0 70px rgba(15,23,42,.22);z-index:50;}
  .myeclass-app-shell.myeclass-nav-open .myeclass-sidebar{transform:translateX(0);}
  .myeclass-main{max-width:1180px!important;margin:0 auto!important;}
  .myeclass-user-nav{gap:6px;}
  .myeclass-user-pill{display:none!important;}
}
@media(max-width:720px){
  .myeclass-topbar{min-height:68px!important;padding:10px 12px!important;}
  .myeclass-brand .brand-logo-shell{width:52px;height:36px;}
  .myeclass-brand .brand-logo{max-width:52px;max-height:36px;}
  .myeclass-user-nav .myeclass-top-action span{display:none;}
  .myeclass-top-action,.myeclass-nav-toggle{min-width:40px!important;width:auto!important;padding:8px 10px!important;}
  .myeclass-nav-toggle span{display:none;}
  .myeclass-main{padding:14px!important;}
  .myeclass-breadcrumbs{overflow-x:auto;padding-bottom:2px;}
  .myeclass-breadcrumbs ol{flex-wrap:nowrap;width:max-content;max-width:100%;}
  .myeclass-breadcrumbs li{white-space:nowrap;}
}
@media(prefers-reduced-motion:reduce){.myeclass-sidebar,.myeclass-nav-link,.myeclass-top-action{transition:none!important;}}

/* ------------------------------------------------------------
   MyEClass v2.9.274 — LMS shell integration polish.
   Reference-informed by common LMS/Open eClass navigation patterns:
   soft course workspace surfaces, clearer active path state, compact
   breadcrumbs, mobile scroll lock. No copied external assets, fonts,
   webfonts, icon packs, routes, schema, writes, AI/OCR, notifications,
   student.submit, publication or visibility changes.
   ------------------------------------------------------------ */
.myeclass-app-shell{
  --myeclass-lms-blue:#2563eb;
  --myeclass-lms-blue-strong:#1d4ed8;
  --myeclass-lms-ink:#243447;
  --myeclass-lms-soft:#f7f9fe;
  --myeclass-lms-soft-2:#eff6ff;
  --myeclass-lms-line:#e8edf8;
}
.myeclass-topbar{
  border-bottom-color:rgba(232,237,248,.95)!important;
  box-shadow:1px 2px 10px rgba(36,52,71,.055)!important;
}
.myeclass-brand .brand-copy small{display:none!important;}
.myeclass-brand .brand-copy{line-height:1!important;}
.myeclass-sidebar{
  background:linear-gradient(180deg,rgba(247,249,254,.96),rgba(255,255,255,.90))!important;
  border-right-color:var(--myeclass-lms-line)!important;
}
.myeclass-sidebar-heading{
  border:1px solid var(--myeclass-lms-line);
  border-radius:16px;
  background:rgba(255,255,255,.66);
  box-shadow:0 4px 14px rgba(36,52,71,.035);
}
.myeclass-sidebar-heading span{color:#687da3;}
.myeclass-nav-section h2{color:#687da3;}
.myeclass-nav-link{
  min-height:44px;
  border-radius:13px;
  border-left:4px solid transparent!important;
  color:var(--myeclass-lms-ink)!important;
}
.myeclass-nav-link .shell-icon{
  color:var(--myeclass-lms-blue);
  background:var(--myeclass-lms-soft-2);
  border-color:rgba(37,99,235,.10);
}
.myeclass-nav-link:hover{
  background:#ffffff!important;
  border-color:var(--myeclass-lms-line)!important;
  border-left-color:rgba(37,99,235,.35)!important;
}
.myeclass-nav-link.is-in-path{
  background:rgba(239,246,255,.64)!important;
  border-color:rgba(37,99,235,.12)!important;
  border-left-color:rgba(37,99,235,.26)!important;
}
.myeclass-nav-link.is-in-path .shell-icon{
  background:#ffffff;
  color:var(--myeclass-lms-blue-strong);
}
.myeclass-nav-link.is-active{
  background:#e6f1ff!important;
  border-color:rgba(37,99,235,.26)!important;
  border-left-color:var(--myeclass-lms-blue)!important;
  color:#0f3f88!important;
}
.myeclass-nav-link.is-active .shell-icon{
  background:var(--myeclass-lms-blue)!important;
  border-color:var(--myeclass-lms-blue)!important;
  color:#ffffff!important;
}
.myeclass-secondary-nav{
  background:rgba(255,255,255,.66)!important;
  border-color:var(--myeclass-lms-line)!important;
}
.myeclass-sidebar-note{
  background:linear-gradient(180deg,#ffffff,rgba(247,249,254,.88))!important;
  border-color:rgba(37,99,235,.14)!important;
}
.myeclass-sidebar-note b{color:#0f3f88;}
.myeclass-breadcrumbs{
  border:1px solid rgba(232,237,248,.95);
  border-radius:16px;
  background:rgba(255,255,255,.62);
  padding:7px;
  box-shadow:0 4px 14px rgba(36,52,71,.035);
}
.myeclass-breadcrumbs ol{gap:4px;overflow-x:auto;scrollbar-width:thin;}
.myeclass-breadcrumbs a,
.myeclass-breadcrumbs span[aria-current="page"]{
  min-height:30px;
  display:inline-flex;
  align-items:center;
}
.myeclass-breadcrumbs a{color:var(--myeclass-lms-blue-strong);}
.myeclass-breadcrumbs span[aria-current="page"]{
  background:#f7f9fe;
  border-color:#e8edf8;
}
.myeclass-body.myeclass-nav-locked{overflow:hidden;}
html[data-theme="dark"] .myeclass-sidebar{background:linear-gradient(180deg,rgba(10,10,10,.96),rgba(15,23,42,.92))!important;border-right-color:#303030!important;}
html[data-theme="dark"] .myeclass-sidebar-heading,
html[data-theme="dark"] .myeclass-secondary-nav,
html[data-theme="dark"] .myeclass-breadcrumbs{background:rgba(15,23,42,.72)!important;border-color:#303030!important;}
html[data-theme="dark"] .myeclass-nav-link{color:var(--ink)!important;}
html[data-theme="dark"] .myeclass-nav-link:hover,
html[data-theme="dark"] .myeclass-nav-link.is-in-path{background:#111827!important;border-color:#303030!important;border-left-color:rgba(49,208,255,.35)!important;}
html[data-theme="dark"] .myeclass-nav-link.is-active{background:rgba(49,208,255,.16)!important;border-left-color:var(--ml-accent)!important;color:var(--ink)!important;}
html[data-theme="dark"] .myeclass-sidebar-note{background:rgba(17,24,39,.78)!important;border-color:#303030!important;}
html[data-theme="dark"] .myeclass-sidebar-note b{color:var(--ml-accent);}
@media(max-width:980px){
  .myeclass-sidebar{width:min(88vw,320px);outline:none;}
  .myeclass-app-shell.myeclass-nav-open .myeclass-sidebar{transform:translateX(0);}
  .myeclass-nav-backdrop{background:rgba(15,23,42,.48);}
}
@media(max-width:720px){
  .myeclass-breadcrumbs{margin-bottom:10px;}
  .myeclass-sidebar-heading{margin-top:2px;}
  .myeclass-nav-link{min-height:42px;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.275 — Course / assignment workspace visual structure.
   UI/read-only LMS-style surfaces around the canonical learning-loop paths.
   No copied Open eClass assets/fonts/icon packs; no schema/write/provider/OCR.
   ------------------------------------------------------------ */
.myeclass-workspace-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  margin:0 0 16px;
  padding:22px clamp(18px,3vw,30px);
  border:1px solid rgba(232,237,248,.96);
  border-radius:28px;
  background:
    radial-gradient(circle at 4% 0%,rgba(37,99,235,.10),transparent 32%),
    linear-gradient(135deg,rgba(255,255,255,.95),rgba(247,249,254,.88));
  box-shadow:0 16px 44px -34px rgba(36,52,71,.42);
  overflow:hidden;
}
.myeclass-workspace-hero h1{margin:0;font-size:clamp(1.45rem,2.4vw,2.15rem);letter-spacing:-.04em;line-height:1.08;color:var(--ink);}
.myeclass-workspace-hero p{margin:8px 0 0;max-width:820px;color:var(--muted);font-weight:650;line-height:1.55;}
.myeclass-workspace-eyebrow{margin:0 0 7px!important;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:950;color:var(--myeclass-lms-blue-strong)!important;}
.myeclass-workspace-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px;}
.myeclass-workspace-meta span{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border:1px solid rgba(37,99,235,.14);border-radius:999px;background:rgba(239,246,255,.78);color:#0f3f88;font-size:.84rem;font-weight:850;}
.myeclass-workspace-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:min(34vw,360px);}
.myeclass-workspace-action{white-space:nowrap;}
.myeclass-workspace-teacher{border-left:5px solid rgba(37,99,235,.72);}
.myeclass-workspace-student{border-left:5px solid rgba(20,132,124,.70);background:radial-gradient(circle at 4% 0%,rgba(20,132,124,.10),transparent 32%),linear-gradient(135deg,rgba(255,255,255,.95),rgba(247,252,251,.88));}
.myeclass-workspace-student .myeclass-workspace-eyebrow{color:var(--accent-2)!important;}
.myeclass-workspace-student .myeclass-workspace-meta span{border-color:rgba(20,132,124,.18);background:rgba(236,253,245,.78);color:#0f766e;}
.myeclass-workspace-map{display:grid;grid-template-columns:minmax(160px,240px) minmax(0,1fr);gap:16px;align-items:center;margin-bottom:16px;}
.myeclass-workspace-map h2{margin:0 0 5px;font-size:1.05rem;}
.myeclass-path-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;list-style:none;margin:0;padding:0;counter-reset:pathstep;}
.myeclass-path-steps li{position:relative;min-height:96px;padding:13px 13px 12px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,var(--surface),rgba(248,250,252,.72));box-shadow:0 8px 24px -24px rgba(36,52,71,.40);}
.myeclass-path-steps li span{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:10px;background:var(--soft);border:1px solid var(--line);font-size:.82rem;font-weight:950;color:var(--accent);}
.myeclass-path-steps li b{display:block;margin-top:10px;font-size:.95rem;letter-spacing:-.02em;color:var(--ink);}
.myeclass-path-steps li small{display:block;margin-top:4px;color:var(--muted);font-weight:650;line-height:1.32;}
.myeclass-path-steps li.is-current{border-color:rgba(37,99,235,.30);background:linear-gradient(180deg,#eff6ff,#ffffff);}
.myeclass-path-steps li.is-current span{background:var(--myeclass-lms-blue);border-color:var(--myeclass-lms-blue);color:#fff;}
.myeclass-path-steps li.is-done{border-color:rgba(20,132,124,.26);}
.myeclass-path-steps li.is-done span{background:rgba(236,253,245,.95);border-color:rgba(20,132,124,.25);color:var(--accent-2);}
.myeclass-workspace-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:0 0 16px;}
.myeclass-workspace-stats article{padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm);}
.myeclass-workspace-stats span{display:block;color:var(--muted);font-size:.82rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em;}
.myeclass-workspace-stats b{display:block;margin-top:7px;color:var(--ink);font-size:1.35rem;letter-spacing:-.03em;}
.myeclass-workspace-stats small{display:block;margin-top:4px;color:var(--muted);font-weight:650;}
html[data-theme="dark"] .myeclass-workspace-hero{border-color:#303030;background:radial-gradient(circle at 4% 0%,rgba(49,208,255,.08),transparent 32%),linear-gradient(135deg,rgba(17,24,39,.92),rgba(10,10,10,.88));}
html[data-theme="dark"] .myeclass-workspace-meta span{background:rgba(30,58,138,.24);border-color:rgba(49,208,255,.18);color:var(--ml-accent);}
html[data-theme="dark"] .myeclass-workspace-student .myeclass-workspace-meta span{background:rgba(6,78,59,.28);border-color:rgba(61,220,151,.18);color:var(--ml-accent-2);}
html[data-theme="dark"] .myeclass-path-steps li{background:linear-gradient(180deg,rgba(17,24,39,.92),rgba(10,10,10,.86));}
html[data-theme="dark"] .myeclass-path-steps li.is-current{background:linear-gradient(180deg,rgba(30,58,138,.28),rgba(17,24,39,.86));}
html[data-theme="dark"] .myeclass-workspace-stats article{background:rgba(17,24,39,.82);}
@media(max-width:980px){.myeclass-workspace-hero{grid-template-columns:1fr}.myeclass-workspace-actions{justify-content:flex-start;min-width:0}.myeclass-workspace-map{grid-template-columns:1fr}}
@media(max-width:620px){.myeclass-workspace-hero{padding:18px;border-radius:22px}.myeclass-workspace-actions .button{width:100%;justify-content:center}.myeclass-path-steps{grid-template-columns:1fr}.myeclass-path-steps li{min-height:auto}.myeclass-workspace-stats{grid-template-columns:1fr}}

/* ------------------------------------------------------------
   MyEClass v2.9.276 — Minimal squared visual refinement.
   UI/read-only finish pass: flatter LMS shell, square surfaces and less
   decorative chrome. Internal MathLoop routes/tables/helpers stay unchanged;
   no schema/write/provider/OCR/notification/student.submit/publication change.
   ------------------------------------------------------------ */
:root{
  --radius:0px;
  --radius-sm:0px;
  --shadow-sm:none;
  --shadow:none;
  --focus:0 0 0 2px rgba(37,99,235,.22);
}
body{
  background:var(--bg)!important;
}
html[data-theme="dark"] body{
  background:#090f1d!important;
}
.top,
.myeclass-topbar,
.myeclass-sidebar,
.myeclass-main,
.card,
.tile,
.panel,
.mini-card,
.rubric-builder,
.field,
.flash,
.flash-popup,
.toolbar,
.knowledge-filter-bar,
.knowledge-bulk-bar,
.bulk-authoring,
.activation-checklist section,
.activation-checklist li,
.target-group,
.target-check,
.alignment-target-picker,
.item-diagnostics li,
pre,
#mathCanvas,
.submission-img,
.myeclass-sidebar-heading,
.myeclass-secondary-nav,
.myeclass-sidebar-note,
.myeclass-breadcrumbs,
.myeclass-workspace-hero,
.myeclass-path-steps li,
.myeclass-workspace-stats article{
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.card,
.tile,
.panel,
.mini-card,
.rubric-builder,
.field,
.myeclass-workspace-hero,
.myeclass-path-steps li,
.myeclass-workspace-stats article{
  background:var(--surface)!important;
  border-color:var(--line)!important;
}
.card:hover,
.tile:hover,
.myeclass-nav-link:hover,
.myeclass-top-action:hover,
button:hover,
.button:hover,
.target-check:hover{
  transform:none!important;
  box-shadow:none!important;
}
button,
.button,
input,
select,
textarea,
.tab,
.status-pill,
.badge,
.pill,
.check,
.toolbar label,
.main-nav a,
.theme-toggle,
.who,
.myeclass-nav-toggle,
.myeclass-top-action,
.myeclass-user-pill,
.myeclass-nav-link,
.myeclass-nav-link .shell-icon,
.myeclass-secondary-nav>summary,
.myeclass-secondary-list .myeclass-nav-link,
.myeclass-secondary-list .myeclass-nav-link .shell-icon,
.myeclass-breadcrumbs a,
.myeclass-breadcrumbs span[aria-current="page"],
.myeclass-workspace-meta span,
.myeclass-path-steps li span,
.submission-page h3{
  border-radius:0!important;
  box-shadow:none!important;
}
button,
.button,
.myeclass-top-action,
.myeclass-user-pill,
.myeclass-nav-toggle{
  background:var(--surface)!important;
  border-color:var(--line)!important;
  color:var(--ink)!important;
}
button.primary,
.button.primary,
.primary,
.tab.active,
.toolbar button.active{
  background:var(--accent)!important;
  border-color:var(--accent)!important;
  color:#fff!important;
}
button:not(#penBtn):not(#eraserBtn):not(#undoBtn):not(#clearBtn):not(#addPageBtn):not(#deletePageBtn):not([name="format"]):not(.theme-toggle):not(.tab)::before,
.button::before{
  content:none!important;
}
.myeclass-topbar{
  background:var(--surface)!important;
  border-bottom:1px solid var(--line)!important;
}
.myeclass-sidebar{
  background:var(--surface-2)!important;
  border-right:1px solid var(--line)!important;
}
.myeclass-sidebar-heading,
.myeclass-secondary-nav,
.myeclass-sidebar-note,
.myeclass-breadcrumbs{
  background:transparent!important;
}
.myeclass-sidebar-heading{
  border:0!important;
  padding:4px 8px 8px!important;
}
.myeclass-nav-section h2,
.myeclass-sidebar-heading span,
.myeclass-workspace-eyebrow,
.myeclass-workspace-stats span{
  letter-spacing:.06em!important;
}
.myeclass-nav-list,
.myeclass-secondary-list{
  gap:4px!important;
}
.myeclass-nav-link{
  min-height:40px!important;
  padding:9px 10px!important;
  border-left-width:3px!important;
  background:transparent!important;
}
.myeclass-nav-link .shell-icon{
  width:28px!important;
  height:28px!important;
  background:transparent!important;
}
.myeclass-nav-link:hover,
.myeclass-nav-link.is-in-path{
  background:#fff!important;
  border-color:var(--line)!important;
  border-left-color:rgba(37,99,235,.32)!important;
}
.myeclass-nav-link.is-active{
  background:#eff6ff!important;
  border-color:var(--line)!important;
  border-left-color:var(--myeclass-lms-blue,#2563eb)!important;
  color:#0f3f88!important;
}
.myeclass-nav-link.is-active .shell-icon{
  background:transparent!important;
  color:var(--myeclass-lms-blue,#2563eb)!important;
  border-color:transparent!important;
}
.myeclass-secondary-nav{
  padding:0!important;
  border:0!important;
}
.myeclass-sidebar-note{
  padding:11px 10px!important;
}
.myeclass-breadcrumbs{
  border:0!important;
  padding:0!important;
  margin:0 0 14px!important;
}
.myeclass-breadcrumbs a,
.myeclass-breadcrumbs span[aria-current="page"]{
  min-height:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.myeclass-workspace-hero{
  grid-template-columns:minmax(0,1fr) auto;
  padding:18px 20px!important;
  background:var(--surface)!important;
  border-left-width:4px!important;
  overflow:visible!important;
}
.myeclass-workspace-teacher{
  border-left-color:var(--myeclass-lms-blue,#2563eb)!important;
}
.myeclass-workspace-student{
  border-left-color:var(--accent-2,#14847c)!important;
}
.myeclass-workspace-hero h1{
  font-size:clamp(1.35rem,2.1vw,1.95rem)!important;
}
.myeclass-workspace-hero p{
  max-width:760px!important;
}
.myeclass-workspace-meta span{
  background:var(--surface-2)!important;
  color:var(--muted)!important;
  border-color:var(--line)!important;
}
.myeclass-workspace-map{
  grid-template-columns:minmax(140px,220px) minmax(0,1fr)!important;
}
.myeclass-path-steps{
  gap:8px!important;
}
.myeclass-path-steps li{
  min-height:84px!important;
  padding:11px 12px!important;
  background:var(--surface)!important;
}
.myeclass-path-steps li span{
  width:24px!important;
  height:24px!important;
  background:transparent!important;
}
.myeclass-path-steps li.is-current{
  border-left:4px solid var(--myeclass-lms-blue,#2563eb)!important;
  background:#f8fafc!important;
}
.myeclass-path-steps li.is-current span{
  background:transparent!important;
  border-color:var(--myeclass-lms-blue,#2563eb)!important;
  color:var(--myeclass-lms-blue,#2563eb)!important;
}
.myeclass-path-steps li.is-done{
  border-left:4px solid var(--accent-2,#14847c)!important;
}
.myeclass-path-steps li.is-done span{
  background:transparent!important;
}
.myeclass-workspace-stats{
  gap:8px!important;
}
.myeclass-workspace-stats article{
  padding:12px 14px!important;
  background:var(--surface)!important;
}
.brand-logo-shell,
.brand-logo{
  border-radius:0!important;
}
html[data-theme="dark"] .card,
html[data-theme="dark"] .tile,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .mini-card,
html[data-theme="dark"] .myeclass-workspace-hero,
html[data-theme="dark"] .myeclass-path-steps li,
html[data-theme="dark"] .myeclass-workspace-stats article,
html[data-theme="dark"] .myeclass-sidebar,
html[data-theme="dark"] .myeclass-topbar{
  background:var(--surface)!important;
  border-color:#303030!important;
}
html[data-theme="dark"] .myeclass-nav-link:hover,
html[data-theme="dark"] .myeclass-nav-link.is-in-path,
html[data-theme="dark"] .myeclass-nav-link.is-active,
html[data-theme="dark"] .myeclass-path-steps li.is-current{
  background:#111827!important;
}
@media(max-width:980px){
  .myeclass-sidebar{
    box-shadow:none!important;
    border-right:1px solid var(--line)!important;
  }
  .myeclass-workspace-map{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:620px){
  .card,.tile,.panel,.mini-card,.rubric-builder,.myeclass-workspace-hero{
    border-radius:0!important;
  }
  .myeclass-workspace-hero{
    padding:16px!important;
  }
}


/* ------------------------------------------------------------
   MyEClass v2.9.277 — Calendar / deadline preview shell.
   Read-only LMS deadline surfaces from existing assignments.due_at.
   No event schema, notifications, publication, AI/OCR or submit mutation.
   ------------------------------------------------------------ */
.myeclass-calendar-preview{border-left:4px solid var(--accent);}
.myeclass-calendar-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.myeclass-calendar-head h2{margin:0 0 4px;letter-spacing:-.03em;}
.myeclass-deadline-list{display:grid;gap:8px;}
.myeclass-deadline-list.compact{gap:6px;}
.myeclass-deadline-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:12px 14px;
  border:1px solid var(--line);
  background:var(--surface);
}
.myeclass-deadline-item h3{margin:8px 0 3px;font-size:1rem;letter-spacing:-.02em;}
.myeclass-deadline-item p{margin:0;color:var(--muted);font-weight:650;}
.myeclass-deadline-item small{display:block;margin-top:4px;color:var(--muted);font-weight:650;}
.deadline-badge{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 8px;
  border:1px solid var(--line);
  background:var(--surface-2);
  color:var(--muted);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.02em;
}
.deadline-overdue{border-left:4px solid var(--danger);color:var(--danger);background:rgba(254,242,242,.56);}
.deadline-today{border-left:4px solid var(--warn);color:var(--warn);background:rgba(255,251,235,.72);}
.deadline-week{border-left:4px solid var(--accent);color:var(--accent);background:rgba(239,246,255,.70);}
.deadline-later{border-left:4px solid var(--accent-2);color:var(--accent-2);background:rgba(236,253,245,.62);}
.deadline-no_due{border-left:4px solid var(--line);}
.myeclass-calendar-board{display:grid;gap:12px;}
.myeclass-calendar-group h2{margin-top:0;}
html[data-theme="dark"] .myeclass-deadline-item{background:var(--surface);border-color:#303030;}
html[data-theme="dark"] .deadline-overdue{background:rgba(127,29,29,.18);}
html[data-theme="dark"] .deadline-today{background:rgba(120,53,15,.18);}
html[data-theme="dark"] .deadline-week{background:rgba(30,58,138,.18);}
html[data-theme="dark"] .deadline-later{background:rgba(6,78,59,.18);}
@media(max-width:720px){
  .myeclass-calendar-preview{border-left:4px solid var(--accent);}
.myeclass-calendar-head{display:grid;grid-template-columns:1fr;}
  .myeclass-calendar-head .button{width:100%;justify-content:center;}
  .myeclass-deadline-item{grid-template-columns:1fr;}
  .myeclass-deadline-item .button{width:100%;justify-content:center;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.278 — Today action center / progress command surface.
   Read-only dashboard synthesis from existing deadlines, submissions,
   feedback and next-practice rows. No writes, notifications or AI calls.
   ------------------------------------------------------------ */
.myeclass-action-center{
  border-left:4px solid var(--accent);
  margin-bottom:16px;
}
.myeclass-action-center-student{
  border-left-color:var(--accent-2);
}
.myeclass-action-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
  margin-bottom:14px;
}
.myeclass-action-head h2{margin:0 0 4px;letter-spacing:-.03em;}
.myeclass-action-kicker{
  margin:0 0 5px!important;
  color:var(--accent)!important;
  font-size:.75rem;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.myeclass-action-center-student .myeclass-action-kicker{color:var(--accent-2)!important;}
.myeclass-action-columns{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.myeclass-action-columns>section{
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:12px;
}
.myeclass-action-columns h3{margin:0 0 10px;font-size:1rem;letter-spacing:-.02em;}
.myeclass-action-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:11px 12px;
  border:1px solid var(--line);
  background:var(--surface);
}
.myeclass-action-item+ .myeclass-action-item{margin-top:8px;}
.myeclass-action-item span{
  display:inline-flex;
  min-height:22px;
  align-items:center;
  padding:2px 7px;
  border-left:3px solid var(--accent);
  background:var(--surface-2);
  color:var(--muted);
  font-size:.76rem;
  font-weight:900;
}
.myeclass-action-center-student .myeclass-action-item span{border-left-color:var(--accent-2);}
.myeclass-action-item h3{margin:7px 0 2px;font-size:1rem;}
.myeclass-action-item p{margin:0;color:var(--muted);font-weight:650;line-height:1.45;}
html[data-theme="dark"] .myeclass-action-columns>section,
html[data-theme="dark"] .myeclass-action-item{background:var(--surface);border-color:#303030;}
@media(max-width:820px){
  .myeclass-action-head{grid-template-columns:1fr;}
  .myeclass-action-head .button{width:100%;justify-content:center;}
  .myeclass-action-columns{grid-template-columns:1fr;}
  .myeclass-action-item{grid-template-columns:1fr;}
  .myeclass-action-item .button{width:100%;justify-content:center;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.279 — Assignment workspace completion pass.
   Read-only completion surface for teacher/student assignment pages.
   No schema/write, AI/OCR, notifications, publication or visibility change.
   ------------------------------------------------------------ */
.myeclass-assignment-workspace{
  border-left:4px solid var(--accent);
  margin-bottom:16px;
}
.myeclass-assignment-workspace-student{
  border-left-color:var(--accent-2);
}
.myeclass-assignment-workspace-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
  margin-bottom:14px;
}
.myeclass-assignment-workspace-head h2{margin:0 0 4px;letter-spacing:-.03em;}
.myeclass-assignment-stages{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
.myeclass-assignment-stage{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:10px;
  align-content:space-between;
  min-height:158px;
  padding:12px;
  border:1px solid var(--line);
  background:var(--surface);
}
.myeclass-assignment-stage span{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  width:max-content;
  max-width:100%;
  padding:2px 7px;
  border-left:3px solid var(--line);
  background:var(--surface-2);
  color:var(--muted);
  font-size:.75rem;
  font-weight:950;
  letter-spacing:.02em;
}
.myeclass-assignment-stage h3{margin:8px 0 3px;font-size:1rem;letter-spacing:-.02em;}
.myeclass-assignment-stage p{margin:0;color:var(--muted);font-weight:650;line-height:1.45;}
.myeclass-assignment-stage.is-done span{border-left-color:var(--accent-2);color:var(--accent-2);}
.myeclass-assignment-stage.is-current span{border-left-color:var(--accent);color:var(--accent);}
.myeclass-assignment-stage.is-blocked span{border-left-color:var(--danger);color:var(--danger);}
.myeclass-assignment-stage.is-waiting span{border-left-color:var(--line);}
html[data-theme="dark"] .myeclass-assignment-stage{background:var(--surface);border-color:#303030;}
html[data-theme="dark"] .myeclass-assignment-stage span{background:#111827;}
@media(max-width:980px){
  .myeclass-assignment-stages{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:680px){
  .myeclass-assignment-workspace-head{grid-template-columns:1fr;}
  .myeclass-assignment-workspace-head .button{width:100%;justify-content:center;}
  .myeclass-assignment-stages{grid-template-columns:1fr;}
  .myeclass-assignment-stage{min-height:0;}
  .myeclass-assignment-stage .button{width:100%;justify-content:center;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.280 — Submissions cockpit / teacher triage polish.
   Read-only command surface for teacher corrections. Greek LMS labels,
   no new workflow, schema, AI/provider call, publication or visibility.
   ------------------------------------------------------------ */
.myeclass-submission-cockpit{
  border-left:4px solid var(--accent);
  margin-bottom:16px;
}
.myeclass-cockpit-columns{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.myeclass-cockpit-columns>section{
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:12px;
}
.myeclass-cockpit-columns h3{margin:0 0 5px;font-size:1rem;letter-spacing:-.02em;}
.myeclass-cockpit-link{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  margin-top:8px;
  padding:10px 11px;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--text);
  text-decoration:none;
  font-weight:850;
}
.myeclass-cockpit-link:hover,
.myeclass-cockpit-link.is-active{
  border-left:4px solid var(--accent);
  background:var(--surface-2);
}
.myeclass-cockpit-link span{min-width:0;}
.myeclass-cockpit-link b{
  min-width:34px;
  text-align:center;
  padding:4px 7px;
  border:1px solid var(--line);
  background:var(--surface-2);
  font-size:.92rem;
}
html[data-theme="dark"] .myeclass-cockpit-columns>section,
html[data-theme="dark"] .myeclass-cockpit-link,
html[data-theme="dark"] .myeclass-cockpit-link b{background:var(--surface);border-color:#303030;}
@media(max-width:900px){
  .myeclass-cockpit-columns{grid-template-columns:1fr;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.281 — Student progress overview completion surface.
   Read-only feedback / next-practice overview on the student progress page.
   ------------------------------------------------------------ */
.myeclass-progress-overview{
  border-left:4px solid var(--accent-2);
  margin-bottom:16px;
}
.myeclass-progress-overview .myeclass-action-kicker{color:var(--accent-2)!important;}
.myeclass-progress-overview .myeclass-action-item span{border-left-color:var(--accent-2);}

/* ------------------------------------------------------------
   MyEClass v2.9.282-283 — Loop completion surfaces.
   Read-only teacher loop command surface and student feedback journey.
   Minimal squared UI; no writes, AI/provider calls, notifications or visibility.
   ------------------------------------------------------------ */
.myeclass-loop-command-surface,
.myeclass-feedback-journey{
  border-left:4px solid var(--accent);
  margin-bottom:16px;
}
.myeclass-feedback-journey{
  border-left-color:var(--accent-2);
}
.myeclass-loop-command-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
  margin-bottom:14px;
}
.myeclass-loop-command-head h2{margin:0 0 4px;letter-spacing:-.03em;}
.myeclass-loop-command-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:10px 0 14px;
}
.myeclass-loop-command-stats>div{
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:10px 11px;
}
.myeclass-loop-command-stats b{display:block;font-size:1.35rem;letter-spacing:-.04em;}
.myeclass-loop-command-stats span{display:block;color:var(--muted);font-size:.82rem;font-weight:800;}
.myeclass-loop-command-columns{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.myeclass-loop-command-columns>section{
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:12px;
}
.myeclass-loop-command-columns h3{margin:0 0 5px;font-size:1rem;letter-spacing:-.02em;}
.myeclass-loop-command-item{
  display:block;
  margin-top:8px;
  padding:10px 11px;
  border:1px solid var(--line);
  border-left:4px solid var(--accent);
  background:var(--surface);
  color:var(--text);
  text-decoration:none;
}
.myeclass-loop-command-item:hover{background:var(--surface-2);}
.myeclass-loop-command-item span{
  display:inline-block;
  margin-bottom:6px;
  color:var(--accent);
  font-size:.75rem;
  font-weight:950;
  letter-spacing:.04em;
}
.myeclass-loop-command-item b{display:block;margin-bottom:3px;line-height:1.3;}
.myeclass-loop-command-item small{display:block;color:var(--muted);font-weight:650;line-height:1.4;}
.myeclass-feedback-journey .myeclass-action-kicker{color:var(--accent-2)!important;}
.myeclass-feedback-journey .myeclass-assignment-stage.is-current span,
.myeclass-feedback-journey .myeclass-assignment-stage.is-done span{border-left-color:var(--accent-2);color:var(--accent-2);}
html[data-theme="dark"] .myeclass-loop-command-stats>div,
html[data-theme="dark"] .myeclass-loop-command-columns>section,
html[data-theme="dark"] .myeclass-loop-command-item{background:var(--surface);border-color:#303030;}
.review-flow-list li{border-radius:0;}
.review-flow-list li::before{border-radius:0;}
@media(max-width:980px){
  .myeclass-loop-command-stats{grid-template-columns:repeat(2,minmax(0,1fr));}
  .myeclass-loop-command-columns{grid-template-columns:1fr;}
}
@media(max-width:680px){
  .myeclass-loop-command-head{grid-template-columns:1fr;}
  .myeclass-loop-command-head .button{width:100%;justify-content:center;}
  .myeclass-loop-command-stats{grid-template-columns:1fr;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.284-285 — Loop drilldown and next-practice focus.
   Read-only linking surfaces; squared/minimal, no new mutation routes.
   ------------------------------------------------------------ */
.myeclass-loop-focus-panel,
.myeclass-next-practice-focus{
  border-left:4px solid var(--accent);
  margin:0 0 16px;
}
.myeclass-next-practice-focus{border-left-color:var(--accent-2);}
.myeclass-loop-focus-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
  margin-bottom:14px;
}
.myeclass-loop-focus-head h2{margin:0 0 4px;letter-spacing:-.03em;}
.myeclass-loop-focus-list,
.myeclass-next-practice-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.myeclass-loop-focus-item,
.myeclass-next-practice-item,
.myeclass-loop-empty-state,
.myeclass-loop-row-focus{
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:12px;
}
.myeclass-loop-focus-item,
.myeclass-next-practice-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
}
.myeclass-loop-focus-item h3,
.myeclass-next-practice-item h3{margin:7px 0 4px;line-height:1.25;}
.myeclass-loop-focus-item p,
.myeclass-next-practice-item p{margin:.35rem 0;}
.myeclass-loop-empty-state b,
.myeclass-loop-empty-state span,
.myeclass-loop-row-focus b,
.myeclass-loop-row-focus span{display:block;}
.myeclass-loop-empty-state span,
.myeclass-loop-row-focus span{color:var(--muted);font-weight:650;margin-top:4px;}
.myeclass-loop-row-focus{margin-top:10px;border-left:4px solid var(--accent);}
.myeclass-loop-row-focus .button{margin-top:8px;}
.myeclass-next-practice-row:target{outline:2px solid var(--accent-2);outline-offset:2px;}
html[data-theme="dark"] .myeclass-loop-focus-item,
html[data-theme="dark"] .myeclass-next-practice-item,
html[data-theme="dark"] .myeclass-loop-empty-state,
html[data-theme="dark"] .myeclass-loop-row-focus{background:var(--surface);border-color:#303030;}
@media(max-width:900px){
  .myeclass-loop-focus-list,
  .myeclass-next-practice-list{grid-template-columns:1fr;}
}
@media(max-width:680px){
  .myeclass-loop-focus-head,
  .myeclass-loop-focus-item,
  .myeclass-next-practice-item{grid-template-columns:1fr;}
  .myeclass-loop-focus-head .button,
  .myeclass-loop-focus-item .button,
  .myeclass-next-practice-item .button{width:100%;justify-content:center;}
}
.triage-warn{background:#fffaeb;border-color:#fedf89;color:#b54708;}
.triage-ok{background:#ecfdf3;border-color:#abefc6;color:#067647;}

/* ------------------------------------------------------------
   MyEClass v2.9.286 — Teacher review readiness consolidation.
   Read-only review checklist on the existing teacher.review page.
   ------------------------------------------------------------ */
.myeclass-review-readiness{
  border-left:4px solid var(--accent);
  margin-bottom:16px;
}
.myeclass-review-readiness .myeclass-assignment-stage{
  min-height:142px;
}
#myeclass-review-student-answer:target,
#myeclass-review-ai-draft:target,
#myeclass-review-final-decision:target{
  outline:2px solid var(--accent);
  outline-offset:2px;
}

/* ------------------------------------------------------------
   MyEClass v2.9.287 — Pilot readiness checklist surface.
   Read-only teacher/admin checklist; no workflow activation.
   ------------------------------------------------------------ */
.myeclass-pilot-readiness{
  border-left:4px solid var(--accent-2);
  margin-bottom:16px;
}
.myeclass-pilot-readiness .myeclass-action-kicker{color:var(--accent-2)!important;}
.myeclass-pilot-columns{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.myeclass-pilot-columns>section{
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:12px;
}
.myeclass-pilot-columns h3{margin:0 0 10px;font-size:1rem;letter-spacing:-.02em;}
.myeclass-pilot-list{
  display:grid;
  gap:8px;
  list-style:none;
  margin:0;
  padding:0;
}
.myeclass-pilot-list li{
  border:1px solid var(--line);
  border-left:4px solid var(--accent-2);
  background:var(--surface);
  padding:10px 11px;
}
.myeclass-pilot-list b{display:block;margin-bottom:3px;line-height:1.3;}
.myeclass-pilot-list span{display:block;color:var(--muted);font-weight:650;line-height:1.4;}
html[data-theme="dark"] .myeclass-pilot-columns>section,
html[data-theme="dark"] .myeclass-pilot-list li{background:var(--surface);border-color:#303030;}
@media(max-width:980px){
  .myeclass-pilot-columns{grid-template-columns:1fr;}
}

/* v2.9.288 — MyEClass AI draft feedback boundary preflight */
.myeclass-ai-preflight{
  border-left:4px solid var(--border-strong);
}
.myeclass-ai-preflight.ready{border-left-color:var(--ok);} 
.myeclass-ai-preflight.blocked{border-left-color:var(--warn);} 
.myeclass-ai-preflight-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:14px 0;
}
.myeclass-ai-preflight-summary>div{
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:12px;
}
.myeclass-ai-preflight-summary b{
  display:block;
  font-size:1.05rem;
  line-height:1.2;
  letter-spacing:-.02em;
}
.myeclass-ai-preflight-summary span{
  display:block;
  color:var(--muted);
  font-weight:650;
  margin-top:3px;
}
.myeclass-ai-preflight-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:12px 0;
}
.myeclass-ai-preflight-check{
  border:1px solid var(--line);
  background:var(--surface);
  padding:12px;
}
.myeclass-ai-preflight-check.ok{border-left:3px solid var(--ok);} 
.myeclass-ai-preflight-check.attention{border-left:3px solid var(--warn);} 
.myeclass-ai-preflight-check b{display:block;margin-bottom:4px;}
.myeclass-ai-preflight-check span{display:block;color:var(--muted);font-weight:650;line-height:1.45;}
.myeclass-ai-preflight-safety{
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:10px 12px;
  margin-top:12px;
}
@media (max-width: 720px){
  .myeclass-ai-preflight-summary,
  .myeclass-ai-preflight-grid{grid-template-columns:1fr;}
}

/* v2.9.322-v2.9.324 — MyEClass UX declutter / one-screen pilot pass.
   Presentation-only: no route, DB, AI-provider, OCR/PDF, notification,
   publication, upload/delete, schema, internal rename, or student.submit changes. */
.myeclass-action-hero{display:grid;gap:8px;margin:0 0 14px;padding:16px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,var(--surface),rgba(248,250,252,.70));box-shadow:var(--shadow-sm)}
html[data-theme="dark"] .myeclass-action-hero{background:linear-gradient(180deg,var(--surface),rgba(15,15,15,.78))}
.myeclass-action-hero h2{margin:0;font-size:clamp(22px,2.4vw,32px)}
.myeclass-action-hero p{margin:0;max-width:72ch}.myeclass-action-kicker{font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}
.myeclass-status-strip{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.myeclass-compact-details{margin:10px 0}.myeclass-compact-details>summary{cursor:pointer;font-weight:900;color:var(--ink);letter-spacing:-.02em}.myeclass-compact-details[open]>summary{margin-bottom:8px}.myeclass-table-scroll{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.myeclass-table-scroll table{min-width:760px;margin:0}.myeclass-table-scroll th:first-child,.myeclass-table-scroll td:first-child{padding-left:14px}.myeclass-table-scroll th:last-child,.myeclass-table-scroll td:last-child{padding-right:14px}.myeclass-primary-table tbody tr:hover{background:rgba(79,111,184,.045)}.myeclass-declutter-surface-v2-9-322 .callout,.myeclass-student-receipts-v2-9-323 .callout{margin:10px 0}.myeclass-ai-loop-declutter-v2-9-324{border-style:dashed}.myeclass-ux-declutter-snapshot-v2-9-324{background:var(--surface)}
@media(max-width:720px){.myeclass-action-hero{padding:13px}.myeclass-table-scroll table{min-width:680px}.myeclass-status-strip .status-pill{font-size:.78rem}}

/* v2.9.325-v2.9.327 — accelerated MyEClass calm-mode UX pass.
   Read-only presentation cleanup: no route, DB, provider, OCR/PDF,
   notification, generated exercise, publication, upload/delete, schema,
   internal rename, or student.submit changes. */
.myeclass-calm-queue-v2-9-325,
.myeclass-action-card-grid-v2-9-326{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:12px 0 14px;
}
.myeclass-calm-queue-v2-9-325>section,
.myeclass-action-card-grid-v2-9-326>section{
  border:1px solid var(--line);
  background:var(--surface-2);
  padding:12px;
  border-radius:16px;
}
.myeclass-calm-queue-v2-9-325 b,
.myeclass-action-card-grid-v2-9-326 b{display:block;margin:4px 0 3px;line-height:1.25;letter-spacing:-.02em}
.myeclass-calm-queue-v2-9-325 p,
.myeclass-action-card-grid-v2-9-326 p{margin:.25rem 0 0}
.myeclass-action-card-grid-v2-9-326 .is-collapsed-hint{opacity:.78;border-style:dashed}
.myeclass-calm-mode-v2-9-327{border-left:4px solid var(--accent)}
.myeclass-student-calm-surface-v2-9-326 .myeclass-action-hero{border-left:4px solid var(--accent-2)}
@media(max-width:900px){
  .myeclass-calm-queue-v2-9-325,
  .myeclass-action-card-grid-v2-9-326{grid-template-columns:1fr;}
}

/* v2.9.328-v2.9.330 — MyEClass navigation/flow simplification safe batch.
   Presentation-only next-click cues: no route, DB, AI-provider, OCR/PDF,
   notification, generated exercise, publication, upload/delete, schema,
   internal rename, or student.submit changes. */
.myeclass-next-click-strip-v2-9-328{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:10px 0 12px;
}
.myeclass-next-click-strip-v2-9-328>span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 11px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--surface);
  color:var(--ink);
  font-weight:850;
  font-size:.88rem;
  box-shadow:var(--shadow-sm);
}
.myeclass-navigation-freeze-v2-9-330{border-left:4px solid var(--accent-2)}
.myeclass-flow-surface-v2-9-330 .myeclass-action-hero{margin-bottom:10px}
.myeclass-flow-table-v2-9-330 td{vertical-align:top}
.myeclass-flow-table-v2-9-330 .rowform{gap:8px}
@media(max-width:720px){
  .myeclass-next-click-strip-v2-9-328>span{width:100%;justify-content:flex-start;}
}

/* v2.9.331-v2.9.333 — MyEClass simplified workspace / table declutter safe batch.
   Presentation-only: no route, DB, provider, OCR/PDF, notification,
   generated exercise, publication, upload/delete, schema, internal rename,
   or student.submit changes. */
.myeclass-review-queue-v2-9-331,
.myeclass-workspace-shortcuts-v2-9-332{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:12px 0 14px;
}
.myeclass-review-queue-v2-9-331>article,
.myeclass-workspace-shortcuts-v2-9-332>section{
  border:1px solid var(--line);
  background:var(--surface-2);
  border-radius:16px;
  padding:12px;
}
.myeclass-review-queue-v2-9-331 b,
.myeclass-workspace-shortcuts-v2-9-332 b{display:block;margin:4px 0 4px;line-height:1.25;letter-spacing:-.02em}
.myeclass-review-queue-v2-9-331 p,
.myeclass-workspace-shortcuts-v2-9-332 p{margin:.2rem 0 0}
.myeclass-inline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.muted-card{opacity:.82;border-style:dashed!important}
.myeclass-table-declutter-v2-9-331{border-left:4px solid var(--accent)}
.myeclass-simplified-freeze-v2-9-333{border-left:4px solid var(--ok)}
@media(max-width:1080px){
  .myeclass-review-queue-v2-9-331,
  .myeclass-workspace-shortcuts-v2-9-332{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:720px){
  .myeclass-review-queue-v2-9-331,
  .myeclass-workspace-shortcuts-v2-9-332{grid-template-columns:1fr;}
  .myeclass-inline-actions>.button{width:100%;justify-content:center;}
}

/* v2.9.334-v2.9.336 — MyEClass final pilot UX polish safe batch.
   Presentation-only: no route, DB, provider, OCR/PDF, notification,
   generated exercise, publication, upload/delete, schema, internal rename,
   or student.submit changes. */
.myeclass-focus-tray-v2-9-334,
.myeclass-student-next-step-v2-9-335{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  border:1px solid var(--line);
  border-left:4px solid var(--accent);
  border-radius:18px;
  background:var(--surface);
  padding:14px;
  margin:12px 0 14px;
  box-shadow:var(--shadow-sm);
}
.myeclass-focus-tray-v2-9-334 b,
.myeclass-student-next-step-v2-9-335 b{display:block;margin:4px 0 3px;font-size:1.05rem;line-height:1.25;letter-spacing:-.02em}
.myeclass-focus-tray-v2-9-334 p,
.myeclass-student-next-step-v2-9-335 p{margin:.25rem 0 0}
.myeclass-focus-metrics-v2-9-334{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.myeclass-focus-metrics-v2-9-334 span{display:grid;place-items:center;min-width:84px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);padding:9px 10px;text-align:center}
.myeclass-focus-metrics-v2-9-334 b{margin:0;font-size:1.25rem}.myeclass-focus-metrics-v2-9-334 small{font-weight:820;color:var(--muted);line-height:1.15}.myeclass-student-next-step-v2-9-335{border-left-color:var(--accent-2)}.myeclass-final-ux-freeze-v2-9-336{border-left:4px solid var(--ok);background:var(--surface)}
@media(max-width:820px){
  .myeclass-focus-tray-v2-9-334,
  .myeclass-student-next-step-v2-9-335{grid-template-columns:1fr;}
  .myeclass-focus-metrics-v2-9-334{justify-content:stretch;}
  .myeclass-focus-metrics-v2-9-334 span{flex:1;min-width:0;}
}

/* v2.9.337-339 MyEClass final pilot closeout polish */
.myeclass-pilot-closeout-v2-9-337{border-color:rgba(20,132,124,.22)!important;background:linear-gradient(135deg,rgba(240,253,250,.84),rgba(255,255,255,.94));}
.myeclass-pilot-closeout-v2-9-337 .myeclass-status-strip{margin-top:12px;}
.myeclass-final-boundary-strip-v2-9-338{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);}
.myeclass-final-boundary-strip-v2-9-338 span{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:7px 10px;background:var(--surface);font-size:13px;font-weight:850;color:var(--muted);}
.myeclass-pilot-closeout-freeze-v2-9-339{border-color:rgba(20,132,124,.24)!important;background:linear-gradient(180deg,rgba(240,253,250,.62),rgba(255,255,255,.86));}
html[data-theme="dark"] .myeclass-pilot-closeout-v2-9-337,html[data-theme="dark"] .myeclass-pilot-closeout-freeze-v2-9-339{background:linear-gradient(135deg,rgba(20,83,45,.18),rgba(15,23,42,.74));border-color:rgba(61,220,151,.22)!important;}
html[data-theme="dark"] .myeclass-final-boundary-strip-v2-9-338 span{background:#111827;border-color:#303030;}


/* v2.9.340 — initial solution AI/OCR readiness preflight.
   Teacher-only metadata surface: no OCR/PDF extraction, provider call, draft persistence,
   student visibility, publication, notification, generated exercise, upload/delete,
   schema rewrite, internal rename, or student.submit change. */
.myeclass-initial-ai-ocr-preflight-v2-9-340{
  border-left:4px solid var(--accent-2);
  background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(248,250,252,.9));
  margin:12px 0 14px;
}
.myeclass-initial-ai-ocr-preflight-v2-9-340 h3{margin:.15rem 0 .25rem;letter-spacing:-.02em;}
.myeclass-initial-ai-ocr-metrics-v2-9-340{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0;}
.myeclass-initial-ai-ocr-metrics-v2-9-340 span{display:grid;place-items:center;min-width:78px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:8px 10px;text-align:center;}
.myeclass-initial-ai-ocr-metrics-v2-9-340 b{font-size:1.2rem;line-height:1;}
.myeclass-initial-ai-ocr-metrics-v2-9-340 small{font-weight:820;color:var(--muted);line-height:1.15;}
.myeclass-initial-ai-ocr-rowlist-v2-9-340{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:10px 0;}
.myeclass-initial-ai-ocr-rowlist-v2-9-340 article{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:10px;}
.myeclass-initial-ai-ocr-rowlist-v2-9-340 b,.myeclass-initial-ai-ocr-rowlist-v2-9-340 small,.myeclass-initial-ai-ocr-rowlist-v2-9-340 span{display:block;line-height:1.2;}
.myeclass-initial-ai-ocr-rowlist-v2-9-340 small{color:var(--muted);margin:3px 0 6px;}
.myeclass-initial-ai-ocr-rowlist-v2-9-340 span{font-size:12px;font-weight:800;color:var(--muted);}
html[data-theme="dark"] .myeclass-initial-ai-ocr-preflight-v2-9-340{background:linear-gradient(180deg,rgba(15,23,42,.82),rgba(17,24,39,.72));}
@media(max-width:1080px){.myeclass-initial-ai-ocr-rowlist-v2-9-340{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:720px){.myeclass-initial-ai-ocr-rowlist-v2-9-340{grid-template-columns:1fr;}.myeclass-initial-ai-ocr-metrics-v2-9-340 span{flex:1;min-width:0;}}
.myeclass-initial-ai-ocr-auth-form-v2-9-341{margin-top:8px;gap:6px;align-items:center;}
.myeclass-initial-ai-ocr-auth-form-v2-9-341 small{display:inline-block;font-size:11px;}

/* v2.9.348 — initial-solution AI/OCR decision audit surface.
   Read-only teacher lineage: no OCR/AI call, no database write, no publication,
   notification, generated exercises, recommendation generation, or student.submit change. */
.myeclass-initial-audit-surface-v2-9-348{margin-top:8px;}
.myeclass-initial-audit-chain-v2-9-348{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:9px 0;}
.myeclass-initial-audit-chain-v2-9-348 article{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:8px;}
.myeclass-initial-audit-chain-v2-9-348 b{display:block;margin-bottom:4px;line-height:1.2;}
.myeclass-initial-audit-chain-v2-9-348 p{margin:5px 0;}
@media(max-width:720px){.myeclass-initial-audit-chain-v2-9-348{grid-template-columns:1fr;}}


/* v2.9.353 Open-eClass-like assignments/submissions alignment */
.myeclass-openeclass-assignments-v2-9-353 table td:first-child {
  min-width: 260px;
}
.myeclass-assignment-title-link-v2-9-353 {
  font-weight: 800;
  text-decoration: none;
}
.myeclass-assignment-title-link-v2-9-353:hover {
  text-decoration: underline;
}
.myeclass-section-heading-v2-9-353 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}
.myeclass-openeclass-flow-hint-v2-9-353 {
  border-left: 4px solid var(--accent, #67a7e8);
}
.myeclass-openclass-steps-v2-9-353 {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-top: .75rem;
}
.myeclass-openclass-steps-v2-9-353 span {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .35rem .55rem;
  border: 1px solid rgba(103,167,232,.35);
  border-radius: 999px;
  font-size: .9rem;
}
.myeclass-openclass-steps-v2-9-353 span:not(:last-child)::after {
  content: "→";
  opacity: .7;
  margin-left: .25rem;
}

/* v2.9.354 — Open-eClass-like correction side-panel/modal UX shell.
   UX-only shell on existing teacher review action: no new route, no new write path,
   no AI provider call, no OCR/PDF extraction, no notification, no generated
   exercises, no publication, no student visibility change, no student.submit change. */
.myeclass-correction-launch-card-v2-9-354{border-left:4px solid var(--accent)}
.myeclass-correction-shell-launch-v2-9-354{white-space:nowrap}
.myeclass-correction-panel-v2-9-354{display:none;position:fixed;inset:0;z-index:9999;}
.myeclass-correction-panel-v2-9-354:target{display:block;}
.myeclass-correction-panel-backdrop-v2-9-354{position:absolute;inset:0;background:rgba(0,0,0,.48);backdrop-filter:blur(2px);}
.myeclass-correction-panel-sheet-v2-9-354{position:absolute;top:18px;right:18px;bottom:18px;width:min(980px,calc(100vw - 36px));overflow:auto;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:0 24px 80px rgba(0,0,0,.32);padding:18px;}
.myeclass-correction-panel-header-v2-9-354{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:14px;}
.myeclass-correction-panel-header-v2-9-354 h2{margin:.15rem 0 .15rem;letter-spacing:-.03em;}
.myeclass-correction-panel-grid-v2-9-354{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);gap:14px;align-items:start;}
.myeclass-correction-submission-card-v2-9-354,
.myeclass-correction-decision-card-v2-9-354,
.myeclass-correction-helper-v2-9-354{border:1px solid var(--line);border-radius:18px;background:var(--surface-2);padding:14px;}
.myeclass-correction-submission-card-v2-9-354 h3,
.myeclass-correction-decision-card-v2-9-354 h3{margin:.05rem 0 .8rem;letter-spacing:-.02em;}
.myeclass-correction-facts-v2-9-354{display:grid;grid-template-columns:115px minmax(0,1fr);gap:8px 12px;margin:0 0 14px;}
.myeclass-correction-facts-v2-9-354 dt{font-weight:900;color:var(--muted)}
.myeclass-correction-facts-v2-9-354 dd{margin:0;}
.myeclass-correction-files-v2-9-354 li{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:8px 0;}
.myeclass-correction-files-v2-9-354 li:last-child{border-bottom:0;}
.myeclass-correction-grade-shell-v2-9-354{border:1px dashed var(--line);border-radius:14px;padding:10px;margin:8px 0 12px;background:var(--surface);}
.myeclass-correction-grade-shell-v2-9-354 input[disabled]{opacity:.76;cursor:not-allowed;}
.myeclass-correction-form-v2-9-354{display:grid;gap:10px;margin-top:10px;}
.myeclass-correction-form-v2-9-354 textarea{min-height:110px;}
.myeclass-correction-form-v2-9-354 fieldset{border:1px solid var(--line);border-radius:14px;padding:10px;}
.myeclass-correction-helper-v2-9-354{margin-top:14px;border-left:4px solid var(--accent-2);}
.myeclass-correction-helper-v2-9-354>summary{cursor:pointer;font-weight:900;color:var(--ink);}
html[data-theme="dark"] .myeclass-correction-panel-sheet-v2-9-354{background:#1f2d37;border-color:#46637f;box-shadow:0 24px 80px rgba(0,0,0,.65);}
html[data-theme="dark"] .myeclass-correction-submission-card-v2-9-354,
html[data-theme="dark"] .myeclass-correction-decision-card-v2-9-354,
html[data-theme="dark"] .myeclass-correction-helper-v2-9-354{background:#2b3944;border-color:#46637f;}
@media(max-width:900px){
  .myeclass-correction-panel-sheet-v2-9-354{left:12px;right:12px;top:12px;bottom:12px;width:auto;padding:14px;border-radius:18px;}
  .myeclass-correction-panel-grid-v2-9-354{grid-template-columns:1fr;}
  .myeclass-correction-panel-header-v2-9-354{flex-direction:column;}
  .myeclass-correction-files-v2-9-354 li{align-items:flex-start;flex-direction:column;}
}

/* v2.9.356 — MyEClass course tool menu alignment shell.
   Course-first LMS navigation only: no new route, no DB/write path, no AI/OCR/provider call,
   no notification, no student.submit/publication/student-visibility change. */
.myeclass-course-tools-v2-9-356{margin:0 0 18px;padding:14px 16px;border-left:4px solid var(--accent);}
.myeclass-course-tools-head-v2-9-356{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px;}
.myeclass-course-tools-head-v2-9-356 h2{margin:.1rem 0 .2rem;letter-spacing:-.03em;}
.myeclass-course-tools-caption-v2-9-356{margin:.3rem 0 12px;}
.myeclass-course-tool-grid-v2-9-356{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:9px;}
.myeclass-course-tool-link{display:flex!important;align-items:center;gap:10px;min-height:58px;padding:10px 11px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink)!important;text-decoration:none!important;font-weight:900;box-shadow:var(--shadow-sm);transition:transform .16s ease,border-color .16s ease,background .16s ease;}
.myeclass-course-tool-link .shell-icon{width:30px;height:30px;border-radius:12px;flex:0 0 auto;background:var(--soft);border:1px solid rgba(79,111,184,.16);color:var(--accent);}
.myeclass-course-tool-link .shell-icon svg{width:17px;height:17px;}
.myeclass-course-tool-link span:not(.shell-icon){display:grid;line-height:1.1;}
.myeclass-course-tool-link small{display:block;color:var(--muted);font-size:11px;font-weight:760;line-height:1.18;margin-top:2px;}
.myeclass-course-tool-link:hover{transform:translateY(-1px);border-color:rgba(79,111,184,.34);background:linear-gradient(180deg,var(--surface),var(--soft));}
.myeclass-course-tool-link.is-active{border-color:rgba(79,111,184,.48);background:linear-gradient(135deg,rgba(79,111,184,.16),rgba(20,132,124,.08));}
.myeclass-course-tool-link.is-active .shell-icon{background:var(--accent);border-color:var(--accent);color:#fff;}
.myeclass-course-tool-link.is-disabled{opacity:.68;cursor:not-allowed;background:rgba(148,163,184,.08);box-shadow:none;}
.myeclass-course-tool-link.is-disabled:hover{transform:none;border-color:var(--line);}
.myeclass-course-tools-student .myeclass-course-tool-link.is-disabled{opacity:.58;}
@media(max-width:680px){.myeclass-course-tools-head-v2-9-356{display:grid}.myeclass-course-tool-grid-v2-9-356{grid-template-columns:1fr 1fr}.myeclass-course-tool-link{min-height:54px;padding:9px}.myeclass-course-tool-link small{display:none}}

/* v2.9.357 — Dark eClass-like theme token polish for the course tool shell and LMS sidebar.
   Visual-only CSS layer. It does not alter routes, forms, writes, AI/OCR, notifications or visibility. */
html[data-theme="dark"] .myeclass-course-tools-v2-9-356{background:linear-gradient(180deg,rgba(12,12,12,.98),rgba(17,24,39,.88));border-color:#303030;border-left-color:var(--ml-accent);box-shadow:0 18px 54px rgba(0,0,0,.28);}
html[data-theme="dark"] .myeclass-course-tool-link{background:#0b0b0b;border-color:#303030;color:#f2f2f2!important;box-shadow:none;}
html[data-theme="dark"] .myeclass-course-tool-link .shell-icon{background:#101827;border-color:#263246;color:var(--ml-accent);}
html[data-theme="dark"] .myeclass-course-tool-link:hover{background:#111827;border-color:rgba(49,208,255,.34);}
html[data-theme="dark"] .myeclass-course-tool-link.is-active{background:linear-gradient(135deg,rgba(49,208,255,.18),rgba(37,99,235,.10));border-color:rgba(49,208,255,.50);}
html[data-theme="dark"] .myeclass-course-tool-link.is-active .shell-icon{background:var(--ml-accent);border-color:var(--ml-accent);color:#020617;}
html[data-theme="dark"] .myeclass-course-tool-link.is-disabled{background:rgba(15,23,42,.52);border-color:#252525;color:#a8a8a8!important;}
html[data-theme="dark"] .myeclass-course-tools-head-v2-9-356 .status-pill{border-color:rgba(49,208,255,.22);background:rgba(49,208,255,.10);color:var(--ml-accent);}
html[data-theme="dark"] .myeclass-sidebar-heading span{color:#8ea4bd;}
html[data-theme="dark"] .myeclass-nav-section h2{color:#8ea4bd;}


/* v2.9.358 — Correction panel sections/tabs shell.
   UX-only organization: Υποβολή / Διόρθωση / Βοηθός. No new route, no new write path,
   no AI provider call, no OCR/PDF extraction, no notification, no student.submit/publication/student-visibility change. */
.myeclass-correction-tabs-v2-9-358{position:sticky;top:0;z-index:2;display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px;padding:8px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(8px);}
.myeclass-correction-tabs-v2-9-358 a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink)!important;text-decoration:none!important;font-weight:900;}
.myeclass-correction-tabs-v2-9-358 a:hover{border-color:rgba(79,111,184,.34);background:var(--soft);}
.myeclass-correction-section-v2-9-358{scroll-margin-top:96px;}
.myeclass-correction-section-head-v2-9-358{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;}
.myeclass-correction-section-head-v2-9-358>span,.myeclass-correction-helper-v2-9-359>summary>span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:10px;background:var(--accent);color:#fff;font-weight:950;flex:0 0 auto;}
.myeclass-correction-section-head-v2-9-358 h3{margin:.05rem 0 .1rem!important;}
.myeclass-correction-section-head-v2-9-358 p{margin:0;}
html[data-theme="dark"] .myeclass-correction-tabs-v2-9-358{background:rgba(17,24,39,.92);border-color:#46637f;}
html[data-theme="dark"] .myeclass-correction-tabs-v2-9-358 a{background:#0b0b0b;border-color:#303030;}
html[data-theme="dark"] .myeclass-correction-tabs-v2-9-358 a:hover{background:#111827;border-color:rgba(49,208,255,.34);}

/* v2.9.359 — Correction panel visual declutter polish.
   Visual-only CSS over the existing v2.9.354/v2.9.358 shell. It does not alter forms, actions,
   SQL, provider calls, OCR, notifications, publication, student visibility or internal names. */
.myeclass-correction-panel-sheet-v2-9-359{max-width:1040px;}
.myeclass-correction-panel-grid-v2-9-359{grid-template-columns:minmax(300px,.9fr) minmax(360px,1.1fr);}
.myeclass-correction-panel-grid-v2-9-359 h4{margin:14px 0 8px;font-size:.92rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);}
.myeclass-correction-section-v2-9-358{box-shadow:0 12px 34px rgba(15,23,42,.07);}
.myeclass-correction-helper-v2-9-359{scroll-margin-top:96px;}
.myeclass-correction-helper-v2-9-359>summary{display:flex;align-items:center;gap:10px;list-style:none;}
.myeclass-correction-helper-v2-9-359>summary::-webkit-details-marker{display:none;}
.myeclass-correction-helper-v2-9-359>summary::after{content:'+';margin-left:auto;width:24px;height:24px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);}
.myeclass-correction-helper-v2-9-359[open]>summary::after{content:'−';}
.myeclass-correction-grade-shell-v2-9-354{background:linear-gradient(180deg,var(--surface),var(--surface-2));}
html[data-theme="dark"] .myeclass-correction-section-v2-9-358{box-shadow:none;}
html[data-theme="dark"] .myeclass-correction-section-head-v2-9-358>span,html[data-theme="dark"] .myeclass-correction-helper-v2-9-359>summary>span{background:var(--ml-accent);color:#020617;}
@media(max-width:900px){.myeclass-correction-tabs-v2-9-358{position:static}.myeclass-correction-panel-grid-v2-9-359{grid-template-columns:1fr}.myeclass-correction-tabs-v2-9-358 a{flex:1 1 30%;}}

/* v2.9.360 — MyEClass course landing / lesson surface shell.
   Read-only course home surface for the existing teacher.class_edit page.
   It adds navigation/summary structure only: no new form, no route, no write path, no AI/OCR/provider call. */
.myeclass-course-landing-v2-9-360{margin:0 0 18px;border-left:4px solid var(--accent);}
.myeclass-course-landing-head-v2-9-360{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px;}
.myeclass-course-landing-head-v2-9-360 h2{margin:.08rem 0 .25rem;letter-spacing:-.03em;}
.myeclass-course-landing-grid-v2-9-360{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:14px;align-items:start;}
.myeclass-course-landing-grid-v2-9-360>section,.myeclass-course-landing-grid-v2-9-360>aside{border:1px solid var(--line);border-radius:18px;background:var(--surface-2);padding:14px;}
.myeclass-course-landing-grid-v2-9-360 h3{margin:.05rem 0 .65rem;letter-spacing:-.02em;}
.myeclass-course-landing-list-v2-9-360{display:grid;gap:9px;}
.myeclass-course-landing-list-v2-9-360 article{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:10px 12px;}
.myeclass-course-landing-list-v2-9-360 b{display:block;line-height:1.25;}
.myeclass-course-landing-list-v2-9-360 small{display:block;margin-top:4px;color:var(--muted);font-weight:700;}
.myeclass-course-landing-actions-v2-9-360{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 12px;}
html[data-theme="dark"] .myeclass-course-landing-v2-9-360{background:linear-gradient(180deg,rgba(12,12,12,.98),rgba(17,24,39,.90));border-color:#303030;border-left-color:var(--ml-accent);box-shadow:0 18px 54px rgba(0,0,0,.28);}
html[data-theme="dark"] .myeclass-course-landing-grid-v2-9-360>section,html[data-theme="dark"] .myeclass-course-landing-grid-v2-9-360>aside{background:#111827;border-color:#303030;}
html[data-theme="dark"] .myeclass-course-landing-list-v2-9-360 article{background:#0b0b0b;border-color:#303030;}

/* v2.9.361 — Student course surface shell.
   Student-safe read-only grouping: no raw AI/OCR/MathLoop states, no publication change, no new submit path. */
.myeclass-student-course-surface-v2-9-361{margin:0 0 18px;border-left:4px solid var(--accent-2);}
.myeclass-student-course-grid-v2-9-361{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;}
.myeclass-student-course-grid-v2-9-361 article{border:1px solid var(--line);border-radius:18px;background:var(--surface-2);padding:14px;min-height:130px;}
.myeclass-student-course-grid-v2-9-361 h3{margin:10px 0 5px;letter-spacing:-.02em;}
.myeclass-student-course-grid-v2-9-361 small{display:block;margin-top:10px;color:var(--muted);font-weight:850;}
html[data-theme="dark"] .myeclass-student-course-surface-v2-9-361{background:linear-gradient(180deg,rgba(12,12,12,.98),rgba(6,78,59,.14));border-color:#303030;border-left-color:var(--ml-accent-2);}
html[data-theme="dark"] .myeclass-student-course-grid-v2-9-361 article{background:#111827;border-color:#303030;}
@media(max-width:820px){.myeclass-course-landing-head-v2-9-360{display:grid}.myeclass-course-landing-grid-v2-9-360{grid-template-columns:1fr}.myeclass-course-landing-list-v2-9-360 article{align-items:flex-start;flex-direction:column}.myeclass-course-landing-actions-v2-9-360 .button{flex:1 1 44%;justify-content:center}}

/* v2.9.362 — Assignments page declutter / Open-EClass table polish.
   Read-only UI organization over existing teacher.assignments route. No new route, DB write, AI/OCR/provider call,
   notification, publication/student visibility change, internal rename, or student.submit change. */
.myeclass-assignments-overview-v2-9-362{margin:0 0 14px;border-left:4px solid var(--accent);}
.myeclass-assignments-table-v2-9-362{overflow:hidden;}
.myeclass-table-wrap-v2-9-362{overflow:auto;margin-top:10px;}
.myeclass-assignments-table-v2-9-362 table{min-width:860px;}
.myeclass-assignments-table-v2-9-362 tr.needs-review td{background:linear-gradient(90deg,rgba(245,158,11,.10),transparent 64%);}
.myeclass-review-count-v2-9-362{display:inline-flex;align-items:center;min-height:28px;border:1px solid var(--line);border-radius:999px;padding:4px 9px;background:var(--surface-2);font-weight:850;color:var(--muted);}
.myeclass-assignment-create-shell-v2-9-362{border-left:4px solid var(--line);}
.myeclass-assignment-create-shell-v2-9-362>summary{cursor:pointer;display:flex;align-items:center;gap:8px;flex-wrap:wrap;list-style:none;padding:2px 0;font-size:1.02rem;}
.myeclass-assignment-create-shell-v2-9-362>summary::-webkit-details-marker{display:none;}
.myeclass-assignment-create-shell-v2-9-362>summary::after{content:'+';margin-left:auto;width:28px;height:28px;border:1px solid var(--line);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);font-weight:900;}
.myeclass-assignment-create-shell-v2-9-362[open]>summary::after{content:'−';}
html[data-theme="dark"] .myeclass-assignments-overview-v2-9-362{background:linear-gradient(180deg,rgba(12,12,12,.98),rgba(17,24,39,.90));border-color:#303030;border-left-color:var(--ml-accent);}
html[data-theme="dark"] .myeclass-assignments-table-v2-9-362 tr.needs-review td{background:linear-gradient(90deg,rgba(245,158,11,.14),rgba(17,24,39,.04) 68%);}
html[data-theme="dark"] .myeclass-review-count-v2-9-362{background:#0b0b0b;border-color:#303030;}

/* v2.9.363 — Assignment workspace anchor rail.
   Read-only anchor navigation inside the existing assignment edit page. No forms/actions/routes/writes added. */
.myeclass-assignment-workspace-rail-v2-9-363{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:14px;align-items:center;border-left:4px solid var(--accent-2);}
.myeclass-assignment-workspace-rail-v2-9-363 h2{margin:.05rem 0 .25rem;letter-spacing:-.03em;}
.myeclass-assignment-rail-links-v2-9-363{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;}
.myeclass-assignment-rail-links-v2-9-363 a{display:grid;gap:3px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);padding:10px 11px;text-decoration:none!important;color:var(--ink)!important;}
.myeclass-assignment-rail-links-v2-9-363 a:hover{border-color:rgba(79,111,184,.34);background:var(--soft);transform:translateY(-1px);}
.myeclass-assignment-rail-links-v2-9-363 small{color:var(--muted);font-weight:760;line-height:1.15;}
#myeclass-assignment-submissions,#myeclass-assignment-settings,#myeclass-assignment-classes,#myeclass-assignment-qr,#myeclass-assignment-content,#myeclass-assignment-add-items{scroll-margin-top:86px;}
html[data-theme="dark"] .myeclass-assignment-workspace-rail-v2-9-363{background:linear-gradient(180deg,rgba(12,12,12,.98),rgba(6,78,59,.14));border-color:#303030;border-left-color:var(--ml-accent-2);}
html[data-theme="dark"] .myeclass-assignment-rail-links-v2-9-363 a{background:#0b0b0b;border-color:#303030;}
html[data-theme="dark"] .myeclass-assignment-rail-links-v2-9-363 a:hover{background:#111827;border-color:rgba(49,208,255,.34);}

/* v2.9.364 — Deadline/status chip polish.
   Visual-only deadline/status cues for assignment lists and assignment workspace stats. No scheduling, notifications, writes or calendar events. */
.myeclass-assignment-due-chip-v2-9-364,.myeclass-assignment-status-chip-v2-9-364{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border-radius:999px;padding:5px 9px;font-size:.86rem;font-weight:900;white-space:nowrap;}
.myeclass-assignment-status-chip-v2-9-364{margin-top:6px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);}
.myeclass-assignment-status-chip-v2-9-364.is-published{border-color:rgba(20,132,124,.32);background:rgba(20,132,124,.10);color:var(--ok);}
.myeclass-assignment-status-chip-v2-9-364.is-closed{border-color:rgba(100,116,139,.30);background:rgba(100,116,139,.12);}
.myeclass-assignment-status-chip-v2-9-364.is-draft{border-color:rgba(245,158,11,.30);background:rgba(245,158,11,.10);}
html[data-theme="dark"] .myeclass-assignment-status-chip-v2-9-364{background:#111827;border-color:#303030;}
@media(max-width:900px){.myeclass-assignment-workspace-rail-v2-9-363{grid-template-columns:1fr}.myeclass-assignments-table-v2-9-362 .actions{white-space:normal}.myeclass-assignment-rail-links-v2-9-363{grid-template-columns:1fr 1fr;}}
@media(max-width:620px){.myeclass-assignment-rail-links-v2-9-363{grid-template-columns:1fr}.myeclass-assignment-create-shell-v2-9-362>summary{display:grid}.myeclass-assignment-create-shell-v2-9-362>summary::after{margin-left:0;}}

/* v2.9.365 — Open-eClass-like global declutter pass.
   Visual-only chrome tightening: no routes, forms, DB writes, AI/OCR/provider calls,
   notifications, publication, student.submit changes or internal renames. */
.page-hero{padding:12px 16px!important;margin:0 0 12px!important;border-radius:16px!important;box-shadow:0 8px 24px -22px rgba(36,52,71,.42)!important;grid-template-columns:minmax(0,1fr)!important;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(247,249,254,.88))!important;}
.page-hero::after,.page-hero-meta{display:none!important;}
.page-kicker{font-size:.72rem!important;letter-spacing:.08em!important;}
.page-hero h1{font-size:clamp(1.35rem,2.1vw,2rem)!important;margin:3px 0 0!important;letter-spacing:-.035em!important;}
.card{border-radius:14px!important;padding:14px 16px!important;margin:12px 0!important;box-shadow:0 8px 28px -25px rgba(36,52,71,.38)!important;}
.myeclass-main{max-width:1160px!important;}
.myeclass-sidebar{padding:14px 10px 18px!important;}
.myeclass-sidebar-note{display:none!important;}
.myeclass-nav-section h2{font-size:11px!important;margin-top:0!important;}
.myeclass-nav-link{min-height:40px!important;padding:8px 10px!important;border-radius:11px!important;}
.myeclass-nav-link .shell-icon{width:27px!important;height:27px!important;border-radius:9px!important;}
.myeclass-top-action span:not(.learning-loop-badge),.myeclass-user-pill span:last-child{max-width:160px;overflow:hidden;text-overflow:ellipsis;}
.myeclass-workspace-hero{padding:14px 16px!important;border-radius:16px!important;margin-bottom:12px!important;}
.myeclass-workspace-hero h1{font-size:clamp(1.2rem,2vw,1.65rem)!important;}
.myeclass-workspace-hero p{margin-top:5px!important;line-height:1.4!important;}
.myeclass-workspace-meta{margin-top:8px!important;}
.myeclass-workspace-map{display:none!important;}
.myeclass-workspace-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))!important;gap:8px!important;margin-bottom:12px!important;}
.myeclass-workspace-stats article{padding:10px 12px!important;border-radius:12px!important;}
.myeclass-workspace-stats b{font-size:1.05rem!important;line-height:1.15!important;}
.myeclass-workspace-stats span{font-size:.72rem!important;}
html[data-theme="dark"] .page-hero{background:linear-gradient(180deg,rgba(17,24,39,.90),rgba(10,10,10,.88))!important;border-color:#303030!important;}

/* v2.9.366 — Assignments tool simplification.
   Read-only organization around the existing assignments route and POST form. */
.myeclass-eclass-tool-intro-v2-9-365{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border-left:4px solid var(--accent);margin-bottom:12px!important;}
.myeclass-eclass-tool-intro-v2-9-365 h2{margin:.05rem 0 .2rem;letter-spacing:-.03em;}
.myeclass-eclass-tool-intro-v2-9-365 p{margin:.15rem 0;}
.myeclass-eclass-tool-actions-v2-9-365{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;}
.myeclass-eclass-tool-meta-v2-9-365{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;}
.myeclass-eclass-tool-meta-v2-9-365 span{display:inline-flex;align-items:center;min-height:26px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:.82rem;font-weight:820;}
.myeclass-eclass-section-summary-v2-9-365{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px;}
.myeclass-eclass-section-summary-v2-9-365 h2{margin:.05rem 0 .2rem;}
.myeclass-course-tools-v2-9-356{padding:10px 12px!important;border-radius:14px!important;margin-bottom:12px!important;}
.myeclass-course-tools-caption-v2-9-356{display:none!important;}
.myeclass-course-tools-head-v2-9-356{margin-bottom:7px!important;}
.myeclass-course-tool-grid-v2-9-356{display:flex!important;gap:7px!important;overflow-x:auto;padding-bottom:3px;scrollbar-width:thin;}
.myeclass-course-tool-link{min-width:138px!important;min-height:44px!important;padding:8px 10px!important;border-radius:12px!important;box-shadow:none!important;}
.myeclass-course-tool-link .shell-icon{width:26px!important;height:26px!important;border-radius:9px!important;}
.myeclass-course-tool-link small{display:none!important;}
.myeclass-assignments-overview-v2-9-362 .myeclass-course-landing-head-v2-9-360{display:none!important;}
.myeclass-assignments-table-v2-9-362 .myeclass-section-heading-v2-9-353 h2{font-size:1.15rem;}
.myeclass-assignments-table-v2-9-362 table th{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);}
.myeclass-assignment-create-shell-v2-9-362{border-left-color:var(--accent-2)!important;}

/* v2.9.367 — Assignment detail anti-chaos pass.
   Submissions first; secondary editing/QR/add-item areas are collapsed shells. */
.myeclass-focus-submissions-v2-9-367{border-left:5px solid var(--accent)!important;background:linear-gradient(180deg,var(--surface),var(--surface-2));}
.myeclass-focus-submissions-v2-9-367 .myeclass-openclass-steps-v2-9-353{display:none;}
.myeclass-assignment-workspace-rail-v2-9-363{grid-template-columns:1fr!important;padding:10px 12px!important;}
.myeclass-assignment-workspace-rail-v2-9-363>div:first-child{display:none;}
.myeclass-assignment-rail-links-v2-9-363{display:flex!important;gap:7px!important;overflow-x:auto;padding-bottom:2px;}
.myeclass-assignment-rail-links-v2-9-363 a{min-width:128px!important;border-radius:11px!important;padding:8px 10px!important;}
.myeclass-assignment-rail-links-v2-9-363 small{display:none!important;}
.myeclass-eclass-collapsible-v2-9-367{border-left:4px solid var(--line)!important;}
.myeclass-eclass-collapsible-v2-9-367>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;min-height:34px;}
.myeclass-eclass-collapsible-v2-9-367>summary::-webkit-details-marker{display:none;}
.myeclass-eclass-collapsible-v2-9-367>summary::after{content:'+';margin-left:auto;width:26px;height:26px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);font-weight:900;}
.myeclass-eclass-collapsible-v2-9-367[open]>summary::after{content:'−';}
.myeclass-eclass-collapsible-v2-9-367>summary b{letter-spacing:-.02em;}
.myeclass-eclass-collapsible-v2-9-367>summary .muted{font-size:.88rem;}
#myeclass-assignment-content table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);}
#myeclass-assignment-content table td:nth-child(4){max-width:520px;}
html[data-theme="dark"] .myeclass-focus-submissions-v2-9-367{background:linear-gradient(180deg,rgba(17,24,39,.90),rgba(10,10,10,.86));}

/* v2.9.368 — Student assignment surface declutter.
   Student-facing visual grouping only; no new submit/OCR/AI/publication behavior. */
.myeclass-student-course-surface-v2-9-361 .myeclass-course-landing-head-v2-9-360{margin-bottom:8px!important;}
.myeclass-student-course-grid-v2-9-361 article{min-height:98px!important;border-radius:14px!important;padding:11px 12px!important;}
.myeclass-student-assignment-instructions-v2-9-368{border-left:4px solid var(--accent-2)!important;}
#myeclass-assignment-answers.cards{grid-template-columns:1fr!important;gap:10px!important;}
#myeclass-assignment-answers>.card{border-left:4px solid var(--accent)!important;}
#myeclass-assignment-answers .callout{margin-top:10px;border-radius:12px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--line);}
#myeclass-assignment-answers .callout h3{font-size:1rem;margin:.1rem 0 .35rem;}
#myeclass-assignment-answers .callout .rowform{grid-template-columns:minmax(0,1fr) auto!important;}
@media(max-width:900px){.myeclass-eclass-tool-intro-v2-9-365{grid-template-columns:1fr}.myeclass-eclass-tool-actions-v2-9-365{justify-content:flex-start}.myeclass-course-tool-grid-v2-9-356{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.myeclass-course-tool-link{min-width:0!important}.myeclass-assignment-rail-links-v2-9-363{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.myeclass-assignment-rail-links-v2-9-363 a{min-width:0!important}}
@media(max-width:620px){.myeclass-eclass-tool-actions-v2-9-365 .button{width:100%}.myeclass-course-tool-grid-v2-9-356,.myeclass-assignment-rail-links-v2-9-363{grid-template-columns:1fr!important}#myeclass-assignment-answers .callout .rowform{grid-template-columns:1fr!important}}
#ml-student-upload-options{border-left-color:var(--accent-2)!important;}

/* v2.9.369 — Student submission MVP entry hardening.
   Existing student.submit remains the only typed/canvas submission write. This pass only makes the student assignment entry clearer and collapses optional file/mobile upload affordances. */
.myeclass-student-assignment-card-v2-9-369{border-left:4px solid var(--accent)!important;}
.myeclass-student-assignment-card-head-v2-9-369,.myeclass-student-exercise-head-v2-9-369{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px;}
.myeclass-student-assignment-card-head-v2-9-369 h2,.myeclass-student-exercise-head-v2-9-369 h2{margin:.05rem 0 .25rem;}
.myeclass-student-exercise-card-v2-9-369{border-left:4px solid var(--accent)!important;}
.myeclass-submission-chip-v2-9-369{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;padding:5px 9px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);font-size:.82rem;font-weight:900;white-space:nowrap;}
.myeclass-submission-chip-v2-9-369.is-complete{border-color:rgba(20,132,124,.32);background:rgba(20,132,124,.10);color:var(--ok);}
.myeclass-submission-chip-v2-9-369.is-progress{border-color:rgba(79,111,184,.34);background:rgba(79,111,184,.10);color:var(--accent);}
.myeclass-submission-chip-v2-9-369.is-pending{border-color:rgba(245,158,11,.28);background:rgba(245,158,11,.08);}
.myeclass-student-submit-actions-v2-9-369{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
.myeclass-file-upload-details-v2-9-369{margin-top:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:9px 11px;}
.myeclass-file-upload-details-v2-9-369>summary{cursor:pointer;font-weight:850;color:var(--muted);}
.myeclass-file-upload-details-v2-9-369 .callout{margin-top:9px!important;}
html[data-theme="dark"] .myeclass-submission-chip-v2-9-369,html[data-theme="dark"] .myeclass-file-upload-details-v2-9-369{background:#0b0b0b;border-color:#303030;}

/* v2.9.370 — Student solve page Open-eClass-like simplification.
   Typed answer is the default demo path; canvas remains available as an optional tab. */
.myeclass-student-solve-statement-v2-9-370{border-left:4px solid var(--accent-2)!important;}
.myeclass-student-solve-form-v2-9-370{border-left:4px solid var(--accent)!important;}
.myeclass-solve-tabs-v2-9-370{margin-bottom:12px;}
.myeclass-student-solve-form-v2-9-370 textarea{min-height:230px;font-size:1rem;line-height:1.55;}
.myeclass-student-solve-form-v2-9-370 #canvasPanel[hidden],.myeclass-student-solve-form-v2-9-370 #typedPanel[hidden]{display:none!important;}
.myeclass-student-solve-form-v2-9-370 canvas{border-radius:12px;border:1px solid var(--line);max-width:100%;height:auto;background:#fff;}

/* v2.9.371 — Teacher submissions queue demo wording.
   Visual language now reads as LMS correction queue first; AI remains a later teacher-only helper. */
.triage-card.triage-pending-ai span::after{content:' / προς διόρθωση';font-weight:700;color:var(--muted);}
@media(max-width:760px){.myeclass-student-assignment-card-head-v2-9-369,.myeclass-student-exercise-head-v2-9-369{display:grid}.myeclass-student-submit-actions-v2-9-369 .button{width:100%;}}


/* v2.9.372–v2.9.374 — Teacher correction save MVP.
   Teacher-only draft correction UI; no AI/provider call and no student publication. */
.myeclass-manual-correction-shell-v2-9-374 .review-summary-card{border-left:4px solid var(--accent)!important;}
.myeclass-teacher-correction-draft-v2-9-373{border-left:4px solid var(--accent-2)!important;}
.myeclass-teacher-correction-draft-v2-9-373 form{display:grid;gap:12px;}
.myeclass-teacher-correction-draft-v2-9-373 textarea{line-height:1.55;}
.myeclass-teacher-correction-draft-v2-9-373 .grid2{align-items:end;}
.myeclass-manual-correction-shell-v2-9-374 #myeclass-review-ai-draft.card{border-style:dashed;opacity:.92;}
.myeclass-manual-correction-shell-v2-9-374 #myeclass-review-ai-draft>summary{cursor:pointer;font-weight:900;color:var(--muted);}
html[data-theme="dark"] .myeclass-teacher-correction-draft-v2-9-373{background:linear-gradient(180deg,rgba(17,24,39,.92),rgba(10,10,10,.88));}

/* v2.9.375 — Open-eClass course-context shell restructuring.
   UI/layout-only: global top navigation remains at the top; inside a course/class/assignment, the left sidebar becomes the local course tools menu.
   No route/write/schema/AI/OCR/notification/publication/student visibility change. */
.myeclass-global-topnav-v2-9-375{display:flex;align-items:center;gap:28px;margin-left:22px;white-space:nowrap;}
.myeclass-global-topnav-v2-9-375 a{color:inherit!important;text-decoration:none!important;font-weight:900;font-size:15px;padding:9px 2px;border-bottom:3px solid transparent;opacity:.92;}
.myeclass-global-topnav-v2-9-375 a:hover,.myeclass-global-topnav-v2-9-375 a.is-active{opacity:1;border-bottom-color:var(--accent);}
.myeclass-course-context-shell-v2-9-375{grid-template-columns:290px minmax(0,1fr)!important;background:#eef2f6;}
html[data-theme="dark"] .myeclass-course-context-shell-v2-9-375{background:#111827;}
.myeclass-course-context-shell-v2-9-375 .myeclass-topbar{background:#050505!important;color:#fff!important;border-bottom:1px solid rgba(255,255,255,.08)!important;box-shadow:none!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-brand .brand-copy strong,.myeclass-course-context-shell-v2-9-375 .myeclass-global-topnav-v2-9-375 a{color:#fff!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-top-action,.myeclass-course-context-shell-v2-9-375 .myeclass-user-pill{background:transparent!important;border-color:rgba(255,255,255,.20)!important;color:#fff!important;box-shadow:none!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-main{max-width:1196px!important;padding:24px 28px 42px!important;background:linear-gradient(180deg,#f8fafc,#eef2f6)!important;min-height:calc(100vh - 74px);}
html[data-theme="dark"] .myeclass-course-context-shell-v2-9-375 .myeclass-main{background:linear-gradient(180deg,#1d2c38,#172431)!important;}
.myeclass-course-context-shell-v2-9-375 .page-hero{display:none!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-main>.myeclass-course-tools-v2-9-356{display:none!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-breadcrumbs{margin:0 0 20px!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-breadcrumbs a,.myeclass-course-context-shell-v2-9-375 .myeclass-breadcrumbs span[aria-current="page"]{border-radius:0!important;background:transparent!important;border:0!important;padding:0!important;color:#2563eb!important;}
html[data-theme="dark"] .myeclass-course-context-shell-v2-9-375 .myeclass-breadcrumbs a{color:#6ab6ff!important;}
html[data-theme="dark"] .myeclass-course-context-shell-v2-9-375 .myeclass-breadcrumbs span[aria-current="page"]{color:#f8fafc!important;}

/* v2.9.376 — Course-only tool sidebar, inspired by Open-eClass left course menu.
   This replaces the global dashboard sidebar only when a concrete course/class/assignment context is detected. */
.myeclass-course-sidebar-v2-9-375{background:#1f3140!important;color:#fff!important;border-right:1px solid rgba(140,181,220,.30)!important;padding:24px 16px!important;box-shadow:none!important;}
html[data-theme="dark"] .myeclass-course-sidebar-v2-9-375{background:#1f3140!important;border-right-color:rgba(140,181,220,.28)!important;}
.myeclass-course-role-pill-v2-9-375{height:44px;border-radius:999px;background:#f8fafc;color:#1f3140;display:flex;align-items:center;gap:12px;padding:0 14px;font-weight:950;margin:6px 0 22px;box-shadow:0 8px 24px rgba(0,0,0,.16);}
.myeclass-course-role-pill-v2-9-375 .shell-icon{width:28px;height:28px;border-radius:999px;background:#e2e8f0;color:#1f3140;}
.myeclass-course-sidebar-title-v2-9-375{border-bottom:1px solid rgba(255,255,255,.24);padding:0 4px 18px;margin-bottom:18px;display:grid;gap:5px;}
.myeclass-course-sidebar-title-v2-9-375 span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#b9d1e9;font-weight:950;}
.myeclass-course-sidebar-title-v2-9-375 b{font-size:18px;line-height:1.18;color:#fff;letter-spacing:-.03em;}
.myeclass-course-sidebar-title-v2-9-375 small{color:#dbeafe;font-weight:780;line-height:1.25;}
.myeclass-course-sidebar-nav-v2-9-376{display:grid;gap:26px;}
.myeclass-course-sidebar-nav-v2-9-376 section{display:grid;gap:4px;}
.myeclass-course-sidebar-nav-v2-9-376 h2{margin:0 0 9px;font-size:14px;color:#fff;font-weight:950;letter-spacing:-.01em;display:flex;align-items:center;gap:6px;}
.myeclass-course-sidebar-nav-v2-9-376 h2::before{content:'⌄';font-size:14px;color:#fff;}
.myeclass-course-sidebar-link-v2-9-376{min-height:36px;border-radius:8px;display:flex!important;align-items:center;gap:12px;color:#fff!important;text-decoration:none!important;font-weight:850;padding:7px 9px;border:1px solid transparent;background:transparent;}
.myeclass-course-sidebar-link-v2-9-376 .shell-icon{width:22px!important;height:22px!important;border-radius:0!important;background:transparent!important;border:0!important;color:#fff!important;}
.myeclass-course-sidebar-link-v2-9-376 .shell-icon svg{width:18px;height:18px;stroke-width:2.2;}
.myeclass-course-sidebar-link-v2-9-376:hover{background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.12)!important;transform:none!important;}
.myeclass-course-sidebar-link-v2-9-376.is-active{background:#6ab6ff!important;color:#092033!important;border-color:#6ab6ff!important;box-shadow:none!important;}
.myeclass-course-sidebar-link-v2-9-376.is-active .shell-icon{color:#092033!important;}
.myeclass-course-sidebar-link-v2-9-376.is-disabled{opacity:.74;cursor:not-allowed;}
.myeclass-course-sidebar-link-v2-9-376.is-disabled:hover{background:transparent!important;border-color:transparent!important;}

/* v2.9.377 — Assignments tool in true course context.
   The assignments list keeps the LMS table surface and stops showing the horizontal course tool grid in course pages. */
.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365{background:#fff!important;border-left:0!important;border-top:4px solid #6ab6ff!important;border-radius:10px!important;box-shadow:0 1px 0 rgba(15,23,42,.08)!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365 h2{font-size:1.45rem!important;}
.myeclass-course-context-shell-v2-9-375 .card{background:#fff!important;border-radius:8px!important;border-color:#d7e1ec!important;box-shadow:0 1px 0 rgba(15,23,42,.08)!important;}
.myeclass-course-context-shell-v2-9-375 table{border-collapse:collapse!important;background:#fff!important;}
.myeclass-course-context-shell-v2-9-375 table th{background:#edf2f7!important;color:#334155!important;font-weight:900!important;border-bottom:1px solid #d7e1ec!important;}
.myeclass-course-context-shell-v2-9-375 table td{border-bottom:1px solid #e5edf5!important;}
html[data-theme="dark"] .myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365,html[data-theme="dark"] .myeclass-course-context-shell-v2-9-375 .card{background:#203241!important;border-color:#39556a!important;color:#f8fafc!important;}
html[data-theme="dark"] .myeclass-course-context-shell-v2-9-375 table,html[data-theme="dark"] .myeclass-course-context-shell-v2-9-375 table td{background:#203241!important;border-color:#39556a!important;color:#f8fafc!important;}
html[data-theme="dark"] .myeclass-course-context-shell-v2-9-375 table th{background:#2a3f51!important;color:#e0f2fe!important;border-color:#39556a!important;}

/* v2.9.378 — Assignment detail / correction inherits course context.
   The correction workspace remains manual-first/teacher-controlled, just visually nested under the current course. */
.myeclass-course-context-shell-v2-9-375 .review-shell{margin-top:0;}
.myeclass-course-context-shell-v2-9-375 .review-summary-card{border-top:4px solid #6ab6ff!important;}
.myeclass-course-context-shell-v2-9-375 .review-main-grid{gap:14px!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-assignment-workspace-rail-v2-9-363{display:none!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-workspace-hero{background:#fff!important;border-radius:10px!important;border:1px solid #d7e1ec!important;box-shadow:0 1px 0 rgba(15,23,42,.08)!important;}
html[data-theme="dark"] .myeclass-course-context-shell-v2-9-375 .myeclass-workspace-hero{background:#203241!important;border-color:#39556a!important;color:#f8fafc!important;}
@media(max-width:980px){
  .myeclass-global-topnav-v2-9-375{display:none;}
  .myeclass-course-context-shell-v2-9-375{display:block!important;}
  .myeclass-course-context-shell-v2-9-375 .myeclass-main{min-height:auto;padding:16px!important;}
  .myeclass-course-sidebar-v2-9-375{width:min(88vw,330px)!important;padding-top:86px!important;}
}

/* v2.9.379–v2.9.381 — Teacher-approved publication MVP.
   Visual-only support for the new explicit publication boundary: no AI/OCR/provider call and no notification trigger. */
.review-publication-card{border-left:5px solid var(--ok)!important;background:linear-gradient(180deg,var(--surface),var(--surface-2));}
.review-publication-card h2{margin-top:0!important;}
.review-publication-card form{display:grid;gap:8px;margin-top:10px;}
.myeclass-feedback-preview-v2-9-380{border:1px solid var(--line);border-radius:14px;background:var(--surface-2);padding:10px 12px;margin:10px 0;}
.myeclass-feedback-preview-v2-9-380 p{margin:.25rem 0;}
html[data-theme="dark"] .review-publication-card{background:linear-gradient(180deg,rgba(17,24,39,.90),rgba(10,10,10,.86));border-color:rgba(34,197,94,.44)!important;}

/* v2.9.382-386 teacher-only AI correction helper MVP */
.myeclass-ai-correction-helper-shell-v2-9-386 .review-summary-card{margin-bottom:14px;}
.myeclass-ai-helper-card-v2-9-386{border-style:solid!important;}
.myeclass-ai-helper-card-v2-9-386>summary{font-weight:900;color:var(--ink);}
.myeclass-ai-helper-card-v2-9-386 .review-kpis-inline{margin:12px 0;}
.myeclass-ai-draft-box{border:1px solid var(--line);border-radius:10px;background:rgba(248,250,252,.82);padding:12px;margin:8px 0 14px;}
.myeclass-ai-draft-box p:first-child{margin-top:0;}
.myeclass-ai-draft-box p:last-child{margin-bottom:0;}
.muted-box{background:rgba(241,245,249,.72);}
.compact-list{margin-top:6px;}
.compact-list li{margin:4px 0;}
.ai-helper-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);}
.ai-helper-actions form{margin:0;}
.ai-helper-actions .field-help{max-width:420px;margin-bottom:0;}
html[data-theme="dark"] .myeclass-ai-draft-box{background:rgba(15,23,42,.62);border-color:#303a4d;}
html[data-theme="dark"] .muted-box{background:rgba(17,24,39,.72);}

/* v2.9.387 — Demo flow strip, read-only visual hardening.
   Shows the pilot path without creating routes, writes, AI/OCR, notifications or publication changes. */
.myeclass-demo-flow-strip-v2-9-387{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;margin:0 0 14px;padding:10px 12px;border:1px solid #3b5366;border-radius:8px;background:#243746;color:#f8fafc;box-shadow:0 1px 0 rgba(0,0,0,.18);}
.myeclass-demo-flow-strip-v2-9-387>strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;color:#b9d1e9;white-space:nowrap;}
.myeclass-demo-flow-strip-v2-9-387 ol{display:flex;align-items:stretch;gap:6px;list-style:none;margin:0;padding:0;overflow:auto;scrollbar-width:thin;}
.myeclass-demo-flow-strip-v2-9-387 li{min-width:132px;display:grid;grid-template-columns:24px minmax(0,1fr);grid-template-areas:"num title" "num small";gap:0 7px;align-content:center;padding:7px 8px;border:1px solid rgba(185,209,233,.18);border-radius:7px;background:rgba(15,23,42,.18);color:#e2e8f0;}
.myeclass-demo-flow-strip-v2-9-387 li span{grid-area:num;width:24px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#33495b;color:#dbeafe;font-weight:950;font-size:.78rem;}
.myeclass-demo-flow-strip-v2-9-387 li b{grid-area:title;font-size:.86rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.myeclass-demo-flow-strip-v2-9-387 li small{grid-area:small;color:#b9d1e9;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.myeclass-demo-flow-strip-v2-9-387 li.is-done span{background:#476274;color:#fff;}
.myeclass-demo-flow-strip-v2-9-387 li.is-active{background:#6ab6ff;color:#092033;border-color:#6ab6ff;}
.myeclass-demo-flow-strip-v2-9-387 li.is-active span{background:#092033;color:#fff;}
.myeclass-demo-flow-strip-v2-9-387 li.is-active small{color:#1f3140;}

/* v2.9.388 — Stronger Open-eClass-like course visual parity pass.
   Course context deliberately reads as dark LMS course area: black topbar, local dark course sidebar, tool surface on the right. */
.myeclass-course-context-shell-v2-9-375{background:#1d2c38!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-main{max-width:1196px!important;background:#1d2c38!important;color:#f8fafc!important;padding:26px 30px 46px!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-breadcrumbs{margin-bottom:18px!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-breadcrumbs li{color:#b9d1e9!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-breadcrumbs a{color:#6ab6ff!important;font-weight:900!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-breadcrumbs span[aria-current="page"]{color:#fff!important;font-weight:900!important;}
.myeclass-course-context-shell-v2-9-375 .card,.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365,.myeclass-course-context-shell-v2-9-375 .myeclass-workspace-hero{background:#243746!important;border:1px solid #3b5366!important;border-radius:7px!important;box-shadow:0 1px 0 rgba(0,0,0,.20)!important;color:#f8fafc!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365{border-top:0!important;border-left:4px solid #6ab6ff!important;margin-bottom:14px!important;}
.myeclass-course-context-shell-v2-9-375 h1,.myeclass-course-context-shell-v2-9-375 h2,.myeclass-course-context-shell-v2-9-375 h3,.myeclass-course-context-shell-v2-9-375 h4{color:#fff!important;}
.myeclass-course-context-shell-v2-9-375 .muted,.myeclass-course-context-shell-v2-9-375 .field-help,.myeclass-course-context-shell-v2-9-375 small{color:#cbd5e1!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-action-kicker{color:#9bd3ff!important;}
.myeclass-course-context-shell-v2-9-375 .status-pill,.myeclass-course-context-shell-v2-9-375 .badge{background:#1f3140!important;border:1px solid #48677f!important;color:#e0f2fe!important;}
.myeclass-course-context-shell-v2-9-375 .button,.myeclass-course-context-shell-v2-9-375 button{border-radius:5px!important;box-shadow:none!important;}
.myeclass-course-context-shell-v2-9-375 .button.primary,.myeclass-course-context-shell-v2-9-375 button.primary{background:#6ab6ff!important;border-color:#6ab6ff!important;color:#092033!important;font-weight:950!important;}
.myeclass-course-context-shell-v2-9-375 table{background:#243746!important;border:1px solid #3b5366!important;border-collapse:collapse!important;}
.myeclass-course-context-shell-v2-9-375 table th{background:#1f3140!important;color:#e0f2fe!important;border-bottom:1px solid #48677f!important;font-weight:950!important;}
.myeclass-course-context-shell-v2-9-375 table td{background:#243746!important;color:#f8fafc!important;border-bottom:1px solid #3b5366!important;}
.myeclass-course-context-shell-v2-9-375 table tr.needs-review td{background:#2b4051!important;}
.myeclass-course-context-shell-v2-9-375 input,.myeclass-course-context-shell-v2-9-375 textarea,.myeclass-course-context-shell-v2-9-375 select{background:#1f3140!important;border-color:#48677f!important;color:#fff!important;}
.myeclass-course-context-shell-v2-9-375 pre{background:#1f3140!important;border:1px solid #48677f!important;color:#f8fafc!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-workspace-stats{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))!important;gap:7px!important;margin:0 0 12px!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-workspace-stats article{padding:8px 10px!important;border-radius:6px!important;background:#203241!important;border-color:#3b5366!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-workspace-stats b{font-size:.98rem!important;color:#fff!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-assignments-overview-v2-9-362 .myeclass-course-landing-head-v2-9-360{display:none!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-section-heading-v2-9-353{margin-bottom:8px!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-table-wrap-v2-9-362{border-radius:6px;overflow:hidden;border:1px solid #3b5366;}
.myeclass-course-context-shell-v2-9-375 .cards{gap:12px!important;}

/* v2.9.389 — Correction demo hardening.
   Keep correction manual-first, AI collapsed, publication explicit and below teacher draft. */
.myeclass-demo-review-hardening-v2-9-389 .review-summary-card{border-left:4px solid #6ab6ff!important;}
.myeclass-demo-review-hardening-v2-9-389 .review-main-grid{grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr)!important;gap:14px!important;align-items:start;}
.myeclass-demo-review-hardening-v2-9-389 #myeclass-review-student-answer h2,.myeclass-demo-review-hardening-v2-9-389 #myeclass-review-final-decision h2{font-size:1.18rem!important;margin-top:0!important;}
.myeclass-ai-helper-card-v2-9-386{margin-top:12px!important;border-left:4px solid #6ab6ff!important;}
.myeclass-ai-helper-card-v2-9-386>summary{display:flex!important;align-items:center!important;gap:10px!important;list-style:none!important;cursor:pointer!important;}
.myeclass-ai-helper-card-v2-9-386>summary::-webkit-details-marker{display:none;}
.myeclass-ai-helper-card-v2-9-386>summary::after{content:'+';margin-left:auto;width:26px;height:26px;border:1px solid #48677f;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;color:#dbeafe;font-weight:950;}
.myeclass-ai-helper-card-v2-9-386[open]>summary::after{content:'−';}
.review-publication-card{margin-top:12px!important;border-left:4px solid #22c55e!important;}
.review-publication-card .myeclass-feedback-preview-v2-9-380{background:#1f3140!important;border-color:#48677f!important;}
@media(max-width:900px){.myeclass-demo-flow-strip-v2-9-387{grid-template-columns:1fr}.myeclass-demo-review-hardening-v2-9-389 .review-main-grid{grid-template-columns:1fr!important}.myeclass-course-context-shell-v2-9-375 .myeclass-main{padding:16px!important}.myeclass-demo-flow-strip-v2-9-387 li{min-width:150px}}

/* v2.9.390-v2.9.392 — Open-eClass anti-chaos rescue pass.
   Visual/read-only cleanup after screenshot QA: remove duplicate tool strips, metrics walls and cockpit-like rails. */
.myeclass-demo-flow-strip-v2-9-387{display:none!important;}
.myeclass-course-tools-v2-9-356{display:none!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-main{max-width:1120px!important;padding:20px 26px 40px!important;}
.myeclass-course-context-shell-v2-9-375 .card,
.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365,
.myeclass-course-context-shell-v2-9-375 .myeclass-workspace-hero{margin:10px 0!important;padding:14px 16px!important;border-radius:5px!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;border-left:0!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-copy-v2-9-365 h2{font-size:1.35rem!important;margin:.15rem 0!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-copy-v2-9-365 p{margin:.18rem 0!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-meta-v2-9-365{display:none!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-actions-v2-9-365{flex:0 0 auto!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-section-heading-v2-9-353{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding-bottom:8px!important;border-bottom:1px solid #3b5366!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-section-heading-v2-9-353 h2{font-size:1.15rem!important;margin:0!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-section-heading-v2-9-353 p{margin:.2rem 0 0!important;}
.myeclass-assignments-table-v2-9-390{padding:0!important;overflow:hidden!important;}
.myeclass-assignments-table-v2-9-390 .myeclass-section-heading-v2-9-353{padding:12px 14px!important;margin:0!important;}
.myeclass-simple-assignments-table-v2-9-390 th,
.myeclass-simple-assignments-table-v2-9-390 td{padding:11px 12px!important;}
.myeclass-simple-assignments-table-v2-9-390 th{font-size:.78rem!important;text-transform:uppercase!important;letter-spacing:.04em!important;}
.myeclass-simple-assignments-table-v2-9-390 .actions{display:flex!important;gap:8px!important;align-items:center!important;white-space:nowrap!important;}
.myeclass-simple-assignments-table-v2-9-390 .button{padding:7px 10px!important;min-height:34px!important;font-size:.88rem!important;}
.myeclass-submission-count-v2-9-390{display:inline-flex;align-items:center;min-height:28px;padding:4px 8px;border:1px solid #48677f;border-radius:999px;background:#1f3140;color:#f8fafc;font-weight:800;}
.myeclass-assignment-title-link-v2-9-353{font-weight:850!important;color:#3fd0ff!important;}
.myeclass-course-context-shell-v2-9-375 .status-pill,
.myeclass-course-context-shell-v2-9-375 .badge{font-size:.78rem!important;padding:2px 7px!important;font-weight:760!important;}
.myeclass-course-context-shell-v2-9-375 h1{font-size:1.8rem!important;}
.myeclass-course-context-shell-v2-9-375 h2{font-size:1.25rem!important;}
.myeclass-course-context-shell-v2-9-375 h3{font-size:1.05rem!important;}
.myeclass-course-context-shell-v2-9-375 .button,
.myeclass-course-context-shell-v2-9-375 button{font-weight:800!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-workspace-stats{display:none!important;}
.myeclass-assignment-workspace-rail-v2-9-363{display:none!important;}
@media(max-width:900px){.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365{display:block!important}.myeclass-simple-assignments-table-v2-9-390 .actions{display:grid!important}.myeclass-course-context-shell-v2-9-375 .myeclass-main{padding:14px!important}}

/* v2.9.393-v2.9.396 — Open-EClass architecture reset.
   Presentation-only pass: course-local navigation, simple assignments table, tabbed assignment detail, quiet correction surface. */
.myeclass-course-context-body-v2-9-375 .myeclass-topbar{background:#050505!important;border-bottom:1px solid rgba(255,255,255,.08)!important;}
.myeclass-course-context-shell-v2-9-375{grid-template-columns:232px minmax(0,1fr)!important;background:#1d2c38!important;}
.myeclass-course-sidebar-reset-v2-9-393{background:#182733!important;border-right:1px solid #344b5d!important;box-shadow:none!important;}
.myeclass-course-sidebar-reset-v2-9-393 .myeclass-sidebar-inner{padding:16px 10px!important;gap:12px!important;}
.myeclass-course-sidebar-reset-v2-9-393 .myeclass-course-role-pill-v2-9-375{margin:0 6px 12px!important;background:#eef6ff!important;color:#183044!important;border-radius:999px!important;justify-content:center!important;font-weight:950!important;}
.myeclass-course-sidebar-reset-v2-9-393 .myeclass-course-sidebar-title-v2-9-375{margin:0 6px 12px!important;padding:0 0 12px!important;border-bottom:1px solid #3b5366!important;color:#eaf4ff!important;}
.myeclass-course-sidebar-reset-v2-9-393 .myeclass-course-sidebar-title-v2-9-375 span{display:block!important;font-size:.72rem!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:#a9c4d8!important;font-weight:900!important;}
.myeclass-course-sidebar-reset-v2-9-393 .myeclass-course-sidebar-title-v2-9-375 b{display:block!important;margin-top:4px!important;color:#fff!important;font-size:.98rem!important;line-height:1.25!important;}
.myeclass-course-sidebar-reset-v2-9-393 .myeclass-course-sidebar-title-v2-9-375 small{display:block!important;margin-top:4px!important;color:#b9d1e9!important;font-size:.78rem!important;}
.myeclass-course-local-menu-v2-9-393 section{margin:0!important;padding:0!important;border:0!important;}
.myeclass-course-local-menu-v2-9-393 h2{margin:0 6px 7px!important;color:#cfe6fa!important;font-size:.76rem!important;text-transform:uppercase!important;letter-spacing:.05em!important;font-weight:950!important;}
.myeclass-course-local-menu-v2-9-393 a,
.myeclass-course-local-menu-v2-9-393 span{min-height:34px!important;margin:1px 0!important;padding:7px 10px!important;border-radius:4px!important;background:transparent!important;border:0!important;color:#dbeafe!important;font-size:.9rem!important;font-weight:760!important;box-shadow:none!important;}
.myeclass-course-local-menu-v2-9-393 a svg,
.myeclass-course-local-menu-v2-9-393 span svg{width:15px!important;height:15px!important;color:#a9c4d8!important;opacity:.95!important;}
.myeclass-course-local-menu-v2-9-393 a:hover{background:#223746!important;color:#fff!important;}
.myeclass-course-local-menu-v2-9-393 .active,
.myeclass-course-local-menu-v2-9-393 a[aria-current="page"]{background:#5aa7f2!important;color:#071827!important;font-weight:950!important;}
.myeclass-course-local-menu-v2-9-393 .active svg,
.myeclass-course-local-menu-v2-9-393 a[aria-current="page"] svg{color:#071827!important;}
.myeclass-course-local-menu-v2-9-393 span[aria-disabled="true"],
.myeclass-course-local-menu-v2-9-393 .disabled{color:#7f98aa!important;opacity:.78!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-main{max-width:1160px!important;padding:18px 26px 38px!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-breadcrumbs{margin:4px 0 14px!important;}
.myeclass-course-context-shell-v2-9-375 .page-hero,
.myeclass-course-context-shell-v2-9-375 .myeclass-workspace-hero,
.myeclass-course-context-shell-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365,
.myeclass-course-context-shell-v2-9-375 .myeclass-workspace-map,
.myeclass-course-context-shell-v2-9-375 .myeclass-assignment-workspace-rail-v2-9-363{display:none!important;}
.myeclass-eclass-page-title-v2-9-394{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important;margin:0!important;padding:0 0 12px!important;border-bottom:1px solid #3b5366!important;}
.myeclass-eclass-page-title-v2-9-394 h2{margin:0!important;font-size:1.42rem!important;line-height:1.25!important;}
.myeclass-eclass-page-title-v2-9-394 p{margin:.22rem 0 0!important;}
.myeclass-assignments-reset-v2-9-394{padding:14px 16px 16px!important;overflow:hidden!important;}
.myeclass-assignments-reset-v2-9-394 .myeclass-table-wrap-v2-9-362{margin-top:12px!important;border-radius:4px!important;}
.myeclass-assignments-reset-v2-9-394 table{width:100%!important;}
.myeclass-assignments-reset-v2-9-394 th{font-size:.76rem!important;text-transform:none!important;letter-spacing:0!important;}
.myeclass-assignments-reset-v2-9-394 td{vertical-align:middle!important;}
.myeclass-assignments-reset-v2-9-394 .actions{display:flex!important;gap:7px!important;justify-content:flex-start!important;align-items:center!important;}
.myeclass-assignments-reset-v2-9-394 .actions .button{padding:6px 9px!important;min-height:31px!important;}
.myeclass-assignment-detail-reset-v2-9-395{padding:14px 16px!important;}
.myeclass-assignment-tabs-v2-9-395{display:flex!important;gap:0!important;margin:12px 0 0!important;border-bottom:1px solid #48677f!important;overflow-x:auto!important;}
.myeclass-assignment-tabs-v2-9-395 a{display:inline-flex!important;align-items:center!important;padding:9px 13px!important;border:1px solid #48677f!important;border-bottom:0!important;background:#1f3140!important;color:#dbeafe!important;text-decoration:none!important;font-weight:850!important;border-radius:5px 5px 0 0!important;margin-right:4px!important;}
.myeclass-assignment-tabs-v2-9-395 a.is-active{background:#5aa7f2!important;color:#071827!important;border-color:#5aa7f2!important;}
.myeclass-assignment-section-reset-v2-9-395{padding:0!important;overflow:hidden!important;}
.myeclass-assignment-section-reset-v2-9-395>summary{display:flex!important;align-items:center!important;gap:8px!important;list-style:none!important;cursor:pointer!important;padding:12px 14px!important;border-bottom:1px solid #3b5366!important;background:#223746!important;color:#fff!important;}
.myeclass-assignment-section-reset-v2-9-395>summary::-webkit-details-marker{display:none!important;}
.myeclass-assignment-section-reset-v2-9-395>summary::after{content:'+';margin-left:auto;width:24px;height:24px;border:1px solid #48677f;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-weight:950;color:#e0f2fe;}
.myeclass-assignment-section-reset-v2-9-395[open]>summary::after{content:'−';}
.myeclass-assignment-section-reset-v2-9-395>*:not(summary){margin:14px!important;}
#myeclass-assignment-submissions.myeclass-assignment-section-reset-v2-9-395{padding:14px 16px!important;}
#myeclass-assignment-submissions.myeclass-assignment-section-reset-v2-9-395 .myeclass-eclass-page-title-v2-9-394{margin-bottom:12px!important;}
.myeclass-teacher-submissions-table-reset-v2-9-396{padding:14px 16px!important;overflow:hidden!important;}
.myeclass-teacher-submissions-table-reset-v2-9-396 .myeclass-table-scroll{margin-top:12px!important;border:1px solid #3b5366!important;border-radius:4px!important;overflow:auto!important;}
.myeclass-teacher-submissions-table-reset-v2-9-396 table{min-width:720px!important;margin:0!important;}
.myeclass-teacher-submissions-table-reset-v2-9-396 th{font-size:.76rem!important;text-transform:none!important;letter-spacing:0!important;}
.myeclass-teacher-submissions-table-reset-v2-9-396 td{vertical-align:top!important;}
.myeclass-teacher-submissions-table-reset-v2-9-396 .actions{display:flex!important;gap:7px!important;align-items:center!important;white-space:nowrap!important;}
.myeclass-correction-page-reset-v2-9-396{display:block!important;}
.myeclass-correction-page-title-v2-9-396{margin-bottom:12px!important;}
.myeclass-correction-two-column-v2-9-396,
.myeclass-correction-page-reset-v2-9-396 .review-main-grid{display:grid!important;grid-template-columns:minmax(0,1.04fr) minmax(340px,.96fr)!important;gap:14px!important;align-items:start!important;}
.myeclass-correction-page-reset-v2-9-396 .review-summary-card,
.myeclass-correction-page-reset-v2-9-396 .myeclass-review-readiness-v2-9-386,
.myeclass-correction-page-reset-v2-9-396 .myeclass-action-hero,
.myeclass-correction-page-reset-v2-9-396 .myeclass-next-click-strip-v2-9-328{display:none!important;}
.myeclass-correction-page-reset-v2-9-396 #myeclass-review-student-answer,
.myeclass-correction-page-reset-v2-9-396 #myeclass-review-final-decision{margin-top:0!important;}
.myeclass-correction-page-reset-v2-9-396 .review-publication-card{margin-top:12px!important;}
.myeclass-correction-page-reset-v2-9-396 .myeclass-ai-helper-card-v2-9-386{margin-top:12px!important;}
@media(max-width:900px){.myeclass-course-context-shell-v2-9-375{grid-template-columns:1fr!important}.myeclass-course-context-shell-v2-9-375 .myeclass-main{padding:14px!important}.myeclass-eclass-page-title-v2-9-394{display:block!important}.myeclass-eclass-page-title-v2-9-394 .button{margin-top:10px!important}.myeclass-correction-two-column-v2-9-396,.myeclass-correction-page-reset-v2-9-396 .review-main-grid{grid-template-columns:1fr!important}.myeclass-assignments-reset-v2-9-394 .actions,.myeclass-teacher-submissions-table-reset-v2-9-396 .actions{display:grid!important;white-space:normal!important}}

/* ------------------------------------------------------------
   MyEClass v2.9.397 — Open-eClass-style UI unification pass
   Visual/IA only: slimmer controls, no placeholder course tools,
   compact dropdown actions, and restored standalone Ασκήσεις surface.
   ------------------------------------------------------------ */
:root{
  --myeclass-compact-radius:6px;
  --myeclass-compact-radius-sm:4px;
}
body.myeclass-body{
  font-size:14px!important;
  letter-spacing:0!important;
}
.top.myeclass-topbar{
  min-height:48px!important;
  padding:0 14px!important;
  box-shadow:none!important;
}
.myeclass-brand .brand-copy strong{font-size:15px!important;letter-spacing:0!important}.brand-logo-shell{max-width:96px!important}.brand-logo{max-height:30px!important}.myeclass-global-topnav-v2-9-375{gap:3px!important}.myeclass-global-topnav-v2-9-375 a{padding:13px 10px!important;border-radius:0!important;font-size:13px!important;font-weight:700!important;box-shadow:none!important}.myeclass-global-topnav-v2-9-375 a.is-active{border-bottom:2px solid var(--accent)!important;background:transparent!important}.myeclass-user-nav .button,.myeclass-user-nav button,.myeclass-nav-toggle{min-height:30px!important;padding:5px 8px!important;border-radius:var(--myeclass-compact-radius-sm)!important;font-size:12px!important}.myeclass-app-shell.myeclass-shell-with-sidebar{grid-template-columns:218px minmax(0,1fr)!important}.myeclass-sidebar{width:218px!important}.myeclass-sidebar-inner{padding:10px 8px!important}.myeclass-sidebar-heading,.myeclass-sidebar-note,.myeclass-secondary-nav{display:none!important}.myeclass-course-role-pill-v2-9-375{min-height:30px!important;padding:5px 8px!important;border-radius:999px!important;font-size:11px!important}.myeclass-course-sidebar-title-v2-9-375{padding:9px 6px!important;margin:6px 0 8px!important;border-bottom:1px solid var(--line)!important}.myeclass-course-sidebar-title-v2-9-375 span{font-size:10px!important}.myeclass-course-sidebar-title-v2-9-375 b{font-size:13px!important;line-height:1.25!important}.myeclass-course-sidebar-title-v2-9-375 small{font-size:11px!important}.myeclass-course-sidebar-nav-v2-9-376 section h2{font-size:11px!important;margin:8px 6px 5px!important}.myeclass-course-sidebar-link-v2-9-376,.myeclass-nav-link{min-height:29px!important;padding:6px 8px!important;border-radius:var(--myeclass-compact-radius-sm)!important;font-size:13px!important;font-weight:650!important;gap:7px!important;box-shadow:none!important}.myeclass-course-sidebar-link-v2-9-376.is-active,.myeclass-nav-link.is-active{box-shadow:none!important}.shell-icon{width:15px!important;height:15px!important}.shell-icon svg{width:15px!important;height:15px!important}.container.myeclass-main{padding:14px 18px 28px!important;max-width:1180px!important}.page-hero{padding:12px 0 14px!important;margin:0 0 12px!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;border:0!important}.page-hero h1{font-size:22px!important}.page-kicker,.myeclass-action-kicker{font-size:11px!important;letter-spacing:.02em!important}.page-hero-meta,.page-chip{display:none!important}.card,.tile,.panel,.mini-card,.rubric-builder,.myeclass-workspace-hero{border-radius:var(--myeclass-compact-radius)!important;padding:12px!important;box-shadow:none!important;border:1px solid var(--line)!important;background:var(--card)!important}.card h2,.mini-card h2{font-size:18px!important;margin:0 0 8px!important}.card h3,.mini-card h3{font-size:15px!important;margin:8px 0 6px!important}.myeclass-workspace-hero{display:block!important}.myeclass-workspace-hero h1{font-size:22px!important}.myeclass-workspace-hero p{max-width:760px!important}.myeclass-workspace-actions,.myeclass-eclass-tool-actions-v2-9-365{gap:6px!important}.myeclass-workspace-map,.myeclass-workspace-stats,.myeclass-course-tools-caption-v2-9-356,.myeclass-course-tools-v2-9-356 .status-pill{display:none!important}button,.button,input[type="submit"]{min-height:31px!important;padding:6px 10px!important;border-radius:var(--myeclass-compact-radius-sm)!important;font-size:13px!important;font-weight:700!important;box-shadow:none!important}button.primary,.button.primary{box-shadow:none!important}input,select,textarea{border-radius:var(--myeclass-compact-radius-sm)!important;padding:7px 9px!important;font-size:13px!important}textarea{line-height:1.45!important}label{font-size:13px!important}table{font-size:13px!important;border-collapse:collapse!important}th,td{padding:7px 8px!important;border-bottom:1px solid var(--line)!important;vertical-align:top!important}th{font-size:11px!important;text-transform:none!important;letter-spacing:.02em!important}.myeclass-table-wrap-v2-9-362,.myeclass-table-scroll{border-radius:var(--myeclass-compact-radius)!important;border:1px solid var(--line)!important;overflow:visible!important}.myeclass-simple-assignments-table-v2-9-390 a{font-weight:700!important}.myeclass-assignment-status-chip-v2-9-364,.status-pill,.badge,.pill{border-radius:999px!important;padding:3px 7px!important;font-size:11px!important;font-weight:700!important}.myeclass-eclass-page-title-v2-9-394{gap:10px!important;align-items:center!important;margin-bottom:10px!important;padding-bottom:10px!important;border-bottom:1px solid var(--line)!important}.myeclass-eclass-page-title-v2-9-394 h2{font-size:20px!important;margin:0!important}.myeclass-assignment-tabs-v2-9-395{gap:0!important;border-bottom:1px solid var(--line)!important;margin-top:8px!important}.myeclass-assignment-tabs-v2-9-395 a{padding:8px 12px!important;border-radius:0!important;background:transparent!important;border:0!important;border-bottom:2px solid transparent!important;font-size:13px!important;font-weight:700!important}.myeclass-assignment-tabs-v2-9-395 a.is-active{border-bottom-color:var(--accent)!important;background:transparent!important}.myeclass-assignment-section-reset-v2-9-395>summary,.myeclass-eclass-collapsible-v2-9-367>summary,details.card>summary,details.mini-card>summary{padding:4px 0!important;cursor:pointer!important;font-size:14px!important}.myeclass-course-tool-grid-v2-9-356{grid-template-columns:repeat(auto-fit,minmax(148px,1fr))!important;gap:6px!important}.myeclass-course-tool-link{min-height:34px!important;padding:8px!important;border-radius:var(--myeclass-compact-radius-sm)!important;box-shadow:none!important}.myeclass-course-tool-link small{display:none!important}.actions{position:relative!important;white-space:nowrap!important}.myeclass-action-dropdown-v2-9-397{position:relative;display:inline-block;text-align:left}.myeclass-action-dropdown-v2-9-397>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:5px;min-height:29px;padding:5px 8px;border:1px solid var(--line);border-radius:var(--myeclass-compact-radius-sm);background:var(--surface);color:var(--ink);font-size:12px;font-weight:700}.myeclass-action-dropdown-v2-9-397>summary::-webkit-details-marker{display:none}.myeclass-action-dropdown-v2-9-397[open]>summary{border-color:var(--accent)}.myeclass-action-dropdown-menu-v2-9-397{position:absolute;right:0;top:calc(100% + 4px);z-index:40;min-width:168px;padding:4px;border:1px solid var(--line);border-radius:var(--myeclass-compact-radius);background:var(--surface);box-shadow:0 8px 24px rgba(0,0,0,.14)}.myeclass-action-dropdown-menu-v2-9-397 a{display:block;padding:7px 8px;border-radius:var(--myeclass-compact-radius-sm);color:var(--ink);text-decoration:none;font-size:13px;font-weight:650}.myeclass-action-dropdown-menu-v2-9-397 a:hover{background:var(--soft)}.myeclass-action-dropdown-menu-v2-9-397 a.is-danger{color:var(--danger)}.myeclass-exercises-reset-v2-9-397{max-width:100%!important}.myeclass-exercises-reset-v2-9-397 .myeclass-eclass-page-title-v2-9-394 p{margin:3px 0 0!important}
@media(max-width:900px){.myeclass-app-shell.myeclass-shell-with-sidebar{grid-template-columns:1fr!important}.myeclass-sidebar{width:min(84vw,260px)!important}.container.myeclass-main{padding:12px!important}.myeclass-action-dropdown-menu-v2-9-397{left:0;right:auto}}

/* ------------------------------------------------------------
   MyEClass v2.9.398 — Open-eClass structural parity pass
   Reference inspection: main/portfolio.php, main/my_courses.php,
   modules/course_home/course_home.php, modules/work/index.php/functions.php,
   modules/exercise/index.php and modules/course_tools/index.php.
   We use IA/layout patterns only — no Open eClass code/assets/brand copied.
   ------------------------------------------------------------ */
.myeclass-shell-no-sidebar-v2-9-398{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:auto 1fr!important;
  min-height:100vh;
}
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-topbar{grid-column:1!important;}
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-main{grid-column:1!important;max-width:1160px!important;margin:0 auto!important;width:100%!important;}
.myeclass-portfolio-body-v2-9-398 .page-hero{display:none!important;}
.myeclass-portfolio-body-v2-9-398 .myeclass-breadcrumbs{display:none!important;}
.myeclass-portfolio-body-v2-9-398 .myeclass-main{padding-top:18px!important;}
.myeclass-account-nav-v2-9-398{display:flex;align-items:center;gap:6px;}
.myeclass-account-dropdown-v2-9-398{position:relative;}
.myeclass-account-dropdown-v2-9-398>summary{list-style:none;display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:5px 9px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink);cursor:pointer;font-size:12px;font-weight:700;}
.myeclass-account-dropdown-v2-9-398>summary::-webkit-details-marker{display:none;}
.myeclass-account-dropdown-menu-v2-9-398{position:absolute;right:0;top:calc(100% + 4px);z-index:70;min-width:150px;padding:4px;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:0 8px 24px rgba(0,0,0,.16);}
.myeclass-account-dropdown-menu-v2-9-398 a,
.myeclass-account-dropdown-menu-v2-9-398 button{width:100%!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:7px!important;min-height:29px!important;padding:6px 8px!important;border:0!important;border-radius:4px!important;background:transparent!important;color:var(--ink)!important;text-decoration:none!important;font-size:13px!important;font-weight:650!important;box-shadow:none!important;}
.myeclass-account-dropdown-menu-v2-9-398 a:hover,
.myeclass-account-dropdown-menu-v2-9-398 button:hover{background:var(--soft)!important;}
.myeclass-course-context-shell-v2-9-375{grid-template-columns:196px minmax(0,1fr)!important;}
.myeclass-course-sidebar-v2-9-375{width:196px!important;padding:10px 7px 18px!important;background:#172837!important;}
html[data-theme="dark"] .myeclass-course-sidebar-v2-9-375{background:#172837!important;}
.myeclass-course-sidebar-reset-v2-9-393 .myeclass-sidebar-inner{padding:0!important;gap:8px!important;}
.myeclass-course-role-pill-v2-9-375{min-height:28px!important;margin:4px 5px 8px!important;padding:4px 8px!important;font-size:10px!important;letter-spacing:.02em!important;}
.myeclass-course-sidebar-title-v2-9-375{padding:8px 7px 10px!important;margin:0 0 8px!important;border-bottom:1px solid rgba(255,255,255,.16)!important;}
.myeclass-course-sidebar-title-v2-9-375 span{font-size:9px!important;letter-spacing:.09em!important;color:#b7c8d6!important;}
.myeclass-course-sidebar-title-v2-9-375 b{font-size:12px!important;line-height:1.22!important;font-weight:800!important;}
.myeclass-course-sidebar-title-v2-9-375 small{font-size:10px!important;color:#c8d6e3!important;line-height:1.2!important;}
.myeclass-course-sidebar-nav-v2-9-376{gap:12px!important;}
.myeclass-course-sidebar-nav-v2-9-376 section h2{font-size:11px!important;font-weight:750!important;color:#c8d6e3!important;margin:7px 7px 5px!important;}
.myeclass-course-sidebar-nav-v2-9-376 h2::before{content:'›'!important;color:#c8d6e3!important;}
.myeclass-course-sidebar-link-v2-9-376{min-height:28px!important;padding:5px 7px!important;gap:7px!important;border-radius:3px!important;font-size:12px!important;font-weight:650!important;}
.myeclass-course-sidebar-link-v2-9-376 .shell-icon{width:14px!important;height:14px!important;opacity:.95;}
.myeclass-course-sidebar-link-v2-9-376 .shell-icon svg{width:14px!important;height:14px!important;}
.myeclass-course-sidebar-link-v2-9-376.is-active{background:#5aa9f3!important;color:#071f33!important;border-color:#5aa9f3!important;}
.myeclass-course-context-shell-v2-9-375 .myeclass-main{max-width:1120px!important;padding:14px 18px 34px!important;}
.myeclass-course-context-shell-v2-9-375 .card,
.myeclass-portfolio-simple-v2-9-398.card{border-radius:4px!important;padding:10px!important;box-shadow:none!important;}
.myeclass-course-context-shell-v2-9-375 .card + .card,
.myeclass-portfolio-simple-v2-9-398 + .myeclass-portfolio-simple-v2-9-398{margin-top:10px!important;}
.myeclass-course-context-shell-v2-9-375 table,
.myeclass-portfolio-simple-v2-9-398 table{font-size:12px!important;}
.myeclass-course-context-shell-v2-9-375 th,
.myeclass-course-context-shell-v2-9-375 td,
.myeclass-portfolio-simple-v2-9-398 th,
.myeclass-portfolio-simple-v2-9-398 td{padding:6px 7px!important;}
.myeclass-course-landing-minimal-v2-9-398 h3,
.myeclass-portfolio-simple-v2-9-398 h3{font-size:14px!important;margin:10px 0 7px!important;}
.myeclass-course-description-v2-9-398{padding:8px 0 10px!important;border-bottom:1px solid var(--line);margin-bottom:8px;}
.myeclass-portfolio-grid-v2-9-398{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:12px;align-items:start;}
.myeclass-portfolio-actions-v2-9-398{display:grid;gap:6px;}
.myeclass-portfolio-actions-v2-9-398 .button{justify-content:flex-start!important;width:100%!important;}
.myeclass-simple-list-v2-9-398{list-style:none;margin:0;padding:0;display:grid;gap:6px;}
.myeclass-simple-list-v2-9-398 li{border-bottom:1px solid var(--line);padding:6px 0;display:grid;gap:2px;}
.myeclass-simple-list-v2-9-398 li:last-child{border-bottom:0;}
.myeclass-simple-list-v2-9-398 span{color:var(--muted);font-size:12px;}
.myeclass-page-actions-v2-9-398{display:flex;align-items:center;justify-content:flex-end;gap:6px;}
.myeclass-assignment-detail-minimal-v2-9-398 .myeclass-action-dropdown-v2-9-397>summary{min-height:31px;}
.myeclass-action-dropdown-v2-9-397>summary{padding:4px 7px!important;min-height:28px!important;border-radius:4px!important;background:var(--surface)!important;font-size:12px!important;box-shadow:none!important;}
.myeclass-action-dropdown-menu-v2-9-397{border-radius:4px!important;box-shadow:0 8px 22px rgba(0,0,0,.16)!important;min-width:148px!important;}
.myeclass-action-dropdown-menu-v2-9-397 a{padding:6px 7px!important;border-radius:3px!important;font-size:12px!important;}
.myeclass-assignment-create-reset-v2-9-394 summary .muted{display:none!important;}
.myeclass-calendar-preview,.myeclass-final-pilot-home-card-v2-9-337,.myeclass-pilot-readiness-panel,.myeclass-action-center{display:none!important;}
@media(max-width:900px){
  .myeclass-course-context-shell-v2-9-375{grid-template-columns:1fr!important;}
  .myeclass-course-sidebar-v2-9-375{width:min(84vw,252px)!important;padding-top:70px!important;}
  .myeclass-portfolio-grid-v2-9-398{grid-template-columns:1fr;}
  .myeclass-page-actions-v2-9-398{justify-content:flex-start;margin-top:8px;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.399 — hard Open-eClass surface correction
   Fixes the reported mismatch: no global teacher sidebar outside course,
   no cockpit/pilot panels on portfolio/class pages, compact original-like lists.
   ------------------------------------------------------------ */
body.myeclass-portfolio-body-v2-9-398 .myeclass-sidebar,
body.myeclass-portfolio-body-v2-9-398 .myeclass-nav-backdrop,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-sidebar,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-nav-backdrop{
  display:none!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-app-shell,
.myeclass-shell-no-sidebar-v2-9-398{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:auto 1fr!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-main,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-main{
  grid-column:1!important;
  max-width:1120px!important;
  width:100%!important;
  margin:0 auto!important;
  padding:14px 18px 30px!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-workspace-hero,
body.myeclass-portfolio-body-v2-9-398 .myeclass-workspace-map,
body.myeclass-portfolio-body-v2-9-398 .myeclass-workspace-stats,
body.myeclass-portfolio-body-v2-9-398 .myeclass-next-click-strip-v2-9-328,
body.myeclass-portfolio-body-v2-9-398 .myeclass-status-strip,
body.myeclass-portfolio-body-v2-9-398 .myeclass-pilot-closeout-v2-9-337,
body.myeclass-portfolio-body-v2-9-398 .myeclass-action-center,
body.myeclass-portfolio-body-v2-9-398 .myeclass-calendar-preview{
  display:none!important;
}
.myeclass-openeclass-flat-page-v2-9-399.card,
body.myeclass-portfolio-body-v2-9-398 .card{
  border-radius:3px!important;
  padding:10px 12px!important;
  margin:10px 0!important;
  box-shadow:none!important;
}
.myeclass-openeclass-flat-page-v2-9-399 .myeclass-eclass-page-title-v2-9-394,
body.myeclass-portfolio-body-v2-9-398 .myeclass-eclass-page-title-v2-9-394{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:0 0 8px!important;
  margin:0 0 8px!important;
  border-bottom:1px solid var(--line)!important;
}
.myeclass-openeclass-flat-page-v2-9-399 h2,
body.myeclass-portfolio-body-v2-9-398 .card h2{
  font-size:18px!important;
  margin:0!important;
  letter-spacing:0!important;
}
.myeclass-openeclass-flat-page-v2-9-399 p,
body.myeclass-portfolio-body-v2-9-398 .myeclass-eclass-page-title-v2-9-394 p{
  margin:2px 0 0!important;
  font-size:12px!important;
  line-height:1.35!important;
}
body.myeclass-portfolio-body-v2-9-398 table,
.myeclass-openeclass-flat-page-v2-9-399 table{
  font-size:12px!important;
}
body.myeclass-portfolio-body-v2-9-398 th,
body.myeclass-portfolio-body-v2-9-398 td,
.myeclass-openeclass-flat-page-v2-9-399 th,
.myeclass-openeclass-flat-page-v2-9-399 td{
  padding:6px 7px!important;
}
body.myeclass-portfolio-body-v2-9-398 .button,
body.myeclass-portfolio-body-v2-9-398 button,
.myeclass-openeclass-flat-page-v2-9-399 .button,
.myeclass-openeclass-flat-page-v2-9-399 button{
  min-height:27px!important;
  padding:4px 8px!important;
  border-radius:3px!important;
  font-size:12px!important;
  font-weight:700!important;
}
body.myeclass-portfolio-body-v2-9-398 input,
body.myeclass-portfolio-body-v2-9-398 select,
body.myeclass-portfolio-body-v2-9-398 textarea,
.myeclass-openeclass-flat-page-v2-9-399 input,
.myeclass-openeclass-flat-page-v2-9-399 select,
.myeclass-openeclass-flat-page-v2-9-399 textarea{
  padding:6px 8px!important;
  border-radius:3px!important;
  font-size:12px!important;
}
.top.myeclass-topbar{
  min-height:42px!important;
  padding:0 12px!important;
}
.myeclass-brand .brand-logo-shell{width:58px!important;height:32px!important;}
.myeclass-brand .brand-logo{max-width:58px!important;max-height:32px!important;}
.myeclass-brand .brand-copy strong{font-size:14px!important;}
.myeclass-global-topnav-v2-9-375 a{
  min-height:40px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:0 12px!important;
  border-radius:0!important;
  font-size:13px!important;
  box-shadow:none!important;
}
.myeclass-account-dropdown-v2-9-398>summary{
  min-height:28px!important;
  padding:4px 8px!important;
  border-radius:3px!important;
}
@media(max-width:900px){
  body.myeclass-portfolio-body-v2-9-398 .myeclass-main,
  .myeclass-shell-no-sidebar-v2-9-398 .myeclass-main{padding:12px!important;}
  .myeclass-openeclass-flat-page-v2-9-399 .myeclass-eclass-page-title-v2-9-394{align-items:flex-start!important;flex-direction:column!important;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.400 — Open-eClass course surface parity
   Presentation-only pass guided by the uploaded Open eClass CSS metrics:
   light contextual sidebar, quiet active state, flat content, one tool per page.
   ------------------------------------------------------------ */
:root{
  --myeclass-eclass-bg:#ffffff;
  --myeclass-eclass-sidebar:#F7F9FE;
  --myeclass-eclass-soft:#EFF6FF;
  --myeclass-eclass-soft-active:#e6f1ff;
  --myeclass-eclass-line:#E8EDF8;
  --myeclass-eclass-line-2:#EFF2FB;
  --myeclass-eclass-ink:#2B3944;
  --myeclass-eclass-muted:#687DA3;
  --myeclass-eclass-primary:#0073E6;
  --myeclass-eclass-primary-dark:#004A94;
  --myeclass-eclass-danger:#C44601;
}
body.myeclass-course-context-body-v2-9-375{
  background:#ffffff!important;
  color:var(--myeclass-eclass-ink)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-topbar,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-topbar{
  min-height:56px!important;
  height:56px!important;
  padding:0 16px!important;
  background:#ffffff!important;
  border-bottom:1px solid var(--myeclass-eclass-line)!important;
  box-shadow:1px 2px 6px rgba(43,57,68,.04)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  color:var(--myeclass-eclass-ink)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-brand,
body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-copy strong,
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a,
body.myeclass-course-context-body-v2-9-375 .myeclass-account-dropdown-v2-9-398>summary{
  color:var(--myeclass-eclass-ink)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a{
  min-height:56px!important;
  padding:0 14px!important;
  border-radius:0!important;
  background:transparent!important;
  border:0!important;
  border-bottom:3px solid transparent!important;
  box-shadow:none!important;
  font-size:14px!important;
  line-height:16px!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a:hover,
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a.is-active{
  color:var(--myeclass-eclass-primary)!important;
  border-bottom-color:var(--myeclass-eclass-primary)!important;
  text-decoration:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-account-dropdown-v2-9-398>summary{
  background:#ffffff!important;
  border:1px solid var(--myeclass-eclass-line)!important;
  border-radius:4px!important;
  box-shadow:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{
  grid-template-columns:206px minmax(0,1fr)!important;
  background:#ffffff!important;
  color:var(--myeclass-eclass-ink)!important;
}
@media(min-width:1400px){
  body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{
    grid-template-columns:256px minmax(0,1fr)!important;
  }
}
body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375{
  width:206px!important;
  padding:0!important;
  background:var(--myeclass-eclass-sidebar)!important;
  border-right:1px solid var(--myeclass-eclass-line)!important;
  box-shadow:none!important;
  color:var(--myeclass-eclass-ink)!important;
}
@media(min-width:1400px){
  body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375{width:256px!important;}
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-reset-v2-9-393 .myeclass-sidebar-inner{
  padding:14px 0 24px!important;
  gap:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-role-pill-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-role-pill-v2-9-375{
  margin:0 12px 14px!important;
  min-height:38px!important;
  padding:6px 10px!important;
  justify-content:center!important;
  background:#ffffff!important;
  border:1px solid var(--myeclass-eclass-line)!important;
  border-radius:999px!important;
  color:var(--myeclass-eclass-ink)!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:700!important;
  letter-spacing:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375{
  margin:0!important;
  padding:0 12px 16px!important;
  border-bottom:1px solid var(--myeclass-eclass-line)!important;
  color:var(--myeclass-eclass-ink)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375 span{
  display:block!important;
  color:var(--myeclass-eclass-muted)!important;
  font-size:11px!important;
  line-height:16px!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375 b{
  display:block!important;
  margin-top:7px!important;
  color:var(--myeclass-eclass-ink)!important;
  font-size:14px!important;
  line-height:18px!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375 small{
  display:block!important;
  margin-top:4px!important;
  color:var(--myeclass-eclass-muted)!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:400!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-nav-v2-9-376 section h2{
  margin:14px 12px 6px!important;
  color:var(--myeclass-eclass-muted)!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:700!important;
  letter-spacing:.03em!important;
  text-transform:uppercase!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-nav-v2-9-376 h2::before{content:''!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376{
  min-height:40px!important;
  margin:0!important;
  padding:10px 14px!important;
  border:0!important;
  border-bottom:1px solid var(--myeclass-eclass-soft)!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--myeclass-eclass-ink)!important;
  box-shadow:none!important;
  font-size:14px!important;
  line-height:16px!important;
  font-weight:400!important;
  gap:9px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376:hover{
  background:var(--myeclass-eclass-soft)!important;
  color:var(--myeclass-eclass-primary)!important;
  text-decoration:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376.is-active,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376.is-active{
  background:var(--myeclass-eclass-soft-active)!important;
  color:var(--myeclass-eclass-primary-dark)!important;
  border-color:var(--myeclass-eclass-soft)!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376 .shell-icon,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376 .shell-icon svg{
  width:16px!important;
  height:16px!important;
  color:currentColor!important;
}
body.myeclass-course-context-body-v2-9-375 .container.myeclass-main,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{
  max-width:1180px!important;
  margin:0!important;
  padding:24px!important;
  background:#ffffff!important;
  color:var(--myeclass-eclass-ink)!important;
  border-left:1px solid var(--myeclass-eclass-line)!important;
  min-height:calc(100vh - 56px)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs,
body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs a{
  color:var(--myeclass-eclass-primary)!important;
  font-size:13px!important;
  line-height:16px!important;
  font-weight:400!important;
}
body.myeclass-course-context-body-v2-9-375 h1,
body.myeclass-course-context-body-v2-9-375 h2,
body.myeclass-course-context-body-v2-9-375 h3,
body.myeclass-course-context-body-v2-9-375 h4,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h1,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h2,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h3,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h4{
  color:var(--myeclass-eclass-ink)!important;
  font-family:Manrope, "Open Sans", system-ui, sans-serif!important;
  letter-spacing:0!important;
}
body.myeclass-course-context-body-v2-9-375 h1{font-size:24px!important;line-height:32px!important;font-weight:700!important;margin:0 0 16px!important;}
body.myeclass-course-context-body-v2-9-375 h2{font-size:20px!important;line-height:28px!important;font-weight:700!important;}
body.myeclass-course-context-body-v2-9-375 h3{font-size:16px!important;line-height:24px!important;font-weight:700!important;}
body.myeclass-course-context-body-v2-9-375 .muted,
body.myeclass-course-context-body-v2-9-375 small,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .muted,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 small{
  color:var(--myeclass-eclass-muted)!important;
}
body.myeclass-course-context-body-v2-9-375 .card,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-admin-page-v2-9-400,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .card{
  background:#ffffff!important;
  border:1px solid var(--myeclass-eclass-line-2)!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:16px!important;
  margin:0 0 16px!important;
  color:var(--myeclass-eclass-ink)!important;
  transform:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.myeclass-course-context-body-v2-9-375 .card:hover,
body.myeclass-course-context-body-v2-9-375 .tile:hover{
  transform:none!important;
  box-shadow:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0 0 14px!important;
  padding:0 0 12px!important;
  border-bottom:1px solid var(--myeclass-eclass-line)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394 h2{
  margin:0!important;
  font-size:24px!important;
  line-height:32px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394 p{
  margin:2px 0 0!important;
  font-size:14px!important;
  line-height:20px!important;
}
body.myeclass-course-context-body-v2-9-375 table,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 table{
  width:100%!important;
  border-collapse:collapse!important;
  border-spacing:0!important;
  background:#ffffff!important;
  color:var(--myeclass-eclass-ink)!important;
  border:1px solid var(--myeclass-eclass-line)!important;
  font-size:14px!important;
}
body.myeclass-course-context-body-v2-9-375 th,
body.myeclass-course-context-body-v2-9-375 td,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 th,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 td{
  padding:8px 10px!important;
  border-bottom:1px solid var(--myeclass-eclass-line)!important;
  background:#ffffff!important;
  color:var(--myeclass-eclass-ink)!important;
  font-size:14px!important;
  line-height:20px!important;
  vertical-align:top!important;
}
body.myeclass-course-context-body-v2-9-375 th,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 th{
  background:var(--myeclass-eclass-sidebar)!important;
  color:var(--myeclass-eclass-ink)!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:700!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
body.myeclass-course-context-body-v2-9-375 th:first-child,
body.myeclass-course-context-body-v2-9-375 th:last-child{border-radius:0!important;}
body.myeclass-course-context-body-v2-9-375 tr:hover td{background:#FAFBFC!important;}
body.myeclass-course-context-body-v2-9-375 a{color:var(--myeclass-eclass-primary)!important;font-weight:700!important;text-decoration:none!important;}
body.myeclass-course-context-body-v2-9-375 a:hover{text-decoration:underline!important;}
body.myeclass-course-context-body-v2-9-375 input,
body.myeclass-course-context-body-v2-9-375 select,
body.myeclass-course-context-body-v2-9-375 textarea,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 input,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 select,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 textarea{
  background:#ffffff!important;
  color:var(--myeclass-eclass-ink)!important;
  border:1px solid #CDD4E0!important;
  border-radius:4px!important;
  padding:7px 9px!important;
  font-size:14px!important;
  line-height:20px!important;
  box-shadow:none!important;
}
body.myeclass-course-context-body-v2-9-375 label{
  color:var(--myeclass-eclass-ink)!important;
  font-size:14px!important;
  line-height:16px!important;
  font-weight:700!important;
  margin:10px 0 6px!important;
}
body.myeclass-course-context-body-v2-9-375 button,
body.myeclass-course-context-body-v2-9-375 .button,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 button,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .button{
  min-height:32px!important;
  padding:6px 10px!important;
  border-radius:4px!important;
  border:1px solid var(--myeclass-eclass-line)!important;
  background:#ffffff!important;
  color:var(--myeclass-eclass-ink)!important;
  box-shadow:none!important;
  transform:none!important;
  font-size:14px!important;
  line-height:16px!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 button::before,
body.myeclass-course-context-body-v2-9-375 .button::before{content:none!important;}
body.myeclass-course-context-body-v2-9-375 button.primary,
body.myeclass-course-context-body-v2-9-375 .button.primary,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 button.primary,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .button.primary{
  background:var(--myeclass-eclass-primary)!important;
  border-color:var(--myeclass-eclass-primary)!important;
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 button.danger,
body.myeclass-course-context-body-v2-9-375 .button.danger{
  background:#ffffff!important;
  border-color:var(--myeclass-eclass-danger)!important;
  color:var(--myeclass-eclass-danger)!important;
}
body.myeclass-course-context-body-v2-9-375 .status-pill,
body.myeclass-course-context-body-v2-9-375 .badge,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .status-pill,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .badge{
  background:#E8F2E7!important;
  border:0!important;
  color:#1E7E0E!important;
  border-radius:999px!important;
  padding:3px 8px!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-table-wrap-v2-9-362{
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-admin-section-v2-9-400{
  margin:0!important;
  padding:12px 0!important;
  border-top:1px solid var(--myeclass-eclass-line)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-admin-section-v2-9-400>summary,
body.myeclass-course-context-body-v2-9-375 .myeclass-inline-actions-v2-9-400>summary{
  cursor:pointer!important;
  color:var(--myeclass-eclass-ink)!important;
  font-size:14px!important;
  line-height:16px!important;
  font-weight:700!important;
  padding:6px 0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-inline-actions-v2-9-400{
  position:relative!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-inline-actions-v2-9-400>summary{
  display:inline-flex!important;
  align-items:center!important;
  min-height:32px!important;
  padding:6px 10px!important;
  border:1px solid var(--myeclass-eclass-primary)!important;
  border-radius:4px!important;
  color:var(--myeclass-eclass-primary)!important;
  background:#ffffff!important;
  list-style:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-inline-actions-v2-9-400>summary::-webkit-details-marker{display:none!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-inline-actions-v2-9-400>div{
  margin-top:8px!important;
  padding:12px!important;
  border:1px solid var(--myeclass-eclass-line)!important;
  background:#FAFBFC!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-openeclass-form-v2-9-400{
  display:grid!important;
  gap:10px!important;
  max-width:760px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-description-v2-9-398{
  border-bottom:1px solid var(--myeclass-eclass-line)!important;
  padding:0 0 12px!important;
  margin:0 0 12px!important;
}
body.myeclass-course-context-body-v2-9-375 .math-content{
  color:var(--myeclass-eclass-ink)!important;
  font-size:14px!important;
  line-height:24px!important;
}
@media(max-width:900px){
  body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{grid-template-columns:1fr!important;}
  body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375{width:min(84vw,270px)!important;}
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{padding:12px!important;border-left:0!important;}
  body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394{display:block!important;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.401 — teacher-only AI helper, Open-eClass surface.
   UI integration only around the existing typed-solution AI provider path:
   no OCR/vision, no notifications, no automatic publication, no schema migration.
   ------------------------------------------------------------ */
body.myeclass-course-context-body-v2-9-375 .myeclass-correction-page-title-v2-9-401{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-correction-title-actions-v2-9-401{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  min-width:220px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-quick-form-v2-9-401{
  display:inline-flex!important;
  align-items:center!important;
  margin:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-quick-button-v2-9-401,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-quick-link-v2-9-401{
  border-color:var(--myeclass-eclass-primary)!important;
  color:var(--myeclass-eclass-primary)!important;
  background:#ffffff!important;
  white-space:nowrap!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-quiet-state-v2-9-401{
  display:inline-flex!important;
  align-items:center!important;
  min-height:32px!important;
  padding:6px 10px!important;
  border:1px solid var(--myeclass-eclass-line)!important;
  border-radius:4px!important;
  color:var(--myeclass-eclass-muted)!important;
  background:#ffffff!important;
  font-size:13px!important;
  line-height:16px!important;
  font-weight:700!important;
  white-space:nowrap!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-openeclass-v2-9-401{
  padding:0!important;
  overflow:hidden!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-openeclass-v2-9-401>summary{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  list-style:none!important;
  cursor:pointer!important;
  padding:10px 12px!important;
  border-bottom:1px solid var(--myeclass-eclass-line)!important;
  background:#FAFBFC!important;
  color:var(--myeclass-eclass-ink)!important;
  font-size:14px!important;
  line-height:16px!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-openeclass-v2-9-401>summary::-webkit-details-marker{display:none!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-openeclass-v2-9-401>summary::after{
  content:'+'!important;
  margin-left:auto!important;
  color:var(--myeclass-eclass-primary)!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-openeclass-v2-9-401[open]>summary::after{content:'−'!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-openeclass-v2-9-401>*:not(summary){
  margin-left:12px!important;
  margin-right:12px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-openeclass-v2-9-401>p.muted{margin-top:12px!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-muted-label-v2-9-401{
  color:var(--myeclass-eclass-muted)!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-compact-meta-v2-9-401{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  margin-top:10px!important;
  margin-bottom:12px!important;
  border:1px solid var(--myeclass-eclass-line)!important;
  background:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-compact-meta-v2-9-401>div{
  padding:8px 10px!important;
  border-right:1px solid var(--myeclass-eclass-line)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-compact-meta-v2-9-401>div:last-child{border-right:0!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-compact-meta-v2-9-401 dt{
  margin:0 0 2px!important;
  color:var(--myeclass-eclass-muted)!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-compact-meta-v2-9-401 dd{
  margin:0!important;
  color:var(--myeclass-eclass-ink)!important;
  font-size:14px!important;
  line-height:20px!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-draft-box-v2-9-401{
  border-radius:0!important;
  background:#ffffff!important;
  border:1px solid var(--myeclass-eclass-line)!important;
  padding:10px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-gap-list-v2-9-401{
  margin-top:6px!important;
  margin-bottom:12px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-actions-v2-9-401{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  padding-top:10px!important;
  padding-bottom:12px!important;
  border-top:1px solid var(--myeclass-eclass-line)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-technical-details-v2-9-401{
  margin-top:10px!important;
  margin-bottom:12px!important;
  padding-top:10px!important;
  border-top:1px solid var(--myeclass-eclass-line)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-technical-details-v2-9-401>summary{
  cursor:pointer!important;
  color:var(--myeclass-eclass-muted)!important;
  font-size:13px!important;
  line-height:16px!important;
  font-weight:700!important;
}
@media(max-width:900px){
  body.myeclass-course-context-body-v2-9-375 .myeclass-correction-page-title-v2-9-401{display:block!important;}
  body.myeclass-course-context-body-v2-9-375 .myeclass-correction-title-actions-v2-9-401{justify-content:flex-start!important;margin-top:10px!important;}
  body.myeclass-course-context-body-v2-9-375 .myeclass-ai-compact-meta-v2-9-401{grid-template-columns:1fr!important;}
  body.myeclass-course-context-body-v2-9-375 .myeclass-ai-compact-meta-v2-9-401>div{border-right:0!important;border-bottom:1px solid var(--myeclass-eclass-line)!important;}
}

/* v2.9.402 — assignment-upload AI helper bridge */
.myeclass-ai-upload-bridge-form-v2-9-402{display:inline-flex;align-items:center;margin:0 0 0 6px;}
.myeclass-ai-upload-bridge-form-v2-9-402 button{white-space:nowrap;}
.myeclass-primary-table td.actions .myeclass-ai-upload-bridge-form-v2-9-402{margin-left:6px;}
.myeclass-ai-upload-bridge-table-button-v2-9-402{border-color:var(--line);background:#fff;color:var(--accent);font-weight:700;}
.myeclass-ai-upload-bridge-panel-v2-9-402{background:#fff;border-left:1px solid var(--line);}
.myeclass-ai-upload-bridge-actions-v2-9-402{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);}
.myeclass-ai-upload-bridge-actions-v2-9-402 .field-help{margin:0;max-width:720px;}
html[data-theme="dark"] .myeclass-ai-upload-bridge-table-button-v2-9-402{background:#101a24;color:var(--ml-accent);border-color:#46637f;}
html[data-theme="dark"] .myeclass-ai-upload-bridge-panel-v2-9-402{background:#203341;border-color:#46637f;}

/* v2.9.403 — AI correction UX tightening */
.myeclass-ai-upload-bridge-form-v2-9-403 button[data-ml-loading]{position:relative;}
.myeclass-ai-upload-bridge-disabled-v2-9-403{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 10px;
  margin-left:6px;
  border:1px solid var(--line);
  border-radius:4px;
  color:var(--muted);
  background:#f8fafc;
  font-size:13px;
  line-height:16px;
  font-weight:700;
  white-space:nowrap;
}
.myeclass-ai-upload-bridge-preflight-v2-9-403{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:10px 0;
  padding:8px 10px;
  border:1px solid var(--line);
  background:#f8fafc;
  color:var(--ink);
  font-size:13px;
  line-height:16px;
}
.myeclass-ai-upload-bridge-preflight-v2-9-403 span{
  display:inline-flex;
  align-items:center;
  padding:2px 7px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:var(--muted);
  font-size:12px;
  line-height:16px;
}
.myeclass-ai-upload-bridge-blocked-v2-9-403{margin-top:10px;}
.myeclass-ai-provider-warning-v2-9-403{margin-top:10px!important;margin-bottom:10px!important;}
.myeclass-ai-disabled-help-v2-9-403{padding:8px 0;color:var(--muted);}
.myeclass-ai-seed-draft-form-v2-9-403{margin:0;}
.myeclass-ai-run-form-v2-9-403{margin-top:10px;}
html[data-theme="dark"] .myeclass-ai-upload-bridge-disabled-v2-9-403,
html[data-theme="dark"] .myeclass-ai-upload-bridge-preflight-v2-9-403{
  background:#162536;
  border-color:#46637f;
  color:var(--ml-muted);
}
html[data-theme="dark"] .myeclass-ai-upload-bridge-preflight-v2-9-403 span{
  background:#101a24;
  border-color:#46637f;
  color:var(--ml-muted);
}

/* ------------------------------------------------------------
   MyEClass v2.9.404 — Dark Open-eClass course surface restore.
   Restores the uploaded Open-eClass Dark visual surface after the
   light v2.9.400 parity pass: no feature, route, DB, AI, OCR,
   notification, publication, or provider behavior changes.
   ------------------------------------------------------------ */
body.myeclass-course-context-body-v2-9-375{
  --myeclass-dark-bg:#212d37;
  --myeclass-dark-top:#050505;
  --myeclass-dark-sidebar:#203341;
  --myeclass-dark-panel:#2b3944;
  --myeclass-dark-panel-2:#29435c;
  --myeclass-dark-input:#101820;
  --myeclass-dark-line:#4f6893;
  --myeclass-dark-line-soft:#39556a;
  --myeclass-dark-text:#ffffff;
  --myeclass-dark-muted:#b8c7db;
  --myeclass-dark-link:#74afe9;
  --myeclass-dark-active:#74afe9;
  --myeclass-dark-active-text:#212d37;
  --myeclass-dark-danger:#efa020;
  --myeclass-dark-success:#30a444;
  background:var(--myeclass-dark-bg)!important;
  color:var(--myeclass-dark-text)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-topbar,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-topbar{
  background:var(--myeclass-dark-top)!important;
  color:var(--myeclass-dark-text)!important;
  border-bottom:1px solid #2b3944!important;
  box-shadow:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-brand,
body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-copy strong,
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a,
body.myeclass-course-context-body-v2-9-375 .myeclass-account-dropdown-v2-9-398>summary{
  color:var(--myeclass-dark-text)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a:hover,
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a.is-active{
  color:var(--myeclass-dark-link)!important;
  border-bottom-color:var(--myeclass-dark-link)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-account-dropdown-v2-9-398>summary{
  background:#101820!important;
  border-color:#2b3944!important;
  border-radius:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-account-dropdown-menu-v2-9-398,
body.myeclass-course-context-body-v2-9-375 .myeclass-action-dropdown-menu-v2-9-397{
  background:#212d37!important;
  border-color:var(--myeclass-dark-line)!important;
  color:var(--myeclass-dark-text)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-account-dropdown-menu-v2-9-398 a,
body.myeclass-course-context-body-v2-9-375 .myeclass-action-dropdown-menu-v2-9-397 a{
  color:var(--myeclass-dark-text)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-account-dropdown-menu-v2-9-398 a:hover,
body.myeclass-course-context-body-v2-9-375 .myeclass-action-dropdown-menu-v2-9-397 a:hover{
  background:var(--myeclass-dark-line)!important;
  color:var(--myeclass-dark-text)!important;
  text-decoration:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{
  background:var(--myeclass-dark-bg)!important;
  color:var(--myeclass-dark-text)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375{
  background:var(--myeclass-dark-sidebar)!important;
  color:var(--myeclass-dark-text)!important;
  border-right:1px solid var(--myeclass-dark-line)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-role-pill-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-role-pill-v2-9-375{
  background:#f7f9fe!important;
  color:#2b3944!important;
  border-color:#eff6ff!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375{
  color:var(--myeclass-dark-text)!important;
  border-bottom:1px solid var(--myeclass-dark-line)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375 span,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375 small,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-nav-v2-9-376 section h2{
  color:#b6c7d8!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375 b{
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376{
  background:transparent!important;
  color:#fdfdfd!important;
  border-bottom:1px solid rgba(79,104,147,.55)!important;
  font-weight:400!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376:hover{
  background:var(--myeclass-dark-line)!important;
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376.is-active,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376.is-active{
  background:var(--myeclass-dark-active)!important;
  color:var(--myeclass-dark-active-text)!important;
  border-bottom-color:var(--myeclass-dark-active)!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .container.myeclass-main,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{
  background:var(--myeclass-dark-bg)!important;
  color:var(--myeclass-dark-text)!important;
  border-left:1px solid var(--myeclass-dark-line)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs{
  background:#273849!important;
  border:0!important;
  color:var(--myeclass-dark-link)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs,
body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs a{
  color:var(--myeclass-dark-link)!important;
}
body.myeclass-course-context-body-v2-9-375 h1,
body.myeclass-course-context-body-v2-9-375 h2,
body.myeclass-course-context-body-v2-9-375 h3,
body.myeclass-course-context-body-v2-9-375 h4,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h1,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h2,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h3,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h4{
  color:var(--myeclass-dark-text)!important;
}
body.myeclass-course-context-body-v2-9-375 .muted,
body.myeclass-course-context-body-v2-9-375 small,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .muted,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 small{
  color:var(--myeclass-dark-muted)!important;
}
body.myeclass-course-context-body-v2-9-375 .card,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-admin-page-v2-9-400,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .card{
  background:var(--myeclass-dark-panel)!important;
  border:1px solid var(--myeclass-dark-line)!important;
  color:var(--myeclass-dark-text)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-description-v2-9-398,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-actions-v2-9-401,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-technical-details-v2-9-401,
body.myeclass-course-context-body-v2-9-375 .myeclass-admin-section-v2-9-400{
  border-color:var(--myeclass-dark-line)!important;
}
body.myeclass-course-context-body-v2-9-375 table,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 table{
  background:transparent!important;
  color:var(--myeclass-dark-text)!important;
  border-color:var(--myeclass-dark-line)!important;
}
body.myeclass-course-context-body-v2-9-375 th,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 th{
  background:#29435c!important;
  color:#ffffff!important;
  border-bottom-color:var(--myeclass-dark-line)!important;
}
body.myeclass-course-context-body-v2-9-375 td,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 td{
  background:var(--myeclass-dark-panel)!important;
  color:#ffffff!important;
  border-bottom-color:var(--myeclass-dark-line-soft)!important;
}
body.myeclass-course-context-body-v2-9-375 tr:hover td{
  background:#314a60!important;
}
body.myeclass-course-context-body-v2-9-375 a{
  color:var(--myeclass-dark-link)!important;
}
body.myeclass-course-context-body-v2-9-375 input,
body.myeclass-course-context-body-v2-9-375 select,
body.myeclass-course-context-body-v2-9-375 textarea,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 input,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 select,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 textarea{
  background:var(--myeclass-dark-input)!important;
  color:#ffffff!important;
  border-color:var(--myeclass-dark-line)!important;
}
body.myeclass-course-context-body-v2-9-375 input::placeholder,
body.myeclass-course-context-body-v2-9-375 textarea::placeholder{
  color:#a8b8ca!important;
}
body.myeclass-course-context-body-v2-9-375 label{
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 button,
body.myeclass-course-context-body-v2-9-375 .button,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 button,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .button{
  background:#101820!important;
  color:var(--myeclass-dark-link)!important;
  border-color:var(--myeclass-dark-line)!important;
}
body.myeclass-course-context-body-v2-9-375 button:hover,
body.myeclass-course-context-body-v2-9-375 .button:hover{
  background:#233545!important;
  color:#ffffff!important;
  text-decoration:none!important;
}
body.myeclass-course-context-body-v2-9-375 button.primary,
body.myeclass-course-context-body-v2-9-375 .button.primary,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 button.primary,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .button.primary{
  background:var(--myeclass-dark-link)!important;
  border-color:var(--myeclass-dark-link)!important;
  color:#212d37!important;
}
body.myeclass-course-context-body-v2-9-375 button.danger,
body.myeclass-course-context-body-v2-9-375 .button.danger{
  background:#212d37!important;
  border-color:var(--myeclass-dark-danger)!important;
  color:var(--myeclass-dark-danger)!important;
}
body.myeclass-course-context-body-v2-9-375 .status-pill,
body.myeclass-course-context-body-v2-9-375 .badge,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .status-pill,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .badge{
  background:#1e7e0e!important;
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .flash.ok{
  background:#306844!important;
  color:#ffffff!important;
  border-color:#306844!important;
  border-radius:0!important;
}
body.myeclass-course-context-body-v2-9-375 .flash.error{
  background:#872341!important;
  color:#ffffff!important;
  border-color:#872341!important;
  border-radius:0!important;
}
body.myeclass-course-context-body-v2-9-375 .flash.info{
  background:var(--myeclass-dark-link)!important;
  color:#212d37!important;
  border-color:var(--myeclass-dark-link)!important;
  border-radius:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-inline-actions-v2-9-400>summary,
body.myeclass-course-context-body-v2-9-375 .myeclass-admin-section-v2-9-400>summary,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-openeclass-v2-9-401>summary,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-technical-details-v2-9-401>summary{
  background:#203341!important;
  color:#ffffff!important;
  border-color:var(--myeclass-dark-line)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-inline-actions-v2-9-400>div,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-compact-meta-v2-9-401,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-draft-box-v2-9-401,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-upload-bridge-disabled-v2-9-403,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-upload-bridge-preflight-v2-9-403{
  background:#203341!important;
  color:#ffffff!important;
  border-color:var(--myeclass-dark-line)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-compact-meta-v2-9-401 dt,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-helper-muted-label-v2-9-401,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-technical-details-v2-9-401>summary{
  color:var(--myeclass-dark-muted)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-compact-meta-v2-9-401 dd,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-draft-box-v2-9-401,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-draft-box-v2-9-401 *{
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .submission-img,
body.myeclass-course-context-body-v2-9-375 canvas,
body.myeclass-course-context-body-v2-9-375 img{
  border-color:var(--myeclass-dark-line)!important;
}

/* ------------------------------------------------------------
   MyEClass v2.9.406 — Assignment submissions link + statement contrast fix.
   Bug-fix only: clearer existing links and readable math in dark course tables.
   ------------------------------------------------------------ */
body.myeclass-course-context-body-v2-9-375 .myeclass-submissions-action-button-v2-9-406{
  white-space:nowrap!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-submissions-direct-link-v2-9-406{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:4px 9px!important;
  border:1px solid var(--myeclass-dark-line)!important;
  border-radius:999px!important;
  color:var(--myeclass-dark-link)!important;
  background:#203341!important;
  font-weight:700!important;
  text-decoration:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-submissions-direct-link-v2-9-406:hover{
  background:#29435c!important;
  color:#ffffff!important;
  text-decoration:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-items-table-v2-9-406 td:nth-child(4),
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-406{
  color:#ffffff!important;
  opacity:1!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-406 mjx-container,
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-406 mjx-container *,
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-406 svg,
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-406 svg *{
  color:#ffffff!important;
  fill:currentColor!important;
  stroke:currentColor!important;
  opacity:1!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-406 .MathJax,
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-406 .MathJax *{
  color:#ffffff!important;
  opacity:1!important;
}

/* ------------------------------------------------------------
   MyEClass v2.9.407 — Assignment item continuity / rubric + individual submissions links.
   Bug-fix only: no DB migration, no new AI/OCR/provider path.
   ------------------------------------------------------------ */
html,
html[data-theme="dark"]{
  background:#212d37!important;
}
body.myeclass-course-context-body-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375,
body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{
  background:var(--myeclass-dark-bg)!important;
}
body.myeclass-course-context-body-v2-9-375 .container.myeclass-main,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{
  max-width:none!important;
  width:auto!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-items-preview-v2-9-407{
  display:grid!important;
  gap:10px!important;
  margin-top:12px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-item-card-v2-9-407{
  background:#203341!important;
  border:1px solid var(--myeclass-dark-line)!important;
  padding:12px!important;
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-item-head-v2-9-407{
  display:flex!important;
  gap:10px!important;
  align-items:flex-start!important;
  margin-bottom:10px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-item-number-v2-9-407{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:26px!important;
  height:26px!important;
  border:1px solid var(--myeclass-dark-line)!important;
  background:#29435c!important;
  color:#ffffff!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-item-head-v2-9-407 b{
  display:block!important;
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-item-head-v2-9-407 small{
  display:block!important;
  margin-top:3px!important;
  color:var(--myeclass-dark-muted)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-item-statement-v2-9-407,
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-407{
  color:#ffffff!important;
  opacity:1!important;
  overflow-x:auto!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-407 mjx-container,
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-407 mjx-container *,
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-407 svg,
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-statement-v2-9-407 svg *{
  color:#ffffff!important;
  fill:currentColor!important;
  stroke:currentColor!important;
  opacity:1!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-panel-v2-9-407{
  margin-top:12px!important;
  background:#203341!important;
  border:1px solid var(--myeclass-dark-line)!important;
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-panel-v2-9-407>summary{
  padding:10px 12px!important;
  background:#203341!important;
  color:#ffffff!important;
  border-bottom:1px solid var(--myeclass-dark-line)!important;
  font-weight:700!important;
  cursor:pointer!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-panel-v2-9-407>p,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-panel-v2-9-407>table{
  margin:12px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-table-v2-9-407 td,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-table-v2-9-407 th{
  vertical-align:top!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-exercise-submissions-context-v2-9-407 .button{
  margin-right:8px!important;
}

/* ------------------------------------------------------------
   MyEClass v2.9.408 — Student assignment visual smoke cleanup.
   Bug-fix only: keep existing routes/actions, make the per-item statement,
   upload state and AI rubric surface readable on the dark course skin.
   ------------------------------------------------------------ */
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-item-card-v2-9-408{
  background:#203341!important;
  border:1px solid var(--myeclass-dark-line)!important;
  border-left:4px solid var(--myeclass-dark-accent)!important;
  box-shadow:none!important;
  overflow:visible!important;
  padding:14px 16px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-item-head-v2-9-408{
  border-bottom:1px solid rgba(100,155,197,.40)!important;
  padding-bottom:10px!important;
  margin-bottom:12px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-item-head-v2-9-408 h2,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-item-head-v2-9-408 .muted{
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-shell-v2-9-408{
  background:#172733!important;
  border:1px solid rgba(100,155,197,.48)!important;
  border-radius:4px!important;
  padding:12px 14px!important;
  margin:0 0 12px!important;
  color:#ffffff!important;
  overflow-x:auto!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-shell-v2-9-408 h3{
  margin:0 0 8px!important;
  color:#ffffff!important;
  font-size:1rem!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-408{
  color:#ffffff!important;
  opacity:1!important;
  font-size:1rem!important;
  line-height:1.85!important;
  white-space:normal!important;
  overflow-x:auto!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-408 mjx-container,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-408 mjx-container *,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-408 svg,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-408 svg *{
  color:#ffffff!important;
  fill:currentColor!important;
  stroke:currentColor!important;
  opacity:1!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-submit-shell-v2-9-408{
  display:grid!important;
  gap:10px!important;
  margin-top:10px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-submit-shell-v2-9-408 .button,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-submit-shell-v2-9-408 button{
  width:auto!important;
  max-width:max-content!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-file-upload-details-v2-9-369{
  margin-top:12px!important;
  background:#101923!important;
  border:1px solid rgba(100,155,197,.40)!important;
  border-radius:4px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-file-upload-details-v2-9-369>summary{
  color:#ffffff!important;
  padding:10px 12px!important;
}
body.myeclass-course-context-body-v2-9-375 #ml-student-upload-receipts.myeclass-student-receipts-v2-9-323{
  background:#203341!important;
  border:1px solid var(--myeclass-dark-line)!important;
  box-shadow:none!important;
}
body.myeclass-course-context-body-v2-9-375 #ml-student-upload-receipts .myeclass-action-hero{
  background:transparent!important;
  border:0!important;
  padding:0!important;
}
body.myeclass-course-context-body-v2-9-375 #ml-student-upload-receipts .myeclass-status-strip,
body.myeclass-course-context-body-v2-9-375 #ml-student-upload-receipts .myeclass-next-click-strip-v2-9-328{
  display:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-panel-v2-9-408{
  display:block!important;
  padding:0!important;
  margin:12px 0!important;
  border-radius:4px!important;
  overflow:hidden!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-head-v2-9-408{
  display:flex!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:12px!important;
  border-bottom:1px solid var(--myeclass-dark-line)!important;
  background:#172733!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-head-v2-9-408 b{
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-head-v2-9-408 p{
  margin:4px 0 0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-table-v2-9-408{
  margin:0!important;
  width:100%!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-table-v2-9-408 th,
body.myeclass-course-context-body-v2-9-375 .myeclass-ai-rubric-table-v2-9-408 td{
  color:#ffffff!important;
  border-bottom:1px solid rgba(100,155,197,.32)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-exercise-submissions-help-v2-9-408{
  margin:10px 0 14px!important;
  padding:10px 12px!important;
  border:1px solid var(--myeclass-dark-line)!important;
  background:#172733!important;
  color:#d7ecff!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-exercise-submissions-help-v2-9-408 span{
  display:inline-flex!important;
  padding:2px 8px!important;
  border:1px solid var(--myeclass-dark-line)!important;
  background:#203341!important;
  color:#ffffff!important;
  font-weight:700!important;
}

/* ------------------------------------------------------------
   MyEClass v2.9.409 — Student statement visibility hardening.
   Bug-fix only: keep existing student.assignment flow, force statement
   text/MathJax contrast and provide a safe visible fallback when an older
   row has an empty snapshot.
   ------------------------------------------------------------ */
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-item-card-v2-9-409{
  overflow:visible!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-shell-v2-9-409{
  min-height:86px!important;
  display:block!important;
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-shell-v2-9-409 h3{
  color:#ffffff!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409 *{
  color:#ffffff!important;
  opacity:1!important;
  visibility:visible!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409{
  display:block!important;
  min-height:34px!important;
  font-size:16px!important;
  line-height:1.85!important;
  white-space:pre-wrap!important;
  overflow-x:auto!important;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409 mjx-container,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409 mjx-container *,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409 mjx-container svg,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409 mjx-container svg *,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409 svg,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409 svg *,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409 path,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409 g,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409 use{
  color:#ffffff!important;
  fill:#ffffff!important;
  stroke:#ffffff!important;
  opacity:1!important;
  visibility:visible!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409 mjx-container[display="true"]{
  margin:.25rem 0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409.is-empty{
  border:1px dashed rgba(116,175,233,.55)!important;
  border-radius:4px!important;
  padding:10px 12px!important;
  background:#101820!important;
}

/* ------------------------------------------------------------
   MyEClass v2.9.410 — Course template lock / mixed-template cleanup.
   Bug-fix only: the course-local sidebar is the single course template.
   Older horizontal course tool menus and cockpit/portfolio fragments are
   suppressed inside course context so student/teacher pages do not switch skins.
   ------------------------------------------------------------ */
body.myeclass-course-context-body-v2-9-375 .myeclass-course-tools-v2-9-356,
body.myeclass-course-context-body-v2-9-375 .myeclass-minimal-course-tools-v2-9-397{
  display:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365,
body.myeclass-course-context-body-v2-9-375 .myeclass-workspace-hero,
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-workspace,
body.myeclass-course-context-body-v2-9-375 .myeclass-feedback-journey,
body.myeclass-course-context-body-v2-9-375 .myeclass-action-center,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-course-surface-v2-9-361,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-card-v2-9-369,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-exercise-card-v2-9-369{
  background:var(--myeclass-dark-panel)!important;
  border:1px solid var(--myeclass-dark-line)!important;
  color:var(--myeclass-dark-text)!important;
  box-shadow:none!important;
  border-radius:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365,
body.myeclass-course-context-body-v2-9-375 .myeclass-workspace-hero{
  border-left:0!important;
  border-top:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-tool-meta-v2-9-365 span,
body.myeclass-course-context-body-v2-9-375 .myeclass-workspace-meta span{
  background:#203341!important;
  border-color:var(--myeclass-dark-line)!important;
  color:var(--myeclass-dark-muted)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-instructions-v2-9-368,
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-collapsible-v2-9-367,
body.myeclass-course-context-body-v2-9-375 .myeclass-file-upload-details-v2-9-369,
body.myeclass-course-context-body-v2-9-375 #ml-student-upload-receipts{
  background:var(--myeclass-dark-panel)!important;
  border-color:var(--myeclass-dark-line)!important;
  color:var(--myeclass-dark-text)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-shell-v2-9-408,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-shell-v2-9-409{
  background:#203341!important;
  border-color:var(--myeclass-dark-line)!important;
  min-height:96px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-408,
body.myeclass-course-context-body-v2-9-375 .myeclass-student-assignment-statement-v2-9-409{
  color:#ffffff!important;
  font-weight:500!important;
}

/* ------------------------------------------------------------
   MyEClass v2.9.411 — One-template visual debt cleanup.
   Bug-fix only: course calendar error, shared table/math contrast,
   and bank visual cleanup without DB/schema/workflow changes.
   ------------------------------------------------------------ */
body.myeclass-course-context-body-v2-9-375{
  --myeclass-panel-411:#203341;
  --myeclass-panel-soft-411:#263c4d;
  --myeclass-panel-deep-411:#172733;
  --myeclass-panel-field-411:#0f1822;
  --myeclass-line-411:rgba(116,175,233,.42);
  --myeclass-text-411:#f7fbff;
  --myeclass-muted-411:#b7c8da;
  --myeclass-link-411:#74afe9;
}
body.myeclass-course-context-body-v2-9-375 .card{
  background:var(--myeclass-panel-411)!important;
  border-color:var(--myeclass-line-411)!important;
  color:var(--myeclass-text-411)!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.myeclass-course-context-body-v2-9-375 .card h1,
body.myeclass-course-context-body-v2-9-375 .card h2,
body.myeclass-course-context-body-v2-9-375 .card h3,
body.myeclass-course-context-body-v2-9-375 main h1,
body.myeclass-course-context-body-v2-9-375 main h2,
body.myeclass-course-context-body-v2-9-375 main h3{
  color:var(--myeclass-text-411)!important;
}
body.myeclass-course-context-body-v2-9-375 .muted,
body.myeclass-course-context-body-v2-9-375 small{
  color:var(--myeclass-muted-411)!important;
}
body.myeclass-course-context-body-v2-9-375 table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border:1px solid var(--myeclass-line-411)!important;
  background:var(--myeclass-panel-411)!important;
}
body.myeclass-course-context-body-v2-9-375 table th{
  background:#2b4a66!important;
  color:#ffffff!important;
  border-bottom:1px solid var(--myeclass-line-411)!important;
  font-size:.88rem!important;
  text-transform:none!important;
  letter-spacing:0!important;
  padding:9px 11px!important;
}
body.myeclass-course-context-body-v2-9-375 table td{
  background:var(--myeclass-panel-411)!important;
  color:var(--myeclass-text-411)!important;
  border-bottom:1px solid rgba(116,175,233,.28)!important;
  padding:10px 11px!important;
  vertical-align:top!important;
}
body.myeclass-course-context-body-v2-9-375 table tr:hover td{
  background:var(--myeclass-panel-soft-411)!important;
}
body.myeclass-course-context-body-v2-9-375 table a{
  color:var(--myeclass-link-411)!important;
}
body.myeclass-course-context-body-v2-9-375 .math-content,
body.myeclass-course-context-body-v2-9-375 .math-content *,
body.myeclass-course-context-body-v2-9-375 table .math-content,
body.myeclass-course-context-body-v2-9-375 table .math-content *{
  color:var(--myeclass-text-411)!important;
  opacity:1!important;
  visibility:visible!important;
}
body.myeclass-course-context-body-v2-9-375 .math-content mjx-container,
body.myeclass-course-context-body-v2-9-375 .math-content mjx-container *,
body.myeclass-course-context-body-v2-9-375 .math-content mjx-container svg,
body.myeclass-course-context-body-v2-9-375 .math-content mjx-container svg *,
body.myeclass-course-context-body-v2-9-375 .math-content svg,
body.myeclass-course-context-body-v2-9-375 .math-content svg *,
body.myeclass-course-context-body-v2-9-375 .math-content path,
body.myeclass-course-context-body-v2-9-375 .math-content use,
body.myeclass-course-context-body-v2-9-375 .math-content g{
  color:var(--myeclass-text-411)!important;
  fill:currentColor!important;
  stroke:currentColor!important;
  opacity:1!important;
}
body.myeclass-course-context-body-v2-9-375 input,
body.myeclass-course-context-body-v2-9-375 select,
body.myeclass-course-context-body-v2-9-375 textarea{
  background:var(--myeclass-panel-field-411)!important;
  border-color:var(--myeclass-line-411)!important;
  color:var(--myeclass-text-411)!important;
  border-radius:4px!important;
  box-shadow:none!important;
}
body.myeclass-course-context-body-v2-9-375 input::placeholder,
body.myeclass-course-context-body-v2-9-375 textarea::placeholder{
  color:#c5d3df!important;
  opacity:.75!important;
}
body.myeclass-course-context-body-v2-9-375 input[type="checkbox"],
body.myeclass-course-context-body-v2-9-375 input[type="radio"]{
  width:auto!important;
  accent-color:var(--myeclass-link-411)!important;
}
body.myeclass-course-context-body-v2-9-375 input[type="file"]{
  padding:8px!important;
}
body.myeclass-course-context-body-v2-9-375 input[type="file"]::file-selector-button{
  margin-right:10px!important;
  border:1px solid var(--myeclass-line-411)!important;
  background:#2b4a66!important;
  color:#ffffff!important;
  border-radius:4px!important;
  padding:7px 10px!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .check,
body.myeclass-course-context-body-v2-9-375 .checkbox-inline{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:6px 8px 6px 0!important;
  padding:7px 10px!important;
  border:1px solid var(--myeclass-line-411)!important;
  border-radius:4px!important;
  background:var(--myeclass-panel-deep-411)!important;
  color:var(--myeclass-text-411)!important;
  font-weight:700!important;
  vertical-align:middle!important;
}
body.myeclass-course-context-body-v2-9-375 .checkbox-inline input{
  flex:0 0 auto!important;
}
body.myeclass-course-context-body-v2-9-375 fieldset{
  border:1px solid var(--myeclass-line-411)!important;
  background:rgba(23,39,51,.72)!important;
  padding:12px!important;
  margin:12px 0!important;
  border-radius:0!important;
}
body.myeclass-course-context-body-v2-9-375 fieldset legend{
  color:#ffffff!important;
  font-weight:800!important;
  padding:0 8px!important;
}
body.myeclass-course-context-body-v2-9-375 details,
body.myeclass-course-context-body-v2-9-375 details>summary{
  border-radius:0!important;
}
body.myeclass-course-context-body-v2-9-375 details>summary{
  background:var(--myeclass-panel-deep-411)!important;
  color:var(--myeclass-text-411)!important;
  border:1px solid var(--myeclass-line-411)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-form-v2-9-411 form{
  display:grid!important;
  gap:10px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-form-v2-9-411 .rowform,
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-filter-form-v2-9-411{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;
  gap:12px!important;
  align-items:end!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-tags-v2-9-411{
  display:block!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-results-v2-9-411{
  overflow-x:auto!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411{
  min-width:1180px!important;
  table-layout:fixed!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 th:nth-child(1){width:130px!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 th:nth-child(2){width:170px!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 th:nth-child(3){width:180px!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 th:nth-child(4){width:260px!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 th:nth-child(5){width:300px!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 th:nth-child(6){width:240px!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 th:nth-child(7){width:80px!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 th:nth-child(8){width:110px!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-statement-cell-v2-9-411 .math-content{
  min-height:48px!important;
  padding:8px 10px!important;
  background:rgba(15,24,34,.56)!important;
  border:1px solid rgba(116,175,233,.25)!important;
  white-space:normal!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-gap-cell-v2-9-411{
  font-size:.92rem!important;
  line-height:1.5!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-calendar-board{
  display:grid!important;
  gap:14px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-calendar-group{
  margin:0 0 14px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-deadline-item{
  background:var(--myeclass-panel-deep-411)!important;
  border:1px solid var(--myeclass-line-411)!important;
  color:var(--myeclass-text-411)!important;
  border-radius:0!important;
}
@media(max-width:900px){
  body.myeclass-course-context-body-v2-9-375 .myeclass-bank-form-v2-9-411 .rowform,
  body.myeclass-course-context-body-v2-9-375 .myeclass-bank-filter-form-v2-9-411{grid-template-columns:1fr!important;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.412 — screenshot-driven final polish.
   Bug-fix only: keeps one dark LMS surface, improves global/course bridge,
   bank readability, checkbox/file-input alignment, and MathJax contrast.
   ------------------------------------------------------------ */
body.myeclass-portfolio-body-v2-9-398,
html[data-theme="dark"] body.myeclass-portfolio-body-v2-9-398{
  background:#07111f!important;
  color:#f6fbff!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-app-shell,
.myeclass-shell-no-sidebar-v2-9-398{
  background:#07111f!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-main,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-main{
  max-width:1180px!important;
  padding-top:24px!important;
}
body.myeclass-portfolio-body-v2-9-398 .card,
body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-simple-v2-9-398.card,
.myeclass-openeclass-flat-page-v2-9-399.card{
  background:#101820!important;
  border-color:#2d3b4a!important;
  color:#f6fbff!important;
}
body.myeclass-portfolio-body-v2-9-398 table th,
body.myeclass-portfolio-body-v2-9-398 table td,
.myeclass-openeclass-flat-page-v2-9-399 table th,
.myeclass-openeclass-flat-page-v2-9-399 table td{
  border-color:#263442!important;
}
body.myeclass-portfolio-body-v2-9-398 th,
.myeclass-openeclass-flat-page-v2-9-399 th{
  background:#151f29!important;
  color:#f7fbff!important;
}
body.myeclass-portfolio-body-v2-9-398 td,
.myeclass-openeclass-flat-page-v2-9-399 td{
  background:#101820!important;
  color:#f2f7ff!important;
}
body.myeclass-portfolio-body-v2-9-398 .muted,
.myeclass-openeclass-flat-page-v2-9-399 .muted{
  color:#c0d1e1!important;
}
body.myeclass-portfolio-body-v2-9-398 a,
.myeclass-openeclass-flat-page-v2-9-399 a{
  color:#28c8ff!important;
}

body.myeclass-course-context-body-v2-9-375 input[type="checkbox"],
body.myeclass-course-context-body-v2-9-375 input[type="radio"]{
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  margin:0!important;
  display:inline-block!important;
  vertical-align:middle!important;
}
body.myeclass-course-context-body-v2-9-375 .check,
body.myeclass-course-context-body-v2-9-375 .checkbox-inline{
  width:auto!important;
  max-width:max-content!important;
  justify-content:flex-start!important;
  text-align:left!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-tags-v2-9-411{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:8px!important;
  align-items:start!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-tags-v2-9-411 .checkbox-inline{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
}
body.myeclass-course-context-body-v2-9-375 input[type="file"]{
  background:#07111b!important;
  border:1px solid #577491!important;
  color:#f6fbff!important;
  padding:8px!important;
}
body.myeclass-course-context-body-v2-9-375 input[type="file"]::file-selector-button{
  margin-right:10px!important;
  border:1px solid #77a9d6!important;
  background:#20394f!important;
  color:#ffffff!important;
  border-radius:4px!important;
  padding:6px 10px!important;
  font-weight:700!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 td:last-child,
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 th:last-child{
  width:96px!important;
  background:#203140!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 .myeclass-bank-statement-cell-v2-9-411,
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 .myeclass-bank-statement-cell-v2-9-411 *{
  color:#f9fcff!important;
  opacity:1!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 .myeclass-bank-statement-cell-v2-9-411 mjx-container,
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 .myeclass-bank-statement-cell-v2-9-411 mjx-container *,
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 .myeclass-bank-statement-cell-v2-9-411 svg,
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-table-v2-9-411 .myeclass-bank-statement-cell-v2-9-411 svg *{
  color:#f9fcff!important;
  fill:currentColor!important;
  stroke:currentColor!important;
  opacity:1!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-bank-filter-form-v2-9-411{
  grid-template-columns:minmax(160px,1fr) minmax(140px,1fr) minmax(140px,1fr) minmax(140px,1fr) minmax(160px,1fr) minmax(120px,.8fr) auto auto!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-calendar-board .card,
body.myeclass-course-context-body-v2-9-375 .myeclass-calendar-group{
  background:#203140!important;
  border-color:#4c6680!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-deadline-item h3,
body.myeclass-course-context-body-v2-9-375 .myeclass-deadline-item p,
body.myeclass-course-context-body-v2-9-375 .myeclass-deadline-item small{
  color:#f4f8ff!important;
}
@media(max-width:1200px){
  body.myeclass-course-context-body-v2-9-375 .myeclass-bank-filter-form-v2-9-411{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;}
}


/* ------------------------------------------------------------
   MyEClass v2.9.413 — global LMS surface parity cleanup.
   Bug-fix only: removes the remaining visual split between the
   no-sidebar portfolio/classes pages and the dark course surface.
   ------------------------------------------------------------ */
body.myeclass-portfolio-body-v2-9-398,
html[data-theme="dark"] body.myeclass-portfolio-body-v2-9-398{
  --myeclass-global-bg-413:#212d37;
  --myeclass-global-top-413:#050505;
  --myeclass-global-panel-413:#2b3944;
  --myeclass-global-panel-soft-413:#29435c;
  --myeclass-global-panel-deep-413:#101820;
  --myeclass-global-line-413:#4f6893;
  --myeclass-global-line-soft-413:#39556a;
  --myeclass-global-text-413:#ffffff;
  --myeclass-global-muted-413:#b8c7db;
  --myeclass-global-link-413:#74afe9;
  --myeclass-global-action-413:#0b1016;
  background:var(--myeclass-global-bg-413)!important;
  color:var(--myeclass-global-text-413)!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-app-shell,
body.myeclass-portfolio-body-v2-9-398.myeclass-shell-no-sidebar-v2-9-398,
.myeclass-shell-no-sidebar-v2-9-398{
  background:var(--myeclass-global-bg-413)!important;
  color:var(--myeclass-global-text-413)!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-topbar,
html[data-theme="dark"] body.myeclass-portfolio-body-v2-9-398 .myeclass-topbar{
  background:var(--myeclass-global-top-413)!important;
  border-bottom:1px solid #2b3944!important;
  box-shadow:none!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-main,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-main{
  max-width:1240px!important;
  width:100%!important;
  margin:0 auto!important;
  padding:34px 22px 42px!important;
}
body.myeclass-portfolio-body-v2-9-398 .card,
body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-simple-v2-9-398.card,
body.myeclass-portfolio-body-v2-9-398 .myeclass-openeclass-flat-page-v2-9-399.card,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-openeclass-flat-page-v2-9-399.card{
  background:var(--myeclass-global-panel-413)!important;
  border:1px solid var(--myeclass-global-line-413)!important;
  color:var(--myeclass-global-text-413)!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-simple-v2-9-398.card,
body.myeclass-portfolio-body-v2-9-398 .myeclass-openeclass-flat-page-v2-9-399.card{
  margin:0 0 16px!important;
  padding:14px 16px!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-eclass-page-title-v2-9-394,
body.myeclass-portfolio-body-v2-9-398 .card h2 + p,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-eclass-page-title-v2-9-394{
  border-color:var(--myeclass-global-line-413)!important;
}
body.myeclass-portfolio-body-v2-9-398 h1,
body.myeclass-portfolio-body-v2-9-398 h2,
body.myeclass-portfolio-body-v2-9-398 h3,
.myeclass-shell-no-sidebar-v2-9-398 h1,
.myeclass-shell-no-sidebar-v2-9-398 h2,
.myeclass-shell-no-sidebar-v2-9-398 h3{
  color:var(--myeclass-global-text-413)!important;
}
body.myeclass-portfolio-body-v2-9-398 .muted,
body.myeclass-portfolio-body-v2-9-398 small,
.myeclass-shell-no-sidebar-v2-9-398 .muted,
.myeclass-shell-no-sidebar-v2-9-398 small{
  color:var(--myeclass-global-muted-413)!important;
}
body.myeclass-portfolio-body-v2-9-398 a,
.myeclass-shell-no-sidebar-v2-9-398 a{
  color:var(--myeclass-global-link-413)!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-table-wrap-v2-9-362,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-table-wrap-v2-9-362{
  border:1px solid var(--myeclass-global-line-413)!important;
  border-radius:0!important;
  overflow:hidden!important;
  background:var(--myeclass-global-panel-413)!important;
}
body.myeclass-portfolio-body-v2-9-398 table,
.myeclass-shell-no-sidebar-v2-9-398 table{
  width:100%!important;
  color:var(--myeclass-global-text-413)!important;
  border-color:var(--myeclass-global-line-413)!important;
}
body.myeclass-portfolio-body-v2-9-398 th,
.myeclass-shell-no-sidebar-v2-9-398 th{
  background:var(--myeclass-global-panel-soft-413)!important;
  color:#ffffff!important;
  border-bottom:1px solid var(--myeclass-global-line-413)!important;
}
body.myeclass-portfolio-body-v2-9-398 td,
.myeclass-shell-no-sidebar-v2-9-398 td{
  background:var(--myeclass-global-panel-413)!important;
  color:#ffffff!important;
  border-bottom:1px solid var(--myeclass-global-line-soft-413)!important;
}
body.myeclass-portfolio-body-v2-9-398 tr:hover td,
.myeclass-shell-no-sidebar-v2-9-398 tr:hover td{
  background:#314a60!important;
}
body.myeclass-portfolio-body-v2-9-398 .button,
body.myeclass-portfolio-body-v2-9-398 button,
body.myeclass-portfolio-body-v2-9-398 input[type="submit"],
.myeclass-shell-no-sidebar-v2-9-398 .button,
.myeclass-shell-no-sidebar-v2-9-398 button,
.myeclass-shell-no-sidebar-v2-9-398 input[type="submit"]{
  background:var(--myeclass-global-action-413)!important;
  border:1px solid var(--myeclass-global-line-413)!important;
  color:#ffffff!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.myeclass-portfolio-body-v2-9-398 .button.primary,
body.myeclass-portfolio-body-v2-9-398 button.primary,
.myeclass-shell-no-sidebar-v2-9-398 .button.primary,
.myeclass-shell-no-sidebar-v2-9-398 button.primary{
  background:#74afe9!important;
  border-color:#74afe9!important;
  color:#07111f!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-action-dropdown-v2-9-397>summary,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-action-dropdown-v2-9-397>summary{
  background:var(--myeclass-global-action-413)!important;
  border-color:var(--myeclass-global-line-413)!important;
  color:#ffffff!important;
  border-radius:0!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-action-dropdown-menu-v2-9-397,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-action-dropdown-menu-v2-9-397{
  background:#212d37!important;
  border-color:var(--myeclass-global-line-413)!important;
  border-radius:0!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-grid-v2-9-398{
  grid-template-columns:minmax(0,1fr) 240px!important;
  gap:16px!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-actions-v2-9-398 .button{
  min-height:30px!important;
  justify-content:flex-start!important;
}
body.myeclass-portfolio-body-v2-9-398 details.card>summary,
.myeclass-shell-no-sidebar-v2-9-398 details.card>summary{
  background:#203140!important;
  border:1px solid var(--myeclass-global-line-413)!important;
  color:#ffffff!important;
  padding:10px 12px!important;
}
@media(max-width:900px){
  body.myeclass-portfolio-body-v2-9-398 .myeclass-main,
  .myeclass-shell-no-sidebar-v2-9-398 .myeclass-main{padding:18px 12px 28px!important;}
  body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-grid-v2-9-398{grid-template-columns:1fr!important;}
}


/* ------------------------------------------------------------
   MyEClass v2.9.414 — global table cell / background tone cleanup.
   Bug-fix only: fixes table action-cell drift seen in screenshots and
   locks the no-sidebar empty surface to the same Open-eClass dark tone.
   ------------------------------------------------------------ */
body.myeclass-portfolio-body-v2-9-398,
html[data-theme="dark"] body.myeclass-portfolio-body-v2-9-398{
  --myeclass-global-bg-413:#212d37;
  --myeclass-global-panel-413:#2b3944;
  --myeclass-global-panel-soft-413:#29435c;
  --myeclass-global-line-413:#4f6893;
  --myeclass-global-line-soft-413:#39556a;
  background:#212d37!important;
  background-image:none!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-app-shell,
body.myeclass-portfolio-body-v2-9-398.myeclass-shell-no-sidebar-v2-9-398,
.myeclass-shell-no-sidebar-v2-9-398{
  background:#212d37!important;
  background-image:none!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-main,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-main{
  background:#212d37!important;
}
/* The generic .actions utility is flex elsewhere; inside tables it must stay
   a real table cell. Otherwise Chromium paints the cell border as a stray
   rectangular fragment under the Ενέργειες button. */
body.myeclass-portfolio-body-v2-9-398 td.actions,
body.myeclass-portfolio-body-v2-9-398 th.actions,
.myeclass-shell-no-sidebar-v2-9-398 td.actions,
.myeclass-shell-no-sidebar-v2-9-398 th.actions,
body.myeclass-course-context-body-v2-9-375 td.actions,
body.myeclass-course-context-body-v2-9-375 th.actions{
  display:table-cell!important;
  position:relative!important;
  white-space:nowrap!important;
  text-align:left!important;
  vertical-align:middle!important;
  min-width:112px!important;
}
body.myeclass-portfolio-body-v2-9-398 td.actions .myeclass-action-dropdown-v2-9-397,
.myeclass-shell-no-sidebar-v2-9-398 td.actions .myeclass-action-dropdown-v2-9-397,
body.myeclass-course-context-body-v2-9-375 td.actions .myeclass-action-dropdown-v2-9-397{
  display:inline-block!important;
  vertical-align:middle!important;
}
body.myeclass-portfolio-body-v2-9-398 td.actions .button,
body.myeclass-portfolio-body-v2-9-398 td.actions button,
body.myeclass-portfolio-body-v2-9-398 td.actions .myeclass-action-dropdown-v2-9-397>summary,
.myeclass-shell-no-sidebar-v2-9-398 td.actions .button,
.myeclass-shell-no-sidebar-v2-9-398 td.actions button,
.myeclass-shell-no-sidebar-v2-9-398 td.actions .myeclass-action-dropdown-v2-9-397>summary{
  margin:0!important;
}
body.myeclass-portfolio-body-v2-9-398 table tr:last-child td,
.myeclass-shell-no-sidebar-v2-9-398 table tr:last-child td{
  border-bottom:0!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-table-wrap-v2-9-362,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-table-wrap-v2-9-362{
  overflow:visible!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-table-wrap-v2-9-362 table,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-table-wrap-v2-9-362 table{
  border-collapse:collapse!important;
  table-layout:auto!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-simple-v2-9-398.card,
body.myeclass-portfolio-body-v2-9-398 .myeclass-openeclass-flat-page-v2-9-399.card,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-openeclass-flat-page-v2-9-399.card{
  background:#2b3944!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-actions-v2-9-398{
  display:grid!important;
  gap:6px!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-actions-v2-9-398 .button{
  width:100%!important;
  text-align:left!important;
}
@media(max-width:900px){
  body.myeclass-portfolio-body-v2-9-398 td.actions,
  .myeclass-shell-no-sidebar-v2-9-398 td.actions{min-width:96px!important;}
}


/* ------------------------------------------------------------
   MyEClass v2.9.415 — dropdown overflow + dark background tone cleanup.
   Bug-fix only: action dropdowns must not create clipped scrollbars in
   portfolio/course tables, and the empty dark-theme LMS background is #787878.
   ------------------------------------------------------------ */
body.myeclass-portfolio-body-v2-9-398,
html[data-theme="dark"] body.myeclass-portfolio-body-v2-9-398,
body.myeclass-course-context-body-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375{
  --myeclass-global-bg-413:#787878!important;
  --myeclass-dark-bg:#787878!important;
  background:#787878!important;
  background-image:none!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-app-shell,
body.myeclass-portfolio-body-v2-9-398.myeclass-shell-no-sidebar-v2-9-398,
.myeclass-shell-no-sidebar-v2-9-398,
body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{
  background:#787878!important;
  background-image:none!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-main,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-main,
body.myeclass-course-context-body-v2-9-375 .myeclass-main,
body.myeclass-course-context-shell-v2-9-375 .myeclass-main,
.myeclass-course-context-shell-v2-9-375 .myeclass-main{
  background:#787878!important;
  background-image:none!important;
}
/* Chromium was treating table cards as scroll containers via the old
   .card:has(table){overflow-x:auto} responsive rule. That clipped absolute
   action menus and painted the scrollbar shown in the screenshot. */
body.myeclass-portfolio-body-v2-9-398 .card:has(.myeclass-action-dropdown-v2-9-397),
body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-simple-v2-9-398.card,
body.myeclass-portfolio-body-v2-9-398 .myeclass-openeclass-flat-page-v2-9-399.card,
.myeclass-shell-no-sidebar-v2-9-398 .card:has(.myeclass-action-dropdown-v2-9-397),
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-openeclass-flat-page-v2-9-399.card,
body.myeclass-course-context-body-v2-9-375 .card:has(.myeclass-action-dropdown-v2-9-397),
body.myeclass-course-context-body-v2-9-375 .panel:has(.myeclass-action-dropdown-v2-9-397),
body.myeclass-course-context-body-v2-9-375 .mini-card:has(.myeclass-action-dropdown-v2-9-397),
body.myeclass-course-context-body-v2-9-375 .myeclass-assignments-table-v2-9-362,
body.myeclass-course-context-body-v2-9-375 .myeclass-assignments-table-v2-9-390,
body.myeclass-course-context-body-v2-9-375 .myeclass-teacher-submissions-table-reset-v2-9-396{
  overflow:visible!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-table-wrap-v2-9-362,
body.myeclass-portfolio-body-v2-9-398 .myeclass-table-scroll,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-table-wrap-v2-9-362,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-table-scroll,
body.myeclass-course-context-body-v2-9-375 .myeclass-table-wrap-v2-9-362,
body.myeclass-course-context-body-v2-9-375 .myeclass-table-scroll{
  overflow:visible!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-action-dropdown-v2-9-397,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-action-dropdown-v2-9-397,
body.myeclass-course-context-body-v2-9-375 .myeclass-action-dropdown-v2-9-397{
  position:relative!important;
  z-index:20!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-action-dropdown-v2-9-397[open],
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-action-dropdown-v2-9-397[open],
body.myeclass-course-context-body-v2-9-375 .myeclass-action-dropdown-v2-9-397[open]{
  z-index:3000!important;
}
body.myeclass-portfolio-body-v2-9-398 .myeclass-action-dropdown-menu-v2-9-397,
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-action-dropdown-menu-v2-9-397,
body.myeclass-course-context-body-v2-9-375 .myeclass-action-dropdown-menu-v2-9-397{
  z-index:3001!important;
  max-height:none!important;
  overflow:visible!important;
}
body.myeclass-portfolio-body-v2-9-398 td.actions:has(.myeclass-action-dropdown-v2-9-397[open]),
.myeclass-shell-no-sidebar-v2-9-398 td.actions:has(.myeclass-action-dropdown-v2-9-397[open]),
body.myeclass-course-context-body-v2-9-375 td.actions:has(.myeclass-action-dropdown-v2-9-397[open]){
  z-index:3002!important;
}
/* The dropdown must appear over the next card rather than forcing an internal
   scrollbar inside the current card. */
body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-simple-v2-9-398.card:has(.myeclass-action-dropdown-v2-9-397[open]),
body.myeclass-portfolio-body-v2-9-398 .myeclass-openeclass-flat-page-v2-9-399.card:has(.myeclass-action-dropdown-v2-9-397[open]),
.myeclass-shell-no-sidebar-v2-9-398 .myeclass-openeclass-flat-page-v2-9-399.card:has(.myeclass-action-dropdown-v2-9-397[open]),
body.myeclass-course-context-body-v2-9-375 .card:has(.myeclass-action-dropdown-v2-9-397[open]){
  position:relative!important;
  z-index:2500!important;
}


/* ------------------------------------------------------------
   MyEClass v2.9.416 — assignment detail header/tabs overflow cleanup.
   Bug-fix only: the assignment detail page must not clip its top action
   buttons/dropdown, the tab strip must read as one dark Open-eClass control,
   and #787878 stays as empty LMS background without leaking into controls.
   ------------------------------------------------------------ */
body.myeclass-course-context-body-v2-9-375{
  overflow-x:hidden!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{
  grid-template-columns:218px minmax(0,1fr)!important;
  min-width:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375{
  min-width:0!important;
}
body.myeclass-course-context-body-v2-9-375 .container.myeclass-main,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  overflow:visible!important;
  background:#787878!important;
  padding:18px 22px 34px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-main > .card,
body.myeclass-course-context-body-v2-9-375 .myeclass-main > section,
body.myeclass-course-context-body-v2-9-375 .myeclass-main > details{
  max-width:100%!important;
  min-width:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-detail-reset-v2-9-395,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-detail-reset-v2-9-395{
  overflow:visible!important;
  position:relative!important;
  z-index:20!important;
  margin-bottom:12px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-section-reset-v2-9-395,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-section-reset-v2-9-395{
  overflow:visible!important;
  position:relative!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:12px!important;
  overflow:visible!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394 > div:first-child{
  min-width:0!important;
  overflow-wrap:anywhere!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394 h2,
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394 p{
  min-width:0!important;
  overflow-wrap:anywhere!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-page-actions-v2-9-398{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-page-actions-v2-9-398 .button,
body.myeclass-course-context-body-v2-9-375 .myeclass-page-actions-v2-9-398 button,
body.myeclass-course-context-body-v2-9-375 .myeclass-page-actions-v2-9-398 .myeclass-action-dropdown-v2-9-397{
  flex:0 0 auto!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-page-actions-v2-9-398 .myeclass-action-dropdown-v2-9-397[open]{
  z-index:5000!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-page-actions-v2-9-398 .myeclass-action-dropdown-menu-v2-9-397{
  right:0!important;
  left:auto!important;
  max-width:min(280px,calc(100vw - 32px))!important;
  white-space:normal!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-page-actions-v2-9-398 .myeclass-action-dropdown-menu-v2-9-397 a{
  white-space:normal!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-tabs-v2-9-395{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:0!important;
  margin:10px 0 0!important;
  padding:0!important;
  border:1px solid var(--myeclass-dark-line)!important;
  border-top:0!important;
  background:#203341!important;
  overflow:visible!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-tabs-v2-9-395 a{
  min-height:34px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:8px 16px!important;
  border:0!important;
  border-right:1px solid var(--myeclass-dark-line-soft)!important;
  border-bottom:3px solid transparent!important;
  border-radius:0!important;
  background:#203341!important;
  color:#cfe4ff!important;
  font-size:13px!important;
  line-height:16px!important;
  font-weight:700!important;
  text-decoration:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-tabs-v2-9-395 a:hover{
  background:#29435c!important;
  color:#ffffff!important;
  text-decoration:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-tabs-v2-9-395 a.is-active,
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-tabs-v2-9-395 a[aria-current="page"]{
  background:#29435c!important;
  color:#ffffff!important;
  border-bottom-color:var(--myeclass-dark-link)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-section-reset-v2-9-395>summary{
  min-width:0!important;
  overflow:visible!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-section-reset-v2-9-395>summary::after{
  flex:0 0 24px!important;
  margin-left:auto!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-section-reset-v2-9-395>*:not(summary){
  min-width:0!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-table-scroll,
body.myeclass-course-context-body-v2-9-375 .myeclass-table-wrap-v2-9-362{
  max-width:100%!important;
}
@media(max-width:1100px){
  body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394{
    grid-template-columns:1fr!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-page-actions-v2-9-398{
    justify-content:flex-start!important;
  }
}
@media(max-width:900px){
  body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{
    grid-template-columns:1fr!important;
  }
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{
    padding:12px!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-page-actions-v2-9-398 .button,
  body.myeclass-course-context-body-v2-9-375 .myeclass-page-actions-v2-9-398 .myeclass-action-dropdown-v2-9-397>summary{
    min-height:34px!important;
  }
}

/* ------------------------------------------------------------
   MyEClass v2.9.417 — wide tool strip clipping cleanup.
   Bug-fix only: long pill/tab toolbars must not lose their first active
   item at the left edge or clip active outlines. This targets only wide
   tool strips (8+ direct items) so normal forms/filters keep wrapping.
   ------------------------------------------------------------ */
.toolbar:has(> :nth-child(8)),
.tabs:has(> :nth-child(8)),
[role="tablist"]:has(> :nth-child(8)),
.myeclass-tool-strip-v2-9-417,
.myeclass-wide-tabs-v2-9-417,
.myeclass-admin-toolbar-v2-9-417,
.myeclass-schema-toolbar-v2-9-417{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  padding:6px 10px 8px!important;
  margin-left:0!important;
  margin-right:0!important;
  scroll-padding-inline:10px!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-gutter:stable both-edges;
}
.toolbar:has(> :nth-child(8)) > *,
.tabs:has(> :nth-child(8)) > *,
[role="tablist"]:has(> :nth-child(8)) > *,
.myeclass-tool-strip-v2-9-417 > *,
.myeclass-wide-tabs-v2-9-417 > *,
.myeclass-admin-toolbar-v2-9-417 > *,
.myeclass-schema-toolbar-v2-9-417 > *{
  flex:0 0 auto!important;
  max-width:calc(100vw - 28px)!important;
  white-space:nowrap!important;
}
.toolbar:has(> :nth-child(8)) > :first-child,
.tabs:has(> :nth-child(8)) > :first-child,
[role="tablist"]:has(> :nth-child(8)) > :first-child,
.myeclass-tool-strip-v2-9-417 > :first-child,
.myeclass-wide-tabs-v2-9-417 > :first-child,
.myeclass-admin-toolbar-v2-9-417 > :first-child,
.myeclass-schema-toolbar-v2-9-417 > :first-child{
  margin-left:0!important;
}
.toolbar:has(> :nth-child(8)) > :last-child,
.tabs:has(> :nth-child(8)) > :last-child,
[role="tablist"]:has(> :nth-child(8)) > :last-child,
.myeclass-tool-strip-v2-9-417 > :last-child,
.myeclass-wide-tabs-v2-9-417 > :last-child,
.myeclass-admin-toolbar-v2-9-417 > :last-child,
.myeclass-schema-toolbar-v2-9-417 > :last-child{
  margin-right:10px!important;
}
.card:has(.toolbar > :nth-child(8)),
.panel:has(.toolbar > :nth-child(8)),
.mini-card:has(.toolbar > :nth-child(8)),
.card:has([role="tablist"] > :nth-child(8)),
.panel:has([role="tablist"] > :nth-child(8)){
  overflow:visible!important;
}
.toolbar:has(> :nth-child(8)) .active,
.tabs:has(> :nth-child(8)) .active,
[role="tablist"]:has(> :nth-child(8)) [aria-selected="true"],
[role="tablist"]:has(> :nth-child(8)) .active{
  position:relative!important;
  z-index:2!important;
  outline-offset:0!important;
}
@media(max-width:900px){
  .toolbar:has(> :nth-child(8)),
  .tabs:has(> :nth-child(8)),
  [role="tablist"]:has(> :nth-child(8)){
    padding-left:12px!important;
    padding-right:12px!important;
  }
}

/* ------------------------------------------------------------
   MyEClass v2.9.418 — assignment detail tab target cleanup.
   Bug-fix only: assignment tabs must point to real full URLs/fragments,
   show the correct active tab, and not hide anchored panels under chrome.
   ------------------------------------------------------------ */
body.myeclass-course-context-body-v2-9-375 #myeclass-assignment-description,
body.myeclass-course-context-body-v2-9-375 #myeclass-assignment-submissions,
body.myeclass-course-context-body-v2-9-375 #myeclass-assignment-settings{
  scroll-margin-top:78px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-tabs-v2-9-395 a[data-myeclass-assignment-tab]{
  cursor:pointer!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-tabs-v2-9-395 a[data-myeclass-assignment-tab]:focus-visible{
  outline:2px solid #7cc4ff!important;
  outline-offset:2px!important;
}


/* ------------------------------------------------------------
   MyEClass v2.9.419 — assignment submissions exercise mapping cleanup.
   Bug-fix only: teacher submission intake is grouped by student and each
   uploaded attempt names the exact assignment item/exercise target.
   ------------------------------------------------------------ */
body.myeclass-course-context-body-v2-9-375 .myeclass-teacher-submissions-grouped-v2-9-419{
  overflow:visible!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-submission-summary-strip-v2-9-419{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:10px 0 14px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-submission-student-summary-v2-9-419 td,
body.myeclass-course-context-body-v2-9-375 .myeclass-submissions-by-exercise-v2-9-419 td{
  vertical-align:top!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-submission-target-chips-v2-9-419{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  align-items:flex-start!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-submission-target-chip-v2-9-419{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  max-width:100%!important;
  padding:4px 8px!important;
  border:1px solid rgba(124,196,255,.45)!important;
  border-radius:999px!important;
  background:rgba(12,28,43,.82)!important;
  color:#dff2ff!important;
  font-weight:700!important;
  line-height:1.25!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-submission-target-chip-v2-9-419 small{
  color:#7cc4ff!important;
  font-weight:800!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-submission-groups-v2-9-419{
  display:grid!important;
  gap:12px!important;
  margin-top:14px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-submission-group-v2-9-419{
  overflow:visible!important;
  border-color:rgba(124,196,255,.38)!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-student-submission-group-v2-9-419>summary{
  background:#18344a!important;
  border-bottom:1px solid rgba(124,196,255,.28)!important;
  padding:10px 12px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-submissions-by-exercise-v2-9-419 td:first-child{
  min-width:230px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-submissions-by-exercise-v2-9-419 td.actions{
  white-space:nowrap!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-submissions-by-exercise-v2-9-419 .button,
body.myeclass-course-context-body-v2-9-375 .myeclass-submission-student-summary-v2-9-419 .button{
  margin:2px!important;
}

/* v2.9.420: pilot-grade student upload flow */
.myeclass-student-upload-progress-v2-9-420 {
  display: grid;
  gap: 14px;
}
.myeclass-progressbar-v2-9-420 {
  width: 100%;
  min-height: 10px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--line) 55%, transparent);
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--line) 85%, transparent);
}
.myeclass-progressbar-v2-9-420 span {
  display: block;
  height: 100%;
  min-height: 10px;
  border-radius: inherit;
  background: var(--accent);
}
.myeclass-submit-methods-v2-9-420 {
  margin-top: 12px;
  padding: 12px;
  border: 1px solid color-mix(in srgb, var(--line) 80%, transparent);
  border-radius: 14px;
  background: color-mix(in srgb, var(--card) 82%, transparent);
}
.myeclass-submit-method-grid-v2-9-420 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: flex-start;
}
.myeclass-submit-method-grid-v2-9-420 > a.button,
.myeclass-submit-method-grid-v2-9-420 > form,
.myeclass-submit-method-grid-v2-9-420 > details {
  margin: 0;
}
.myeclass-mobile-handoff-form-v2-9-420 { display: inline-flex; }
.myeclass-upload-method-v2-9-420 {
  min-width: min(100%, 320px);
  border: 1px solid color-mix(in srgb, var(--line) 75%, transparent);
  border-radius: 12px;
  background: color-mix(in srgb, var(--surface) 72%, transparent);
}
.myeclass-upload-method-v2-9-420 summary {
  cursor: pointer;
  padding: 10px 12px;
  font-weight: 700;
}
.myeclass-upload-method-v2-9-420 .callout {
  margin: 0 10px 10px;
}
.myeclass-file-preview-form-v2-9-420 {
  display: grid;
  gap: 12px;
}
.myeclass-upload-preview-v2-9-420 {
  display: grid;
  gap: 10px;
  margin-top: 4px;
}
.myeclass-upload-preview-summary-v2-9-420 {
  margin: 0;
  font-weight: 700;
}
.myeclass-upload-preview-list-v2-9-420 {
  display: grid;
  gap: 10px;
}
.myeclass-upload-preview-card-v2-9-420 {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border: 1px solid color-mix(in srgb, var(--line) 80%, transparent);
  border-radius: 12px;
  background: color-mix(in srgb, var(--card) 88%, transparent);
}
.myeclass-upload-preview-thumb-v2-9-420 {
  width: 88px;
  height: 72px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  overflow: hidden;
  background: color-mix(in srgb, var(--surface) 88%, transparent);
  border: 1px solid color-mix(in srgb, var(--line) 75%, transparent);
  font-weight: 800;
}
.myeclass-upload-preview-thumb-v2-9-420 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.myeclass-upload-preview-meta-v2-9-420 {
  min-width: 0;
  display: grid;
  gap: 4px;
}
.myeclass-upload-preview-meta-v2-9-420 strong {
  overflow-wrap: anywhere;
}
.myeclass-upload-preview-meta-v2-9-420 small {
  color: var(--muted);
}
.myeclass-upload-preview-actions-v2-9-420 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}
.myeclass-upload-preview-actions-v2-9-420 button {
  margin: 0;
}
@media (max-width: 720px) {
  .myeclass-upload-preview-card-v2-9-420 {
    grid-template-columns: 72px minmax(0, 1fr);
  }
  .myeclass-upload-preview-thumb-v2-9-420 {
    width: 72px;
    height: 64px;
  }
  .myeclass-upload-preview-actions-v2-9-420 {
    grid-column: 1 / -1;
    justify-content: stretch;
  }
  .myeclass-upload-preview-actions-v2-9-420 button {
    flex: 1 1 auto;
  }
}

/* ------------------------------------------------------------
   MyEClass v2.9.426 — Dark-only responsive shell reset.
   Visual/shell only: no upload, correction, AI/OCR, notifications,
   publication, schema or route behavior changes.
   ------------------------------------------------------------ */
:root,
html[data-theme="dark"]{
  color-scheme:dark;
  --ml-shell-topbar-h:56px;
  --ml-shell-sidebar-w:244px;
  --bg:#0b1118;
  --card:#203443;
  --surface:#172635;
  --surface-2:#101b27;
  --ink:#f5f8fc;
  --muted:#c5d5e4;
  --line:#41617a;
  --accent:#71b7f3;
  --accent-2:#31d0ff;
  --soft:rgba(113,183,243,.14);
  --ok:#3ddc97;
  --danger:#ff9a9a;
}
html{background:#0b1118!important;overflow-x:hidden!important;}
body,
html[data-theme="dark"] body,
body.myeclass-portfolio-body-v2-9-398,
body.myeclass-course-context-body-v2-9-375{
  margin:0!important;
  background:#0b1118!important;
  color:var(--ink)!important;
  overflow-x:hidden!important;
}
.myeclass-body::before{content:none!important;}
.myeclass-app-shell,
html[data-theme="dark"] .myeclass-app-shell{
  min-height:100vh!important;
  background:#0b1118!important;
  color:var(--ink)!important;
}
.myeclass-app-shell.myeclass-shell-no-sidebar-v2-9-398,
.myeclass-app-shell.myeclass-shell-guest{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:var(--ml-shell-topbar-h) 1fr!important;
}
.myeclass-app-shell.myeclass-shell-with-sidebar,
body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{
  display:grid!important;
  grid-template-columns:var(--ml-shell-sidebar-w) minmax(0,1fr)!important;
  grid-template-rows:var(--ml-shell-topbar-h) 1fr!important;
  align-items:start!important;
  background:#0b1118!important;
  color:var(--ink)!important;
}
.top.myeclass-topbar,
.myeclass-topbar,
body.myeclass-course-context-body-v2-9-375 .myeclass-topbar,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-topbar{
  grid-column:1 / -1!important;
  min-height:var(--ml-shell-topbar-h)!important;
  height:var(--ml-shell-topbar-h)!important;
  padding:0 clamp(12px,1.8vw,24px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  position:sticky!important;
  top:0!important;
  z-index:1000!important;
  background:#000!important;
  border-bottom:1px solid #24394c!important;
  box-shadow:none!important;
  color:#fff!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  overflow:visible!important;
}
.myeclass-topbar-left{display:flex!important;align-items:center!important;gap:28px!important;min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;}
.myeclass-brand{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;min-width:0!important;padding:0!important;color:#fff!important;text-decoration:none!important;}
.myeclass-brand .brand-copy{display:none!important;}
.myeclass-brand .brand-logo-shell,
body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-logo-shell{
  width:72px!important;
  height:46px!important;
  max-width:72px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}
.myeclass-brand .brand-logo,
body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-logo{
  max-width:72px!important;
  max-height:46px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}
.brand-logo-light{display:none!important;}
.brand-logo-dark{display:block!important;}
.myeclass-global-topnav-v2-9-375,
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375{
  display:flex!important;
  align-items:center!important;
  gap:28px!important;
  min-width:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  -webkit-overflow-scrolling:touch!important;
}
.myeclass-global-topnav-v2-9-375::-webkit-scrollbar{display:none!important;}
.myeclass-global-topnav-v2-9-375 a,
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a{
  min-height:var(--ml-shell-topbar-h)!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:0 0!important;
  border:0!important;
  border-bottom:2px solid transparent!important;
  border-radius:0!important;
  background:transparent!important;
  color:#f5f8fc!important;
  font-size:15px!important;
  line-height:18px!important;
  font-weight:800!important;
  text-decoration:none!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
.myeclass-global-topnav-v2-9-375 a:hover,
.myeclass-global-topnav-v2-9-375 a.is-active,
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a:hover,
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a.is-active{
  color:var(--accent)!important;
  border-bottom-color:#31d0ff!important;
  text-decoration:none!important;
}
.myeclass-user-nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex:0 0 auto!important;min-width:0!important;}
.myeclass-account-dropdown-v2-9-398{position:relative!important;}
.myeclass-account-dropdown-v2-9-398>summary,
body.myeclass-course-context-body-v2-9-375 .myeclass-account-dropdown-v2-9-398>summary,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-account-dropdown-v2-9-398>summary{
  min-height:34px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:6px 10px!important;
  border:1px solid #344b61!important;
  border-radius:4px!important;
  background:#05070a!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:14px!important;
  line-height:18px!important;
  font-weight:800!important;
  cursor:pointer!important;
  list-style:none!important;
  max-width:230px!important;
}
.myeclass-account-dropdown-v2-9-398>summary::-webkit-details-marker{display:none!important;}
.myeclass-account-dropdown-v2-9-398>summary span{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.myeclass-account-dropdown-menu-v2-9-398{
  background:#101b27!important;
  border:1px solid #41617a!important;
  border-radius:8px!important;
  box-shadow:0 18px 48px rgba(0,0,0,.45)!important;
  color:#fff!important;
}
.myeclass-account-dropdown-menu-v2-9-398 a,
.myeclass-account-dropdown-menu-v2-9-398 button{color:#f5f8fc!important;background:transparent!important;border:0!important;}
.myeclass-account-dropdown-menu-v2-9-398 a:hover,
.myeclass-account-dropdown-menu-v2-9-398 button:hover{background:#203443!important;text-decoration:none!important;}
.myeclass-nav-toggle,
html[data-theme="dark"] .myeclass-nav-toggle,
body.myeclass-course-context-body-v2-9-375 .myeclass-nav-toggle{
  display:none!important;
  min-height:34px!important;
  align-items:center!important;
  gap:8px!important;
  padding:6px 10px!important;
  border:1px solid #344b61!important;
  border-radius:4px!important;
  background:#05070a!important;
  color:#f5f8fc!important;
  box-shadow:none!important;
  font-size:14px!important;
  font-weight:800!important;
}
.myeclass-nav-toggle .shell-icon svg{stroke-width:2.5!important;}
.myeclass-sidebar.myeclass-course-sidebar-v2-9-375,
body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375{
  grid-column:1!important;
  grid-row:2!important;
  width:var(--ml-shell-sidebar-w)!important;
  height:calc(100vh - var(--ml-shell-topbar-h))!important;
  position:sticky!important;
  top:var(--ml-shell-topbar-h)!important;
  align-self:start!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  padding:18px 0 24px!important;
  background:#182836!important;
  border-right:1px solid #41617a!important;
  box-shadow:none!important;
  color:#f5f8fc!important;
  z-index:900!important;
  scrollbar-color:#5b7b94 #182836!important;
}
.myeclass-course-sidebar-reset-v2-9-393 .myeclass-sidebar-inner,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-reset-v2-9-393 .myeclass-sidebar-inner{
  padding:0 10px!important;
  gap:14px!important;
}
.myeclass-course-role-pill-v2-9-375,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-role-pill-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-role-pill-v2-9-375{
  min-height:36px!important;
  margin:0 0 14px!important;
  padding:8px 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  background:#edf5fc!important;
  border:1px solid #cfe3f5!important;
  border-radius:999px!important;
  color:#172635!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}
.myeclass-course-role-pill-v2-9-375 .shell-icon{color:#172635!important;}
.myeclass-course-sidebar-title-v2-9-375,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375{
  display:grid!important;
  gap:5px!important;
  margin:0 0 14px!important;
  padding:0 4px 14px!important;
  border-bottom:1px solid #41617a!important;
  background:transparent!important;
  color:#f5f8fc!important;
}
.myeclass-course-sidebar-title-v2-9-375 span,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375 span{
  color:#9db5c9!important;
  font-size:11px!important;
  line-height:15px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
.myeclass-course-sidebar-title-v2-9-375 b,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375 b{
  color:#ffffff!important;
  font-size:15px!important;
  line-height:20px!important;
  font-weight:900!important;
  letter-spacing:-.01em!important;
}
.myeclass-course-sidebar-title-v2-9-375 small,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-title-v2-9-375 small{color:#c5d5e4!important;font-size:12px!important;line-height:16px!important;}
.myeclass-course-sidebar-nav-v2-9-376 section h2,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-nav-v2-9-376 section h2{
  margin:0 4px 8px!important;
  color:#ffffff!important;
  font-size:13px!important;
  line-height:16px!important;
  font-weight:900!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.myeclass-course-sidebar-nav-v2-9-376 h2::before{content:'⌄ '!important;color:#ffffff!important;}
.myeclass-course-sidebar-link-v2-9-376,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376{
  min-height:42px!important;
  margin:0!important;
  padding:10px 12px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  border:0!important;
  border-bottom:1px solid rgba(113,183,243,.18)!important;
  border-radius:0!important;
  background:transparent!important;
  color:#f5f8fc!important;
  box-shadow:none!important;
  font-size:15px!important;
  line-height:18px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.myeclass-course-sidebar-link-v2-9-376:hover,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376:hover{
  background:#21384a!important;
  color:#ffffff!important;
  text-decoration:none!important;
}
.myeclass-course-sidebar-link-v2-9-376.is-active,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376.is-active,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376.is-active{
  background:#70afe9!important;
  color:#062137!important;
  border-bottom-color:#70afe9!important;
  font-weight:900!important;
}
.myeclass-course-sidebar-link-v2-9-376 .shell-icon,
.myeclass-course-sidebar-link-v2-9-376 .shell-icon svg,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376 .shell-icon,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-sidebar-link-v2-9-376 .shell-icon svg{
  width:20px!important;
  height:20px!important;
  color:currentColor!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  flex:0 0 20px!important;
}
.shell-icon,
.shell-icon svg{color:currentColor;}
.container.myeclass-main,
body.myeclass-course-context-body-v2-9-375 .container.myeclass-main,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{
  grid-column:2!important;
  grid-row:2!important;
  width:100%!important;
  max-width:1280px!important;
  margin:0 auto!important;
  min-height:calc(100vh - var(--ml-shell-topbar-h))!important;
  padding:clamp(18px,2.4vw,30px)!important;
  background:#0b1118!important;
  color:var(--ink)!important;
  border-left:0!important;
  overflow:visible!important;
}
.myeclass-shell-no-sidebar-v2-9-398 .container.myeclass-main,
.myeclass-shell-guest .container.myeclass-main{grid-column:1!important;max-width:1180px!important;}
.card,.tile,.panel,.mini-card,.rubric-builder,.myeclass-workspace-hero,
body.myeclass-course-context-body-v2-9-375 .card,
body.myeclass-course-context-body-v2-9-375 .myeclass-course-admin-page-v2-9-400,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .card{
  background:#203443!important;
  border:1px solid #41617a!important;
  color:#f5f8fc!important;
  border-radius:0!important;
  box-shadow:none!important;
}
table,
body.myeclass-course-context-body-v2-9-375 table,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 table{
  width:100%!important;
  background:#203443!important;
  color:#f5f8fc!important;
  border:1px solid #41617a!important;
}
th,
body.myeclass-course-context-body-v2-9-375 th,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 th{
  background:#284961!important;
  color:#f5f8fc!important;
  border-bottom:1px solid #41617a!important;
}
td,
body.myeclass-course-context-body-v2-9-375 td,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 td{
  background:#203443!important;
  color:#f5f8fc!important;
  border-bottom:1px solid #314d63!important;
}
tr:hover td,
body.myeclass-course-context-body-v2-9-375 tr:hover td{background:#254157!important;}
input,select,textarea,
body.myeclass-course-context-body-v2-9-375 input,
body.myeclass-course-context-body-v2-9-375 select,
body.myeclass-course-context-body-v2-9-375 textarea,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 input,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 select,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 textarea{
  background:#101b27!important;
  color:#f5f8fc!important;
  border:1px solid #4d718d!important;
  box-shadow:none!important;
}
button,.button,input[type="submit"],
body.myeclass-course-context-body-v2-9-375 button,
body.myeclass-course-context-body-v2-9-375 .button,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 button,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .button{
  background:#0c1622!important;
  color:#f5f8fc!important;
  border:1px solid #5a84a4!important;
  box-shadow:none!important;
  border-radius:4px!important;
}
button.primary,.button.primary,.primary,
body.myeclass-course-context-body-v2-9-375 button.primary,
body.myeclass-course-context-body-v2-9-375 .button.primary,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 button.primary,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .button.primary{
  background:#70afe9!important;
  border-color:#70afe9!important;
  color:#061a2c!important;
}
body.myeclass-course-context-body-v2-9-375 a,
a{color:#71b7f3!important;}
.muted,small,
body.myeclass-course-context-body-v2-9-375 .muted,
body.myeclass-course-context-body-v2-9-375 small,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .muted,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 small{color:#c5d5e4!important;}
.myeclass-breadcrumbs,
body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs{
  margin:0 0 14px!important;
  overflow:visible!important;
}
.myeclass-breadcrumbs a,
body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs a{background:transparent!important;color:#71b7f3!important;border:0!important;padding:0!important;font-size:14px!important;}
.myeclass-breadcrumbs span[aria-current="page"]{background:transparent!important;border:0!important;color:#f5f8fc!important;padding:0!important;}
.myeclass-table-wrap-v2-9-362,
.myeclass-table-scroll{overflow-x:auto!important;overflow-y:visible!important;}
body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394{border-bottom:1px solid #41617a!important;}
body.myeclass-course-context-body-v2-9-375 h1,
body.myeclass-course-context-body-v2-9-375 h2,
body.myeclass-course-context-body-v2-9-375 h3,
body.myeclass-course-context-body-v2-9-375 h4,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h1,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h2,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h3,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 h4{color:#f5f8fc!important;}
.myeclass-nav-backdrop{z-index:850!important;background:rgba(0,0,0,.58)!important;}
@media(max-width:980px){
  :root,html[data-theme="dark"]{--ml-shell-sidebar-w:300px;}
  .myeclass-app-shell,
  .myeclass-app-shell.myeclass-shell-no-sidebar-v2-9-398,
  .myeclass-app-shell.myeclass-shell-guest,
  .myeclass-app-shell.myeclass-shell-with-sidebar,
  body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{
    display:block!important;
    min-height:100vh!important;
  }
  .top.myeclass-topbar,.myeclass-topbar,body.myeclass-course-context-body-v2-9-375 .myeclass-topbar{
    height:var(--ml-shell-topbar-h)!important;
    min-height:var(--ml-shell-topbar-h)!important;
    padding:0 10px!important;
    gap:8px!important;
  }
  .myeclass-topbar-left{gap:12px!important;}
  body.myeclass-course-context-body-v2-9-375 .myeclass-nav-toggle{display:inline-flex!important;}
  .myeclass-sidebar.myeclass-course-sidebar-v2-9-375,
  body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375{
    position:fixed!important;
    top:var(--ml-shell-topbar-h)!important;
    left:0!important;
    bottom:0!important;
    height:calc(100vh - var(--ml-shell-topbar-h))!important;
    width:min(86vw,320px)!important;
    max-width:320px!important;
    padding-top:18px!important;
    transform:translateX(-105%)!important;
    transition:transform .22s ease!important;
    box-shadow:28px 0 70px rgba(0,0,0,.42)!important;
    z-index:900!important;
  }
  .myeclass-app-shell.myeclass-nav-open .myeclass-sidebar.myeclass-course-sidebar-v2-9-375{transform:translateX(0)!important;}
  .container.myeclass-main,
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{min-height:calc(100vh - var(--ml-shell-topbar-h))!important;padding:18px!important;max-width:1180px!important;}
}
@media(max-width:760px){
  .myeclass-brand .brand-logo-shell{width:58px!important;height:40px!important;max-width:58px!important;}
  .myeclass-brand .brand-logo{max-width:58px!important;max-height:40px!important;}
  .myeclass-global-topnav-v2-9-375{gap:18px!important;}
  .myeclass-global-topnav-v2-9-375 a{font-size:14px!important;}
  .myeclass-account-dropdown-v2-9-398>summary span{display:none!important;}
  .myeclass-account-dropdown-v2-9-398>summary{padding:6px 8px!important;}
}
@media(max-width:560px){
  .myeclass-topbar-left{gap:8px!important;}
  .myeclass-global-topnav-v2-9-375{gap:14px!important;}
  .myeclass-global-topnav-v2-9-375 a{font-size:13px!important;}
  .myeclass-nav-toggle span{display:none!important;}
}

/* v2.9.427 — Pilot-safe table sorting affordance */
table.ml-sortable-table th.ml-sortable-th,
body.myeclass-course-context-body-v2-9-375 table.ml-sortable-table th.ml-sortable-th{
  padding:0!important;
  white-space:nowrap!important;
}
table.ml-sortable-table th.ml-sortable-th .ml-table-sort-button,
body.myeclass-course-context-body-v2-9-375 table.ml-sortable-table th.ml-sortable-th .ml-table-sort-button,
html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 table.ml-sortable-table th.ml-sortable-th .ml-table-sort-button{
  appearance:none!important;
  width:100%!important;
  min-height:42px!important;
  margin:0!important;
  padding:10px 12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  color:#f5f8fc!important;
  font:inherit!important;
  font-weight:900!important;
  line-height:1.25!important;
  text-align:left!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
table.ml-sortable-table th.ml-sortable-th .ml-table-sort-button:hover,
table.ml-sortable-table th.ml-sortable-th .ml-table-sort-button:focus-visible,
body.myeclass-course-context-body-v2-9-375 table.ml-sortable-table th.ml-sortable-th .ml-table-sort-button:hover,
body.myeclass-course-context-body-v2-9-375 table.ml-sortable-table th.ml-sortable-th .ml-table-sort-button:focus-visible{
  background:rgba(113,183,243,.14)!important;
  outline:2px solid rgba(113,183,243,.7)!important;
  outline-offset:-2px!important;
}
table.ml-sortable-table .ml-table-sort-label{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;}
table.ml-sortable-table .ml-table-sort-indicator{
  margin-left:auto!important;
  flex:0 0 auto!important;
  width:1.1em!important;
  color:#c5d5e4!important;
  font-size:.86em!important;
  text-align:center!important;
  opacity:.82!important;
}
table.ml-sortable-table .ml-table-sort-indicator::before{content:"↕";}
table.ml-sortable-table .ml-table-sort-button.is-ascending .ml-table-sort-indicator::before{content:"▲";}
table.ml-sortable-table .ml-table-sort-button.is-descending .ml-table-sort-indicator::before{content:"▼";}
table.ml-sortable-table th[aria-sort="ascending"],
table.ml-sortable-table th[aria-sort="descending"]{
  background:#315a76!important;
}
@media(max-width:760px){
  table.ml-sortable-table th.ml-sortable-th .ml-table-sort-button{min-height:38px!important;padding:9px 10px!important;font-size:13px!important;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.428 — Responsive shell contract.
   Visual/shell only: desktop topbar never scrolls; mobile uses a drawer.
   No upload, correction, AI/OCR, DB, publication or notification changes.
   ------------------------------------------------------------ */
:root,
html[data-theme="dark"]{
  --ml-shell-topbar-h:58px;
  --ml-shell-sidebar-w:250px;
}
html,
body{max-width:100%!important;overflow-x:hidden!important;}
.top.myeclass-topbar,
.myeclass-topbar,
body.myeclass-course-context-body-v2-9-375 .myeclass-topbar{
  height:var(--ml-shell-topbar-h)!important;
  min-height:var(--ml-shell-topbar-h)!important;
  max-height:var(--ml-shell-topbar-h)!important;
  overflow:visible!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
}
.myeclass-topbar-left{
  height:100%!important;
  min-width:0!important;
  overflow:visible!important;
  flex:1 1 auto!important;
  flex-wrap:nowrap!important;
}
.myeclass-brand .brand-logo-shell,
body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-logo-shell{
  width:74px!important;
  height:48px!important;
  max-width:74px!important;
}
.myeclass-brand .brand-logo,
body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-logo{
  max-width:74px!important;
  max-height:48px!important;
}
.myeclass-global-topnav-v2-9-375,
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375{
  overflow:visible!important;
  overflow-x:visible!important;
  overflow-y:visible!important;
  flex:0 1 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
}
.myeclass-global-topnav-v2-9-375 a,
body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375 a{
  height:var(--ml-shell-topbar-h)!important;
  min-height:var(--ml-shell-topbar-h)!important;
  flex:0 0 auto!important;
}
.myeclass-mobile-menu-toggle-v2-9-428{
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-width:42px!important;
  min-height:38px!important;
  padding:7px 10px!important;
  border:1px solid #344b61!important;
  border-radius:4px!important;
  background:#05070a!important;
  color:#f5f8fc!important;
  box-shadow:none!important;
  font-weight:900!important;
}
.myeclass-mobile-menu-toggle-v2-9-428 .shell-icon,
.myeclass-mobile-menu-toggle-v2-9-428 .shell-icon svg{width:20px!important;height:20px!important;}
.myeclass-mobile-menu-v2-9-428{
  position:fixed!important;
  top:var(--ml-shell-topbar-h)!important;
  left:0!important;
  bottom:0!important;
  width:min(88vw,340px)!important;
  max-width:340px!important;
  z-index:1200!important;
  background:#182836!important;
  border-right:1px solid #41617a!important;
  color:#f5f8fc!important;
  overflow:auto!important;
  box-shadow:28px 0 70px rgba(0,0,0,.48)!important;
  overscroll-behavior:contain!important;
}
.myeclass-mobile-menu-v2-9-428[hidden],
.myeclass-mobile-menu-backdrop-v2-9-428[hidden]{display:none!important;}
.myeclass-mobile-menu-backdrop-v2-9-428{
  position:fixed!important;
  top:var(--ml-shell-topbar-h)!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:1190!important;
  border:0!important;
  border-radius:0!important;
  background:rgba(0,0,0,.58)!important;
  padding:0!important;
  margin:0!important;
}
.myeclass-mobile-menu-inner-v2-9-428{display:grid!important;gap:18px!important;padding:16px 14px 24px!important;}
.myeclass-mobile-menu-head-v2-9-428{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:0 0 12px!important;border-bottom:1px solid rgba(113,183,243,.22)!important;}
.myeclass-mobile-menu-head-v2-9-428 b{font-size:17px!important;line-height:22px!important;color:#fff!important;}
#myeclassMobileMenuClose{width:36px!important;height:36px!important;padding:0!important;font-size:24px!important;line-height:1!important;}
.myeclass-mobile-menu-section-v2-9-428{display:grid!important;gap:6px!important;}
.myeclass-mobile-menu-section-v2-9-428 h2{margin:0 0 6px!important;color:#ffffff!important;font-size:13px!important;font-weight:950!important;letter-spacing:.02em!important;}
.myeclass-mobile-course-title-v2-9-428{margin:0 0 8px!important;padding:9px 10px!important;border:1px solid rgba(113,183,243,.22)!important;background:#101b27!important;color:#f5f8fc!important;font-weight:900!important;line-height:1.25!important;}
.myeclass-mobile-course-title-v2-9-428 small{display:block!important;margin-top:4px!important;color:#c5d5e4!important;font-size:12px!important;}
.myeclass-mobile-menu-link{
  min-height:44px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:10px 11px!important;
  border:0!important;
  border-bottom:1px solid rgba(113,183,243,.18)!important;
  background:transparent!important;
  color:#f5f8fc!important;
  text-decoration:none!important;
  font-size:15px!important;
  font-weight:850!important;
}
.myeclass-mobile-menu-link:hover{background:#21384a!important;color:#fff!important;text-decoration:none!important;}
.myeclass-mobile-menu-link.is-active{background:#70afe9!important;color:#062137!important;border-bottom-color:#70afe9!important;}
.myeclass-mobile-menu-link .shell-icon,
.myeclass-mobile-menu-link .shell-icon svg{width:20px!important;height:20px!important;flex:0 0 20px!important;background:transparent!important;border:0!important;color:currentColor!important;}
@media(min-width:981px){
  .myeclass-mobile-menu-v2-9-428,
  .myeclass-mobile-menu-backdrop-v2-9-428,
  .myeclass-mobile-menu-toggle-v2-9-428{display:none!important;}
  .myeclass-sidebar.myeclass-course-sidebar-v2-9-375,
  body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375{display:block!important;}
  .myeclass-account-dropdown-v2-9-398>summary{max-width:260px!important;}
}
@media(max-width:980px){
  .myeclass-app-shell,
  .myeclass-app-shell.myeclass-shell-no-sidebar-v2-9-398,
  .myeclass-app-shell.myeclass-shell-guest,
  .myeclass-app-shell.myeclass-shell-with-sidebar,
  body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{
    display:block!important;
    min-height:100vh!important;
  }
  .myeclass-mobile-menu-toggle-v2-9-428{display:inline-flex!important;flex:0 0 auto!important;}
  .myeclass-mobile-menu-toggle-v2-9-428 span{display:none!important;}
  .myeclass-global-topnav-v2-9-375,
  body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375{display:none!important;}
  .myeclass-topbar-left{gap:12px!important;flex:1 1 auto!important;}
  .myeclass-user-nav{flex:0 0 auto!important;}
  .myeclass-sidebar.myeclass-course-sidebar-v2-9-375,
  body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375{display:none!important;}
  .container.myeclass-main,
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    min-height:calc(100vh - var(--ml-shell-topbar-h))!important;
    padding:16px!important;
  }
  body.myeclass-nav-locked{overflow:hidden!important;}
}
@media(max-width:560px){
  :root,html[data-theme="dark"]{--ml-shell-topbar-h:54px;}
  .top.myeclass-topbar,.myeclass-topbar{padding:0 8px!important;gap:8px!important;}
  .myeclass-topbar-left{gap:8px!important;}
  .myeclass-brand .brand-logo-shell,
  body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-logo-shell{width:58px!important;height:40px!important;max-width:58px!important;}
  .myeclass-brand .brand-logo,
  body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-logo{max-width:58px!important;max-height:40px!important;}
  .myeclass-account-dropdown-v2-9-398>summary{min-width:38px!important;max-width:42px!important;padding:6px 8px!important;}
  .myeclass-account-dropdown-v2-9-398>summary span{display:none!important;}
  .container.myeclass-main,
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{padding:12px!important;}
}
@media(max-width:760px){
  .container.myeclass-main table,
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main table{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .container.myeclass-main table th,
  .container.myeclass-main table td{white-space:nowrap!important;}
  .actions{flex-wrap:wrap!important;}
  .actions .button,.actions button{max-width:100%!important;}
}

/* ------------------------------------------------------------
   MyEClass v2.9.429 — Mobile browser correction pass.
   Shell/table visual fix only. Locks mobile header as a real row,
   contains page width on phones, and keeps wide tables inside their
   own scroll wrapper instead of widening the page.
   ------------------------------------------------------------ */
:root,
html[data-theme="dark"]{
  --ml-shell-topbar-h:58px;
  --ml-shell-mobile-topbar-h:56px;
}
html,
body,
.myeclass-app-shell,
.container.myeclass-main{
  min-width:0!important;
}
body{
  width:100%!important;
  max-width:100vw!important;
  overflow-x:hidden!important;
}
.top.myeclass-topbar,
body.myeclass-course-context-body-v2-9-375 .top.myeclass-topbar,
body.myeclass-portfolio-body-v2-9-398 .top.myeclass-topbar{
  width:100%!important;
  max-width:100vw!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  overflow:visible!important;
}
.myeclass-topbar-left,
body.myeclass-course-context-body-v2-9-375 .myeclass-topbar-left,
body.myeclass-portfolio-body-v2-9-398 .myeclass-topbar-left{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
@media(min-width:981px){
  .top.myeclass-topbar,
  body.myeclass-course-context-body-v2-9-375 .top.myeclass-topbar,
  body.myeclass-portfolio-body-v2-9-398 .top.myeclass-topbar{
    height:var(--ml-shell-topbar-h)!important;
    min-height:var(--ml-shell-topbar-h)!important;
    max-height:var(--ml-shell-topbar-h)!important;
    overflow:visible!important;
  }
  .myeclass-global-topnav-v2-9-375,
  body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-global-topnav-v2-9-375{
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow:visible!important;
    max-width:none!important;
  }
}
@media(max-width:980px){
  .top.myeclass-topbar,
  body.myeclass-course-context-body-v2-9-375 .top.myeclass-topbar,
  body.myeclass-portfolio-body-v2-9-398 .top.myeclass-topbar{
    position:sticky!important;
    top:0!important;
    z-index:1300!important;
    height:var(--ml-shell-mobile-topbar-h)!important;
    min-height:var(--ml-shell-mobile-topbar-h)!important;
    max-height:var(--ml-shell-mobile-topbar-h)!important;
    padding:0 10px!important;
    gap:8px!important;
  }
  .myeclass-topbar-left,
  body.myeclass-course-context-body-v2-9-375 .myeclass-topbar-left,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-topbar-left{
    flex:1 1 auto!important;
    gap:10px!important;
    height:100%!important;
  }
  .myeclass-mobile-menu-toggle-v2-9-428{
    display:inline-flex!important;
    flex:0 0 42px!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    padding:0!important;
    border:1px solid #41617a!important;
    border-radius:4px!important;
    background:#05070a!important;
    color:#ffffff!important;
    line-height:1!important;
  }
  .myeclass-mobile-menu-toggle-v2-9-428 .shell-icon,
  .myeclass-mobile-menu-toggle-v2-9-428 .shell-icon svg{
    display:none!important;
  }
  .myeclass-mobile-menu-toggle-v2-9-428::before{
    content:"☰"!important;
    display:block!important;
    font-size:25px!important;
    line-height:1!important;
    color:#ffffff!important;
    font-weight:900!important;
  }
  .myeclass-mobile-menu-toggle-v2-9-428 span{display:none!important;}
  .myeclass-brand{
    flex:0 0 auto!important;
    display:inline-flex!important;
    align-items:center!important;
    height:100%!important;
    min-width:0!important;
  }
  .myeclass-brand .brand-logo-shell,
  body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-logo-shell,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-brand .brand-logo-shell{
    width:70px!important;
    height:46px!important;
    max-width:70px!important;
    max-height:46px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .myeclass-brand .brand-logo,
  body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-logo,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-brand .brand-logo{
    max-width:70px!important;
    max-height:46px!important;
  }
  .myeclass-global-topnav-v2-9-375,
  body.myeclass-course-context-body-v2-9-375 .myeclass-global-topnav-v2-9-375,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-global-topnav-v2-9-375{
    display:none!important;
  }
  .myeclass-user-nav,
  .myeclass-account-nav-v2-9-398{
    flex:0 0 auto!important;
    margin-left:auto!important;
    min-width:42px!important;
  }
  .myeclass-account-dropdown-v2-9-398>summary{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    max-width:42px!important;
    padding:0!important;
    justify-content:center!important;
    border-radius:4px!important;
    overflow:hidden!important;
  }
  .myeclass-account-dropdown-v2-9-398>summary span{display:none!important;}
  .myeclass-account-dropdown-v2-9-398>summary .shell-icon,
  .myeclass-account-dropdown-v2-9-398>summary .shell-icon svg{
    width:20px!important;
    height:20px!important;
  }
  .myeclass-mobile-menu-v2-9-428,
  .myeclass-mobile-menu-backdrop-v2-9-428{
    top:var(--ml-shell-mobile-topbar-h)!important;
  }
  .myeclass-mobile-menu-v2-9-428{
    width:min(86vw,340px)!important;
    max-width:min(86vw,340px)!important;
  }
  .myeclass-app-shell,
  .myeclass-shell-no-sidebar-v2-9-398,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-app-shell,
  body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell{
    display:block!important;
    width:100%!important;
    max-width:100vw!important;
    overflow-x:hidden!important;
    grid-template-columns:1fr!important;
  }
  .container.myeclass-main,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-main,
  .myeclass-shell-no-sidebar-v2-9-398 .myeclass-main,
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:12px!important;
    overflow-x:hidden!important;
  }
  .card,
  .tile,
  .panel,
  .mini-card,
  body.myeclass-portfolio-body-v2-9-398 .card,
  body.myeclass-course-context-body-v2-9-375 .card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  .myeclass-eclass-page-title-v2-9-394,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-eclass-page-title-v2-9-394,
  body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    align-items:start!important;
  }
  .myeclass-eclass-page-title-v2-9-394 .button,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-eclass-page-title-v2-9-394 .button{
    justify-self:start!important;
    max-width:100%!important;
  }
  .myeclass-portfolio-grid-v2-9-398,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-grid-v2-9-398{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
    gap:12px!important;
  }
  .myeclass-portfolio-grid-v2-9-398>*{
    min-width:0!important;
    max-width:100%!important;
  }
  .myeclass-portfolio-actions-v2-9-398,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-actions-v2-9-398{
    width:100%!important;
    max-width:100%!important;
  }
  .myeclass-portfolio-actions-v2-9-398 .button{
    width:100%!important;
    max-width:100%!important;
  }
  .ml-table-responsive-v2-9-429,
  .myeclass-table-wrap-v2-9-362,
  .myeclass-table-scroll{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    -webkit-overflow-scrolling:touch!important;
    border-radius:4px!important;
  }
  .ml-table-responsive-v2-9-429 table,
  .myeclass-table-wrap-v2-9-362 table,
  .myeclass-table-scroll table,
  .container.myeclass-main table{
    display:table!important;
    width:100%!important;
    min-width:620px!important;
    max-width:none!important;
    overflow:visible!important;
  }
  .ml-table-responsive-v2-9-429 table th,
  .ml-table-responsive-v2-9-429 table td,
  .container.myeclass-main table th,
  .container.myeclass-main table td{
    white-space:nowrap!important;
  }
  .actions,
  td.actions{
    white-space:nowrap!important;
  }
}
@media(max-width:480px){
  .top.myeclass-topbar,
  body.myeclass-course-context-body-v2-9-375 .top.myeclass-topbar,
  body.myeclass-portfolio-body-v2-9-398 .top.myeclass-topbar{
    padding:0 8px!important;
    gap:6px!important;
  }
  .myeclass-topbar-left{gap:8px!important;}
  .myeclass-mobile-menu-toggle-v2-9-428,
  .myeclass-account-dropdown-v2-9-398>summary{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
  }
  .myeclass-brand .brand-logo-shell,
  body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-logo-shell,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-brand .brand-logo-shell{
    width:62px!important;
    max-width:62px!important;
  }
  .myeclass-brand .brand-logo,
  body.myeclass-course-context-body-v2-9-375 .myeclass-brand .brand-logo,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-brand .brand-logo{
    max-width:62px!important;
  }
  .container.myeclass-main,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-main,
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{
    padding:10px!important;
  }
  body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-simple-v2-9-398.card,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-openeclass-flat-page-v2-9-399.card,
  body.myeclass-course-context-body-v2-9-375 .card{
    padding:10px!important;
  }
  .ml-table-responsive-v2-9-429 table,
  .container.myeclass-main table{
    min-width:560px!important;
  }
}

/* ------------------------------------------------------------
   MyEClass v2.9.430 — Mobile overflow hard fix.
   Visual/mobile CSS only: keeps the mobile header icons visible and
   changes portfolio tables to compact mobile cards so they cannot widen
   the phone viewport. No upload/correction/AI/DB logic changes.
   ------------------------------------------------------------ */
@media(max-width:980px){
  .top.myeclass-topbar,
  body.myeclass-course-context-body-v2-9-375 .top.myeclass-topbar,
  body.myeclass-portfolio-body-v2-9-398 .top.myeclass-topbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    width:100%!important;
    max-width:100vw!important;
    overflow:visible!important;
  }
  .myeclass-topbar-left,
  body.myeclass-course-context-body-v2-9-375 .myeclass-topbar-left,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-topbar-left{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr)!important;
    align-items:center!important;
    column-gap:10px!important;
    min-width:0!important;
    width:100%!important;
    height:100%!important;
  }
  .myeclass-mobile-menu-toggle-v2-9-428{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    max-width:42px!important;
    max-height:42px!important;
    padding:0!important;
    border:1px solid #41617a!important;
    border-radius:4px!important;
    background:#05070a!important;
    color:#ffffff!important;
    overflow:hidden!important;
    box-shadow:none!important;
  }
  .myeclass-mobile-menu-toggle-v2-9-428::before{content:none!important;display:none!important;}
  .myeclass-mobile-menu-toggle-v2-9-428 .shell-icon,
  .myeclass-mobile-menu-toggle-v2-9-428 .shell-icon svg{
    display:none!important;
  }
  .myeclass-mobile-menu-glyph-v2-9-430{
    display:block!important;
    color:#ffffff!important;
    font-size:25px!important;
    line-height:1!important;
    font-weight:900!important;
    font-family:Arial,Helvetica,sans-serif!important;
  }
  .myeclass-mobile-menu-label-v2-9-430{display:none!important;}
  .myeclass-brand,
  body.myeclass-course-context-body-v2-9-375 .myeclass-brand,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-brand{
    justify-self:start!important;
    max-width:86px!important;
    overflow:visible!important;
  }
  .myeclass-user-nav,
  .myeclass-account-nav-v2-9-398{
    justify-self:end!important;
    min-width:42px!important;
    width:42px!important;
  }
  .myeclass-account-dropdown-v2-9-398>summary{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    max-width:42px!important;
    max-height:42px!important;
    padding:0!important;
    overflow:hidden!important;
  }
  .myeclass-account-dropdown-v2-9-398>summary > span:not(.shell-icon){display:none!important;}
  .myeclass-account-dropdown-v2-9-398>summary > .shell-icon,
  .myeclass-account-dropdown-v2-9-398>summary > .shell-icon svg{
    display:block!important;
    width:20px!important;
    height:20px!important;
    color:#ffffff!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:2.1!important;
  }
  .myeclass-account-dropdown-menu-v2-9-398{
    right:0!important;
    left:auto!important;
    max-width:calc(100vw - 16px)!important;
  }
}

@media(max-width:760px){
  body.myeclass-portfolio-body-v2-9-398 .myeclass-main,
  body.myeclass-portfolio-body-v2-9-398 .container.myeclass-main,
  body.myeclass-portfolio-body-v2-9-398 .card,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-simple-v2-9-398.card,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-openeclass-flat-page-v2-9-399.card,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-grid-v2-9-398,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-portfolio-grid-v2-9-398 > *,
  body.myeclass-portfolio-body-v2-9-398 section,
  body.myeclass-portfolio-body-v2-9-398 aside{
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  body.myeclass-portfolio-body-v2-9-398 .myeclass-table-wrap-v2-9-362,
  body.myeclass-portfolio-body-v2-9-398 .ml-table-responsive-v2-9-429,
  body.myeclass-portfolio-body-v2-9-398 .myeclass-table-scroll{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
    padding:0!important;
    margin:8px 0 0!important;
  }
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430,
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 tbody{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    border:0!important;
    background:transparent!important;
    overflow:visible!important;
  }
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 tr.ml-table-header-row-v2-9-430{
    display:none!important;
  }
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 tr{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 0 10px!important;
    padding:9px 10px!important;
    border:1px solid #41617a!important;
    background:#203443!important;
    box-sizing:border-box!important;
  }
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 th,
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 td{
    display:grid!important;
    grid-template-columns:minmax(78px,34%) minmax(0,1fr)!important;
    gap:8px!important;
    align-items:start!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:5px 0!important;
    border:0!important;
    border-bottom:1px solid rgba(113,183,243,.14)!important;
    background:transparent!important;
    color:#f5f8fc!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    box-sizing:border-box!important;
  }
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 td:last-child{
    border-bottom:0!important;
  }
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 td::before{
    content:attr(data-label)!important;
    display:block!important;
    color:#c5d5e4!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1.25!important;
  }
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 td[data-label=""],
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 td:not([data-label]){
    grid-template-columns:1fr!important;
  }
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 td[data-label=""]::before,
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 td:not([data-label])::before{
    display:none!important;
    content:""!important;
  }
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 td.actions,
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 td:last-child{
    justify-items:start!important;
  }
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 .button,
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 button,
  body.myeclass-portfolio-body-v2-9-398 table.ml-mobile-card-table-v2-9-430 .myeclass-action-dropdown-v2-9-397>summary{
    max-width:100%!important;
    white-space:normal!important;
  }
}

/* ------------------------------------------------------------
   MyEClass v2.9.431 — Course mobile shell hard fix.
   Visual/mobile CSS only: removes leftover desktop course-sidebar
   offset on phone viewports and turns course tables into compact
   mobile cards. No upload/correction/AI/DB logic changes.
   ------------------------------------------------------------ */
@media(max-width:980px){
  body.myeclass-course-context-body-v2-9-375,
  html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375{
    width:100%!important;
    max-width:100vw!important;
    overflow-x:hidden!important;
    background:#0b1118!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375,
  html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375{
    display:block!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto!important;
    width:100%!important;
    max-width:100vw!important;
    min-width:0!important;
    margin:0!important;
    overflow-x:hidden!important;
    background:#0b1118!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-topbar{
    grid-column:1!important;
    grid-row:auto!important;
    width:100%!important;
    max-width:100vw!important;
    margin:0!important;
    left:auto!important;
    right:auto!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-v2-9-375,
  body.myeclass-course-context-body-v2-9-375 .myeclass-sidebar.myeclass-course-sidebar-reset-v2-9-393{
    display:none!important;
    width:0!important;
    min-width:0!important;
    max-width:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    transform:none!important;
    position:absolute!important;
    left:-9999px!important;
  }
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main,
  html[data-theme="dark"] body.myeclass-course-context-body-v2-9-375 .container.myeclass-main,
  body.myeclass-course-context-body-v2-9-375 .myeclass-course-context-shell-v2-9-375 .myeclass-main{
    grid-column:1!important;
    grid-row:auto!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:12px!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
    background:#0b1118!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs,
  body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs ol{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    white-space:nowrap!important;
    flex-wrap:nowrap!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs li{
    flex:0 0 auto!important;
    max-width:70vw!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs a,
  body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs span[aria-current="page"]{
    display:inline-block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    max-width:70vw!important;
  }
  body.myeclass-course-context-body-v2-9-375 .card,
  body.myeclass-course-context-body-v2-9-375 .panel,
  body.myeclass-course-context-body-v2-9-375 .mini-card,
  body.myeclass-course-context-body-v2-9-375 .myeclass-openeclass-flat-page-v2-9-399,
  body.myeclass-course-context-body-v2-9-375 .myeclass-course-landing-minimal-v2-9-398{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  body.myeclass-course-context-body-v2-9-375 h1,
  body.myeclass-course-context-body-v2-9-375 h2,
  body.myeclass-course-context-body-v2-9-375 h3{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394 h2,
  body.myeclass-course-context-body-v2-9-375 h1{
    font-size:clamp(1.35rem,8vw,1.9rem)!important;
    line-height:1.16!important;
  }
}

@media(max-width:760px){
  body.myeclass-course-context-body-v2-9-375 .myeclass-table-wrap-v2-9-362,
  body.myeclass-course-context-body-v2-9-375 .ml-table-responsive-v2-9-429,
  body.myeclass-course-context-body-v2-9-375 .myeclass-table-scroll{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
    padding:0!important;
    margin:8px 0 0!important;
  }
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430,
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 tbody{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    border:0!important;
    background:transparent!important;
    overflow:visible!important;
  }
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 tr.ml-table-header-row-v2-9-430{
    display:none!important;
  }
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 tr{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 0 10px!important;
    padding:9px 10px!important;
    border:1px solid #41617a!important;
    background:#203443!important;
    box-sizing:border-box!important;
  }
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 th,
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 td{
    display:grid!important;
    grid-template-columns:minmax(78px,34%) minmax(0,1fr)!important;
    gap:8px!important;
    align-items:start!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:5px 0!important;
    border:0!important;
    border-bottom:1px solid rgba(113,183,243,.14)!important;
    background:transparent!important;
    color:#f5f8fc!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    box-sizing:border-box!important;
  }
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 td:last-child{
    border-bottom:0!important;
  }
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 td::before{
    content:attr(data-label)!important;
    display:block!important;
    color:#c5d5e4!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1.25!important;
  }
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 td[data-label=""],
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 td:not([data-label]){
    grid-template-columns:1fr!important;
  }
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 td[data-label=""]::before,
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 td:not([data-label])::before{
    display:none!important;
    content:""!important;
  }
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 td.actions,
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 td:last-child{
    justify-items:start!important;
  }
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 .button,
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 button,
  body.myeclass-course-context-body-v2-9-375 table.ml-mobile-card-table-v2-9-430 .myeclass-action-dropdown-v2-9-397>summary{
    max-width:100%!important;
    white-space:normal!important;
  }
}


/* ------------------------------------------------------------
   MyEClass v2.9.432 — Course mobile breadcrumb and content width fix.
   Visual/mobile CSS only: removes the broken long course breadcrumb line
   on phone screens and hard-clamps course detail content inside the viewport.
   No upload/correction/AI/DB logic changes.
   ------------------------------------------------------------ */
@media(max-width:760px){
  body.myeclass-course-context-body-v2-9-375,
  body.myeclass-course-context-body-v2-9-375 *{
    box-sizing:border-box!important;
  }
  body.myeclass-course-context-body-v2-9-375{
    width:100%!important;
    max-width:100vw!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-app-shell.myeclass-course-context-shell-v2-9-375,
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main,
  body.myeclass-course-context-body-v2-9-375 .myeclass-course-context-shell-v2-9-375 .myeclass-main{
    width:100%!important;
    max-width:100vw!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:12px!important;
    padding-right:12px!important;
    overflow-x:hidden!important;
  }
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main > *,
  body.myeclass-course-context-body-v2-9-375 .myeclass-main > *,
  body.myeclass-course-context-body-v2-9-375 .card,
  body.myeclass-course-context-body-v2-9-375 .panel,
  body.myeclass-course-context-body-v2-9-375 .mini-card,
  body.myeclass-course-context-body-v2-9-375 .myeclass-workspace-hero,
  body.myeclass-course-context-body-v2-9-375 .myeclass-openeclass-flat-page-v2-9-399,
  body.myeclass-course-context-body-v2-9-375 .myeclass-course-landing-minimal-v2-9-398,
  body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-workspace-rail-v2-9-363,
  body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-tool-intro-v2-9-365{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    float:none!important;
    transform:none!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-workspace-hero,
  body.myeclass-course-context-body-v2-9-375 .myeclass-openeclass-flat-page-v2-9-399.card,
  body.myeclass-course-context-body-v2-9-375 .myeclass-course-landing-minimal-v2-9-398.card{
    padding:14px!important;
    overflow:hidden!important;
  }

  /* The full course breadcrumb is too long for phones and was causing the
     broken clipped strip shown in screenshots. The page title immediately
     below provides the context, while navigation remains available from the
     mobile drawer. */
  body.myeclass-course-context-body-v2-9-375 .myeclass-breadcrumbs{
    display:none!important;
  }

  body.myeclass-course-context-body-v2-9-375 h1,
  body.myeclass-course-context-body-v2-9-375 h2,
  body.myeclass-course-context-body-v2-9-375 h3,
  body.myeclass-course-context-body-v2-9-375 .myeclass-workspace-hero h1,
  body.myeclass-course-context-body-v2-9-375 .myeclass-eclass-page-title-v2-9-394 h2{
    max-width:100%!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
    hyphens:auto!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-workspace-hero h1,
  body.myeclass-course-context-body-v2-9-375 h1{
    font-size:clamp(1.45rem,7.2vw,1.9rem)!important;
    line-height:1.14!important;
    letter-spacing:-.03em!important;
  }
  body.myeclass-course-context-body-v2-9-375 .button,
  body.myeclass-course-context-body-v2-9-375 button,
  body.myeclass-course-context-body-v2-9-375 input,
  body.myeclass-course-context-body-v2-9-375 select,
  body.myeclass-course-context-body-v2-9-375 textarea{
    max-width:100%!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-rail-links-v2-9-363,
  body.myeclass-course-context-body-v2-9-375 .myeclass-course-tool-grid-v2-9-356{
    display:grid!important;
    grid-template-columns:1fr!important;
    overflow:visible!important;
    width:100%!important;
    max-width:100%!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-assignment-rail-links-v2-9-363 a,
  body.myeclass-course-context-body-v2-9-375 .myeclass-course-tool-link{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
  }
}

/* ------------------------------------------------------------
   MyEClass v2.9.433 — Mobile back navigation polish.
   Visual/navigation CSS only: adds a small route-aware Back button
   on course-context mobile pages where breadcrumbs are hidden.
   ------------------------------------------------------------ */
.myeclass-mobile-back-strip-v2-9-433{
  display:none;
}
@media(max-width:760px){
  body.myeclass-course-context-body-v2-9-375 .myeclass-mobile-back-strip-v2-9-433{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    margin:0 0 10px!important;
    padding:0!important;
    justify-content:flex-start!important;
    align-items:center!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-mobile-back-button-v2-9-433{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    min-height:38px!important;
    padding:8px 11px!important;
    border:1px solid #6fb2ee!important;
    border-radius:6px!important;
    background:#0d1721!important;
    color:#74b7f5!important;
    text-decoration:none!important;
    font-weight:900!important;
    line-height:1!important;
    box-shadow:none!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-mobile-back-button-v2-9-433 span{
    font-size:1.15rem!important;
    line-height:1!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-mobile-back-button-v2-9-433:focus,
  body.myeclass-course-context-body-v2-9-375 .myeclass-mobile-back-button-v2-9-433:hover{
    background:#13283b!important;
    color:#d9efff!important;
    outline:2px solid rgba(111,178,238,.45)!important;
    outline-offset:2px!important;
  }
  body.myeclass-course-context-body-v2-9-375 .container.myeclass-main{
    padding-top:10px!important;
  }
}

/* ------------------------------------------------------------
   MyEClass v2.9.434 — icon-only back button on desktop + mobile.
   Visual/navigation only: breadcrumbs stay visible on desktop, while
   the same compact parent-route button also appears next to them.
   ------------------------------------------------------------ */
body.myeclass-course-context-body-v2-9-375 .myeclass-route-strip-v2-9-434{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 0 12px!important;
  overflow:hidden!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-route-strip-v2-9-434 .myeclass-mobile-back-strip-v2-9-433{
  display:flex!important;
  flex:0 0 auto!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  align-items:center!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-route-strip-v2-9-434 .myeclass-mobile-back-button-v2-9-433{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  min-height:34px!important;
  padding:0!important;
  border:1px solid #6fb2ee!important;
  border-radius:6px!important;
  background:#0d1721!important;
  color:#74b7f5!important;
  text-decoration:none!important;
  font-weight:900!important;
  line-height:1!important;
  box-shadow:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-route-strip-v2-9-434 .myeclass-mobile-back-button-v2-9-433 span{
  display:block!important;
  font-size:1.15rem!important;
  line-height:1!important;
  transform:translateY(-1px);
}
body.myeclass-course-context-body-v2-9-375 .myeclass-route-strip-v2-9-434 .myeclass-mobile-back-button-v2-9-433 b{
  display:none!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-route-strip-v2-9-434 .myeclass-mobile-back-button-v2-9-433:hover,
body.myeclass-course-context-body-v2-9-375 .myeclass-route-strip-v2-9-434 .myeclass-mobile-back-button-v2-9-433:focus{
  background:#13283b!important;
  color:#d9efff!important;
  outline:2px solid rgba(111,178,238,.45)!important;
  outline-offset:2px!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-route-strip-v2-9-434 .myeclass-breadcrumbs{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
body.myeclass-course-context-body-v2-9-375 .myeclass-route-strip-v2-9-434 .myeclass-breadcrumbs ol{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
@media(max-width:760px){
  body.myeclass-course-context-body-v2-9-375 .myeclass-route-strip-v2-9-434{
    gap:0!important;
    margin:0 0 10px!important;
  }
  body.myeclass-course-context-body-v2-9-375 .myeclass-route-strip-v2-9-434 .myeclass-breadcrumbs{
    display:none!important;
  }
}

/* -------------------------------------------------------------------------
   MyEClass v2.9.435 — create exercise and assign as one-item assignment.
   UI is mostly existing form styling; this cache bump prevents stale form CSS.
   ------------------------------------------------------------------------- */

/* v2.9.437 — Open-eClass hierarchy cleanup: course context + simpler submission choices */
.myeclass-context-lock-v2-9-437 {
  border-style: dashed;
  background: color-mix(in srgb, var(--surface) 68%, transparent);
}
.myeclass-context-lock-v2-9-437 p {
  margin: 6px 0;
}
.myeclass-submit-methods-simplified-v2-9-437 > h3,
.myeclass-submit-methods-simplified-v2-9-437 > h2 {
  margin-top: 0;
}
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-submit-method-grid-v2-9-420 {
  display: grid;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
  gap: 12px;
}
.myeclass-submit-choice-v2-9-437,
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-mobile-handoff-form-v2-9-420 button,
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-upload-method-v2-9-420 > summary {
  min-height: 62px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 4px;
  width: 100%;
  box-sizing: border-box;
  text-align: left;
}
.myeclass-submit-choice-v2-9-437 span,
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-upload-method-v2-9-420 > summary::after {
  font-size: .84rem;
  opacity: .82;
  font-weight: 500;
}
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-upload-method-v2-9-420 {
  min-width: 0;
  width: 100%;
}
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-upload-method-v2-9-420 > summary::after {
  content: 'PDF ή φωτογραφίες από τον υπολογιστή.';
  display: block;
}
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-mobile-handoff-form-v2-9-420 button::after {
  content: 'Σκανάρω QR και φωτογραφίζω τη λύση.';
  display: block;
  font-size: .84rem;
  opacity: .82;
  font-weight: 500;
  margin-top: 4px;
}
.myeclass-mobile-qr-clean-v2-9-437 details {
  margin-top: 12px;
}
@media (max-width: 980px) {
  .myeclass-submit-methods-simplified-v2-9-437 .myeclass-submit-method-grid-v2-9-420 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 560px) {
  .myeclass-submit-methods-simplified-v2-9-437 .myeclass-submit-method-grid-v2-9-420 {
    grid-template-columns: 1fr;
  }
}

/* v2.9.438 — Open-eClass-like teacher assignment flow cleanup. */
.myeclass-openeclass-assignments-list-v2-9-438 th:nth-child(2),
.myeclass-openeclass-assignments-list-v2-9-438 th:nth-child(3),
.myeclass-openeclass-assignments-list-v2-9-438 td:nth-child(2),
.myeclass-openeclass-assignments-list-v2-9-438 td:nth-child(3){text-align:center!important;width:92px!important;}
.myeclass-assignment-row-meta-v2-9-438{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px;font-size:12px;}
.myeclass-unreviewed-count-v2-9-438{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:28px;border-radius:999px;border:1px solid var(--line);text-decoration:none;font-weight:800;color:var(--ink);}
.myeclass-unreviewed-count-v2-9-438.has-items{border-color:var(--accent);background:rgba(106,169,232,.16);color:var(--accent);}
.myeclass-assignment-openeclass-flow-v2-9-438{margin-bottom:12px!important;}
.myeclass-assignment-submissions-primary-v2-9-438{margin-top:0!important;}
.myeclass-assignment-submissions-primary-v2-9-438 + #myeclass-assignment-description{margin-top:12px!important;}
@media(max-width:720px){
  .myeclass-openeclass-assignments-list-v2-9-438 th:nth-child(4),
  .myeclass-openeclass-assignments-list-v2-9-438 td:nth-child(4){display:none!important;}
  .myeclass-openeclass-assignments-list-v2-9-438 th:nth-child(2),
  .myeclass-openeclass-assignments-list-v2-9-438 th:nth-child(3),
  .myeclass-openeclass-assignments-list-v2-9-438 td:nth-child(2),
  .myeclass-openeclass-assignments-list-v2-9-438 td:nth-child(3){width:auto!important;}
}

/* v2.9.439 — Open-eClass assignment detail/submissions layout. */
.myeclass-assignment-openeclass-detail-v2-9-439{margin-bottom:12px!important;}
.myeclass-assignment-info-card-v2-9-439{margin-top:12px!important;}
.myeclass-assignment-info-card-v2-9-439 h2,
.myeclass-assignment-submissions-openeclass-v2-9-439 h2{margin-top:0;}
.myeclass-assignment-info-table-v2-9-439 th{width:230px;color:var(--ink);font-weight:800;}
.myeclass-assignment-info-table-v2-9-439 td{line-height:1.45;}
.myeclass-assignment-submissions-openeclass-v2-9-439{margin-top:14px!important;}
.myeclass-openeclass-submitted-strip-v2-9-439{display:flex;align-items:center;gap:10px;padding:13px 16px;border-radius:10px;background:rgba(46,125,75,.92);color:#fff;margin-bottom:14px;font-weight:800;}
.myeclass-openeclass-submitted-strip-v2-9-439 .status-dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:rgba(255,255,255,.18);font-weight:900;}
.myeclass-assignment-submissions-summary-v2-9-439{display:flex;justify-content:flex-end;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:.92rem;margin:-4px 0 10px;}
.myeclass-openeclass-submissions-table-v2-9-439 th:nth-child(3),
.myeclass-openeclass-submissions-table-v2-9-439 td:nth-child(3),
.myeclass-openeclass-submissions-table-v2-9-439 th:nth-child(4),
.myeclass-openeclass-submissions-table-v2-9-439 td:nth-child(4){width:150px;}
.myeclass-openeclass-submissions-table-v2-9-439 td.actions{width:110px;text-align:right;}
.myeclass-openeclass-submission-row-v2-9-439 .muted{font-size:.86rem;}
.myeclass-assignment-submissions-openeclass-v2-9-439 .myeclass-correction-panel-shell-v2-9-354,
.myeclass-assignment-submissions-openeclass-v2-9-439 .myeclass-teacher-correction-side-panel-shell-v2-9-354{margin-top:12px;}
@media(max-width:760px){
  .myeclass-assignment-info-table-v2-9-439 th,
  .myeclass-assignment-info-table-v2-9-439 td{display:block;width:100%;}
  .myeclass-assignment-info-table-v2-9-439 th{border-bottom:0;padding-bottom:2px;}
  .myeclass-assignment-info-table-v2-9-439 td{padding-top:2px;}
  .myeclass-openeclass-submissions-table-v2-9-439 th:nth-child(3),
  .myeclass-openeclass-submissions-table-v2-9-439 td:nth-child(3){display:none;}
  .myeclass-openeclass-submissions-table-v2-9-439 th:nth-child(4),
  .myeclass-openeclass-submissions-table-v2-9-439 td:nth-child(4){width:auto;}
}

/* v2.9.440 — Fullscreen correction workspace with real tabs.
   UX-only shell over the existing correction side-panel. No new route, no new write path,
   no DB migration, no AI/OCR/provider call, no notification, no publication/student visibility change. */
.myeclass-correction-panel-sheet-v2-9-440{
  left:28px;
  right:28px;
  top:22px;
  bottom:22px;
  width:auto;
  max-width:none;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  padding:0;
}
.myeclass-correction-panel-header-v2-9-440{
  flex:0 0 auto;
  margin:0;
  padding:18px 20px;
  background:linear-gradient(180deg,var(--surface),var(--surface-2));
}
.myeclass-correction-tabs-v2-9-440{
  flex:1 1 auto;
  min-height:0;
  display:flex;
  flex-direction:column;
}
.myeclass-correction-tab-input-v2-9-440{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.myeclass-correction-tab-labels-v2-9-440{
  flex:0 0 auto;
  display:flex;
  gap:10px;
  padding:12px 18px;
  border-bottom:1px solid var(--line);
  background:color-mix(in srgb,var(--surface) 90%,transparent);
}
.myeclass-correction-tab-labels-v2-9-440 label{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:10px 14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--surface-2);
  color:var(--ink);
  cursor:pointer;
  user-select:none;
  font-weight:900;
  transition:border-color .16s ease,background .16s ease,transform .16s ease;
}
.myeclass-correction-tab-labels-v2-9-440 label:hover{
  transform:translateY(-1px);
  border-color:rgba(79,111,184,.38);
  background:var(--soft);
}
.myeclass-correction-tab-labels-v2-9-440 label>span{
  width:28px;
  height:28px;
  border-radius:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--soft);
  border:1px solid var(--line);
  color:var(--accent);
  font-weight:950;
}
.myeclass-correction-tab-labels-v2-9-440 label b{display:block;line-height:1.05;}
.myeclass-correction-tab-labels-v2-9-440 label small{display:block;margin-top:3px;color:var(--muted);font-size:11px;font-weight:780;line-height:1.1;}
.myeclass-correction-tab-solution-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="solution"],
.myeclass-correction-tab-grading-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="grading"],
.myeclass-correction-tab-helper-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="helper"]{
  border-color:rgba(79,111,184,.62);
  background:linear-gradient(135deg,rgba(79,111,184,.18),rgba(20,132,124,.08));
}
.myeclass-correction-tab-solution-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="solution"]>span,
.myeclass-correction-tab-grading-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="grading"]>span,
.myeclass-correction-tab-helper-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="helper"]>span{
  background:var(--accent);
  border-color:var(--accent);
  color:#fff;
}
.myeclass-correction-tab-panels-v2-9-440{
  flex:1 1 auto;
  min-height:0;
  overflow:auto;
  padding:18px;
}
.myeclass-correction-tab-panel-v2-9-440{
  display:none;
  max-width:1120px;
  margin:0 auto;
}
.myeclass-correction-tab-solution-v2-9-440:checked ~ .myeclass-correction-tab-panels-v2-9-440 .myeclass-correction-tab-solution-panel-v2-9-440,
.myeclass-correction-tab-grading-v2-9-440:checked ~ .myeclass-correction-tab-panels-v2-9-440 .myeclass-correction-tab-grading-panel-v2-9-440,
.myeclass-correction-tab-helper-v2-9-440:checked ~ .myeclass-correction-tab-panels-v2-9-440 .myeclass-correction-tab-helper-panel-v2-9-440{
  display:block;
}
.myeclass-correction-panel-sheet-v2-9-440 .myeclass-correction-helper-v2-9-354{
  margin-top:0;
}
html[data-theme="dark"] .myeclass-correction-panel-header-v2-9-440{
  background:linear-gradient(180deg,#1f2d37,#17232c);
}
html[data-theme="dark"] .myeclass-correction-tab-labels-v2-9-440{
  background:#17232c;
  border-color:#46637f;
}
html[data-theme="dark"] .myeclass-correction-tab-labels-v2-9-440 label{
  background:#0b0b0b;
  border-color:#303030;
}
html[data-theme="dark"] .myeclass-correction-tab-labels-v2-9-440 label:hover{
  background:#111827;
  border-color:rgba(49,208,255,.34);
}
html[data-theme="dark"] .myeclass-correction-tab-solution-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="solution"],
html[data-theme="dark"] .myeclass-correction-tab-grading-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="grading"],
html[data-theme="dark"] .myeclass-correction-tab-helper-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="helper"]{
  background:linear-gradient(135deg,rgba(49,208,255,.18),rgba(37,99,235,.10));
  border-color:rgba(49,208,255,.50);
}
html[data-theme="dark"] .myeclass-correction-tab-solution-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="solution"]>span,
html[data-theme="dark"] .myeclass-correction-tab-grading-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="grading"]>span,
html[data-theme="dark"] .myeclass-correction-tab-helper-v2-9-440:checked ~ .myeclass-correction-tab-labels-v2-9-440 label[data-tab="helper"]>span{
  background:var(--ml-accent);
  border-color:var(--ml-accent);
  color:#020617;
}
@media(max-width:760px){
  .myeclass-correction-panel-sheet-v2-9-440{left:8px;right:8px;top:8px;bottom:8px;border-radius:16px;}
  .myeclass-correction-panel-header-v2-9-440{padding:14px;}
  .myeclass-correction-tab-labels-v2-9-440{display:grid;grid-template-columns:1fr;padding:10px;gap:8px;}
  .myeclass-correction-tab-labels-v2-9-440 label{min-height:42px;padding:9px 10px;}
  .myeclass-correction-tab-labels-v2-9-440 label small{display:none;}
  .myeclass-correction-tab-panels-v2-9-440{padding:12px;}
}

/* v2.9.441 — Simple teacher-facing AI correction flow.
   Keeps the fullscreen modal/tabs, but removes developer wording from the teacher workspace.
   No DB migration, no OCR/PDF OCR, no notifications and no student-visible AI. */
.myeclass-correction-tab-labels-v2-9-440 label{
  min-width:160px;
  justify-content:center;
  text-align:center;
}
.myeclass-correction-tab-labels-v2-9-440 label b{
  font-size:14px;
  letter-spacing:-.01em;
}
.myeclass-correction-tab-labels-v2-9-440 label small{
  font-size:11px;
  opacity:.82;
}
.myeclass-ai-proposal-tab-v2-9-441,
.myeclass-final-correction-tab-v2-9-441{
  display:none;
}
.myeclass-correction-tab-grading-v2-9-440:checked ~ .myeclass-correction-tab-panels-v2-9-440 .myeclass-ai-proposal-tab-v2-9-441,
.myeclass-correction-tab-helper-v2-9-440:checked ~ .myeclass-correction-tab-panels-v2-9-440 .myeclass-final-correction-tab-v2-9-441{
  display:block;
}
.myeclass-ai-proposal-summary-v2-9-441{
  display:grid;
  gap:14px;
}
.myeclass-ai-proposal-grade-v2-9-441{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(79,111,184,.14),rgba(20,132,124,.08));
}
.myeclass-ai-proposal-grade-v2-9-441 span{
  color:var(--muted);
  font-weight:800;
}
.myeclass-ai-proposal-grade-v2-9-441 b{
  font-size:28px;
  letter-spacing:-.03em;
}
.myeclass-ai-proposal-box-v2-9-441,
.myeclass-ai-proposal-empty-v2-9-441,
.myeclass-ai-final-proposal-note-v2-9-441{
  border:1px solid var(--line);
  border-radius:14px;
  padding:14px 16px;
  background:var(--surface-2);
}
.myeclass-ai-proposal-box-v2-9-441 h4{
  margin:0 0 8px;
}
.myeclass-ai-context-details-v2-9-441,
.myeclass-ai-inner-details-v2-9-441{
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--surface-2);
  overflow:hidden;
}
.myeclass-ai-context-details-v2-9-441>summary,
.myeclass-ai-inner-details-v2-9-441>summary{
  cursor:pointer;
  padding:12px 14px;
  font-weight:900;
  color:var(--ink);
  list-style:none;
}
.myeclass-ai-context-details-v2-9-441>summary::-webkit-details-marker,
.myeclass-ai-inner-details-v2-9-441>summary::-webkit-details-marker{
  display:none;
}
.myeclass-ai-context-details-v2-9-441>summary::after,
.myeclass-ai-inner-details-v2-9-441>summary::after{
  content:"▾";
  float:right;
  color:var(--muted);
}
.myeclass-ai-context-details-v2-9-441[open]>summary::after,
.myeclass-ai-inner-details-v2-9-441[open]>summary::after{
  content:"▴";
}
.myeclass-ai-context-details-v2-9-441>*:not(summary),
.myeclass-ai-inner-details-v2-9-441>*:not(summary){
  margin:0 14px 14px;
}
.myeclass-ai-context-details-v2-9-441 pre,
.myeclass-ai-inner-details-v2-9-441 pre{
  white-space:pre-wrap;
  overflow:auto;
  max-height:360px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:rgba(15,23,42,.06);
}
.myeclass-ai-proposal-actions-v2-9-441,
.myeclass-ai-proposal-empty-v2-9-441{
  margin-top:14px;
}
.myeclass-ai-proposal-empty-v2-9-441 form,
.myeclass-ai-proposal-actions-v2-9-441 form{
  margin-top:10px;
}
.myeclass-final-correction-form-v2-9-441{
  display:grid;
  gap:12px;
}
.myeclass-final-correction-form-v2-9-441 fieldset{
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px 14px;
}
html[data-theme="dark"] .myeclass-ai-proposal-grade-v2-9-441{
  background:linear-gradient(135deg,rgba(49,208,255,.14),rgba(37,99,235,.10));
}
html[data-theme="dark"] .myeclass-ai-proposal-box-v2-9-441,
html[data-theme="dark"] .myeclass-ai-proposal-empty-v2-9-441,
html[data-theme="dark"] .myeclass-ai-final-proposal-note-v2-9-441,
html[data-theme="dark"] .myeclass-ai-context-details-v2-9-441,
html[data-theme="dark"] .myeclass-ai-inner-details-v2-9-441{
  background:#101923;
  border-color:#46637f;
}
html[data-theme="dark"] .myeclass-ai-context-details-v2-9-441 pre,
html[data-theme="dark"] .myeclass-ai-inner-details-v2-9-441 pre{
  background:#0b0f14;
  border-color:#303030;
  color:#eef6ff;
}
@media(max-width:760px){
  .myeclass-correction-tab-labels-v2-9-440 label{min-width:0;}
  .myeclass-ai-proposal-grade-v2-9-441{display:block;}
  .myeclass-ai-proposal-grade-v2-9-441 b{display:block;margin-top:6px;}
}

/* v2.9.442 — AI proposal decision flow cleanup.
   Keeps the teacher workspace simple: original solution + AI proposal + explicit teacher decision.
   No DB migration, no OCR/PDF OCR, no notifications and no student-visible AI draft. */
.myeclass-ai-proposal-compare-grid-v2-9-442{
  display:grid;
  grid-template-columns:minmax(260px,.85fr) minmax(0,1.35fr);
  gap:16px;
  align-items:start;
}
.myeclass-original-solution-snapshot-v2-9-442,
.myeclass-ai-final-gaps-preview-v2-9-442{
  border:1px solid var(--line);
  border-radius:14px;
  padding:14px 16px;
  background:var(--surface-2);
}
.myeclass-original-solution-snapshot-v2-9-442 h4,
.myeclass-ai-final-gaps-preview-v2-9-442 b{
  margin:0 0 8px;
}
.myeclass-original-solution-files-v2-9-442 li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}
.myeclass-ai-proposal-main-v2-9-442{
  min-width:0;
}
.myeclass-ai-decision-choice-v2-9-442{
  display:grid;
  gap:10px;
}
.myeclass-ai-decision-choice-v2-9-442 label{
  display:block;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--surface-2);
  cursor:pointer;
}
.myeclass-ai-decision-choice-v2-9-442 label:has(input:checked){
  border-color:rgba(79,111,184,.62);
  background:linear-gradient(135deg,rgba(79,111,184,.14),rgba(20,132,124,.08));
}
.myeclass-ai-decision-choice-v2-9-442 input{
  margin-right:8px;
}
.myeclass-ai-decision-choice-v2-9-442 b{
  display:inline-block;
}
.myeclass-ai-decision-choice-v2-9-442 span{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
  font-weight:760;
}
html[data-theme="dark"] .myeclass-original-solution-snapshot-v2-9-442,
html[data-theme="dark"] .myeclass-ai-final-gaps-preview-v2-9-442,
html[data-theme="dark"] .myeclass-ai-decision-choice-v2-9-442 label{
  background:#101923;
  border-color:#46637f;
}
html[data-theme="dark"] .myeclass-ai-decision-choice-v2-9-442 label:has(input:checked){
  background:linear-gradient(135deg,rgba(49,208,255,.14),rgba(37,99,235,.10));
  border-color:rgba(49,208,255,.44);
}
@media(max-width:900px){
  .myeclass-ai-proposal-compare-grid-v2-9-442{grid-template-columns:1fr;}
}

/* v2.9.443 — correction workspace polish: visible original solution preview and quiet difficulty tags. */
.myeclass-original-solution-preview-v2-9-443{
  position:sticky;
  top:16px;
  max-height:calc(100vh - 220px);
  overflow:auto;
}
.myeclass-original-solution-preview-stack-v2-9-443{
  display:grid;
  gap:12px;
  margin:12px 0;
}
.myeclass-original-solution-image-frame-v2-9-443{
  margin:0;
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
  background:#fff;
}
.myeclass-original-solution-image-frame-v2-9-443 figcaption{
  padding:8px 10px;
  font-size:12px;
  font-weight:850;
  color:var(--muted);
  background:var(--surface-2);
  border-bottom:1px solid var(--line);
}
.myeclass-original-solution-image-frame-v2-9-443 img{
  display:block;
  width:100%;
  max-height:560px;
  object-fit:contain;
  background:#fff;
}
.myeclass-original-solution-no-preview-v2-9-443{
  border:1px dashed var(--line);
  border-radius:12px;
  padding:12px;
  margin:10px 0;
}
.myeclass-original-solution-file-details-v2-9-443{
  margin-top:10px;
  border-top:1px solid var(--line);
  padding-top:10px;
}
.myeclass-difficulty-tags-details-v2-9-443{
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px 14px;
  background:var(--surface-2);
}
.myeclass-difficulty-tags-details-v2-9-443 summary{
  cursor:pointer;
  font-weight:900;
}
.myeclass-difficulty-tags-grid-v2-9-443{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.myeclass-difficulty-tags-grid-v2-9-443 .checkbox-inline{
  margin:0;
}
html[data-theme="dark"] .myeclass-difficulty-tags-details-v2-9-443,
html[data-theme="dark"] .myeclass-original-solution-image-frame-v2-9-443 figcaption{
  background:#101923;
  border-color:#46637f;
}
@media(max-width:900px){
  .myeclass-original-solution-preview-v2-9-443{
    position:relative;
    top:auto;
    max-height:none;
  }
  .myeclass-original-solution-image-frame-v2-9-443 img{max-height:420px;}
}


/* v2.9.444 — compact correction workspace + rendered transcript.
   UX-only polish: less header height, lighter tabs, controlled solution preview,
   rendered MathJax transcript first, raw LaTeX only inside a closed details.
   No backend rewrite, no DB migration, no OCR/PDF OCR, no student-visible AI. */
.myeclass-correction-panel-sheet-v2-9-440{
  top:12px;
  bottom:12px;
  left:20px;
  right:20px;
}
.myeclass-correction-panel-header-v2-9-444{
  min-height:0;
  padding:10px 16px!important;
  align-items:center!important;
  gap:12px!important;
}
.myeclass-correction-titleline-v2-9-444{
  display:flex;
  align-items:baseline;
  gap:10px;
  flex-wrap:wrap;
  min-width:0;
}
.myeclass-correction-panel-header-v2-9-444 .myeclass-action-kicker{
  font-size:11px;
  letter-spacing:.04em;
  white-space:nowrap;
}
.myeclass-correction-panel-header-v2-9-444 h2{
  margin:0!important;
  font-size:18px!important;
  line-height:1.15!important;
  letter-spacing:-.02em;
}
.myeclass-correction-panel-header-v2-9-444 .muted{
  font-size:13px!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:min(760px,58vw);
}
.myeclass-correction-panel-header-v2-9-444 .button{
  padding:7px 12px!important;
  min-height:34px;
}
.myeclass-correction-tab-labels-v2-9-440{
  padding:8px 16px!important;
  gap:8px!important;
}
.myeclass-correction-tab-labels-v2-9-440 label{
  min-width:0!important;
  min-height:34px!important;
  padding:7px 12px!important;
  border-radius:10px!important;
  gap:6px!important;
}
.myeclass-correction-tab-labels-v2-9-440 label b{
  font-size:13px!important;
  line-height:1.1;
}
.myeclass-correction-tab-labels-v2-9-440 label small,
.myeclass-correction-tab-labels-v2-9-440 label>span{
  display:none!important;
}
.myeclass-correction-tab-panels-v2-9-440{
  padding:14px 18px!important;
}
.myeclass-correction-tab-panel-v2-9-440{
  max-width:1240px!important;
}
.myeclass-correction-section-head-v2-9-358{
  margin-bottom:10px!important;
}
.myeclass-correction-section-head-v2-9-358 h3{
  margin:0 0 3px!important;
  font-size:18px!important;
}
.myeclass-correction-section-head-v2-9-358 p{
  margin:0!important;
}
.myeclass-ai-proposal-compare-grid-v2-9-442{
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr)!important;
  gap:14px!important;
}
.myeclass-original-solution-preview-v2-9-443{
  top:10px!important;
  max-height:calc(100vh - 190px)!important;
  padding:10px 12px!important;
}
.myeclass-original-solution-preview-v2-9-443 h4{
  margin:0 0 6px!important;
}
.myeclass-original-solution-preview-stack-v2-9-443{
  gap:8px!important;
  margin:8px 0!important;
}
.myeclass-original-solution-image-frame-v2-9-443{
  border-radius:10px!important;
}
.myeclass-original-solution-image-frame-v2-9-443 figcaption{
  padding:6px 8px!important;
  font-size:11px!important;
}
.myeclass-original-solution-image-frame-v2-9-443 img{
  max-height:430px!important;
}
.myeclass-original-solution-file-details-v2-9-443{
  margin-top:8px!important;
  padding-top:8px!important;
}
.myeclass-ai-proposal-summary-v2-9-441{
  gap:10px!important;
}
.myeclass-ai-proposal-grade-v2-9-441{
  padding:12px 14px!important;
  border-radius:12px!important;
}
.myeclass-ai-proposal-grade-v2-9-441 b{
  font-size:24px!important;
}
.myeclass-ai-proposal-box-v2-9-441,
.myeclass-ai-proposal-empty-v2-9-441,
.myeclass-ai-final-proposal-note-v2-9-441{
  padding:12px 14px!important;
  border-radius:12px!important;
}
.myeclass-ai-context-details-v2-9-441,
.myeclass-ai-inner-details-v2-9-441{
  border-radius:12px!important;
}
.myeclass-ai-context-details-v2-9-441>summary,
.myeclass-ai-inner-details-v2-9-441>summary{
  padding:10px 12px!important;
}
.myeclass-transcript-rendered-v2-9-444{
  display:grid;
  gap:8px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:rgba(15,23,42,.04);
  overflow:auto;
}
.myeclass-rendered-latex-line-v2-9-444{
  padding:4px 0;
  white-space:normal!important;
  overflow-x:auto;
}
.myeclass-raw-latex-details-v2-9-444,
.myeclass-transcript-text-details-v2-9-444{
  margin-top:10px!important;
}
html[data-theme="dark"] .myeclass-transcript-rendered-v2-9-444{
  background:#0b0f14;
  border-color:#303030;
}
@media(max-width:900px){
  .myeclass-correction-panel-sheet-v2-9-440{left:8px;right:8px;top:8px;bottom:8px;}
  .myeclass-correction-titleline-v2-9-444{display:block;}
  .myeclass-correction-panel-header-v2-9-444 .muted{display:block;max-width:calc(100vw - 130px);margin-top:2px;white-space:nowrap;}
  .myeclass-correction-tab-labels-v2-9-440{display:flex!important;overflow:auto;}
  .myeclass-correction-tab-labels-v2-9-440 label{white-space:nowrap;flex:0 0 auto;}
  .myeclass-ai-proposal-compare-grid-v2-9-442{grid-template-columns:1fr!important;}
  .myeclass-original-solution-preview-v2-9-443{position:relative!important;top:auto!important;max-height:none!important;}
  .myeclass-original-solution-image-frame-v2-9-443 img{max-height:360px!important;}
}

/* v2.9.447: compact open-eClass-like table toolbar */
.myeclass-table-toolbar-v2-9-447{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 14px;flex-wrap:wrap}
.myeclass-table-toolbar-v2-9-447 label{display:flex;align-items:center;gap:6px;margin:0;color:var(--text,#fff)}
.myeclass-table-toolbar-v2-9-447 select,.myeclass-table-toolbar-v2-9-447 input[type="search"]{min-height:38px;border:1px solid var(--border,#5d83a5);background:var(--panel-2,#102030);color:var(--text,#fff);border-radius:6px;padding:6px 10px}
.myeclass-table-search-v2-9-447{margin-left:auto}
.myeclass-table-search-v2-9-447 input[type="search"]{min-width:240px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media (max-width: 760px){.myeclass-table-toolbar-v2-9-447{align-items:stretch}.myeclass-table-toolbar-v2-9-447 label,.myeclass-table-search-v2-9-447{width:100%;margin-left:0}.myeclass-table-search-v2-9-447 input[type="search"]{width:100%;min-width:0}}
/* v2.9.447: keep single visible New assignment entry point; form appears after button click */
#myeclass-new-assignment:not([open]){display:none}

/* v2.9.448 — student polish: compact feedback summary and equal submission choices */
.myeclass-feedback-summary-line-v2-9-448 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 12px 0 16px;
}
.myeclass-feedback-summary-line-v2-9-448 span {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  padding: 8px 12px;
  border: 1px solid color-mix(in srgb, var(--line) 75%, transparent);
  border-radius: 12px;
  background: color-mix(in srgb, var(--surface) 72%, transparent);
  color: var(--text);
}
.myeclass-feedback-summary-line-v2-9-448 b {
  font-size: 1.08rem;
}
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-submit-choice-v2-9-437,
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-mobile-handoff-form-v2-9-420 button,
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-upload-method-v2-9-420 > summary {
  border: 1px solid color-mix(in srgb, var(--accent) 48%, var(--line));
  background: color-mix(in srgb, var(--surface) 78%, transparent);
  color: var(--text);
}
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-submit-choice-v2-9-437:hover,
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-mobile-handoff-form-v2-9-420 button:hover,
.myeclass-submit-methods-simplified-v2-9-437 .myeclass-upload-method-v2-9-420 > summary:hover {
  background: color-mix(in srgb, var(--accent) 18%, var(--surface));
}

/* v2.9.449: when no next exercise exists, do not reserve an empty student panel. */
.myeclass-action-columns.is-single-v2-9-449{grid-template-columns:1fr;}
