:root{--canvas: #090f23;--surface: #101d38;--surface-raised: #172541;--surface-soft: #142443;--line: #293c60;--control-line: #657da6;--ink: #e8effc;--muted: #afbdd7;--blue: #83c7ff;--gold: #f5bd5a;--violet: #b5a1ff;--green: #6dd9b0;color-scheme:dark;scrollbar-color:#657da6 #090f23}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 20% 0,#14264b 0,transparent 55%),linear-gradient(120deg,#090f23 45%,#16142f);background-attachment:fixed}.ant-layout{background:transparent}.ant-btn-primary{font-weight:650}.ant-tag-blue,.ant-tag-processing{color:#96cfff;background:#132b47;border-color:#375d84}.ant-tag-success{color:#85e3bf;background:#102e2d;border-color:#315f52}.ant-table-wrapper{border:1px solid var(--line);border-radius:12px;overflow:hidden}input[type=datetime-local]{color-scheme:dark}input{caret-color:var(--gold)}.mock-banner{background:#211d26;color:#f2cd8a;padding:10px 24px;text-align:center;font-size:13px;border-bottom:1px solid #594626}.mock-banner span{margin-left:20px}.brand>.anticon{color:var(--gold)}.brand{display:flex;gap:10px;align-items:center;font-weight:650;font-size:22px;color:var(--ink);text-decoration:none}.login-page{max-width:1180px;min-height:calc(100vh - 42px);margin:auto;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:96px;padding:64px 48px}.login-intro h1.ant-typography{color:#b4d4ff;font-size:clamp(32px,3.4vw,46px);margin:50px 0 20px;line-height:1.4}.login-intro p{font-size:16px}.process-list{list-style:none;padding:0;margin:40px 0}.process-list li{display:flex;flex-direction:column;gap:6px;margin:0 0 26px}.process-list strong{font-size:16px;color:var(--blue)}.process-list li:nth-child(2) strong{color:var(--gold)}.process-list li:nth-child(3) strong{color:var(--violet)}.process-list span{color:var(--muted)}.login-form{padding:36px;background:linear-gradient(145deg,#162849,#101a34 75%);border:1px solid var(--line);border-radius:12px}.login-form form{margin-top:28px}.login-form .ant-btn{margin-top:10px}.help-text{margin-top:20px;line-height:1.8}.demo-accounts{border-top:1px solid var(--line);padding-top:20px;margin-top:24px;font-size:13px;overflow-wrap:anywhere}.demo-accounts p{margin:10px 0}.activation{background:var(--surface);border:1px solid var(--line);border-radius:12px;max-width:480px;margin:80px auto;padding:24px}.workspace{min-height:calc(100vh - 42px)}.sidebar{width:220px;flex-shrink:0;background:#0b142b;border-right:1px solid var(--line);padding:32px 16px;display:flex;flex-direction:column;gap:22px}.sidebar .brand{padding-left:10px}.sidebar>.ant-typography{padding-left:12px}.sidebar .ant-menu{border:0!important}.sidebar-note{margin-top:auto;padding:32px 12px 0;font-size:12px;line-height:1.8;color:var(--muted)}.workspace-header{min-height:72px;background:#0c1730;padding:16px 36px;display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line)}.workspace-content{width:100%;max-width:1300px;padding:36px;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.page-heading h2.ant-typography{margin:0 0 8px;font-size:28px}.page-heading .ant-typography{margin-bottom:0}.create-section{margin:32px 0;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.create-section h4.ant-typography{margin-top:0}.create-controls{display:flex;gap:12px;margin:20px 0 0}.create-controls .ant-select{flex:1;min-width:0}.records{margin-top:32px}.records td{font-variant-numeric:tabular-nums}.ant-alert+.ant-alert,form .ant-alert{margin:12px 0}footer{color:var(--muted);font-size:12px;padding:24px 36px;margin-top:auto}.loading-page{min-height:100vh;display:grid;place-items:center}@media(max-width:800px){.login-page{grid-template-columns:1fr;gap:28px;padding:32px 20px}.login-intro h1.ant-typography{font-size:28px;margin:26px 0 12px}.process-list{display:none}.login-form{padding:24px}.workspace{flex-direction:column!important}.sidebar{width:100%;padding:16px;gap:10px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .ant-menu{display:flex}.sidebar .ant-menu-item{width:auto}.sidebar-note{display:none}.workspace-header{padding:16px 20px;flex-wrap:wrap}.workspace-content{padding:24px 16px}.page-heading{align-items:flex-start;flex-wrap:wrap}.page-heading h2.ant-typography{font-size:24px}.create-controls{flex-direction:column}.mock-banner{padding:8px 12px}.mock-banner span{display:block;margin:3px 0 0;font-size:12px}footer{padding:24px 16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.workspace{flex-direction:row!important}.workspace>.ant-layout{min-width:0}@media(max-width:800px){.workspace{flex-direction:column!important}.mock-banner>.anticon{display:inline-block;margin:0 4px 0 0}}::selection{background:#36568a;color:#fff}input,textarea{caret-color:var(--gold)}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}a{text-underline-offset:3px}button,input{font:inherit}.workspace-content{max-width:1760px;width:100%;box-sizing:border-box}.workspace .ant-layout{min-width:0}.block{display:block;margin-top:4px;color:var(--muted)}.preserve-text{white-space:pre-wrap;overflow-wrap:anywhere}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.section-heading h4.ant-typography{margin:0 0 6px}.section-heading .ant-typography{margin-bottom:0}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pagination-controls{margin:24px 0}.invitation-link{padding:20px 0;overflow-wrap:anywhere}.debate-topic{font-size:18px;max-width:75ch}.debate-people{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:24px 0}.debate-person{display:flex;gap:14px;padding:22px;align-items:center}.debate-person+.debate-person{border-left:1px solid var(--line)}.debate-person strong,.debate-person .presence{display:block}.debate-person strong{font-size:17px;margin:4px 0}.affirmative .ant-avatar{background:#1e426b;color:#9ed6ff}.negative .ant-avatar{background:#39335f;color:#d1bfff}.judge .ant-avatar{background:#463820;color:#f6ce8b}.presence{color:var(--muted);font-size:13px}.presence.online{color:var(--green)}.waiting-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(110deg,#172d50,#1b2343);padding:24px;border-radius:12px;margin:24px 0}.waiting-summary strong{display:block;font-size:30px;font-variant-numeric:tabular-nums;margin-top:6px}.waiting-summary small{color:var(--muted)}.admin-actions{margin:22px 0}.room-files{background:var(--surface);padding:24px;border:1px solid var(--line);border-radius:12px;margin:12px 0}.room-files small{color:var(--muted)}.file-preview{width:100%;height:65vh;border:0}.image-preview{max-width:100%;max-height:65vh;object-fit:contain}.debate-room-layout{display:grid;gap:20px;align-items:start;margin:-8px}.debate-room-layout.has-scoring{grid-template-columns:minmax(0,1fr) minmax(400px,450px)}.debate-meeting{background:#0d1931;border:1px solid var(--line);border-radius:12px;padding:22px;color:#e6edf6;min-width:0}.room-title{display:flex;justify-content:space-between;gap:18px;margin-bottom:20px}.room-title a{color:#b8d5f8}.room-title h3.ant-typography{color:#f0f4fa;margin-top:14px;margin-bottom:12px;font-size:22px;line-height:1.4}.room-title .media-label{color:#b8c9dd;font-size:12px;display:block;margin-top:8px}.room-clock{text-align:right;flex-shrink:0}.room-clock strong{font-size:32px;display:block;font-variant-numeric:tabular-nums;line-height:1.4}.room-clock small{color:#b8c9dd}.meeting-seats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.meeting-seat{border:1px solid var(--line);background:#142747;border-radius:8px;padding:16px 8px;text-align:center;min-width:0;overflow:hidden}.meeting-seat strong,.meeting-seat small{display:block;margin-top:8px;overflow-wrap:anywhere}.meeting-seat small{color:#b8c9dd;font-size:11px}.meeting-seat .ant-avatar{background:#24466e;color:#c1e4ff}.meeting-seat.present{border-color:#536f9c}.meeting-seat video{width:100%;height:90px;object-fit:cover;border-radius:4px}.meeting-seat .video-hidden{display:none}.room-content-tabs>.ant-tabs-nav{color:#c5d4e6}.room-content-tabs>.ant-tabs-nav .ant-tabs-ink-bar{background:#9fc8fa}.debate-stage{background:linear-gradient(125deg,#172a4d,#1c2247);color:var(--ink);border-radius:8px;overflow:hidden;min-height:300px}.empty-stage{padding:42px 24px;text-align:center}.empty-stage>.anticon{font-size:34px;color:var(--blue)}.empty-stage h3{margin-top:24px}.empty-stage p{color:var(--muted)}.debate-slide{padding:30px 28px;min-height:310px;box-sizing:border-box}.debate-slide>small{color:var(--blue)}.debate-slide h2.ant-typography{font-size:26px;margin-top:26px;color:var(--ink)}.debate-slide ul{padding-left:20px;line-height:2;font-size:15px}.debate-slide>.ant-typography:last-child{font-size:12px;color:var(--muted)}.slide-controls{display:flex;align-items:center;justify-content:space-between;background:#0a152b;color:#d7e4f5;padding:12px 16px;gap:8px;font-size:12px}.media-controls{display:flex;gap:12px;justify-content:space-between;align-items:center;margin:20px 0;flex-wrap:wrap}.media-controls .ant-btn{font-size:12px}.judge-controls{background:var(--surface-soft);border:1px solid var(--line);color:var(--ink);padding:18px;border-radius:8px}.judge-controls>strong{display:block;margin-bottom:12px}.judge-controls>small{display:block;margin-top:12px;color:var(--muted)}.student-room-status{padding:16px;background:var(--surface-soft);border-radius:8px}.media-note.ant-typography{color:#b8c9dd;font-size:12px;line-height:1.7;margin:16px 0 0}.meeting-files{background:var(--surface);border-radius:8px;color:var(--ink)}.meeting-files .room-files{border:0;padding:16px}.meeting-files .section-heading{flex-wrap:wrap}.private-scoring{background:linear-gradient(160deg,#162543,#101b35);border:1px solid var(--line);border-radius:12px;padding:22px;min-width:0}.private-scoring .section-heading{display:block}.private-scoring h4.ant-typography{font-size:18px}.private-scoring .ant-alert{margin:16px 0}.score-column-head,.score-dimension{display:grid;grid-template-columns:minmax(130px,1fr) 88px 88px;gap:12px;align-items:center}.score-column-head{padding:18px 0 14px;font-size:12px;border-bottom:1px solid var(--line)}.score-dimension{padding:15px 0;border-bottom:1px solid var(--line);font-size:13px}.score-dimension small{display:block;color:var(--muted);font-size:11px;margin-top:5px;line-height:1.5}.score-dimension .ant-input-number{width:100%}.score-dimension.totals{font-size:19px;color:var(--gold)}.score-dimension.totals small{display:inline}.score-comments{display:grid;gap:26px;margin:22px 0 32px}.score-comments label{font-weight:600;font-size:13px}.score-comments textarea{margin-top:8px;font-weight:400}.save-status{font-size:12px;color:var(--muted);margin:12px 0}.score-results{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:22px 0}.score-results>section{min-width:0}.score-results .ant-typography{overflow-wrap:anywhere}.private-total{font-size:36px;font-variant-numeric:tabular-nums;font-weight:650;color:var(--gold);margin:12px 0}.private-total small{font-size:14px;font-weight:400;color:var(--muted)}.score-history{margin-top:24px}.room-ended{padding:60px 24px;text-align:center}.workspace-content>.ant-alert{margin-bottom:20px}.login-form .demo-account-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.ant-table-cell{overflow-wrap:anywhere}@media(min-width:1500px){.debate-room-layout.has-scoring{grid-template-columns:minmax(0,1fr) 470px}.private-scoring{padding:24px}.debate-slide{min-height:360px;padding:36px}.score-column-head,.score-dimension{grid-template-columns:minmax(130px,1fr) 92px 92px}}@media(max-width:1200px){.debate-room-layout.has-scoring{grid-template-columns:minmax(0,1fr)}.score-comments{grid-template-columns:1fr 1fr;gap:18px}.score-column-head,.score-dimension{grid-template-columns:minmax(130px,1fr) 150px 150px}.private-scoring{position:static}}@media(max-width:700px){.debate-room-layout{margin:0}.debate-people{grid-template-columns:1fr}.debate-person{padding:16px}.debate-person+.debate-person{border-left:0;border-top:1px solid var(--line)}.waiting-summary{display:block;padding:20px}.waiting-summary>div+div{margin-top:16px}.form-pair{grid-template-columns:1fr;gap:0}.section-heading{flex-wrap:wrap}.room-files{padding:16px}.score-results{grid-template-columns:1fr}.private-scoring{padding:14px}.score-column-head,.score-dimension{grid-template-columns:minmax(100px,1fr) 68px 68px;gap:6px}.score-comments{grid-template-columns:1fr}.page-heading{align-items:flex-start}.sidebar .ant-menu{flex-wrap:wrap}.workspace-header{gap:12px}.workspace-header>.ant-space{flex-wrap:wrap}.invitation-link{font-size:12px}.private-total{font-size:32px}}.room-content-tabs>.ant-tabs-nav .ant-tabs-tab-btn{color:#c5d4e6}.room-content-tabs>.ant-tabs-nav .ant-tabs-tab-active .ant-tabs-tab-btn{color:#c2defe}.meeting-video-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.video-seat{position:relative;aspect-ratio:16 / 10;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#080f1d}.video-seat.judge{grid-column:1 / -1;width:calc(50% - 8px);justify-self:center}.video-canvas{position:absolute;top:0;right:0;bottom:60px;left:0}.video-canvas video{width:100%;height:100%;object-fit:contain}.video-placeholder{position:absolute;top:0;right:0;bottom:60px;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--muted);font-size:13px}.video-caption{position:absolute;inset:auto 0 0;min-height:60px;padding:10px 14px;background:var(--surface);display:flex;flex-direction:column;gap:4px}.video-caption span{font-size:12px;color:var(--muted)}.meeting-join{border:1px solid var(--line);border-radius:12px;padding:20px;margin:20px 0;background:var(--surface)}.meeting-join .ant-alert{margin-top:16px}
