/* 解題平台新版視覺（覆蓋舊樣式，不改動功能） */
:root{--pri:#4f46e5;--pri-d:#4338ca;--pri-l:#eef2ff;--ok:#16a34a;--bg:#f1f5f9;--ink:#1e293b;--mute:#64748b;--line:#e2e8f0;--r:12px}
body.root{font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif !important;color:var(--ink) !important;background:var(--bg) !important}

/* 頂部工具列 */
#main>table{background:#fff;box-shadow:0 1px 0 var(--line),0 4px 12px -6px #0f172a26;position:relative;z-index:5}
#tabs{background:#fff !important;align-items:center;min-height:56px}
#tabs li a#msg_toolbox{font-weight:700;font-size:15px;color:var(--pri) !important;letter-spacing:.08em;padding:.3rem 1.2rem !important}
.drop-shadow{display:none}
#tabs>a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin:0 3px;border-radius:10px;color:var(--mute) !important;text-decoration:none;transition:background .15s,transform .15s}
#tabs>a i,#tabs .lang-wrap i{font-size:26px !important}
#tabs>a:hover{background:var(--pri-l);color:var(--pri) !important;transform:translateY(-1px)}
#button_run{background:var(--ok);color:#fff !important}
#button_run:hover{background:#15803d;color:#fff !important}
#button_test{background:var(--pri);color:#fff !important}
#button_test:hover{background:var(--pri-d);color:#fff !important}
#tabs .lang-wrap{display:inline-flex;align-items:center;margin-left:4px;color:var(--mute)}

/* 左側積木分類 */
.blocklyToolboxCategory,.blocklyTreeRow{border-radius:10px !important}
.blocklyToolboxDiv,.blocklyToolbox{background:#fff !important;border-right:1px solid var(--line) !important}

/* 題目 / 輸出面板 */
#javascript_content{border:0 !important;border-radius:16px !important;box-shadow:0 12px 32px -8px #0f172a40 !important;overflow:hidden;background:#fff !important;top:76px !important}
#javascript_title{background:linear-gradient(135deg,#6366f1,#4338ca) !important;border:0 !important;border-radius:0 !important;color:#fff !important;font-weight:700;letter-spacing:.1em;display:flex;align-items:center;justify-content:center;gap:10px}
#javascript_title a i{opacity:.85;transition:opacity .15s}#javascript_title a:hover i{opacity:1}
#question_input{border:0 !important;padding:16px 18px !important;font-size:15px;line-height:1.75;color:var(--ink);background:#fff}
#question_input br+br{display:none}
#iframe_output{border:0 !important;border-top:2px solid var(--pri-l) !important;background:#f8fafc !important}

/* 對話視窗（匯入題庫、建立積木） */
.modal-container{background:#0f172a8c !important;backdrop-filter:blur(3px)}
#importQuestion_content,#createFunction_content{border:0 !important;border-radius:18px !important;box-shadow:0 24px 60px -12px #0f172a66 !important;overflow:hidden;background:#fff !important}
.modal-container .header{background:linear-gradient(135deg,#6366f1,#4338ca) !important;color:#fff !important;font-size:18px;font-weight:700;letter-spacing:.08em;padding:16px 24px !important;text-align:left !important}
.modal-container label{color:var(--mute);font-weight:600}
.modal-container select,.modal-container input[type=text]{padding:8px 12px !important;border:1px solid var(--line) !important;border-radius:10px !important;background:#fff;font:inherit;outline:none}
.modal-container select:focus,.modal-container input:focus{border-color:var(--pri) !important;box-shadow:0 0 0 3px #4f46e533}
.modal-container button{border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);padding:8px 18px;font:inherit;cursor:pointer;transition:all .15s}
.modal-container button:hover{border-color:var(--pri);color:var(--pri);background:var(--pri-l)}
#confirmButton{background:var(--pri) !important;color:#fff !important;border-color:var(--pri) !important}
#confirmButton:hover{background:var(--pri-d) !important}

/* 題庫清單表格 */
#importQuestionsList{padding:4px}
#importQuestionTable{border-collapse:separate;border-spacing:0;width:100%;font-size:14px}
#importQuestionTable td{padding:8px 12px;border-bottom:1px solid var(--line)}
#importQuestionTable tr:first-child td{background:var(--pri-l);color:var(--pri) !important;font-weight:700;position:sticky;top:0}
#importQuestionTable tr:first-child td font{color:var(--pri) !important}
#importQuestionTable tr:not(:first-child):hover td{background:#f8fafc}
#importQuestionTable button{width:64px !important;border-radius:999px !important;background:var(--pri) !important;color:#fff !important;border:0 !important;padding:4px 0 !important;font-weight:700}
#importQuestionTable button:hover{background:var(--pri-d) !important}

/* 學生登錄標籤 */
.fs-badge{position:fixed;top:10px;left:50%;transform:translateX(-50%);z-index:9999;display:flex;align-items:center;gap:6px;
  background:var(--pri-l);color:var(--pri);border:1px solid #c7d2fe;border-radius:999px;padding:4px 16px;font:600 14px "Noto Sans TC",sans-serif;cursor:pointer;box-shadow:0 2px 8px -2px #4f46e540;transition:all .15s}
.fs-badge:hover{background:#e0e7ff}
@media(max-width:900px){.fs-badge{top:auto;bottom:12px}}

/* 修正：圖示顏色、題庫表格舊黑框 */
#tabs i.material-icons{color:inherit !important}
#importQuestionTable,#importQuestionTable td{border:0 !important}
#importQuestionTable td{border-bottom:1px solid var(--line) !important}
#importQuestionsList,#importQuestionsList>div{border-color:var(--line) !important;border-radius:12px}

/* 題目內容排版：表格不超出面板 */
#question_input{word-break:break-word}
#question_input table{width:100% !important;max-width:100%;border-collapse:collapse;margin:10px 0;font-size:14px}
#question_input td,#question_input th{border:1px solid var(--line) !important;padding:6px 10px;vertical-align:top}
#question_input tr:first-child td{background:var(--pri-l)}
#question_input img{max-width:100%;height:auto}
#tabs>a#button_run,#tabs>a#button_run:hover,#tabs>a#button_test,#tabs>a#button_test:hover{color:#fff !important}
#tabs>a#button_run{background:var(--ok)}#tabs>a#button_test{background:var(--pri)}
#question_input,#iframe_output{box-sizing:border-box !important}

/* 回首頁連結 */
.home-link{position:fixed;top:12px;left:104px;z-index:9998;font:600 14px "Noto Sans TC",sans-serif;color:var(--mute);text-decoration:none;padding:5px 12px;border-radius:999px;transition:background .15s}
.home-link:hover{background:var(--pri-l);color:var(--pri)}
@media(max-width:900px){.home-link{left:auto;right:10px;top:auto;bottom:12px;background:#fff;box-shadow:0 2px 8px #0f172a26}}
