._container_1hz9s_1{width:100%;margin:0 auto;padding-right:var(--yq-spacing-xl);padding-left:var(--yq-spacing-xl)}@media (max-width: 768px){._container_1hz9s_1{padding-right:var(--yq-spacing-md);padding-left:var(--yq-spacing-md)}}._wrapper_spjj1_1{width:100%}._card_spjj1_5{padding:var(--yq-spacing-lg);border:1px solid var(--yq-border-subtle);border-radius:var(--yq-radius-lg);background:var(--yq-bg-container);box-shadow:var(--yq-shadow-card)}._plain_spjj1_13{padding:var(--yq-spacing-md) 0}._shell_1sryh_1{min-height:100vh;background:var(--yq-bg-page)}._sider_1sryh_6{position:sticky;top:0;height:100vh;padding:calc(var(--yq-spacing-xl) * 1.15) var(--yq-spacing-lg) var(--yq-spacing-lg);background:var(--yq-bg-container)!important;border-inline-end:1px solid var(--yq-border-subtle)}._sidebarInner_1sryh_15{display:flex;flex-direction:column;height:100%;gap:calc(var(--yq-spacing-xl) * 1.35)}._sidebarBrand_1sryh_22{display:inline-flex;align-items:center;gap:var(--yq-spacing-sm);min-height:calc(var(--yq-spacing-xl) + var(--yq-spacing-lg))}._sidebarSection_1sryh_29{display:flex;flex-direction:column;gap:var(--yq-spacing-sm)}._menu_1sryh_35{background:transparent;border-inline-end:none!important}._menu_1sryh_35 .ant-menu-item{height:auto;min-height:calc(var(--yq-spacing-xl) + var(--yq-spacing-md));margin:0 0 var(--yq-spacing-sm);border-radius:var(--yq-radius-lg);padding-inline:var(--yq-spacing-md)!important}._menu_1sryh_35 .ant-menu-title-content{overflow:visible}._menu_1sryh_35 .ant-menu-item-icon,._mobileTabIcon_1sryh_53{display:inline-flex;align-items:center;justify-content:center;min-width:calc(var(--yq-spacing-lg) + var(--yq-spacing-xs));color:var(--yq-primary);font-size:18px;line-height:1}._menu_1sryh_35 .ant-menu-item:not(.ant-menu-item-selected) .ant-menu-item-icon,._mobileTabIcon_1sryh_53{color:var(--yq-text-secondary)}._mobileTabActive_1sryh_68 ._mobileTabIcon_1sryh_53{color:var(--yq-primary)}._menuLabel_1sryh_72{display:block;border-radius:var(--yq-radius-sm);color:inherit;font-weight:500;text-decoration:none}._menuLabel_1sryh_72:focus-visible{outline:2px solid var(--yq-primary-border-hover);outline-offset:2px}._sidebarCard_1sryh_85{display:flex;flex-direction:column;gap:var(--yq-spacing-sm);padding:var(--yq-spacing-md);border-radius:var(--yq-radius-xl);background:var(--yq-bg-container);border:1px solid var(--yq-border-subtle);box-shadow:var(--yq-shadow-card)}._sidebarCardLabel_1sryh_96{color:var(--yq-text-secondary);font-size:var(--yq-font-sm)}._sidebarCardValue_1sryh_101{color:var(--yq-text-primary);font-size:26px;line-height:1.15}._mainLayout_1sryh_107{min-height:100vh;background:transparent}._skipLink_1sryh_112{position:fixed;top:var(--yq-spacing-sm);left:var(--yq-spacing-sm);z-index:100;padding:var(--yq-spacing-sm) var(--yq-spacing-md);border-radius:var(--yq-radius-md);color:var(--yq-bg-container);background:var(--yq-text-primary);transform:translateY(calc(-100% - var(--yq-spacing-lg)))}._skipLink_1sryh_112:focus-visible{outline:2px solid var(--yq-primary-border-hover);outline-offset:2px;transform:translateY(0)}._content_1sryh_130:focus-visible{outline:2px solid var(--yq-primary-border-hover);outline-offset:-2px}._header_1sryh_135{position:sticky;top:0;z-index:10;height:auto;padding:0 calc(var(--yq-spacing-xl) * 1.35);background:var(--yq-bg-container)!important;border-bottom:1px solid var(--yq-border-subtle)}._headerMain_1sryh_145{display:flex;align-items:center;justify-content:space-between;gap:var(--yq-spacing-lg);min-height:calc(var(--yq-spacing-xl) * 2.65)}._brandBlock_1sryh_153{flex:0 0 auto}._brandLockup_1sryh_157{display:inline-flex;align-items:center;gap:var(--yq-spacing-sm)}._brandMark_1sryh_163{position:relative;display:inline-flex;align-items:center;justify-content:center;width:calc(var(--yq-spacing-xl) + var(--yq-spacing-lg));height:calc(var(--yq-spacing-xl) + var(--yq-spacing-lg));border-radius:var(--yq-radius-lg);background:var(--yq-primary);overflow:hidden;box-shadow:var(--yq-shadow-card)}._brandMark_1sryh_163:before{content:"";position:absolute;top:8px;right:9px;bottom:10px;left:9px;border-radius:var(--yq-radius-pill) var(--yq-radius-pill) var(--yq-radius-lg) var(--yq-radius-pill);background:var(--yq-bg-container);transform:rotate(-14deg)}._brandWing_1sryh_185{position:absolute;left:13px;bottom:13px;width:14px;height:9px;border-radius:var(--yq-radius-pill) var(--yq-radius-pill) var(--yq-radius-pill) 0;background:var(--yq-primary-bg-hover);transform:rotate(-24deg)}._brandDot_1sryh_196{position:absolute;top:13px;right:13px;width:5px;height:5px;border-radius:var(--yq-radius-pill);background:var(--yq-primary)}._brandTitle_1sryh_206{color:var(--yq-text-primary);font-size:16px;font-weight:700}._searchInput_1sryh_212{width:min(100%,506px);max-width:506px;border-radius:var(--yq-radius-pill);background:var(--yq-fill-secondary);box-shadow:inset 0 0 0 1px var(--yq-border-subtle)}._headerActions_1sryh_220{flex:0 0 auto}._headerMenuButton_1sryh_224,._noticeButton_1sryh_225{color:var(--yq-text-secondary)!important}._noticeButton_1sryh_225{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--yq-radius-pill);background:var(--yq-fill-secondary)}._userDropdown_1sryh_237{display:inline-flex;align-items:center;height:calc(var(--yq-spacing-xl) + var(--yq-spacing-md));gap:var(--yq-spacing-sm);padding:0 var(--yq-spacing-xs);border:1px solid var(--yq-border-subtle);border-radius:var(--yq-radius-pill);color:var(--yq-text-primary);background:var(--yq-bg-container);cursor:pointer}._userAvatar_1sryh_250{background:var(--yq-primary-bg)!important;color:var(--yq-primary)!important}._userName_1sryh_255{color:var(--yq-text-primary);font-weight:600}._userDropdownIcon_1sryh_260{color:var(--yq-text-secondary);font-size:12px}._content_1sryh_130{background:transparent}._identityWarning_1sryh_269{display:flex;align-items:center;justify-content:center;gap:var(--yq-spacing-sm);min-height:44px;padding:var(--yq-spacing-xs) var(--yq-spacing-md);color:var(--yq-warning);background:var(--yq-warning-bg);border-bottom:1px solid var(--yq-border-subtle);font-size:14px}._contentInner_1sryh_282{padding:calc(var(--yq-spacing-xl) * 1.15) calc(var(--yq-spacing-xl) * 1.35) var(--yq-spacing-xl);padding-bottom:calc(var(--yq-spacing-xl) + var(--yq-spacing-sm))}._mobileTabs_1sryh_287{position:fixed;inset-inline:0;bottom:0;z-index:12;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--yq-spacing-xs);padding:var(--yq-spacing-sm) var(--yq-spacing-sm) calc(var(--yq-spacing-sm) + env(safe-area-inset-bottom,0px));background:var(--yq-bg-container);border-top:1px solid var(--yq-border-subtle);box-shadow:var(--yq-shadow-card)}._mobileTab_1sryh_53{display:flex;flex-direction:column;align-items:center;gap:6px;padding:var(--yq-spacing-xs);border:0;border-radius:var(--yq-radius-lg);background:transparent;color:var(--yq-text-secondary);font:inherit;text-decoration:none}._mobileTab_1sryh_53:focus-visible{outline:2px solid var(--yq-primary-border-hover);outline-offset:-2px}._mobileTabActive_1sryh_68{background:var(--yq-primary-bg);color:var(--yq-primary)}._drawer_1sryh_325 .ant-drawer-header{border-bottom-color:var(--yq-border-subtle)}._bareShell_1sryh_329{min-height:100vh;background:var(--yq-bg-page)}@media (max-width: 360px){._brandTitle_1sryh_206{display:none}}@media (max-width: 767px){._header_1sryh_135{padding:0 var(--yq-spacing-md)}._headerMain_1sryh_145{min-height:calc(var(--yq-spacing-xl) * 2);gap:var(--yq-spacing-sm)}._brandTitle_1sryh_206{font-size:15px}._userName_1sryh_255,._userDropdownIcon_1sryh_260{display:none}._headerActions_1sryh_220{gap:var(--yq-spacing-xs)!important}._contentInner_1sryh_282{padding:var(--yq-spacing-md);padding-bottom:calc(var(--yq-spacing-xl) * 4)}._mobileTabs_1sryh_287{gap:4px;padding-inline:var(--yq-spacing-xs)}._mobileTab_1sryh_53{min-height:58px;font-size:12px;line-height:1.2}._mobileTabIcon_1sryh_53{min-width:26px;height:26px;font-size:17px}}*{box-sizing:border-box}body{margin:0;color:var(--colorText);background:var(--colorBgLayout);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(360px,1fr) minmax(420px,520px)}.login-visual{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:48px;overflow:hidden;color:#fff;background:linear-gradient(135deg,#0c2043eb,#1e64aab8),url(https://images.unsplash.com/photo-1524995997946-a1c2e315a42f?auto=format&fit=crop&w=1600&q=80) center/cover}.brand-lockup{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:8px;color:var(--yq-text-primary);background:#fff}.visual-copy{max-width:560px;padding-bottom:48px}.visual-copy .ant-typography{color:#fff}.visual-copy h1.ant-typography{margin:0 0 16px;font-size:56px;line-height:1.05}.visual-copy .ant-typography+.ant-typography{font-size:20px;line-height:1.7;opacity:.9}.login-form-wrap{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:40px;background:#fff}.login-form-panel{width:100%;max-width:380px}.login-form-panel h2.ant-typography{margin:0 0 8px;font-size:32px}.login-form{margin-top:32px}.login-form .ant-form-item{margin-bottom:22px}.home-kicker{color:var(--colorPrimary);font-weight:700}.student-exam-taking-page{min-height:100vh;padding:20px 28px 36px;background:var(--colorBgLayout)}.exam-taking-header{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(1280px,100%);margin:0 auto 16px;padding:18px 22px;border:1px solid var(--colorBorderSecondary);border-radius:8px;background:#fffffffa;box-shadow:none}.exam-taking-header h2.ant-typography{margin:5px 0 4px;color:var(--colorText);font-size:28px;line-height:1.18}.exam-taking-header .ant-typography{margin-bottom:0}.exam-header-actions{flex:none}.exam-countdown{display:flex;align-items:center;gap:10px;height:42px;padding:0 14px;border:1px solid #95de64;border-radius:8px;color:#237804;background:#f6ffed}.exam-countdown.is-timeout{border-color:#ffccc7;color:#cf1322;background:#fff2f0}.exam-countdown span{color:inherit;font-size:12px;font-weight:700}.exam-countdown strong{font-size:20px;line-height:1}.exam-load-error,.exam-load-status,.exam-draft-notice{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;width:min(1280px,100%);min-height:44px;margin:0 auto 16px;padding:10px 14px;border:1px solid var(--colorBorderSecondary);border-radius:8px;background:#fff}.exam-load-error{border-color:#ffccc7;color:#cf1322;background:#fff2f0}.exam-draft-notice{color:var(--colorTextSecondary);background:var(--colorFillSecondary)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.exam-taking-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px;width:min(1280px,100%);margin:0 auto}.exam-answer-sheet{position:sticky;top:110px;align-self:start;padding:18px;border:1px solid var(--colorBorderSecondary);border-radius:8px;background:#fff;box-shadow:none}.answer-sheet-score{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.answer-sheet-score>div,.answer-sheet-meta,.answer-sheet-section{padding:12px;border:1px solid var(--colorBorderSecondary);border-radius:8px;background:var(--colorFillSecondary)}.answer-sheet-score span,.answer-sheet-meta span,.answer-sheet-section>span{display:block;margin-bottom:7px;color:var(--colorTextTertiary);font-size:12px;font-weight:700}.answer-sheet-score strong,.answer-sheet-meta strong{color:var(--colorText);font-size:22px;line-height:1.1}.answer-sheet-meta,.answer-sheet-section{margin-bottom:12px}.answer-sheet-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.answer-sheet-grid a{display:grid;place-items:center;min-width:44px;height:44px;border:1px solid var(--colorBorderSecondary);border-radius:8px;color:var(--colorTextSecondary);background:#fff;font-weight:700;text-decoration:none}.answer-sheet-grid a:hover{border-color:var(--colorPrimary);color:var(--colorPrimary)}.answer-sheet-grid a.is-answered{border-color:#52c41a;color:#237804;background:#f6ffed}.exam-question-panel{display:grid;gap:16px;min-width:0;width:100%}.exam-taking-question{scroll-margin-top:116px;padding:22px 24px 24px;border:1px solid var(--colorBorderSecondary);border-radius:8px;background:#fff;box-shadow:none}.exam-question-title{display:grid;grid-template-columns:38px minmax(0,1fr);gap:16px;align-items:flex-start}.exam-question-title>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#fff;background:#1769e0;font-weight:800}.exam-question-title h4.ant-typography{margin:10px 0 0;color:var(--colorText);font-size:19px;line-height:1.65;white-space:pre-wrap}.exam-answer-control{margin-top:16px;padding-left:54px}.exam-option-list{display:grid;gap:12px;width:100%}.exam-option-list .ant-radio-wrapper,.exam-option-list .ant-checkbox-wrapper{display:flex;align-items:center;margin-inline-start:0;min-height:52px;padding:12px 14px;border:1px solid var(--colorBorderSecondary);border-radius:8px;background:#fbfdff;line-height:1.7}.exam-option-list .ant-radio-wrapper:hover,.exam-option-list .ant-checkbox-wrapper:hover{border-color:#91caff;background:#f5faff}.exam-answer-control .ant-input{border-color:#dfe6f1;border-radius:8px;background:#fbfdff}.exam-code-editor{overflow:hidden;border:1px solid #263244;border-radius:8px;background:#0f172a}.exam-code-toolbar{display:flex;align-items:center;justify-content:space-between;height:40px;padding:0 14px;border-bottom:1px solid #263244;color:#cbd5e1;background:#111827;font-size:var(--yq-font-sm);font-weight:700}.exam-code-body{display:grid;grid-template-columns:52px minmax(0,1fr)}.exam-code-lines{display:grid;align-content:start;gap:0;padding:13px 0;border-right:1px solid #263244;color:#64748b;background:#111827;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:14px;line-height:24px;text-align:center;-webkit-user-select:none;user-select:none}.exam-code-input.ant-input{min-height:300px;padding:13px 16px;border:0;border-radius:0;color:#e5e7eb;background:#0f172a;box-shadow:none;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:14px;line-height:24px;resize:vertical}.exam-code-input.ant-input::placeholder{color:#64748b}.exam-code-input.ant-input:focus{border:0;box-shadow:none}.submission-answer-block{margin-top:16px;margin-left:54px;padding:14px 16px;border:1px solid var(--colorBorderSecondary);border-radius:8px;background:#fbfdff}.submission-answer-block>span{display:block;margin-bottom:8px;color:var(--colorTextTertiary);font-size:var(--yq-font-sm);font-weight:700}.submission-answer-block>div{color:var(--colorText);font-size:16px;line-height:1.8;white-space:pre-wrap}.submission-code-block{overflow:auto;margin:0;padding:14px;border-radius:8px;color:#e5e7eb;background:#0f172a;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:14px;line-height:1.7}.pay-page{min-height:100vh;padding:32px;background:var(--colorBgLayout)}.pay-shell{width:min(920px,100%);margin:0 auto}.pay-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.pay-header h2.ant-typography{margin:0 0 6px}.pay-content{padding:28px;border:1px solid var(--colorBorder);border-radius:8px;background:#fff}.pay-summary{padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--colorBorderSecondary)}.pay-amount{margin:8px 0;color:var(--colorPrimary);font-size:44px;font-weight:800;line-height:1.1}.pay-detail{margin-bottom:24px}.pay-actions{display:flex;justify-content:flex-end;width:100%}.return-page{min-height:100vh;padding:32px;background:var(--colorBgLayout)}.return-shell{width:min(1120px,100%);margin:0 auto}.return-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.return-hero h2.ant-typography{margin:8px 0 6px}.success-kicker{color:#168a4a;font-weight:700}.return-layout{display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:20px}.return-summary,.profile-panel{padding:24px;border:1px solid var(--colorBorder);border-radius:8px;background:#fff}.return-summary h4.ant-typography,.profile-panel h4.ant-typography{margin-top:0}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.return-actions{display:flex;justify-content:flex-end;width:100%}@media (max-width: 860px){.student-exam-taking-page{padding:12px 12px 28px}.exam-taking-header{position:static;align-items:flex-start;flex-direction:column;gap:16px}.exam-header-actions{width:100%}.exam-header-actions .ant-btn,.exam-load-error .ant-btn{min-height:44px}.exam-taking-layout{grid-template-columns:1fr}.exam-answer-sheet{position:static}.exam-answer-control{padding-left:0}.exam-taking-question{scroll-margin-top:16px;padding:18px 16px 20px}}@media (max-width: 360px){.answer-sheet-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.answer-sheet-grid a{min-width:0}}@media (max-width: 860px){.login-page{grid-template-columns:1fr}.login-visual{min-height:280px;padding:28px}.visual-copy{padding-bottom:0}.visual-copy h1.ant-typography{font-size:38px}.login-form-wrap{min-height:auto;padding:32px 24px 48px}.pay-page{padding:20px}.pay-header{align-items:flex-start;flex-direction:column}.pay-content{padding:20px}.pay-amount{font-size:36px}.return-page{padding:20px}.return-hero{align-items:flex-start;flex-direction:column}.return-layout{grid-template-columns:1fr}.return-summary,.profile-panel{padding:20px}.profile-grid{grid-template-columns:1fr;gap:0}}.student-review-page{min-height:100vh;padding:32px 28px;background:#f4f7fb}.student-review-topbar,.review-workspace{width:min(1120px,100%);margin:0 auto}.student-review-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.review-back-button{order:2}.review-title-copy span{color:#d46b08;font-size:12px;font-weight:800;letter-spacing:.08em}.student-review-topbar h1{margin:4px 0 6px;color:#172033;font-size:38px;line-height:1.15}.student-review-topbar p{margin:0;color:#667085;font-size:16px}.review-workspace{display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:20px;align-items:start}.review-upload-panel,.review-list-panel{border:1px solid #e4eaf2;border-radius:8px;background:#fff;box-shadow:0 14px 34px #274c770f}.review-upload-panel{padding:22px}.review-upload-heading{display:flex;gap:14px;margin-bottom:20px}.review-upload-heading>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:44px;height:44px;border-radius:8px;color:#d46b08;background:#fff7e6;font-size:22px}.review-upload-heading h2,.review-list-panel h2{margin:0;color:#172033}.review-upload-heading p,.review-list-heading p{margin:4px 0 0;color:#7a8494}.review-upload-form{display:grid;gap:4px}.review-audio-upload .ant-upload,.review-audio-upload .ant-btn{width:100%}.review-list-panel{min-height:520px;padding:22px}.review-list-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.review-record-list{display:grid;gap:12px}.review-record-card{display:grid;grid-template-columns:56px minmax(0,1fr);gap:18px;padding:18px 20px;border:1px solid #e7edf6;border-radius:8px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 10px 28px #1c2d470f}.review-record-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:8px;color:#1677ff;background:#eef6ff;font-size:25px}.review-record-main{min-width:0}.review-record-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:18px}.review-record-title{display:grid;gap:6px}.review-record-title strong{min-width:0;overflow:hidden;color:#172033;font-size:18px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.review-record-title span,.review-record-meta{color:#7a8494;font-size:13px}.review-record-meta{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:10px}.review-record-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.review-record-actions .ant-tag{margin-inline-end:2px;padding:2px 10px;border-radius:999px;font-weight:700}.review-record-actions .ant-btn{min-width:92px;font-weight:700}.review-record-transcript{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px}.review-record-error{margin:8px 0 0;color:#ef4444;font-size:13px;line-height:1.5}.student-transcript-preview h3{margin:0;color:#162033;font-size:18px}.transcript-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.transcript-modal-head p{margin:5px 0 0;color:#7a8494;font-size:13px}.transcript-speaker-legend{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;max-width:360px}.transcript-speaker-legend span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#f3f7ff;color:#1d4ed8;font-size:12px;font-weight:800}.transcript-speaker-legend span.is-right{background:#eefaf4;color:#15803d}.transcript-dialogue-list{display:flex;flex-direction:column;gap:14px;max-height:560px;overflow:auto;padding:18px;border:1px solid #e7edf6;border-radius:16px;background:linear-gradient(180deg,#f7fafff0,#fafcfffa),#f8fbff}.transcript-dialogue-row{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:end;gap:10px;max-width:78%}.transcript-dialogue-row.is-right{align-self:flex-end;grid-template-columns:minmax(0,1fr) 34px}.transcript-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#dbeafe;color:#1d4ed8;font-size:13px;font-weight:800}.transcript-dialogue-row.is-right .transcript-avatar{order:2;background:#dcfce7;color:#15803d}.transcript-bubble{position:relative;width:fit-content;max-width:100%;padding:12px 15px 13px;border:1px solid #dbe7f7;border-radius:16px 16px 16px 4px;background:#fff;box-shadow:0 10px 24px #0f172a0f}.transcript-dialogue-row.is-right .transcript-bubble{justify-self:end;border-color:#c9efd8;border-radius:16px 16px 4px;background:#f0fdf4}.transcript-bubble span{display:block;margin-bottom:5px;color:#1d4ed8;font-size:12px;font-weight:800}.transcript-dialogue-row.is-right .transcript-bubble span{color:#15803d;text-align:right}.transcript-bubble p{margin:0;color:#263247;font-size:15px;line-height:1.75;word-break:break-word}.review-record-card p{margin:10px 0 0;color:#4b5565;line-height:1.7}.review-empty{display:grid;place-items:center;min-height:320px}.review-pagination{display:flex;justify-content:flex-end;margin-top:18px}.mock-interview-page{min-height:100vh;padding:24px;background:radial-gradient(circle at 8% 0,rgba(22,119,255,.12),transparent 30%),linear-gradient(180deg,#f5f8ff 0,#f6f8fb 420px),#f6f8fb}.mock-interview-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;width:min(1240px,100%);margin:0 auto 14px}.mock-interview-topbar .brand-mark{color:#fff;background:#1677ff}.mock-interview-hero{width:min(1240px,100%);margin:0 auto 16px;padding:18px 0 2px}.mock-interview-hero h1.ant-typography{margin:6px 0 10px;color:#111827;font-size:34px;line-height:1.18;letter-spacing:0}.mock-interview-hero .ant-typography{max-width:680px;color:#667085}.mock-interview-workspace{width:min(1240px,100%);margin:0 auto;padding:18px;border:1px solid rgba(208,215,225,.9);border-radius:8px;background:#ffffffdb;box-shadow:0 18px 42px #0f172a0f}.mock-progress-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:6px;border:1px solid #edf1f7;border-radius:8px;background:#f8fafc}.mock-progress-item{display:flex;align-items:center;min-width:0;gap:8px;padding:10px 12px;border-radius:8px;color:#667085}.mock-progress-item span{display:grid;flex:0 0 auto;width:26px;height:26px;place-items:center;border-radius:999px;background:#eef2f7;color:#667085}.mock-progress-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600}.mock-progress-item.is-current{color:#155eef;background:#eef5ff}.mock-progress-item.is-current span,.mock-progress-item.is-done span{color:#fff;background:#1677ff}.mock-loading{display:grid;place-items:center;min-height:360px}.mock-grid{display:grid;grid-template-columns:minmax(310px,390px) minmax(0,1fr);gap:16px;margin-top:16px}.mock-panel{min-width:0;padding:24px;border:1px solid #e7edf5;border-radius:8px;background:#fff}.mock-panel h3.ant-typography,.mock-panel h4.ant-typography{margin:2px 0 8px;color:#111827}.mock-panel>.ant-typography{color:#667085}.mock-panel-eyebrow{display:block;color:#1677ff;font-size:12px;font-weight:700;letter-spacing:0;text-transform:uppercase}.mock-resume-box{display:grid;grid-template-columns:52px minmax(0,1fr);gap:14px;margin:18px 0;padding:16px;border:1px solid #e4eaf3;border-radius:8px;background:#f8fbff}.mock-resume-box strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mock-resume-box p{margin:4px 0;color:#667085}.mock-resume-box small{color:#98a2b3}.resume-icon{display:grid;width:52px;height:52px;place-items:center;border-radius:8px;color:#1677ff;background:#eaf3ff;font-size:26px}.mock-panel .ant-alert{margin:14px 0}.mock-profile-panel{display:flex;flex-direction:column;min-height:560px}.mock-action-row{margin-top:4px}.mock-action-row .ant-btn-primary{min-width:188px}.profile-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.profile-summary-grid>div{min-width:0;padding:14px 16px;border:1px solid #e4eaf3;border-radius:8px;background:#fbfcff}.profile-summary-grid span,.mock-tag-section>.ant-typography,.mock-project-list>.ant-typography{display:block;margin-bottom:8px}.profile-summary-grid strong{display:block;overflow-wrap:anywhere;color:#111827;font-size:17px;line-height:1.45}.mock-tag-section,.mock-project-list{margin-top:18px}.tag-row{display:flex;flex-wrap:wrap;gap:7px}.mock-skill-tag.ant-tag,.mock-topic-tag.ant-tag,.mock-focus-tag.ant-tag{margin-inline-end:0;border-radius:6px;font-weight:500;line-height:24px}.mock-skill-tag.ant-tag{color:#155eef;border-color:#b8d7ff;background:#f1f7ff}.mock-topic-tag.ant-tag{color:#344054;border-color:#d0d5dd;background:#fff}.mock-focus-tag.ant-tag{color:#6941c6;border-color:#d6bbfb;background:#f9f5ff}.mock-project-item{margin-top:10px;padding:14px 16px;border:1px solid #edf1f7;border-radius:8px;background:#fff}.mock-project-item p{margin:6px 0 10px;color:#667085}.mock-empty-profile{display:grid;place-items:center;align-content:center;min-height:420px;gap:12px;color:#98a2b3;text-align:center}.mock-empty-profile h4.ant-typography{margin:0}.mock-empty-profile .anticon{display:grid;width:64px;height:64px;place-items:center;border-radius:8px;color:#1677ff;background:#eef5ff;font-size:34px}.mock-start-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:22px}.mock-plan-builder{margin-top:16px;padding:24px;border:1px solid var(--colorBorderSecondary);border-radius:8px;background:var(--colorFillSecondary)}.mock-plan-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.mock-plan-heading h3.ant-typography{margin:2px 0 8px;color:var(--colorText)}.mock-plan-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:16px;margin-top:20px}.mock-plan-form,.mock-plan-summary{min-width:0;padding:20px;border:1px solid var(--colorBorderSecondary);border-radius:8px;background:var(--colorBgLayout)}.mock-plan-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.mock-plan-form>.ant-btn{align-self:end}.mock-plan-field{display:grid;min-width:0;gap:8px;color:var(--colorText);font-weight:600}.mock-plan-field>span{display:flex;justify-content:space-between;gap:8px}.mock-plan-field small{color:var(--colorTextTertiary);font-weight:500}.mock-plan-field>.ant-select{width:100%}.mock-plan-skills-field{grid-column:1 / -1}.mock-plan-summary{display:flex;flex-direction:column;justify-content:center}.mock-plan-waiting{display:grid;min-height:220px;place-items:center;align-content:center;gap:10px;color:var(--colorPrimary);text-align:center}.mock-plan-waiting>.anticon{font-size:34px}.mock-plan-waiting h4.ant-typography{margin:4px 0 0}.mock-plan-ready-title{display:flex;align-items:center;gap:12px;color:var(--colorPrimary)}.mock-plan-ready-title>.anticon{font-size:30px}.mock-plan-ready-title strong,.mock-plan-ready-title span{display:block}.mock-plan-ready-title strong{color:var(--colorText);font-size:17px}.mock-plan-ready-title span{margin-top:3px;color:var(--colorTextSecondary);font-size:var(--yq-font-sm)}.mock-plan-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0}.mock-plan-metrics>div{padding:12px;border:1px solid var(--colorBorderSecondary);border-radius:8px;background:var(--colorFillSecondary);text-align:center}.mock-plan-metrics strong,.mock-plan-metrics span{display:block}.mock-plan-metrics strong{color:var(--colorText);font-size:22px}.mock-plan-metrics span,.mock-plan-skill-group>span{color:var(--colorTextSecondary);font-size:var(--yq-font-sm)}.mock-plan-skill-group{display:grid;gap:8px;margin-bottom:14px}.mock-plan-skill-group.has-gap{padding-top:12px;border-top:1px solid var(--colorBorderSecondary)}.mock-plan-summary>.ant-alert{margin-top:4px}.mock-voice-page{min-height:100vh;padding:24px;overflow:hidden;background:radial-gradient(circle at 50% 14%,rgba(124,92,255,.1),transparent 28%),radial-gradient(circle at 12% 72%,rgba(22,119,255,.08),transparent 28%),linear-gradient(180deg,#fbfcff 0,#f7f9fc)}.mock-voice-v2-page{min-height:100vh;padding:24px;background:radial-gradient(circle at 50% 10%,rgba(20,184,166,.1),transparent 26%),radial-gradient(circle at 14% 72%,rgba(22,119,255,.08),transparent 26%),linear-gradient(180deg,#fbfcff 0,#f6f8fb)}.mock-voice-v2-stage{display:flex;flex-direction:column;align-items:center;width:min(980px,100%);min-height:calc(100vh - 88px);margin:0 auto;padding:56px 0 72px;text-align:center}.voice-v2-radar{display:grid;width:142px;height:142px;place-items:center;margin:26px 0 30px;border:1px solid rgba(20,184,166,.28);border-radius:999px;color:#0f766e;background:#fff;box-shadow:0 18px 42px #0f766e1f;font-size:58px}.voice-v2-radar.is-listening{animation:voiceV2Pulse 1.6s ease-in-out infinite}.mock-voice-v2-stage h1.ant-typography{margin:0;color:#101828;font-size:clamp(34px,5vw,62px);font-weight:900;letter-spacing:0}.mock-voice-v2-stage>.ant-typography{width:min(760px,100%);margin:16px auto 18px;color:#667085;font-size:17px;line-height:1.8}.voice-v2-transcript{width:min(820px,100%);margin:22px auto 28px;text-align:left}.voice-v2-transcript-title{margin-bottom:10px;color:#344054;font-size:14px;font-weight:800}.voice-v2-transcript-body{min-height:220px;padding:18px;border:1px solid #dbe7f3;border-radius:8px;background:#ffffffe0;box-shadow:0 14px 36px #0f172a0f}.voice-v2-transcript-body p{margin:0}.voice-v2-final{padding:10px 0;color:#101828;font-size:16px;line-height:1.75;border-bottom:1px solid #edf2f7}.voice-v2-final:last-child{border-bottom:0}.voice-v2-partial-line{padding:10px 0;color:#0f766e;font-size:16px;line-height:1.75;border-bottom:1px solid #edf2f7}.voice-v2-partial{display:flex;gap:10px;align-items:flex-start;margin-top:10px!important;color:#0f766e;font-size:16px;line-height:1.75}.voice-v2-partial span{flex:0 0 auto;margin-top:3px;padding:1px 7px;border-radius:999px;color:#0f766e;background:#ccfbf1;font-size:12px;font-weight:700}.voice-v2-placeholder{color:#98a2b3;line-height:1.8}.voice-v2-error{margin-top:10px;padding:10px 12px;border:1px solid #fecaca;border-radius:8px;color:#b42318;background:#fff1f2}.voice-v2-audio-stat{margin-top:10px;color:#64748b;font-size:14px}.voice-v2-chat{width:min(900px,100%);margin:22px auto 30px;padding:18px;border:1px solid #dbe7f3;border-radius:8px;background:#ffffffe6;box-shadow:0 16px 42px #0f172a14;text-align:left}.voice-v2-chat-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;color:#101828;font-size:18px;font-weight:900}.voice-v2-chat-title small{color:#667085;font-size:13px;font-weight:700}.voice-v2-chat-list{display:flex;flex-direction:column;gap:16px;min-height:280px;max-height:460px;padding:4px 2px 8px;overflow-y:auto}.voice-v2-chat-empty{display:grid;min-height:240px;place-items:center;padding:28px;border:1px dashed #cbd5e1;border-radius:8px;color:#98a2b3;background:#f8fafc;font-size:16px;line-height:1.7;text-align:center}.voice-v2-chat-row{display:flex;align-items:flex-start;gap:10px}.voice-v2-chat-row.is-student{flex-direction:row-reverse}.voice-v2-chat-avatar{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border-radius:50%;color:#fff;background:#111827;font-size:13px;font-weight:900}.voice-v2-chat-row.is-student .voice-v2-chat-avatar{background:#2563eb}.voice-v2-chat-bubble{max-width:min(680px,calc(100% - 56px));padding:12px 14px;border:1px solid #e2e8f0;border-radius:8px;color:#101828;background:#fff;box-shadow:0 10px 24px #0f172a0d}.voice-v2-chat-row.is-student .voice-v2-chat-bubble{border-color:#2563eb;color:#fff;background:linear-gradient(135deg,#2563eb,#14b8a6)}.voice-v2-chat-name{display:flex;align-items:center;gap:8px;margin-bottom:6px;color:#667085;font-size:12px;font-weight:800}.voice-v2-chat-row.is-student .voice-v2-chat-name{justify-content:flex-end;color:#ffffffd1}.voice-v2-chat-name em{flex:0 0 auto;padding:1px 7px;border-radius:999px;color:#0f766e;background:#ccfbf1;font-style:normal;font-size:12px}.voice-v2-chat-row.is-student .voice-v2-chat-name em{color:#1e3a8a;background:#dbeafe}.voice-v2-chat-bubble p{margin:0;white-space:pre-wrap;word-break:break-word;font-size:16px;line-height:1.75}.voice-v2-chat-footer{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;color:#64748b;font-size:13px}.voice-v2-chat-footer span{padding:4px 9px;border:1px solid #e2e8f0;border-radius:999px;background:#f8fafc}@keyframes voiceV2Pulse{0%,to{box-shadow:0 18px 42px #0f766e1f,0 0 #14b8a62e}50%{box-shadow:0 18px 42px #0f766e1f,0 0 0 18px #14b8a600}}.mock-voice-topbar{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;width:min(1180px,100%);margin:0 auto}.mock-voice-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(980px,100%);min-height:calc(100vh - 88px);margin:0 auto;padding:44px 0 72px;text-align:center}.voice-avatar-wrap{position:relative;display:grid;width:220px;height:220px;place-items:center;margin-bottom:88px}.voice-wave-ring{position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:999px;background:repeating-conic-gradient(from 0deg,rgba(145,150,161,.56) 0deg 1.4deg,transparent 1.4deg 4.2deg);mask:radial-gradient(circle,transparent 0 71%,#000 72% 100%);opacity:.72}.voice-avatar-wrap.is-speaking .voice-wave-ring{animation:voiceRing 1.4s linear infinite;background:repeating-conic-gradient(from 0deg,rgba(22,119,255,.72) 0deg 1.8deg,transparent 1.8deg 4.6deg)}.voice-avatar{position:relative;display:grid;width:164px;height:164px;place-items:center;border-radius:999px;background:radial-gradient(circle at 52% 34%,#ffffff 0 18%,transparent 19%),linear-gradient(145deg,#e8dcff,#f3d6f0 45%,#d9edff);box-shadow:0 20px 44px #4e45842e}.voice-avatar:before,.voice-avatar:after{position:absolute;top:68px;width:17px;height:17px;border-radius:999px;background:#1f2937;box-shadow:0 0 0 5px #ffffffc7;content:""}.voice-avatar:before{left:54px}.voice-avatar:after{right:54px}.voice-avatar-face{position:absolute;bottom:34px;color:#475467;font-size:22px;font-weight:800;letter-spacing:0}.mock-voice-stage h1.ant-typography{max-width:980px;margin:0;color:#050505;font-size:48px;font-weight:800;line-height:1.18;letter-spacing:0}.mock-voice-stage h1.ant-typography span,.mock-voice-stage h1.ant-typography mark{padding:0 3px;background:#1118271f}.mock-voice-stage h1.ant-typography mark{color:#8c93ea}.mock-voice-stage .ant-typography{max-width:700px}.mock-voice-stage p.ant-typography{margin:20px auto 0;color:#667085;font-size:17px;line-height:1.8}.mock-voice-context{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:740px;margin:24px auto 0}.mock-voice-context span{padding:6px 12px;border:1px solid #e4e7ec;border-radius:999px;color:#344054;background:#ffffffb8;font-size:13px;font-weight:600}.mock-voice-dialog{width:min(760px,100%);max-height:300px;margin:24px auto 0;padding:16px;overflow-y:auto;border:1px solid rgba(148,163,184,.34);border-radius:8px;background:#ffffffd6;box-shadow:0 18px 46px #0f172a14;text-align:left}.mock-voice-dialog-title{margin-bottom:12px;color:#667085;font-size:13px;font-weight:800}.mock-voice-dialog-list{display:flex;flex-direction:column;gap:12px}.mock-voice-message{max-width:82%}.mock-voice-message span{display:block;margin-bottom:5px;color:#667085;font-size:12px;font-weight:800}.mock-voice-message p{margin:0;padding:12px 14px;border-radius:8px;color:#111827;font-size:15px;line-height:1.75;word-break:break-word}.mock-voice-message.is-assistant{align-self:flex-start}.mock-voice-message.is-assistant p{border:1px solid #e4e7ec;background:#fff}.mock-voice-message.is-student{align-self:flex-end;text-align:right}.mock-voice-message.is-student p{color:#fff;background:linear-gradient(135deg,#2563eb,#14b8a6);text-align:left}.voice-start-button.ant-btn{display:inline-flex;align-items:center;height:76px;margin-top:82px;padding:0 42px 0 18px;border:0;border-radius:999px;background:linear-gradient(90deg,#1f6fff,#7828ff);box-shadow:0 18px 36px #4257ff3d;font-size:21px;font-weight:700}.voice-start-button.ant-btn .anticon{display:grid;width:58px;height:58px;place-items:center;margin-right:18px;border-radius:999px;background:#ffffff3d;font-size:26px}.voice-call-controls{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:64px}.voice-call-controls .ant-btn{width:62px;height:62px;border:0;background:#fff;box-shadow:0 14px 28px #0f172a1a;font-size:22px}.voice-call-controls .voice-commit-button.ant-btn{width:auto;min-width:116px;padding:0 24px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#2563eb,#14b8a6);font-size:18px;font-weight:700}.voice-call-controls .voice-commit-button.ant-btn:disabled{color:#fff;background:#94a3b8;box-shadow:none;opacity:.86}.voice-call-controls .ant-btn-dangerous{color:#fff;background:#ef4444}.voice-call-controls .is-muted{color:#ef4444}@keyframes voiceRing{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.04)}to{transform:rotate(360deg) scale(1)}}@media (max-width: 860px){.student-review-page{padding:18px}.student-review-topbar{align-items:flex-start;flex-direction:column}.review-back-button{order:0}.student-review-topbar h1{font-size:32px}.review-workspace{grid-template-columns:1fr}.review-upload-panel,.review-list-panel{padding:20px}.review-record-card{grid-template-columns:44px minmax(0,1fr);padding:16px}.review-record-icon{width:44px;height:44px;font-size:22px}.review-record-head{grid-template-columns:1fr}.review-record-actions{justify-content:flex-start}.review-record-actions .ant-btn{flex:1;min-width:0}.transcript-modal-head{flex-direction:column}.transcript-speaker-legend{justify-content:flex-start;max-width:none}.transcript-dialogue-list{padding:14px}.transcript-dialogue-row{max-width:94%}.resume-actions{justify-content:stretch}.resume-actions,.resume-actions .ant-upload,.resume-actions .ant-btn{width:100%}.mock-interview-page{padding:18px}.mock-interview-topbar{align-items:flex-start;flex-direction:column}.mock-interview-hero h1.ant-typography{font-size:30px}.mock-interview-workspace{padding:18px}.mock-progress-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.mock-grid,.profile-summary-grid,.mock-plan-layout,.mock-plan-form{grid-template-columns:1fr}.mock-plan-builder{padding:18px}.mock-plan-heading{flex-direction:column}.mock-action-row,.mock-action-row .ant-upload,.mock-action-row .ant-btn,.mock-start-row,.mock-start-row .ant-btn{width:100%}.mock-voice-page{padding:18px}.mock-voice-topbar{align-items:flex-start;flex-direction:column;gap:12px}.mock-voice-stage{min-height:auto;padding:54px 0 48px}.voice-avatar-wrap{width:178px;height:178px;margin-bottom:52px}.voice-avatar{width:132px;height:132px}.voice-avatar:before,.voice-avatar:after{top:55px;width:14px;height:14px}.voice-avatar:before{left:43px}.voice-avatar:after{right:43px}.voice-avatar-face{bottom:26px;font-size:18px}.mock-voice-stage h1.ant-typography{font-size:34px}.mock-voice-stage p.ant-typography{font-size:15px}.voice-start-button.ant-btn{height:68px;margin-top:52px;padding-right:30px;font-size:18px}.voice-start-button.ant-btn .anticon{width:52px;height:52px;margin-right:14px}}
