body{margin:0;font-family:Microsoft JhengHei,微軟正黑體,sans-serif;background-color:#f5f7fa}.login-container[data-v-71dcde1d]{display:flex;justify-content:center;align-items:center;height:100vh;background:#f0f2f5;font-family:Microsoft JhengHei,sans-serif}.login-box[data-v-71dcde1d]{background:#fff;padding:40px;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:400px;text-align:center;border-top:5px solid #2F5D7C}.title[data-v-71dcde1d]{margin-bottom:30px;color:#333}.form-group[data-v-71dcde1d]{margin-bottom:20px}.form-group input[data-v-71dcde1d]{width:100%;padding:12px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:16px}.login-btn[data-v-71dcde1d]{width:100%;padding:12px;background:#2f5d7c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:16px}.login-btn[data-v-71dcde1d]:hover{background:#1e3c52}.login-btn[data-v-71dcde1d]:disabled{background:#ccc;cursor:not-allowed}.dashboard-container[data-v-07e515d7]{max-width:1000px;margin:0 auto;padding:40px 20px;font-family:Microsoft JhengHei,sans-serif;min-height:100vh;display:flex;flex-direction:column}.header[data-v-07e515d7]{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;padding-bottom:20px;border-bottom:1px solid #eee}.welcome h2[data-v-07e515d7]{margin:0 0 5px;color:#333}.welcome p[data-v-07e515d7]{margin:0;color:#666}.role-badge[data-v-07e515d7]{font-size:12px;padding:2px 8px;border-radius:10px;vertical-align:middle;margin-left:5px;font-weight:400}.teacher-badge[data-v-07e515d7]{background:#417690;color:#fff}.student-badge[data-v-07e515d7]{background:#eee;color:#666}.header-btns[data-v-07e515d7]{display:flex;gap:10px}.logout-btn[data-v-07e515d7]{padding:8px 20px;border:1px solid #d03050;color:#d03050;background:#fff;border-radius:5px;cursor:pointer;transition:all .2s}.logout-btn[data-v-07e515d7]:hover{background:#fff0f0}.pwd-btn[data-v-07e515d7]{padding:8px 15px;border:1px solid #2F5D7C;color:#2f5d7c;background:#fff;border-radius:5px;cursor:pointer;transition:all .2s}.pwd-btn[data-v-07e515d7]:hover{background:#eef6f9}.grid-menu[data-v-07e515d7]{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:30px;margin-bottom:40px}.menu-card[data-v-07e515d7]{background:#fff;border-radius:15px;padding:30px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 15px #0000000d;border:2px solid transparent;min-height:220px;aspect-ratio:3/2}.menu-card[data-v-07e515d7]:hover{transform:translateY(-5px);box-shadow:0 10px 25px #0000001a}.icon[data-v-07e515d7]{font-size:48px;margin-bottom:15px}.menu-card h3[data-v-07e515d7]{margin:0 0 10px;font-size:22px}.menu-card p[data-v-07e515d7]{margin:0;color:#777;font-size:14px;line-height:1.5}.practice[data-v-07e515d7]{border-bottom:5px solid #18a058}.practice[data-v-07e515d7]:hover{border-color:#18a058}.practice h3[data-v-07e515d7]{color:#18a058}.exam[data-v-07e515d7]{border-bottom:5px solid #2F5D7C}.exam[data-v-07e515d7]:hover{border-color:#2f5d7c}.exam h3[data-v-07e515d7]{color:#2f5d7c}.history[data-v-07e515d7]{border-bottom:5px solid #f0a020}.history[data-v-07e515d7]:hover{border-color:#f0a020}.history h3[data-v-07e515d7]{color:#f0a020}.teacher[data-v-07e515d7]{border-bottom:5px solid #6610f2}.teacher[data-v-07e515d7]:hover{border-color:#6610f2}.teacher h3[data-v-07e515d7]{color:#6610f2}.empty[data-v-07e515d7]{border:2px dashed #eee;background:#fcfcfc;cursor:default;box-shadow:none}.empty[data-v-07e515d7]:hover{transform:none;box-shadow:none;border-color:#ddd}.empty .icon[data-v-07e515d7]{opacity:.3;grayscale:100%}.empty h3[data-v-07e515d7]{color:#aaa}.empty p[data-v-07e515d7]{color:#ccc}@media(max-width:768px){.grid-menu[data-v-07e515d7]{grid-template-columns:1fr}.menu-card[data-v-07e515d7]{min-height:150px;aspect-ratio:auto}}.paper-list-container[data-v-c0efa16b]{font-family:Microsoft JhengHei,sans-serif;min-height:100vh;background-color:#f5f7fa}.header[data-v-c0efa16b]{background:#fff;padding:15px 30px;border-bottom:3px solid #2F5D7C;display:flex;justify-content:space-between;align-items:center}.title-group h1[data-v-c0efa16b]{margin:0;font-size:24px;color:#333}.content-area[data-v-c0efa16b]{max-width:1200px;margin:30px auto;padding:0 20px}.loading-state[data-v-c0efa16b]{text-align:center;padding:100px 0}.empty-state[data-v-c0efa16b]{padding:50px 0}.paper-card[data-v-c0efa16b]{height:100%;display:flex;flex-direction:column}.card-header-text[data-v-c0efa16b]{font-weight:700;font-size:18px}.date-info[data-v-c0efa16b]{font-size:13px;color:#999;margin-bottom:5px}.desc-info[data-v-c0efa16b]{font-size:14px;color:#555}[data-v-840d0167]{box-sizing:border-box;font-family:Microsoft JhengHei,微軟正黑體,sans-serif!important}.exam-body[data-v-840d0167]{background-color:#fffffe;min-height:100vh;display:flex;justify-content:center}.exam-frame[data-v-840d0167]{width:1024px;position:relative;background-color:#fffffe}.fake-bg-head[data-v-840d0167]{position:relative;height:177px;background-color:#f2f9e7;border:2px solid #ccc;border-bottom:1px solid #999;margin-top:10px}.abs-label[data-v-840d0167]{position:absolute;font-size:13pt;color:#555;font-weight:400}.abs-text[data-v-840d0167]{position:absolute;font-size:13pt;color:#222;font-weight:700}.title[data-v-840d0167]{font-size:16pt;font-weight:900;color:#000}.abs-btns[data-v-840d0167]{position:absolute;display:flex;gap:8px}.pixel-btn[data-v-840d0167]{width:46px;height:28px;border:1px solid #666;background:linear-gradient(to bottom,#fcfcfc,#d0d0d0);font-size:12pt;line-height:1;cursor:pointer;border-radius:3px;color:#000;padding:0}.pixel-btn[data-v-840d0167]:hover{background:#e0e0e0}.pixel-btn[data-v-840d0167]:active{background:#aaa}.stats-bg[data-v-840d0167]{position:absolute;top:120px;left:0;width:100%;height:57px;border-top:1px solid #999;background:linear-gradient(to bottom,#eefbe6,#f2f9e7)}.abs-stat-label[data-v-840d0167]{position:absolute;top:135px;font-size:13pt;color:#2f5d7c}.abs-stat-num[data-v-840d0167]{position:absolute;top:135px;color:#ef1052;font-weight:700;font-size:13pt;width:50px;text-align:center}.abs-timer[data-v-840d0167]{position:absolute;top:135px;color:#ef1052;font-weight:700;font-size:16pt}.fake-bg-ctrl[data-v-840d0167]{position:relative;height:90px;background-color:#e6e6e6;border:1px solid #ccc;border-top:none}.abs-ctrl-left[data-v-840d0167]{position:absolute;display:flex;gap:5px}.nav-btn[data-v-840d0167]{padding:4px 16px;font-size:12pt;cursor:pointer;background:linear-gradient(to bottom,#f0f0f0,#dcdcdc);border:1px solid #888;border-radius:3px;color:#000}.nav-btn[data-v-840d0167]:active{background:#aaa}.nav-btn[data-v-840d0167]:disabled{color:#aaa;cursor:not-allowed}.abs-mark[data-v-840d0167]{position:absolute;font-size:13pt;display:flex;align-items:center;gap:10px}.dot[data-v-840d0167]{display:inline-block;width:12px;height:12px;border-radius:50%;margin-left:2px;border:1px solid #666;vertical-align:middle}.yellow[data-v-840d0167]{background:#ff0}.orange[data-v-840d0167]{background:orange}.blue[data-v-840d0167]{background:#00f}.abs-jump[data-v-840d0167]{position:absolute}.abs-jump select[data-v-840d0167]{font-size:12pt}.question-area[data-v-840d0167]{padding:20px 40px;min-height:400px}.q-header[data-v-840d0167]{display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:5px;font-size:12pt;border-bottom:1px dotted #ccc}.zoom-tools span[data-v-840d0167]{cursor:pointer;color:#00f;text-decoration:underline;margin:0 5px}.q-content[data-v-840d0167]{font-size:16pt;margin-bottom:25px;line-height:1.6;color:#222;font-weight:500}.q-image img[data-v-840d0167]{max-width:90%;border:1px solid #000;margin-bottom:20px}.q-options[data-v-840d0167]{font-size:15pt}.opt-row[data-v-840d0167]{display:flex;align-items:flex-start;margin-bottom:15px;cursor:pointer}.opt-row:hover .opt-text[data-v-840d0167]{color:#00a}.radio-wrapper[data-v-840d0167]{display:flex;align-items:center;height:1.6em;margin-right:12px;padding-top:2px}.radio-wrapper input[data-v-840d0167]{transform:scale(1.5);cursor:pointer;margin:0}.opt-text[data-v-840d0167]{line-height:1.6;align-self:flex-start;margin-top:-2px}.footer-bar[data-v-840d0167]{padding:20px 12px;border-top:1px solid #ccc;display:flex;gap:5px;background-color:#f9f9f9}.modal-overlay[data-v-840d0167]{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;justify-content:center;align-items:center;z-index:9999}.modal-content[data-v-840d0167]{background:#fff;width:850px;height:600px;border:2px solid #666;display:flex;flex-direction:column}.modal-header[data-v-840d0167]{background:linear-gradient(to bottom,#e0e0e0,silver);padding:12px 15px;border-bottom:2px solid #999;display:flex;justify-content:space-between}.close-btn[data-v-840d0167]{background:#f0f0f0;border:1px solid #999;padding:3px 12px;cursor:pointer}.modal-body[data-v-840d0167]{flex:1;overflow-y:auto;padding:15px}.overview-table[data-v-840d0167]{width:100%;border-collapse:collapse;border:1px solid #999}.table-title[data-v-840d0167]{background:#e0e0e0;padding:8px;font-weight:700;text-align:center;border:1px solid #999}.answer-cell[data-v-840d0167]{background:#fff;text-align:center;padding:10px;cursor:pointer;border:1px solid #999}.answer-cell.not-answered[data-v-840d0167]{background:#fcc}.cell-num[data-v-840d0167]{color:#00f;font-size:12px}.cell-ans[data-v-840d0167]{font-weight:700}.overview-note[data-v-840d0167]{padding:10px;background:#f5f5f5;border:1px solid #ccc;font-size:12pt}.red-bg[data-v-840d0167]{background:#f66;color:#fff;padding:2px 5px}.answer-reveal[data-v-840d0167]{background:#ffc;padding:15px 20px;margin:20px 0;border:2px solid #ff9900}.result-container[data-v-f70e33fc]{max-width:1000px;margin:40px auto;background:#fff;padding:40px;box-shadow:0 4px 12px #0000001a;border-radius:8px;font-family:Microsoft JhengHei,sans-serif}.score-header[data-v-f70e33fc]{text-align:center;border-bottom:2px solid #eee;padding-bottom:30px;margin-bottom:30px}.score-circle[data-v-f70e33fc]{width:150px;height:150px;border-radius:50%;border:8px solid #2F5D7C;margin:20px auto;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#2f5d7c}.score-val[data-v-f70e33fc]{font-size:60px;font-weight:700;line-height:1}.score-label[data-v-f70e33fc]{font-size:20px}.info p[data-v-f70e33fc]{color:#666;margin:5px 0}.detail-table[data-v-f70e33fc]{width:100%;border-collapse:collapse}.detail-table th[data-v-f70e33fc]{background:#f5f5f5;padding:10px;text-align:left;border-bottom:2px solid #ddd}.detail-table td[data-v-f70e33fc]{padding:12px 10px;border-bottom:1px solid #eee}.wrong-row[data-v-f70e33fc]{background-color:#fff0f0}.q-text[data-v-f70e33fc]{font-size:15px;margin-bottom:5px}.q-exp[data-v-f70e33fc]{font-size:13px;color:#d00;background:#ffebeb;padding:5px;border-radius:4px}.history-container[data-v-790b0c05]{max-width:900px;margin:40px auto;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;font-family:Microsoft JhengHei,sans-serif}.header[data-v-790b0c05]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:2px solid #eee;padding-bottom:10px}h1[data-v-790b0c05]{margin:0;color:#333;font-size:24px}.empty[data-v-790b0c05]{text-align:center;padding:40px;color:#666;font-size:18px}.score[data-v-790b0c05]{font-weight:700;font-size:16px}.pass[data-v-790b0c05]{color:#18a058}.fail[data-v-790b0c05]{color:#d03050}.container[data-v-45fcf115]{display:flex;justify-content:center;align-items:center;height:100vh;background:#f5f5f5;font-family:Microsoft JhengHei,sans-serif}.box[data-v-45fcf115]{background:#fff;padding:40px;border-radius:8px;box-shadow:0 4px 10px #0000001a;text-align:center;width:100%;max-width:400px;border-top:5px solid #d03050}.form-group[data-v-45fcf115]{margin-bottom:15px}.input-field[data-v-45fcf115]{display:block;width:100%;padding:12px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:16px}.input-field[data-v-45fcf115]:focus{border-color:#d03050;outline:none}.btn[data-v-45fcf115]{width:100%;padding:12px;background:#d03050;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:16px;transition:background .2s}.btn[data-v-45fcf115]:hover{background:#b02040}.btn[data-v-45fcf115]:disabled{background:#ccc;cursor:not-allowed}.sidebar-header[data-v-2a0e288c]{padding:20px;font-size:18px;font-weight:700;color:#2f5d7c;text-align:center;border-bottom:1px solid #eee}.page-container[data-v-bceed3bf]{padding:0}.page-header[data-v-bceed3bf]{display:flex;justify-content:space-between;margin-bottom:20px;align-items:center}.full-height-tabs[data-v-bceed3bf]{height:100%;display:flex;flex-direction:column}[data-v-bceed3bf] .n-tabs-pane-wrapper{flex:1;overflow:hidden}[data-v-bceed3bf] .n-tab-pane{height:100%;padding:0}.tab-content-center[data-v-bceed3bf]{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto;padding:20px}.composer-layout[data-v-bceed3bf]{display:flex;height:100%;gap:20px;padding:10px;box-sizing:border-box}.composer-sidebar[data-v-bceed3bf]{width:320px;display:flex;flex-direction:column;border-right:1px solid #eee;padding-right:15px;gap:20px}.sidebar-section[data-v-bceed3bf]{flex-shrink:0}.sidebar-section.flex-grow[data-v-bceed3bf]{flex:1;display:flex;flex-direction:column;min-height:0}.search-results[data-v-bceed3bf]{flex:1;overflow-y:auto;border:1px solid #eee;border-radius:4px;margin-top:10px;padding:5px}.composer-content[data-v-bceed3bf]{flex:1;display:flex;flex-direction:column;min-width:0}.stats-bar[data-v-bceed3bf]{background:#f9f9f9;padding:10px 15px;border-radius:5px;margin-bottom:10px;border:1px solid #eee;flex-shrink:0}.q-list-wrapper[data-v-bceed3bf]{flex:1;overflow-y:auto;border:1px solid #eee;border-radius:5px;padding:10px}.empty-text[data-v-bceed3bf]{text-align:center;color:#ccc;margin-top:20px}.q-index[data-v-bceed3bf]{font-weight:700;color:#2f5d7c;width:30px;display:inline-block}.perm-container[data-v-731251e8]{max-width:1000px}
