*{padding:0;box-sizing:border-box}*,body{margin:0}body{-webkit-font-smoothing:antialiased}:root{--app-font:"Noto Sans SC","Outfit",system-ui,sans-serif;--app-title:#0c4a6e;--app-text:#334155;--app-muted:#64748b;--app-sky-500:#0ea5e9;--app-sky-600:#0284c7;--app-panel-bg:#f0f9ff;--app-content-bg:linear-gradient(165deg,#f0f9ff,#f8fafc 38%,#ecfeff 72%,#f0fdfa);--app-card-radius:16px;--app-card-border:1px solid rgba(148,163,184,.2);--app-card-shadow:0 20px 48px -18px rgba(14,116,144,.14);--app-sidebar-width:220px;--app-page-max-width:1680px;--app-section-gap:28px;--app-page-padding-y:24px;--app-page-padding-x:clamp(16px,2.5vw,28px);--app-page-header-gap:20px;--app-page-title-color:#303133}body{font-family:var(--app-font);color:var(--app-text);background:var(--app-content-bg);background-attachment:fixed}#app{min-height:100vh}.app-shell.app-shell--practice-immersive .sidebar{display:none}.app-shell{display:flex;height:100vh;overflow:hidden}.app-shell .sidebar{width:var(--app-sidebar-width);flex-shrink:0;display:flex;flex-direction:column;background:linear-gradient(180deg,#f8fafc,#f0f9ff 45%,#ecfeff);border-right:var(--app-card-border);color:var(--app-title);box-shadow:4px 0 24px -12px rgba(14,116,144,.12)}.app-shell .logo{padding:18px 16px;text-align:center;border-bottom:1px solid rgba(148,163,184,.22)}.app-shell .logo h2,.app-shell .logo h3{margin:0;font-size:15px;font-weight:700;letter-spacing:.02em;color:var(--app-title);line-height:1.35}.app-shell .sidebar-menu{flex:1;padding:14px 0 20px;overflow-y:auto}.app-shell .menu-item{display:flex;align-items:center;padding:11px 18px;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease;border-left:3px solid transparent;color:#475569;font-size:14px}.app-shell .menu-item:hover{background:rgba(14,165,233,.09);color:#0c4a6e}.app-shell .menu-item.active{background:linear-gradient(90deg,rgba(56,189,248,.14),rgba(45,212,191,.06));border-left-color:var(--app-sky-500);color:var(--app-sky-600);font-weight:600}.app-shell .menu-item .el-icon{margin-right:10px;font-size:18px;color:inherit}.app-shell .menu-item i{margin-right:10px;font-size:16px;color:inherit}.app-shell .sub-menu{background:transparent}.app-shell .sub-menu .menu-item{padding-left:36px;font-size:13px}.app-shell .main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.app-shell .main-content>.header{height:56px;flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;padding:0 24px 0 28px;background:hsla(0,0%,100%,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:var(--app-card-border);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.85)}.app-shell .user-info{display:flex;align-items:center;gap:6px}.app-shell .user-info span{font-weight:600;color:var(--app-text);font-size:14px}.app-shell .user-info .el-button.is-text{color:var(--app-muted)}.app-shell .user-info .el-button.is-text:hover{color:var(--app-sky-600);background:rgba(14,165,233,.08)}.app-shell .content{flex:1;overflow-y:auto;overflow-x:hidden;background:var(--app-content-bg)}.app-shell .content,.app-shell .content>:not(.chapter-container){display:flex;flex-direction:column;align-items:stretch;box-sizing:border-box}.app-shell .content>:not(.chapter-container){padding:var(--app-page-padding-y) var(--app-page-padding-x) 36px;max-width:min(var(--app-page-max-width),100%);margin-left:auto;margin-right:auto;width:100%;min-width:0;min-height:100%}.app-page{box-sizing:border-box}.app-shell .content .header-section,.app-shell .content .page-header,.app-shell .content .question-list-header,.app-shell .content .student-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--app-page-header-gap);flex-shrink:0}.app-shell .content .header-section h2,.app-shell .content .page-header h2,.app-shell .content .question-list-header h2,.app-shell .content .student-list-header h2{margin:0;color:var(--app-page-title-color)}.app-shell .content .search-form{width:100%;max-width:100%;min-width:0;box-sizing:border-box;flex-shrink:0;background:#fff;padding:20px;border-radius:10px;margin-bottom:var(--app-section-gap);border:var(--app-card-border);box-shadow:0 8px 28px -14px rgba(14,116,144,.12);overflow-x:visible}.app-shell .content .search-form .demo-form-inline{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;min-width:0}.app-shell .content .search-form .demo-form-inline .el-form-item{margin-bottom:0;flex-shrink:0}.app-shell .content .exam-list-card{width:100%;max-width:100%;min-width:0;box-sizing:border-box;flex:1;min-height:0;overflow:auto}.app-shell .content .exam-list-card .el-table{width:100%}.el-button--primary{background:linear-gradient(135deg,#38bdf8,#0ea5e9 50%,#06b6d4)!important;border-color:transparent!important;box-shadow:0 8px 22px rgba(14,165,233,.28)}.el-button--primary:focus,.el-button--primary:hover{background:linear-gradient(135deg,#7dd3fc,#0284c7 55%,#0891b2)!important;border-color:transparent!important}.el-button--primary.is-disabled,.el-button--primary.is-disabled:hover{background:#bae6fd!important;box-shadow:none}.el-button--primary.is-plain{background:#e0f2fe!important;border-color:#7dd3fc!important;color:var(--app-sky-600)!important;box-shadow:none}.el-button--primary.is-plain:focus,.el-button--primary.is-plain:hover{background:#bae6fd!important;border-color:#38bdf8!important;color:#0369a1!important}.el-link.el-link--primary{color:var(--app-sky-600)}.el-link.el-link--primary:hover{color:#0369a1}.el-card{border-radius:var(--app-card-radius)!important;border:var(--app-card-border)!important;box-shadow:var(--app-card-shadow)!important}.el-card__header{border-bottom:1px solid rgba(148,163,184,.15)!important;font-weight:600;color:var(--app-title)}.el-tabs--border-card{border:var(--app-card-border)!important;border-radius:var(--app-card-radius)!important;box-shadow:var(--app-card-shadow)!important;overflow:hidden;background:#fff!important}.el-tabs--border-card>.el-tabs__header{background:linear-gradient(180deg,#f8fafc,#f0f9ff)!important;border-bottom:1px solid rgba(148,163,184,.2)!important}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active{color:var(--app-sky-600)!important;font-weight:600}.el-dialog{border-radius:18px!important;overflow:hidden}.el-table th.el-table__cell{background:var(--app-panel-bg)!important;color:var(--app-text)!important;font-weight:600!important}.el-table{--el-table-border-color:rgba(148,163,184,.2)}.el-input__inner,.el-select .el-input__inner,.el-textarea__inner{border-radius:10px}