/* ==========================================
   CLASSROOM INSTRUCTOR — Assignment submissions
   5 animation blocks. Reuses adding-students.css for shell,
   sidebar, tabs, drawer, modal. Adds page-specific styles for:
     - Submissions table (Name/Title/File/Lang/Grammar/AI/Sim/Paper ID/Date)
     - Score chips (grammar=green, ai=blue, sim=red/green)
     - Detail report panels (slide-up overlays)
     - Submission History modal w/ sort + search
     - Download dropdown menu (4 report types)
     - Grades tab + Feedback side-drawer w/ Marks input
     - Q&A tab list
   ========================================== */

/* === View / Pane swappers (scene 1 and scene 5) === */
.os-view{position:absolute;left:12px;right:12px;top:38px;bottom:8px;opacity:0;pointer-events:none;transition:opacity .35s ease}
.os-view.os-show{opacity:1;pointer-events:auto;position:relative;left:auto;right:auto;top:auto;bottom:auto}
.gr-pane{position:absolute;left:12px;right:12px;top:54px;bottom:8px;opacity:0;pointer-events:none;transition:opacity .3s ease}
.gr-pane.gr-show{opacity:1;pointer-events:auto;position:relative;left:auto;right:auto;top:auto;bottom:auto}

/* === Search input focus state (used by tools scene) === */
.mc-search.fc{border-color:#4285f4;box-shadow:0 0 0 2px rgba(66,133,244,.1);color:#1a1a1a}
.mc-search .typed{color:#1a1a1a}

/* === Submissions table === */
.as-stable{background:#fff;border-radius:6px;overflow:hidden;font-size:8px;border:1px solid #eee;margin-top:4px}
.as-sthd{display:grid;grid-template-columns:18px 0.7fr 0.7fr 0.7fr 0.55fr 0.7fr 0.55fr 0.7fr 0.6fr 0.65fr 0.7fr;background:#fff;padding:6px 8px;font-weight:600;color:#333;border-bottom:1px solid #eee;font-size:8px;align-items:center;gap:3px}
.as-sthd > div{display:flex;align-items:center;gap:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.as-stcb{width:9px;height:9px;border:1px solid #ccc;border-radius:2px;flex-shrink:0}
.as-strow{display:grid;grid-template-columns:18px 0.7fr 0.7fr 0.7fr 0.55fr 0.7fr 0.55fr 0.7fr 0.6fr 0.65fr 0.7fr;padding:6px 8px;border-bottom:1px solid #f3f3f3;align-items:center;background:#fff;font-size:8px;gap:3px;color:#333;transition:background .2s}
.as-strow.hl-row{background:#eef4ff}
.as-strow > div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Beta badge on Grammar header */
.as-beta{display:inline-block;background:#1447E6;color:#fff;font-size:6px;padding:1px 3px;border-radius:2px;font-weight:700;margin-left:2px;vertical-align:top}

/* File cell (download icon + filename) */
.as-file{color:#444;display:flex;align-items:center;gap:2px}
.as-file::before{content:"\2193";display:inline-block;font-weight:700;font-size:9px;color:#666}

/* Score chips */
.as-chip{display:inline-flex;align-items:center;justify-content:center;font-size:8px;font-weight:600;padding:2px 6px;border-radius:8px;cursor:default;transition:transform .2s,box-shadow .2s}
.as-chip.gram{background:#e6f4ea;color:#1d7a3a}
.as-chip.ai{background:#e8f0fe;color:#1a56c7}
.as-chip.sim-hi{background:#fde7e7;color:#c4302b}
.as-chip.sim-lo{background:#e6f4ea;color:#1d7a3a}
.as-chip.hl{transform:scale(1.18);box-shadow:0 0 0 2px rgba(20,71,230,.18)}

/* Action buttons (history / download / delete) */
.as-actions{display:flex;gap:3px}
.as-act{width:16px;height:16px;border:1px solid #ddd;border-radius:3px;display:flex;align-items:center;justify-content:center;background:#fff;color:#666;font-size:8px;position:relative;transition:background .2s,border-color .2s,transform .2s,color .2s}
.as-act svg{width:9px;height:9px}
.as-act.hl{background:#e8f0fe;border-color:#4285f4;color:#4285f4;transform:scale(1.2)}
.as-act.hl-del{background:#fde0e0;border-color:#e54545;color:#e54545;transform:scale(1.2)}

/* Top toolbar buttons */
.as-tb-btn{width:20px;height:20px;border:1px solid #e0e0e0;border-radius:5px;display:flex;align-items:center;justify-content:center;background:#fff;color:#666;font-size:7px;transition:transform .2s,background .2s,border-color .2s,color .2s}
.as-tb-btn svg{width:10px;height:10px}
.as-tb-btn.hl{background:#e8f0fe;border-color:#4285f4;color:#4285f4;transform:scale(1.15)}

/* === Submission tabs (Submission / Grades / Question & Answer) === */
.as-tabs{display:flex;border-bottom:1px solid #eee;margin-top:4px}
.as-tab{padding:6px 12px;font-size:9px;font-weight:600;color:#999;border-bottom:2px solid transparent;cursor:default;transition:color .2s,border-color .2s,background .2s}
.as-tab.act{color:#1447E6;border-bottom-color:#1447E6}

/* === Detail-report overlay (Grammar / AI / Similarity reports) === */
.as-rep{position:absolute;inset:0;background:#fff;z-index:25;opacity:0;pointer-events:none;transition:opacity .35s ease;display:flex;flex-direction:column}
.as-rep.on{opacity:1;pointer-events:auto}
.as-rep-hd{padding:8px 12px;border-bottom:1px solid #eee;display:flex;align-items:center;gap:8px;font-size:9px;color:#444;background:#f8f9fc}
.as-rep-hd-logo{display:flex;align-items:center;gap:4px;font-weight:700;color:#1447E6}
.as-rep-hd-logo i{width:11px;height:11px;background:#1447E6;border-radius:3px;display:block}
.as-rep-hd-meta{display:flex;gap:10px;font-size:7.5px;color:#666;flex:1}
.as-rep-hd-meta span b{color:#222;margin-right:2px}
.as-rep-body{flex:1;display:flex;padding:8px;gap:8px}
.as-rep-doc{flex:1.4;background:#fff;border:1px solid #eee;border-radius:6px;padding:10px;font-size:8px;color:#333;overflow:hidden;line-height:1.45;position:relative}
.as-rep-doc h4{font-size:11px;color:#1a1a1a;text-align:center;margin:6px 0 8px;font-weight:700}
.as-rep-doc .as-rep-detailed{color:#c4302b;font-size:9px;font-weight:700;text-align:center;margin:6px 0 4px}
.as-rep-doc .as-rep-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:6px 0;font-size:7.5px}
.as-rep-doc .as-rep-stat-grid div b{color:#1447E6;display:block;margin-bottom:1px}
.as-rep-doc .as-rep-stat-grid div span{color:#e8841b;font-weight:700}
.as-rep-side{flex:1;display:flex;flex-direction:column;gap:6px}
.as-rep-side-hd{background:#f5f8fc;border:1px solid #e3eaf3;border-radius:6px;padding:6px 8px;font-size:8px;color:#333;display:flex;justify-content:space-between;align-items:center}
.as-rep-side-hd b{color:#1447E6}
.as-rep-donut{position:relative;width:50px;height:50px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:8.5px;font-weight:700;color:#1447E6;background:conic-gradient(#1447E6 0 72%,#e0e7ff 72% 100%)}
.as-rep-donut::before{content:'';position:absolute;inset:5px;background:#fff;border-radius:50%}
.as-rep-donut span{position:relative;text-align:center;line-height:1.05}
.as-rep-donut span small{display:block;font-size:6px;color:#888;font-weight:600}
.as-rep-tile{background:#f5f8fc;border:1px solid #e3eaf3;border-radius:6px;padding:6px;font-size:7.5px;color:#444;display:flex;justify-content:space-between;align-items:center}
.as-rep-tile b{color:#222}
.as-rep-tile-row{display:flex;gap:5px}
.as-rep-tiles{display:flex;flex-direction:column;gap:4px}
/* Similarity report variant — sources panel */
.as-rep-sim-side{flex:1;display:flex;flex-direction:column;gap:6px}
.as-rep-sim-circle{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #eee;border-radius:6px;padding:6px 8px}
.as-rep-sim-num{width:48px;height:48px;border-radius:50%;border:4px solid #c4302b;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#222;flex-shrink:0}
.as-rep-sim-num span{font-size:7px;color:#666;display:block}
.as-rep-sim-legend{display:flex;flex-direction:column;gap:2px;font-size:7px}
.as-rep-sim-legend div{display:flex;align-items:center;gap:4px}
.as-rep-sim-legend i{width:6px;height:6px;border-radius:50%;display:inline-block}
.as-rep-sources{background:#fff;border:1px solid #eee;border-radius:6px;padding:6px}
.as-rep-srctab{display:flex;gap:0;border-bottom:1px solid #eee;margin-bottom:4px}
.as-rep-srctab div{padding:4px 6px;font-size:7.5px;font-weight:600;color:#666;border-bottom:2px solid transparent}
.as-rep-srctab div.act{color:#1447E6;border-bottom-color:#1447E6}
.as-rep-srcrow{display:flex;align-items:center;gap:5px;padding:4px 2px;font-size:7.5px;border-bottom:1px solid #f5f5f5}
.as-rep-srcrow:last-child{border-bottom:0}
.as-rep-srcrow-num{width:14px;height:14px;border-radius:50%;background:#f0f4ff;color:#1447E6;display:flex;align-items:center;justify-content:center;font-size:7px;font-weight:700;flex-shrink:0}
.as-rep-srcrow-name{flex:1;color:#1447E6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.as-rep-srcrow-name small{display:block;color:#888;font-weight:500}
.as-rep-srcrow-pct{background:#f0e7ff;color:#5b3a99;font-size:7px;padding:2px 5px;border-radius:8px;font-weight:600}

/* === Submission History modal === */
.as-his{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.93);width:92%;background:#fff;border-radius:8px;padding:10px 12px;box-shadow:0 12px 40px rgba(0,0,0,.18);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;z-index:41}
.as-his.on{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}
.as-his-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:10px;font-weight:700;color:#1a1a1a}
.as-his-hd .as-his-search{flex:0 0 130px;height:20px;border:1px solid #e0e0e0;border-radius:4px;font-size:8px;color:#aaa;padding:0 6px;display:flex;align-items:center;background:#fff;transition:border-color .2s,box-shadow .2s,color .2s}
.as-his-hd .as-his-search.fc{border-color:#4285f4;box-shadow:0 0 0 2px rgba(66,133,244,.1);color:#1a1a1a}
.as-his-x{font-size:13px;color:#999}
.as-his-thd{display:grid;grid-template-columns:0.7fr 0.7fr 0.8fr 0.65fr 0.6fr 0.55fr 0.6fr 0.65fr 0.85fr;font-size:7.5px;color:#666;font-weight:600;padding:4px 4px;gap:3px;border-bottom:1px solid #f0f0f0;align-items:center}
.as-his-thd > div{display:flex;align-items:center;gap:2px;white-space:nowrap}
.as-his-thd .sortable.hl-sort{background:#e8f0fe;color:#4285f4;border-radius:3px;padding:1px 3px}
.as-his-row{display:grid;grid-template-columns:0.7fr 0.7fr 0.8fr 0.65fr 0.6fr 0.55fr 0.6fr 0.65fr 0.85fr;font-size:7.5px;padding:5px 4px;gap:3px;align-items:center;border-bottom:1px solid #f8f8f8;color:#333}
.as-his-row > div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.as-his-na{display:inline-block;background:#eee;color:#888;font-size:7px;padding:2px 6px;border-radius:8px;font-weight:600}
.as-his-warn{display:inline-flex;align-items:center;gap:3px}
.as-his-warn::before{content:'';display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:6px solid #f4b400}

/* === Download dropdown === */
.as-dl-menu{position:absolute;top:118px;right:8px;background:#fff;border-radius:6px;padding:4px;box-shadow:0 6px 22px rgba(0,0,0,.16);font-size:9px;z-index:30;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .22s ease,transform .22s ease;min-width:118px;border:1px solid #eee}
.as-dl-menu.on{opacity:1;pointer-events:auto;transform:translateY(0)}
.as-dl-item{padding:6px 10px;color:#333;border-radius:4px;cursor:default;transition:background .15s}
.as-dl-item.hl{background:#f0f4ff;color:#1447E6;font-weight:600}

/* === Grades tab table === */
.as-gtable{background:#fff;border-radius:6px;overflow:hidden;font-size:9px;border:1px solid #eee;margin-top:4px}
.as-ghd{display:grid;grid-template-columns:1fr 0.9fr 0.7fr 0.9fr 0.7fr;background:#fff;padding:7px 10px;font-weight:700;color:#222;border-bottom:1px solid #eee;font-size:9px}
.as-grow{display:grid;grid-template-columns:1fr 0.9fr 0.7fr 0.9fr 0.7fr;padding:7px 10px;border-bottom:1px solid #f3f3f3;align-items:center;background:#fff;font-size:9px;color:#333}
.as-fb-btn{width:18px;height:18px;border:1px solid #ddd;border-radius:3px;display:flex;align-items:center;justify-content:center;background:#fff;color:#666;font-size:9px;transition:background .2s,border-color .2s,transform .2s,color .2s}
.as-fb-btn.hl{background:#e8f0fe;border-color:#4285f4;color:#4285f4;transform:scale(1.2)}
.as-fb-btn svg{width:9px;height:9px}

/* === Feedback drawer (right side) === */
.as-fb-draw{position:absolute;top:0;right:0;bottom:0;width:42%;background:#fff;border-left:1px solid #ddd;box-shadow:-8px 0 24px rgba(0,0,0,.08);transform:translateX(100%);transition:transform .4s cubic-bezier(.4,0,.2,1);padding:12px 14px;z-index:30;display:flex;flex-direction:column;gap:8px}
.as-fb-draw.on{transform:translateX(0)}
.as-fb-art{height:60px;display:flex;align-items:center;justify-content:center;margin-bottom:4px;background:linear-gradient(135deg,#f5f8ff 0%,#eef3ff 100%);border-radius:6px;position:relative;overflow:hidden}
.as-fb-art::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 30% 50%,#fff5d6 0%,transparent 30%),radial-gradient(circle at 70% 30%,#dfe8ff 0%,transparent 35%)}
.as-fb-art-figure{position:relative;font-size:22px}
.as-fb-fld{display:flex;flex-direction:column;gap:3px}
.as-fb-fld label{font-size:9px;color:#444;font-weight:600}
.as-fb-fld .as-fb-inp{height:22px;border:1px solid #ddd;border-radius:5px;background:#fff;padding:0 8px;font-size:10px;color:#333;display:flex;align-items:center;transition:border-color .2s,box-shadow .2s}
.as-fb-fld .as-fb-inp.fc{border-color:#4285f4;box-shadow:0 0 0 2px rgba(66,133,244,.1)}
.as-fb-fld small{font-size:7.5px;color:#888}
.as-fb-submit{height:24px;background:#1447E6;color:#fff;border:none;border-radius:5px;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;margin-top:4px;cursor:default;transition:background .15s,transform .15s}
.as-fb-submit.press{transform:scale(.97);background:#0e3bb6}

/* === Q&A tab === */
.as-qa-table{background:#fff;border-radius:6px;overflow:hidden;font-size:9px;border:1px solid #eee;margin-top:4px}
.as-qa-hd{display:grid;grid-template-columns:0.6fr 1.4fr;background:#fff;padding:7px 10px;font-weight:700;color:#222;border-bottom:1px solid #eee;font-size:9px}
.as-qa-row{display:grid;grid-template-columns:0.6fr 1.4fr;padding:7px 10px;border-bottom:1px solid #f3f3f3;align-items:center;background:#fff;font-size:9px;color:#333}

/* === Toast === */
.as-toast{position:absolute;top:12px;left:50%;transform:translateX(-50%) translateY(-30px);background:#fff;border-radius:8px;padding:7px 12px;box-shadow:0 4px 16px rgba(0,0,0,.15);font-size:9.5px;color:#333;display:flex;align-items:center;gap:6px;opacity:0;transition:opacity .3s ease,transform .3s ease;z-index:50}
.as-toast.on{opacity:1;transform:translateX(-50%) translateY(0)}
.as-toast-ico{width:13px;height:13px;border-radius:50%;background:#1D9E75;color:#fff;font-size:8px;font-weight:700;display:flex;align-items:center;justify-content:center}

/* Modal overlay reused from adding-students.css (mc-modal-bg) */

@media(max-width:640px){
  .as-sthd,.as-strow{grid-template-columns:14px 0.6fr 0.6fr 0.6fr 0.5fr 0.6fr 0.5fr 0.6fr 0.5fr 0.55fr 0.6fr;font-size:7px;padding:5px 6px}
  .as-his-thd,.as-his-row{font-size:6.5px}
  .as-fb-draw{width:60%}
}
