.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;position:relative;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2)}.login-background{position:absolute;inset:0;z-index:0}.login-wave{position:absolute;width:200%;height:200px;background:#ffffff1a;border-radius:40%}.login-wave.wave1{bottom:-50px;left:-50%;animation:wave 10s linear infinite}.login-wave.wave2{bottom:-70px;left:-50%;animation:wave 8s linear infinite;background:#ffffff0d}@keyframes wave{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-card{width:400px;z-index:1;box-shadow:0 8px 32px #0000001a;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2}.login-header{text-align:center;margin-bottom:32px}.login-logo{width:80px;height:auto;margin-bottom:16px;display:block;margin-left:auto;margin-right:auto}.login-title{font-size:24px;font-weight:600;color:#1890ff;margin:0 0 8px}.login-subtitle{font-size:14px;color:#8c8c8c;margin:0}.captcha-wrapper{display:flex;gap:12px;align-items:center}.captcha-image{width:120px;height:40px;cursor:pointer;border-radius:4px;border:1px solid #d9d9d9;transition:all .3s}.captcha-image:hover{border-color:#1890ff;box-shadow:0 2px 8px #1890ff33}.login-button{height:44px;font-size:16px;font-weight:500;margin-top:8px}.login-card .ant-card-body{padding:24px 32px}.login-card .ant-form-item{margin-bottom:24px}.login-card .ant-input-affix-wrapper,.login-card .ant-input{padding:8px 12px}.login-card .ant-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none}.login-card .ant-btn-primary:hover{background:linear-gradient(135deg,#5568d3,#65408b)}.login-card input:-webkit-autofill,.login-card input:-webkit-autofill:hover,.login-card input:-webkit-autofill:focus,.login-card input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px white inset!important;box-shadow:0 0 0 1000px #fff inset!important;-webkit-text-fill-color:#333!important;transition:background-color 5000s ease-in-out 0s}.login-card .ant-input-affix-wrapper input:-webkit-autofill,.login-card .ant-input-affix-wrapper input:-webkit-autofill:hover,.login-card .ant-input-affix-wrapper input:-webkit-autofill:focus,.login-card .ant-input-affix-wrapper input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px rgba(255,255,255,.95) inset!important;box-shadow:0 0 0 1000px #fffffff2 inset!important;-webkit-text-fill-color:#333!important;transition:background-color 5000s ease-in-out 0s}.login-card .ant-input,.login-card .ant-input-affix-wrapper input{color:#333}.workbench{height:100vh;overflow:hidden;background:url(/bg_page.png) 100% no-repeat;background-size:100% 100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;display:flex;flex-direction:column}.workbench-header{display:flex;justify-content:space-between;align-items:center;padding:5px 32px;background:#fff;border-bottom:1px solid #e0e0e0;flex-shrink:0}.workbench-header .header-left{display:flex;align-items:center}.workbench-header .header-logo{height:40px;width:auto;object-fit:contain}.workbench-header .header-right{display:flex;align-items:center;gap:20px}.workbench-header .import-btn{background:#476b56!important;border-color:#476b56!important;color:#fff!important;padding:8px 20px!important;border-radius:15px!important;font-size:18px!important;font-weight:500!important}.workbench-header .import-btn:hover{background:#3d5a48!important;border-color:#3d5a48!important}.workbench-header .admin-info{display:flex;align-items:center;gap:10px;padding:8px 16px;background:#faffff;border-radius:15px;border:1px solid #c5dad1;cursor:pointer;transition:all .2s ease}.workbench-header .admin-info:hover{background:#e8f0e8;border-color:#4a7c59}.workbench-header .admin-info .admin-avatar{width:30px;height:30px;border-radius:50%}.workbench-header .admin-info .admin-text{display:flex;flex-direction:column}.workbench-header .admin-info .admin-name{font-size:16px;font-weight:400;color:#395e46}.workbench-header .admin-info .admin-role{font-size:14px;color:#536155}.workbench-header .admin-info .admin-arrow{font-size:10px;color:#888;margin-left:4px}.stats-row{display:grid;grid-template-columns:repeat(5,1fr);gap:17px;padding:10px 32px;flex-shrink:0}.stats-row .stat-card{display:flex;align-items:center;gap:12px;padding:10px 24px;background:url(/bg_stat_card.png) 100% no-repeat;background-size:100% 100%;border-radius:12px;transition:all .2s ease}.stats-row .stat-card:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.stats-row .stat-card .stat-icon{width:58px;height:58px;flex-shrink:0}.stats-row .stat-card .stat-content{flex:1}.stats-row .stat-card .stat-content .stat-title{font-size:18px;font-weight:500;color:#333;margin-bottom:6px}.stats-row .stat-card .stat-content .stat-value{display:flex;align-items:baseline;gap:4px}.stats-row .stat-card .stat-content .stat-value .stat-number{font-size:48px;font-weight:700;color:#0d933d;line-height:1;font-family:Arial}.stats-row .stat-card .stat-content .stat-value .stat-unit{font-size:14px;font-weight:600;color:#787878}.workbench-content{flex:1;min-height:0;display:flex;flex-direction:column}.charts-section{display:grid;grid-template-columns:3fr 2fr;gap:12px;padding:0 32px 12px;flex:1;min-height:0}.charts-section .charts-left,.charts-section .charts-right{display:flex;flex-direction:column;gap:12px;min-height:0}.charts-section .chart-card{border-radius:12px;padding:12px 16px;display:flex;flex-direction:column;overflow:hidden}.charts-section .chart-card .chart-title{font-size:18px;font-weight:400;color:#222;margin-bottom:8px;flex-shrink:0;font-family:FZLTZHK--GBK1-0,sans-serif}.charts-section .chart-card .chart-container{flex:1;min-height:0;width:100%;position:relative}.charts-section .bar-chart-card{background:url(/bg_chart_card.png) 100% no-repeat;background-size:100% 100%}.charts-section .pie-chart-card{background:url(/bg_pie_card.png) 0px 0px no-repeat;background-size:100% 100%}.charts-section .gender-chart-card{background:url(/bg_gender_card.png) 100% no-repeat;background-size:100% 100%}.quick-access-row{display:grid;grid-template-columns:repeat(5,1fr);gap:17px;padding:0 32px 16px;flex-shrink:0}.quick-access-row .quick-card{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:url(/bg_quick_access.png) 100% no-repeat;background-size:100% 100%;border-radius:12px;cursor:pointer;transition:all .2s ease}.quick-access-row .quick-card:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.quick-access-row .quick-card:hover .quick-title,.quick-access-row .quick-card:hover .quick-arrow{color:#3d6b4a}.quick-access-row .quick-card .quick-title{font-size:21px;font-weight:600;color:#1d6b38;transition:color .2s ease}.quick-access-row .quick-card .quick-arrow{font-size:20px;color:#1d6b38;transition:color .2s ease}@media(max-width:1400px){.stats-row,.quick-access-row{grid-template-columns:repeat(3,1fr)}}@media(max-width:1200px){.charts-section{grid-template-columns:1fr}.stats-row,.quick-access-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.workbench-header{padding:0 16px}.stats-row,.charts-section,.quick-access-row{padding-left:16px;padding-right:16px}.stats-row,.quick-access-row{grid-template-columns:1fr}}.sidebar{width:240px;min-width:240px;background:#fafaf8;border-right:1px solid #d9e8d0;border-radius:16px 0 0 16px;padding:20px 16px;overflow-y:auto;height:100%;max-height:100%;display:flex;flex-direction:column}.new-conversation-btn{border-color:#52c41a!important;color:#52c41a!important;font-weight:500;height:40px;border-radius:20px}.new-conversation-btn:hover{border-color:#389e0d!important;color:#389e0d!important}.sidebar-divider{margin:16px 0!important;border-color:#d9e8d0}.history-title{display:block;color:#333;margin-bottom:12px;font-size:18px}.chat-history-list{background:transparent;flex:1;overflow-y:auto;min-height:0}.history-item{padding:12px;border-radius:8px;cursor:pointer;margin-bottom:8px;background:#fff;border:none;transition:all .2s;display:flex;align-items:center;justify-content:space-between}.history-item:hover{background:#e8f5e0}.history-item.active{background:#e8f5e0;border-left:3px solid #52c41a}.history-item-content{display:flex;align-items:center;gap:8px;width:90%}.history-item-icon{color:#1677ff;font-size:18px;flex-shrink:0}.history-item-text{color:#333;font-size:16px;flex:1}.history-delete-btn{color:#999;font-size:16px;flex-shrink:0;cursor:pointer;transition:color .2s;padding:4px}.history-delete-btn:hover{color:#ff4d4f}.sidebar-loading{display:flex;justify-content:center;padding:20px 0}.right-panel{height:100%;background:#fafafa;display:flex;flex-direction:column}.right-panel-content{padding:24px;flex:1;overflow-y:auto;display:flex;flex-direction:column}.file-info-card{margin-bottom:16px;padding:12px 16px;background:#e6f7e6;border-radius:8px;display:flex;align-items:center;gap:12px}.file-icon{font-size:24px;color:#52c41a}.file-info{flex:1}.file-name{font-weight:500}.file-size{font-size:12px;color:#666}.table-title,.data-table{margin-bottom:16px}.bottom-actions{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:16px;flex-shrink:0}.bottom-text{font-size:13px;color:#666}.import-button{background:#52c41a;border-color:#52c41a}.x-markdown-debug-panel{position:fixed;z-index:9999;right:0;background:#000000d9;border-radius:8px;padding:12px;font-family:SF Mono,Monaco,Inconsolata,Fira Mono,Droid Sans Mono,Source Code Pro,monospace;font-size:12px;color:#fff;width:180px;box-shadow:0 2px 8px #00000026;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-user-select:none;user-select:none;transition:box-shadow .2s}.x-markdown-debug-panel:hover{box-shadow:0 4px 12px #00000040}.x-markdown-debug-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.x-markdown-debug-row:last-child{margin-bottom:0}.x-markdown-debug-label{color:#ffffffa6;font-weight:500;min-width:60px}.x-markdown-debug-value{font-weight:600;min-width:50px;text-align:right}.x-markdown-debug-chart{margin-left:auto}.x-markdown-debug-actions{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.x-markdown-debug-action{flex:1;padding:6px 12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;font-size:11px;font-family:inherit;cursor:pointer;transition:all .2s;font-weight:500}.x-markdown-debug-action:hover{background:#ffffff26;border-color:#ffffff4d}.x-markdown-debug-action:active{transform:scale(.98)}.x-markdown-debug-record-btn.recording{background:#ff4d4f33;border-color:#ff4d4f;animation:recording-pulse 1.5s ease-in-out infinite}@keyframes recording-pulse{0%,to{box-shadow:0 0 #ff4d4f66}50%{box-shadow:0 0 0 8px #ff4d4f00}}.x-markdown-debug-modal-overlay{position:fixed;inset:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.x-markdown-debug-modal{background:#1e1e1ef2;border-radius:12px;box-shadow:0 8px 32px #0006;max-width:90vw;max-height:90vh;overflow:auto;animation:slideIn .3s ease-out;border:1px solid rgba(255,255,255,.1)}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.x-markdown-debug-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.1)}.x-markdown-debug-close-btn{width:32px;height:32px;border-radius:6px;background:#ffffff1a;border:none;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.x-markdown-debug-close-btn:hover{background:#ff4d4f4d}.x-markdown-debug-modal-content{padding:24px}.x-markdown-debug-stats-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.x-markdown-debug-stat-item{background:#ffffff0d;border-radius:8px;padding:16px;border:1px solid rgba(255,255,255,.1)}.x-markdown-debug-stat-label{font-size:11px;color:#fff9;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.x-markdown-debug-stat-value{font-size:20px;font-weight:700;color:#fff}.x-markdown-debug-chart-full{background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.x-markdown-debug-chart-full .fps-line,.x-markdown-debug-chart-full .memory-line{filter:drop-shadow(0 0 4px currentColor)}.x-markdown-debug-legend{display:flex;gap:24px;justify-content:center;margin-top:16px}.x-markdown-debug-legend-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#fffc}.x-markdown-debug-legend-color{width:12px;height:12px;border-radius:2px}@media(max-width:768px){.x-markdown-debug-stats-summary{grid-template-columns:repeat(2,1fr)}}@keyframes x-markdown-fade-in{0%{opacity:0}to{opacity:1}}.x-markdown{--text-color: inherit;--font-size: inherit;--margin-block: 0 0 1em 0;--td-th-padding: .85em 1em;--pre-th-td-padding: 2px 0;--border-font-weight: 600;--padding-ul-ol: 0 0 0 1em;--margin-ul-ol: 0 0 1em 1.8em;--margin-li: .25em 0;--margin-pre: 1em 0;--padding-code-inline: .2em .4em;--margin-code-inline: 0 .2em;--code-inline-text: .85em;--small-border-radius: 2px;--image-margin: .5em 0;--hr-margin: 1.5em 0;--table-margin: 1em 0;font-size:var(--font-size);line-height:1.5714285714285714;width:100%;color:var(--text-color)}xmd-tail{display:inline}.xmd-tail{color:inherit;font-size:inherit;line-height:inherit}.x-markdown p,.x-markdown div,.x-markdown span,.x-markdown li{word-break:break-word;overflow-wrap:break-word}.x-markdown pre,.x-markdown code{word-break:break-word;overflow-wrap:break-word;white-space:pre-wrap}.x-markdown th,.x-markdown td{padding:var(--td-th-padding)}.x-markdown th{font-weight:var(--border-font-weight)}.x-markdown pre table{box-shadow:none}.x-markdown pre td,.x-markdown pre th{padding:var(--pre-th-td-padding);border:none;text-align:left}.x-markdown p{margin:var(--margin-block)}.x-markdown p:first-child{margin-top:0}.x-markdown p:last-child{margin-bottom:0}.x-markdown ul,.x-markdown ol{margin:var(--margin-ul-ol);padding:var(--padding-ul-ol)}.x-markdown ul:first-child,.x-markdown ol:first-child{margin-top:0}.x-markdown ul:last-child,.x-markdown ol:last-child{margin-bottom:0}.x-markdown ol>li{list-style:decimal}.x-markdown ul>li{list-style:disc}.x-markdown li{margin:var(--margin-li)}.x-markdown li:first-child{margin-top:0}.x-markdown li:last-child{margin-bottom:0}.x-markdown pre{margin:var(--margin-pre);overflow-x:auto}.x-markdown pre:first-child{margin-top:0}.x-markdown pre:last-child{margin-bottom:0}.x-markdown code{padding:var(--padding-code-inline);margin:var(--margin-code-inline);font-size:var(--code-inline-text);border-radius:var(--small-border-radius)}.x-markdown pre code{padding:0;margin:0;font-size:inherit;border-radius:0;line-height:2}.x-markdown img{max-width:100%;height:auto;margin:var(--image-margin)}.x-markdown hr{margin:var(--hr-margin)}.x-markdown table:not(pre){margin:var(--table-margin);border-collapse:collapse;display:block;width:max-content;max-width:100%;overflow:auto}.x-markdown table:not(pre):first-child{margin-top:0}.x-markdown table:not(pre):last-child{margin-bottom:0}.x-markdown .inline-katex .katex-display{display:inline-block;margin:0;text-align:initial;vertical-align:middle}.x-markdown .inline-katex .katex-display>.katex{display:inline-block;text-align:initial;white-space:normal}.x-markdown .inline-katex .katex-display>.katex>.katex-html{display:inline-block;position:static}.x-markdown .inline-katex .katex-display>.katex>.katex-html>.tag{position:static}.x-markdown .block-katex{display:block;margin:1em 0}.data-import-layout{height:100vh;background:linear-gradient(135deg,#e8f5e0,#d4e8c8)}.data-import-header{display:flex!important;justify-content:space-between;align-items:center!important;background:#d4e8c8;padding:0 24px!important;height:60px;line-height:unset!important;border-bottom:1px solid #c0d9b0}.data-import-header .ant-space{display:inline-flex!important;align-items:center;gap:8px}.header-logo{height:36px;width:auto;object-fit:contain}.header-title{color:#333;font-weight:600;font-size:21px}.exit-button{background:#4a7c59;border-color:#4a7c59;height:36px;border-radius:18px;font-weight:500;font-size:18px}.exit-button:hover{background:#3d6b4a;border-color:#3d6b4a}.data-import-content{padding:16px;overflow:hidden;display:flex;gap:0;height:calc(100vh - 60px)}.main-content{flex:1;background:#fff9;border-radius:0 16px 16px 0;display:flex;flex-direction:column;position:relative;min-height:0}.messages{flex:1;overflow-y:auto;padding:0 24px;display:flex;flex-direction:column;gap:16px;min-height:0}.messages::-webkit-scrollbar{width:6px}.messages::-webkit-scrollbar-thumb{background:#d9d9d9;border-radius:3px}.messages::-webkit-scrollbar-thumb:hover{background:#bfbfbf}.newBubble{white-space:pre-wrap;word-break:break-word;font-size:16px}.newBubble .x-markdown table{border-collapse:collapse;max-width:100%;margin:16px 0;font-size:16px;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a;table-layout:auto}.newBubble .x-markdown table thead th{background:#f5f7fa;color:#333;font-weight:600;padding:12px 16px;text-align:left;border-bottom:2px solid #e8e8e8;white-space:normal;word-break:break-word}.newBubble .x-markdown table tbody td{padding:10px 16px;border-bottom:1px solid #f0f0f0;color:#555;white-space:normal;word-break:break-word}.newBubble .x-markdown table tbody tr:hover{background:#f9fafb}.newBubble .x-markdown table tbody tr:last-child td{border-bottom:none}.newBubble .x-markdown{line-height:1.6}.newBubble .x-markdown p{margin:8px 0}.newBubble .x-markdown ul,.newBubble .x-markdown ol{padding-left:24px;margin:8px 0}.newBubble .x-markdown li{margin:4px 0}.newBubble .x-markdown code{background:#f5f5f5;padding:2px 6px;border-radius:4px;font-size:14px;color:#d63200}.newBubble .x-markdown pre{background:#f5f5f5;padding:16px;border-radius:8px;overflow-x:auto;margin:12px 0}.newBubble .x-markdown pre code{background:transparent;padding:0;color:inherit}.newBubble .x-markdown blockquote{border-left:4px solid #1677ff;padding:8px 16px;margin:12px 0;background:#f0f5ff;border-radius:4px;color:#555}.newBubble .x-markdown h1,.newBubble .x-markdown h2,.newBubble .x-markdown h3,.newBubble .x-markdown h4{margin:16px 0 8px;font-weight:600;color:#333}.newBubble .x-markdown h1{font-size:24px}.newBubble .x-markdown h2{font-size:20px}.newBubble .x-markdown h3{font-size:18px}.newBubble .x-markdown h4{font-size:16px}.newBubble .x-markdown hr{border:none;border-top:1px solid #e8e8e8;margin:16px 0}.newBubble .x-markdown a{color:#1677ff;text-decoration:none}.newBubble .x-markdown a:hover{text-decoration:underline}.center-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px 20px}.center-title{color:#333;font-size:48px;font-weight:400;margin-bottom:16px}.center-subtitle{color:#888;font-size:16px}.upload-area-wrapper{padding:20px 20px 30px}.upload-area-wrapper .ant-x-sender{max-width:100%}.upload-area-wrapper .ant-x-attachments{border-bottom:1px solid #f0f0f0}@media(max-width:768px){.sidebar{width:200px}.center-title{font-size:32px}.center-subtitle{font-size:14px}.messages{padding:16px}}.ability-assessment{background:#fff;border-radius:12px;padding:16px;height:100%;display:flex;flex-direction:column}.radar-container{position:relative;flex:1;min-height:0}.dimension-labels{position:absolute;inset:0;pointer-events:none}.dimension-label{position:absolute;display:flex;flex-direction:column;align-items:center}.dimension-score{font-size:18px;font-weight:700;color:#ff8c00}.dimension-name{font-size:11px;color:#666;margin-top:2px}.section-title{font-size:14px;font-weight:600;color:#333}.total-score{font-size:13px;color:#666}.score-value{font-size:20px;font-weight:700;color:#d46b5a;margin-left:6px}.personal-info{background:#fff;border-radius:12px;padding:16px;height:100%;display:flex;flex-direction:column;overflow:hidden}.info-content{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0}.info-upper{display:grid;grid-template-columns:1fr 180px 1fr;gap:0;align-items:start;position:relative}.info-column{display:flex;flex-direction:column;gap:8px;position:relative;z-index:1}.info-left-col .arc-1{width:75%;align-self:flex-end}.info-left-col .arc-2{width:85%;align-self:flex-end}.info-left-col .arc-3{width:95%}.info-right-col .arc-1{width:75%;align-self:flex-start}.info-right-col .arc-2{width:85%;align-self:flex-start}.info-right-col .arc-3{width:95%}.info-right-col .info-item{justify-content:flex-end}.info-item{display:flex;align-items:center;background:#e8f5e1;border-radius:20px;padding:8px 16px;gap:10px;min-width:200px}.item-label{font-size:14px;color:#666;white-space:nowrap;min-width:60px}.item-value{font-size:14px;color:#333;font-weight:500;min-width:60px}.info-center-col{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;position:relative;z-index:10;padding:35px 0 20px}.avatar-circle-bg{position:absolute;width:280px;height:280px;border-radius:50%;background:linear-gradient(135deg,#f8fdf5,#e8f5e1);box-shadow:0 8px 32px #52c41a26,inset 0 2px 8px #fffc;z-index:-1;top:50%;left:50%;transform:translate(-50%,-50%)}.avatar-container{position:relative;width:140px;height:140px;display:flex;align-items:center;justify-content:center}.avatar-glow{position:absolute;width:130px;height:130px;border-radius:50%;border:3px solid rgba(82,196,26,.3);box-shadow:0 0 0 10px #52c41a1a,0 0 0 20px #52c41a0d}.avatar{position:relative;width:120px;height:120px;border-radius:50%;overflow:hidden;background:#f5f5f5;z-index:1;border:3px solid #fff}.avatar img{width:100%;height:100%;object-fit:cover}.name-section{display:flex;align-items:center;gap:10px}.person-name{font-size:22px;font-weight:700;color:#333}.gender-tag{font-size:12px;color:#fff;padding:3px 8px;border-radius:12px;font-weight:500}.gender-tag.female{background:#ff7eb3}.gender-tag.male{background:#69c0ff}.id-card{font-size:13px;color:#888;letter-spacing:.5px}.work-timeline{padding-top:12px;border-top:1px dashed #d9e8d0}.timeline-track{display:flex;gap:0;position:relative;overflow-x:auto;padding-bottom:4px}.timeline-track:before{content:"";position:absolute;top:8px;left:0;right:0;height:2px;background:#d9e8d0;z-index:0}.timeline-node{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:170px;padding-top:0;z-index:1}.node-dot{width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid #3b6c54;margin-bottom:8px;flex-shrink:0}.timeline-card{background:#f8f9f5;border-radius:8px;padding:10px 14px;display:flex;flex-direction:column;gap:3px;border:1px solid #e8f0e0}.timeline-card.active{background:#3b6c54;border-color:#3b6c54}.timeline-card.active .card-period,.timeline-card.active .card-desc{color:#fff}.card-period{font-size:14px;color:#333;font-weight:600}.card-desc{font-size:14px;color:#666}.competency{background:#f5f9f5;border-radius:12px;padding:20px;height:100%;display:flex;flex-direction:column}.competency-content{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex:1;padding:16px 0;position:relative}.chart-section{flex:1;display:flex;flex-direction:column;align-items:center;min-height:0}.chart-container{width:100%;height:200px;flex-shrink:0}.chart-title{font-size:20px;font-weight:600;color:#333;margin-bottom:12px}.chart-legend{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:center;margin-top:16px;padding:0 10px}.legend-item{display:flex;align-items:center;gap:6px;white-space:nowrap}.legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.legend-name{font-size:12px;color:#666}.legend-score{font-size:12px;font-weight:600;color:#333}.divider{width:1px;height:180px;background:#d9e8d0;flex-shrink:0;margin-top:20px}.recommendation-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 20px;min-width:180px;margin-top:60px}.recommendation-type{font-size:40px;font-weight:700;color:#007fb3;margin-bottom:12px;text-align:center}.recommendation-type.pending{color:#007fb3}.recommendation-scenario{font-size:24px;color:#666;text-align:center;line-height:1.5;position:absolute;top:140px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid #52c41a;flex-shrink:0}.development-potential{background:#f5f9f5;border-radius:12px;padding:20px;height:100%;display:flex;flex-direction:column}.potential-content{display:flex;gap:24px;flex:1;min-height:0}.potential-left{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:120px;padding-top:20px}.potential-level-badge{position:relative;width:120px;height:80px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e0f7e8,#c8f0d8);border-radius:50%;box-shadow:0 4px 12px #52c41a33}.level-number{font-size:48px;font-weight:700;color:#2b6f4e;line-height:1}.level-arrows{position:absolute;top:8px;right:15px;display:flex;flex-direction:column;gap:2px}.arrow{color:#52c41a;font-size:14px;font-weight:700}.level-label{margin-top:12px;font-size:14px;color:#333;font-weight:600;display:flex;align-items:center;gap:6px}.level-tip{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:#fa8c16;color:#fff;border-radius:50%;font-size:12px;font-weight:700}.potential-right{flex:1;display:flex;flex-direction:column;gap:12px;min-height:0;height:100%}.direction-header{display:flex;justify-content:space-between;align-items:center}.direction-title{font-size:20px;font-weight:600;color:#333}.direction-dots{display:flex;gap:6px}.dot{width:8px;height:8px;border-radius:50%;background:#d9d9d9}.dot.active{background:#52c41a}.direction-card{background:#e8f5e9;border-radius:12px;padding:16px;flex-shrink:0}.direction-name{font-size:15px;font-weight:600;color:#2b6f4e;margin-bottom:8px}.learning-content{font-size:13px;color:#666;line-height:1.6}.milestones{display:flex;gap:12px;overflow-x:auto;flex:1;min-height:0;padding-bottom:4px}.milestones::-webkit-scrollbar{height:4px}.milestones::-webkit-scrollbar-thumb{background:#d9e8d0;border-radius:2px}.milestone-card{min-width:160px;flex-shrink:0;height:100%;background:#fff;border-radius:10px;padding:14px;border:1px solid #f0f0f0;display:flex;align-items:flex-start}.milestone-text{font-size:12px;color:#333;line-height:1.6}.milestone-card.more{display:flex;align-items:center;justify-content:center;background:#fafafa}.more-text{font-size:13px;color:#999;text-align:center;line-height:1.4}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:10px;border-bottom:2px solid #52c41a;flex-shrink:0}.section-title{font-size:16px;font-weight:600;color:#333}.org-evaluation{height:100%;display:flex;flex-direction:column;overflow:hidden}.groups-container{display:flex;flex-direction:column;gap:10px;flex:1;min-height:0;overflow-y:auto}.group-card{border-radius:10px;padding:14px 16px;display:flex;align-items:center;gap:14px;flex-shrink:0}.group-icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:700;flex-shrink:0;align-self:center}.group-items{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}.indicator-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 0}.indicator-name{font-size:15px;color:#555;font-weight:500}.indicator-score{font-size:20px;font-weight:700;white-space:nowrap;min-width:36px;text-align:left}.no-data{grid-column:1 / -1;text-align:center;color:#999;font-size:13px;padding:12px 0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid #52c41a;flex-shrink:0}.section-title{font-size:15px;font-weight:700;color:#333}.right-panel{width:100%;height:100%;display:flex;flex-direction:column;background:#fff;border-radius:12px;padding:16px;overflow:hidden}.profile-page{height:100vh;background:linear-gradient(135deg,#e8f5e0,#d4e8c8);padding:20px;overflow:hidden;display:flex;flex-direction:column}.profile-header{display:flex;justify-content:center;align-items:center;margin-bottom:16px;flex-shrink:0}.page-title{font-size:28px;font-weight:600;color:#52c41a;margin:0}.profile-content{flex:1;display:flex;flex-direction:column;gap:16px;min-height:0}.top-row{flex:1;display:grid;grid-template-columns:1fr 2fr 1fr;gap:16px;min-height:0}.top-left,.top-center,.top-right{min-height:0}.bottom-row{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:16px;min-height:0}.bottom-left,.bottom-right{min-height:0}@media(max-width:1400px){.top-row,.bottom-row{grid-template-columns:1fr}}.manage-drawer .ant-drawer-body{padding:0 24px 24px;background:#f5f7f5}.manage-drawer .ant-drawer-header{padding:16px 24px;border-bottom:none}.manage-drawer .ant-drawer-title{font-size:16px;font-weight:600;color:#2d5a3d}.manage-drawer .history-btn{border-radius:20px!important;border:1px solid #4a7c59!important;color:#4a7c59!important;background:#fff!important;padding:8px 20px!important;font-size:14px!important;height:auto!important}.manage-drawer .history-btn:hover{background:#f0f7f0!important}.manage-drawer .preview-btn{border-radius:20px!important;background:#f4a261!important;border-color:#f4a261!important;color:#fff!important;padding:8px 20px!important;font-size:14px!important;height:auto!important}.manage-drawer .preview-btn:hover{background:#e76f51!important;border-color:#e76f51!important}.manage-drawer .save-btn{border-radius:20px!important;background:#4a7c59!important;border-color:#4a7c59!important;padding:8px 20px!important;font-size:14px!important;height:auto!important}.manage-drawer .save-btn:hover{background:#3d6b4a!important;border-color:#3d6b4a!important}.manage-drawer .close-btn{border-radius:20px!important;border:1px solid #d9d9d9!important;color:#666!important;background:#fff!important;padding:8px 20px!important;font-size:14px!important;height:auto!important}.manage-drawer .close-btn:hover{border-color:#4a7c59!important;color:#4a7c59!important}.detail-form .ant-form-item-label{padding-bottom:8px}.detail-form .ant-form-item-label>label{font-size:14px;color:#333;font-weight:400}.detail-form .ant-input,.detail-form .ant-select-selector,.detail-form .ant-picker{border-radius:8px!important;border:1px solid #d9d9d9!important;height:36px!important}.detail-form .ant-input:hover,.detail-form .ant-select-selector:hover,.detail-form .ant-picker:hover{border-color:#4a7c59!important}.detail-form .ant-input:focus,.detail-form .ant-input-focused,.detail-form .ant-select-focused .ant-select-selector,.detail-form .ant-picker-focused{border-color:#4a7c59!important;box-shadow:0 0 0 2px #4a7c591a!important}.detail-form .ant-select-selector{padding:0 11px!important}.info-card{background:#fff;border-radius:12px;padding:24px;margin-top:24px;margin-bottom:24px;box-shadow:0 2px 12px #0000000f;display:flex;gap:32px}.avatar-column{display:flex;flex-direction:column;align-items:center;min-width:140px}.avatar-column .avatar-upload-wrapper{position:relative;cursor:pointer;border-radius:12px;overflow:hidden;width:140px;height:196px;background:#f0f0f0}.avatar-column .avatar-upload-wrapper .teacher-avatar-large{border:none;border-radius:12px;display:block;width:100%;height:100%;background:#f0f0f0}.avatar-column .avatar-upload-wrapper .avatar-placeholder{width:100%;height:100%;background:#f0f0f0;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:32px;color:#999}.avatar-column .avatar-upload-wrapper .avatar-overlay{position:absolute;bottom:0;left:0;right:0;background:#0009;color:#fff;padding:8px;display:flex;align-items:center;justify-content:center;font-size:12px;opacity:0;transition:opacity .2s}.avatar-column .avatar-upload-wrapper:hover .avatar-overlay{opacity:1}.avatar-column .avatar-hint{font-size:12px;color:#999;margin-top:12px;text-align:center}.form-area{flex:1}.form-area .form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px 24px}.form-area .form-grid .ant-form-item{margin-bottom:0}.form-area .form-grid .form-item-empty{visibility:hidden}.gender-group{display:flex;gap:0;width:100%}.gender-group .gender-btn{flex:1;border-radius:0!important;height:36px!important;padding:0 16px!important;border:1px solid #d9d9d9!important;background:#fff!important;color:#666!important;font-size:14px!important}.gender-group .gender-btn:first-child{border-radius:8px 0 0 8px!important}.gender-group .gender-btn:last-child{border-radius:0 8px 8px 0!important;border-left:none!important}.gender-group .gender-btn.active{background:#4a7c59!important;border-color:#4a7c59!important;color:#fff!important}.work-history-section{margin-bottom:24px}.work-history-section .section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.work-history-section .section-header .section-title{font-size:16px;font-weight:600;color:#2d5a3d;margin:0}.work-history-section .section-header .add-experience-btn{color:#4a7c59!important;font-size:14px!important}.work-history-section .section-header .add-experience-btn:hover{color:#3d6b4a!important}.work-history-section .timeline-wrapper{position:relative}.timeline-header{margin-bottom:20px}.timeline-header .timeline-dotsLine{display:flex;align-items:center}.timeline-header .timeline-dotsLine .timeline-dot-item{display:flex;align-items:center;flex:1}.timeline-header .timeline-dotsLine .timeline-dot-item .timeline-dot{width:12px;height:12px;background:#d9d9d9;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 2px #d9d9d9;flex-shrink:0}.timeline-header .timeline-dotsLine .timeline-dot-item .timeline-dot.active{background:#4a7c59;border-color:#4a7c59;box-shadow:0 0 0 3px #4a7c5933}.timeline-header .timeline-dotsLine .timeline-dot-item .timeline-segment{flex:1;height:2px;background:repeating-linear-gradient(to right,#4a7c59 0,#4a7c59 6px,transparent 6px,transparent 12px);margin:0 8px}.timeline-cards{display:flex;gap:16px;overflow-x:auto;padding-bottom:10px;padding-top:10px}.timeline-cards::-webkit-scrollbar{height:4px}.timeline-cards::-webkit-scrollbar-thumb{background:#4a7c59;border-radius:2px}.timeline-cards .timeline-card{flex:1;min-width:480px;max-width:480px;background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000f;cursor:pointer;transition:all .2s;border:2px solid transparent}.timeline-cards .timeline-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.timeline-cards .timeline-card.selected{border-color:#4a7c59;box-shadow:0 4px 12px #4a7c5933}.timeline-cards .timeline-card .timeline-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.timeline-cards .timeline-card .timeline-card-header .timeline-period-badge{display:inline-block;background:#e8e8e8;color:#666;padding:4px 12px;border-radius:16px;font-size:12px}.timeline-cards .timeline-card .timeline-card-header .timeline-period-badge.active{background:#4a7c59;color:#fff}.timeline-cards .timeline-card .timeline-card-header .edit-experience-btn{color:#4a7c59!important;padding:4px!important}.timeline-cards .timeline-card .timeline-card-header .edit-experience-btn:hover{color:#3d6b4a!important}.timeline-cards .timeline-card .timeline-card-header .delete-experience-btn,.timeline-cards .timeline-card .timeline-card-header .delete-honor-btn{padding:4px!important;color:#ff4d4f!important}.timeline-cards .timeline-card .timeline-card-header .delete-experience-btn:hover,.timeline-cards .timeline-card .timeline-card-header .delete-honor-btn:hover{color:#ff7875!important}.timeline-cards .timeline-card .timeline-description{font-size:14px;font-weight:500;color:#333;margin-bottom:8px;line-height:1.5}.timeline-cards .timeline-card .timeline-teaching{font-size:12px;color:#666;line-height:1.6;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.evaluation-section{background:#fff;border-radius:12px;padding:0 16px 16px;box-shadow:0 2px 12px #0000000f}.evaluation-section .section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.evaluation-section .section-header .evaluation-tabs{flex:1}.evaluation-section .section-header .add-indicator-btn{color:#4a7c59!important;font-size:14px!important}.evaluation-section .section-header .add-indicator-btn:hover{color:#3d6b4a!important}.evaluation-section .evaluation-tabs .ant-tabs-nav{margin-bottom:0}.evaluation-section .evaluation-tabs .ant-tabs-tab{padding:12px 16px!important;font-size:14px!important;color:#666!important;font-weight:500!important}.evaluation-section .evaluation-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{color:#fff!important;background:#4a7c59!important;border-radius:16px!important;padding:4px 16px!important}.evaluation-section .evaluation-tabs .ant-tabs-ink-bar{display:none!important}.evaluation-section .evaluation-tabs .ant-tabs-content-holder{padding-top:16px}.evaluation-section .evaluation-content{background:#fff;border-radius:8px;border:1px solid #e8e8e8}.evaluation-section .evaluation-content .evaluation-row{display:flex;align-items:center;gap:24px;padding:16px}.evaluation-section .evaluation-content .evaluation-row .evaluation-date{font-size:14px;font-weight:600;color:#2d5a3d;white-space:nowrap;min-width:80px}.evaluation-section .evaluation-content .evaluation-row .evaluation-items{flex:1;display:flex;gap:32px}.evaluation-section .evaluation-content .evaluation-row .evaluation-items .evaluation-item{display:flex;align-items:baseline;gap:6px}.evaluation-section .evaluation-content .evaluation-row .evaluation-items .evaluation-item .eval-label{font-size:14px;color:#333}.evaluation-section .evaluation-content .evaluation-row .evaluation-items .evaluation-item .eval-score{font-size:18px;font-weight:600;color:#e74c3c}.evaluation-section .evaluation-content .evaluation-row .evaluation-items .evaluation-item .eval-score.highlight{color:#e74c3c}.evaluation-section .evaluation-content .evaluation-row .evaluation-items .evaluation-item .eval-unit{font-size:12px;color:#999}.evaluation-section .evaluation-content .evaluation-row .evaluation-actions{display:flex;gap:8px}.evaluation-section .evaluation-content .evaluation-row .evaluation-actions .action-icon-btn{color:#4a7c59!important;padding:4px!important}.evaluation-section .evaluation-content .evaluation-row .evaluation-actions .action-icon-btn:hover{color:#3d6b4a!important}.evaluation-section .evaluation-content .evaluation-row .evaluation-actions .action-icon-btn.danger{color:#ff4d4f!important}.evaluation-section .evaluation-content .evaluation-row .evaluation-actions .action-icon-btn.danger:hover{color:#ff7875!important}@media(max-width:1400px){.form-area .form-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:1024px){.form-area .form-grid{grid-template-columns:repeat(2,1fr)}.info-card{flex-direction:column}.info-card .avatar-column{margin-bottom:20px}}.no-experience-tip{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#b0b8b0;font-size:15px;text-align:center;position:relative}.no-experience-tip:before{content:"";display:block;width:80px;height:80px;margin-bottom:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23b0b8b0' stroke-width='2'%3E%3Crect x='8' y='12' width='48' height='40' rx='4'/%3E%3Cpath d='M8 24h48'/%3E%3Ccircle cx='32' cy='36' r='8'/%3E%3C/svg%3E") center / contain no-repeat;opacity:.5}.honor-section{margin-bottom:24px}.honor-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.honor-section .section-header .section-title{font-size:16px;font-weight:600;color:#2d5a3d;margin:0}.honor-section .section-header .add-honor-btn{color:#4a7c59}.honor-section .section-header .add-honor-btn:hover{color:#3d6b4a}.no-honor-tip{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#b0b8b0;font-size:15px;text-align:center;position:relative}.no-honor-tip:before{content:"";display:block;width:80px;height:80px;margin-bottom:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23b0b8b0' stroke-width='2'%3E%3Cpath d='M32 8l4 12h12l-10 7 4 12-10-7-10 7 4-12-10-7h12z'/%3E%3C/svg%3E") center / contain no-repeat;opacity:.5}.evaluation-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#b0b8b0;font-size:15px;text-align:center;position:relative}.evaluation-empty:before{content:"";display:block;width:80px;height:80px;margin-bottom:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23b0b8b0' stroke-width='2'%3E%3Cpath d='M16 16h32v32H16z'/%3E%3Cpath d='M24 28h16M24 36h12'/%3E%3C/svg%3E") center / contain no-repeat;opacity:.5}.evaluation-empty p{margin:0;line-height:1.6}.history-popover .ant-popover-inner{border-radius:12px;box-shadow:0 4px 16px #0000001f}.history-popover .ant-popover-inner-content{padding:0}.history-popover-content{min-width:320px;max-width:400px}.history-popover-header{display:flex;align-items:center;gap:8px;padding:16px 20px 12px;border-bottom:1px solid #e8f5e1}.history-popover-header .history-icon{font-size:18px;color:#4a7c59}.history-popover-header .history-title{font-size:16px;font-weight:600;color:#2d5a3d;margin:0}.history-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:40px 20px;color:#666;font-size:14px}.history-empty{display:flex;align-items:center;justify-content:center;padding:40px 20px;color:#999;font-size:14px}.history-list{padding:12px 16px 16px;max-height:400px;overflow-y:auto}.history-list::-webkit-scrollbar{width:4px}.history-list::-webkit-scrollbar-thumb{background:#e8e8e8;border-radius:2px}.history-date-group{margin-bottom:16px}.history-date-group:last-child{margin-bottom:0}.history-date{font-size:13px;font-weight:600;color:#4a7c59;margin-bottom:8px;padding-left:4px}.history-item{display:flex;align-items:center;justify-content:space-between;background:#e8f5e1;border-radius:20px;padding:10px 16px;margin-bottom:8px;transition:all .2s}.history-item:last-child{margin-bottom:0}.history-item:hover{background:#d9ecd0}.history-item-content{flex:1;min-width:0}.history-item-text{font-size:13px;color:#333;line-height:1.4;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item-status{font-size:12px;padding:3px 10px;border-radius:12px;white-space:nowrap;margin-left:12px;flex-shrink:0}.history-item-status.status-insert{background:#52c41a26;color:#52c41a}.history-item-status.status-update{background:#1890ff26;color:#1890ff}.history-item-status.status-delete{background:#ff4d4f26;color:#ff4d4f}.reward-punishment-section{margin-bottom:24px}.reward-punishment-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.reward-punishment-section .section-header .section-title{font-size:16px;font-weight:600;color:#2d5a3d;margin:0}.reward-punishment-section .section-header .add-reward-punishment-btn{color:#4a7c59}.reward-punishment-section .section-header .add-reward-punishment-btn:hover{color:#3d6b4a}.reward-punishment-section .timeline-cards .timeline-card .timeline-card-header .timeline-period-badge.rp-badge{display:inline-flex;align-items:center;gap:8px}.reward-punishment-section .timeline-cards .timeline-card .timeline-card-header .timeline-period-badge.rp-badge.rp-badge-reward{background:#4a7c5924;color:#2d5a3d}.reward-punishment-section .timeline-cards .timeline-card .timeline-card-header .timeline-period-badge.rp-badge.rp-badge-punishment{background:#ff4d4f24;color:#ff4d4f}.reward-punishment-section .timeline-cards .timeline-card .timeline-card-header .timeline-period-badge.rp-badge.active{color:#fff}.reward-punishment-section .timeline-cards .timeline-card .timeline-card-header .timeline-period-badge.rp-badge.active.rp-badge-reward{background:#4a7c59}.reward-punishment-section .timeline-cards .timeline-card .timeline-card-header .timeline-period-badge.rp-badge.active.rp-badge-punishment{background:#ff4d4f}.reward-punishment-section .timeline-cards .timeline-card .timeline-card-header .timeline-period-badge.rp-badge .rp-level-tag{font-size:12px;padding:1px 8px;border-radius:10px;background:#ffffffb3;color:inherit;white-space:nowrap}.reward-punishment-section .rp-title-reward{color:#2d5a3d;font-weight:600}.reward-punishment-section .rp-title-punishment{color:#ff4d4f;font-weight:600}.reward-punishment-section .rp-indicator{display:flex;align-items:center;gap:4px;margin-top:6px;font-size:12px}.reward-punishment-section .rp-indicator .rp-indicator-label{color:#999}.reward-punishment-section .rp-indicator .rp-indicator-name{color:#531dab;background:#f9f0ff;border-radius:10px;padding:1px 8px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reward-punishment-section .rp-attachments{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}.reward-punishment-section .rp-attachments .rp-attachments-label{font-size:12px;color:#999}.reward-punishment-section .rp-attachments .rp-attachment-link{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#4a7c59;background:#f0f7f0;border-radius:12px;padding:2px 10px;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reward-punishment-section .rp-attachments .rp-attachment-link:hover{color:#3d6b4a;background:#4a7c591a}.no-reward-punishment-tip{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#b0b8b0;font-size:15px;text-align:center}.attachment-empty{font-size:12px;color:#999}.attachment-list{display:flex;flex-direction:column;gap:6px}.attachment-list .attachment-item{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#f0f7f0;border:1px solid #e8e8e8;border-radius:8px}.attachment-list .attachment-item .attachment-icon{color:#4a7c59}.attachment-list .attachment-item .attachment-name{flex:1;min-width:0;font-size:13px;color:#333;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-list .attachment-item .attachment-name:hover{color:#4a7c59;text-decoration:underline}.attachment-list .attachment-item .attachment-size{font-size:12px;color:#999}.manage-list{min-height:100vh;background:linear-gradient(180deg,#e8f5e9,#c8e6c9);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.manage-header{display:flex;justify-content:space-between;align-items:center;padding:16px 40px;background:#fff;border-bottom:1px solid #e0e0e0}.manage-header .header-left,.manage-header .header-left .logo-wrapper{display:flex;align-items:center}.manage-header .header-logo{height:40px;width:auto;object-fit:contain}.manage-header .header-right{display:flex;align-items:center;gap:24px}.manage-header .home-btn{background:#4a7c59!important;border-color:#4a7c59!important;color:#fff!important;padding:8px 20px!important;border-radius:8px!important;font-size:18px!important;font-weight:500!important}.manage-header .home-btn:hover{background:#3d6b4a!important;border-color:#3d6b4a!important}.manage-header .import-btn{background:#4a7c59!important;border-color:#4a7c59!important;color:#fff!important;padding:8px 20px!important;border-radius:8px!important;font-size:18px!important;font-weight:500!important}.manage-header .import-btn:hover{background:#3d6b4a!important;border-color:#3d6b4a!important}.manage-header .admin-info{display:flex;align-items:center;gap:12px;padding:8px 16px;background:#f8faf8;border-radius:12px;border:1px solid #d4e4d4;cursor:pointer;transition:all .2s ease}.manage-header .admin-info:hover{background:#e8f0e8;border-color:#4a7c59}.manage-header .admin-info .admin-avatar{border-radius:50%}.manage-header .admin-info .admin-text{display:flex;flex-direction:column}.manage-header .admin-info .admin-name{font-size:21px;font-weight:500;color:#333}.manage-header .admin-info .admin-role{font-size:16px;color:#666}.filter-section{padding:20px 40px}.filter-section .filter-row{display:flex;align-items:center;gap:12px;flex-wrap:nowrap}.filter-section .filter-chip{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border-radius:12px;border:1px solid #e0e0e0;min-width:130px;cursor:pointer;transition:all .2s ease;position:relative}.filter-section .filter-chip:hover{border-color:#4a7c59;box-shadow:0 2px 8px #4a7c591a}.filter-section .filter-chip .chip-icon{color:#4a7c59;font-size:18px;flex-shrink:0}.filter-section .filter-chip .chip-label{font-size:14px;color:#333;white-space:nowrap;flex:1}.filter-section .filter-chip .chip-arrow{color:#999;font-size:10px;margin-left:4px;transition:transform .2s ease}.filter-section .filter-chip .chip-clear{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#d9d9d9;color:#fff;font-size:12px;line-height:1;cursor:pointer;transition:all .2s ease;margin-right:4px}.filter-section .filter-chip .chip-clear:hover{background:#b3b3b3}.filter-section .filter-chip.has-value .chip-label{color:#4a7c59;font-weight:500}.filter-section .ant-dropdown-menu .ant-dropdown-menu-item.ant-dropdown-menu-item-selected{background-color:#4a7c5914;color:#4a7c59;font-weight:500}.filter-section .ant-dropdown-menu .ant-dropdown-menu-item:hover{background-color:#4a7c590a}.search-btn,.advanced-search-btn{background:#f4a261!important;border-color:#f4a261!important;color:#fff!important;border-radius:12px!important;padding:10px 20px!important;font-size:16px!important;font-weight:500!important;min-width:130px;height:44px;display:flex;align-items:center;justify-content:center}.search-btn:hover,.advanced-search-btn:hover{background:#e76f51!important;border-color:#e76f51!important}.table-section{padding:0 40px}.manage-table,.manage-table .ant-table,.manage-table .ant-table-container{background:transparent}.manage-table .ant-table-thead>tr>th{background:#f5faf5!important;color:#4a7c59;font-weight:600;font-size:14px;padding:16px;border:none}.manage-table .ant-table-thead>tr>th:first-child{border-radius:12px 0 0 12px}.manage-table .ant-table-thead>tr>th:last-child{border-radius:0 12px 12px 0}.manage-table .ant-table-selection-column{width:50px;text-align:center}.manage-table .ant-table-selection-column .ant-checkbox-wrapper{display:flex;justify-content:center}.manage-table .ant-table-tbody>tr.table-row>td{padding:16px;border:none;background:#ffffffe6}.manage-table .ant-table-tbody>tr.table-row:hover>td{background:#fff}.manage-table .ant-table-tbody>tr{margin-bottom:8px;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000a}.manage-table .ant-table-tbody>tr:last-child{margin-bottom:0}.manage-table .ant-pagination-wrapper{padding:16px 0}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-item{border-radius:8px;border:1px solid #e0e0e0;background:#fff}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-item a{color:#333}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-item:hover{border-color:#4a7c59}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-item:hover a{color:#4a7c59}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-item-active{background:#4a7c59!important;border-color:#4a7c59!important}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-item-active a{color:#fff!important}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-prev .ant-pagination-item-link,.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-next .ant-pagination-item-link{border-radius:8px;border:1px solid #e0e0e0;color:#333}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-prev .ant-pagination-item-link:hover,.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-next .ant-pagination-item-link:hover{border-color:#4a7c59;color:#4a7c59}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-jump-prev .ant-pagination-item-link,.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-jump-next .ant-pagination-item-link{border-radius:8px;border:1px solid #e0e0e0}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-options .ant-pagination-options-size-changer{display:none}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-options .ant-pagination-options-quick-jumper input{border-radius:8px;border:1px solid #e0e0e0}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-options .ant-pagination-options-quick-jumper input:focus{border-color:#4a7c59;box-shadow:0 0 0 2px #4a7c591a}.manage-table .ant-pagination-wrapper .ant-pagination .ant-pagination-total-text{color:#666;font-size:14px}.table-row{background:#fff;border-radius:12px;margin-bottom:8px}.teacher-cell{display:flex;align-items:center;gap:12px}.teacher-cell .teacher-avatar{flex-shrink:0;background:#e8f5e9;color:#4a7c59}.teacher-cell .teacher-info{display:flex;flex-direction:column}.teacher-cell .teacher-info .teacher-name{font-weight:500;color:#333;font-size:14px}.teacher-cell .teacher-info .teacher-title{font-size:12px;color:#888}.action-btn{color:#666!important}.action-btn:hover{color:#4a7c59!important}.pagination-section{display:flex;justify-content:space-between;align-items:center;padding:16px 40px 20px}.pagination-section .pagination-actions{display:flex;align-items:center}.pagination-section .pagination-actions .selected-count{color:#666;font-size:13px;padding:0 8px}.pagination-section .pagination-actions .selected-count strong{color:#1677ff;font-weight:600}.pagination-section .pagination-control{margin:0}@media(max-width:1200px){.filter-section .filter-row{gap:8px}.filter-section .filter-select{min-width:120px}}.advanced-search-modal .ant-modal-content{border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #00000026}.advanced-search-modal .ant-modal-body{padding:0!important}.advanced-search-modal .advanced-search-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e0e0e0}.advanced-search-modal .advanced-search-header .header-icon{color:#4a7c59;font-size:20px;margin-right:8px}.advanced-search-modal .advanced-search-header .header-title{flex:1;font-size:18px;font-weight:600;color:#333}.advanced-search-modal .advanced-search-header .header-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#888;cursor:pointer;border-radius:50%;transition:all .2s ease}.advanced-search-modal .advanced-search-header .header-close:hover{background:#f5f5f5;color:#333}.advanced-search-modal .advanced-search-content{padding:24px;max-height:400px;overflow-y:auto}.advanced-search-modal .advanced-search-content .search-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.advanced-search-modal .advanced-search-content .search-item{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border-radius:12px;border:1px solid #e0e0e0;cursor:pointer;transition:all .2s ease}.advanced-search-modal .advanced-search-content .search-item:hover{border-color:#4a7c59;box-shadow:0 2px 8px #4a7c591a}.advanced-search-modal .advanced-search-content .search-item.has-value{border-color:#4a7c59;background:#4a7c590a}.advanced-search-modal .advanced-search-content .search-item.has-value .item-label{color:#4a7c59;font-weight:500}.advanced-search-modal .advanced-search-content .search-item .item-icon{color:#4a7c59;font-size:18px;flex-shrink:0}.advanced-search-modal .advanced-search-content .search-item .item-label{font-size:14px;color:#333;white-space:nowrap;flex:1;overflow:hidden;text-overflow:ellipsis}.advanced-search-modal .advanced-search-content .search-item .item-clear{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#d9d9d9;color:#fff;font-size:12px;line-height:1;cursor:pointer;transition:all .2s ease;flex-shrink:0}.advanced-search-modal .advanced-search-content .search-item .item-clear:hover{background:#b3b3b3}.advanced-search-modal .advanced-search-content .search-item .item-arrow{color:#999;font-size:10px;margin-left:4px;flex-shrink:0}.advanced-search-modal .advanced-search-content .search-item.search-input{cursor:text}.advanced-search-modal .advanced-search-content .search-item.search-input .ant-input-affix-wrapper{border:none;box-shadow:none;padding:0;background:transparent}.advanced-search-modal .advanced-search-content .search-item.search-input .ant-input-affix-wrapper:focus,.advanced-search-modal .advanced-search-content .search-item.search-input .ant-input-affix-wrapper.ant-input-affix-wrapper-focused{border:none;box-shadow:none}.advanced-search-modal .advanced-search-content .search-item.search-input .ant-input-affix-wrapper .ant-input{font-size:14px;padding:0}.advanced-search-modal .advanced-search-content .search-item.search-input .ant-input-affix-wrapper .ant-input-prefix{margin-right:8px}.advanced-search-modal .advanced-search-content .search-item.date-range-item{grid-column:span 2;cursor:default;padding:10px 20px}.advanced-search-modal .advanced-search-content .search-item.date-range-item .date-picker{flex:1;min-width:160px}.advanced-search-modal .advanced-search-content .search-item.date-range-item .date-picker .ant-picker{border:none;box-shadow:none;padding:0;background:transparent;width:100%}.advanced-search-modal .advanced-search-content .search-item.date-range-item .date-picker .ant-picker:hover,.advanced-search-modal .advanced-search-content .search-item.date-range-item .date-picker .ant-picker:focus,.advanced-search-modal .advanced-search-content .search-item.date-range-item .date-picker .ant-picker.ant-picker-focused{border:none;box-shadow:none}.advanced-search-modal .advanced-search-content .search-item.date-range-item .date-picker .ant-picker .ant-picker-input>input{font-size:14px;padding:0;min-width:100px}.advanced-search-modal .advanced-search-content .search-item.date-range-item .date-picker .ant-picker .ant-picker-suffix{display:none}.advanced-search-modal .advanced-search-content .search-item.date-range-item .date-separator{color:#999;margin:0 8px;flex-shrink:0}.advanced-search-modal .advanced-search-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e0e0e0}.advanced-search-modal .advanced-search-footer .reset-btn{padding:8px 24px;border-radius:8px}.advanced-search-modal .advanced-search-footer .search-submit-btn{background:#f4a261;border-color:#f4a261;padding:8px 24px;border-radius:8px;font-weight:500}.advanced-search-modal .advanced-search-footer .search-submit-btn:hover{background:#e76f51;border-color:#e76f51}.rp-ledger-body{padding:20px 40px 40px}.rp-ledger-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:16px}.rp-ledger-title-row .rp-ledger-title{margin:0;font-size:24px;font-weight:600;color:#2d5a3d;white-space:nowrap}.rp-ledger-title-row .rp-ledger-sub{flex:1;min-width:260px;font-size:13px;color:#6b7d6b}.rp-ledger-card{background:#fff;border-radius:12px;padding:20px 24px;box-shadow:0 2px 10px #4a7c5914}.rp-ledger-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}.rp-ledger-table .ant-table-thead>tr>th{background:#f0f7f0;color:#2d5a3d;font-weight:600}.rp-ledger-table .ant-table-tbody>tr:hover>td{background:#f7fbf7}.rp-ledger-attachment{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:#4a7c59;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-ledger-attachment:hover{color:#3d6b4a;text-decoration:underline}.rp-ledger-no-attachment{font-size:12px;color:#999}@media(max-width:1200px){.rp-ledger-body{padding:16px 16px 32px}.rp-ledger-card{padding:16px}}@media(max-width:768px){.rp-ledger-sub{display:none}}.system-layout{min-height:100vh;background:#f8fafc}.system-sider{background:#fff;border-right:1px solid #f1f5f9;box-shadow:0 1px 2px #0000000d;overflow:hidden;position:relative;z-index:10}.system-sider.ant-layout-sider-collapsed{width:80px}.system-header{height:64px;display:flex;align-items:center;justify-content:center;padding:0 16px;border-bottom:1px solid #f1f5f9;background:linear-gradient(135deg,#f0f7f0,#fff)}.system-header .logo-wrapper{display:flex;align-items:center;justify-content:center;width:100%}.system-title{margin:0;color:#4a7c59;font-weight:700;font-size:18px;text-align:center;letter-spacing:.5px}.system-title-short{margin:0;color:#4a7c59;font-weight:700;font-size:18px;text-align:center;letter-spacing:.5px;font-size:16px}.system-menu{border-right:none;background:transparent;padding:12px 8px}.system-menu .ant-menu-item{margin:4px 0;padding:0 16px;height:44px;line-height:44px;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1)}.system-menu .ant-menu-item:hover{background:#f0f7f0;color:#4a7c59}.system-menu .ant-menu-item-selected{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.system-menu .ant-menu-item-selected:hover{background:linear-gradient(135deg,#667eea,#764ba2)}.system-menu .ant-menu-item-selected .anticon{color:#fff}.system-menu .ant-menu-item .anticon{font-size:16px;transition:all .3s}.system-menu .ant-menu-item-divider{margin:12px 8px;background:#f1f5f9}.system-content-layout{background:#f8fafc}.system-top-header{background:#fff;padding:0 24px;display:flex;justify-content:space-between;align-items:center;height:64px;line-height:64px;box-shadow:0 1px 2px #0000000d;position:sticky;top:0;z-index:9}.header-left,.header-right{display:flex;align-items:center;gap:16px}.home-btn{background:#4a7c59!important;border-color:#4a7c59!important;font-size:18px!important;font-weight:500!important;border-radius:8px!important}.home-btn:hover{background:#3d6b4a!important;border-color:#3d6b4a!important}.collapse-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:18px;color:#64748b;transition:all .3s}.collapse-btn:hover{background:#f0f7f0;color:#4a7c59}.system-breadcrumb .ant-breadcrumb-link{color:#64748b;font-size:14px}.system-breadcrumb .ant-breadcrumb-separator{color:#94a3b8}.system-breadcrumb a{color:#4a7c59;transition:color .3s}.system-breadcrumb a:hover{color:#3d6b4a}.system-breadcrumb .ant-breadcrumb-last{color:#2c3e50;font-weight:500}.user-info-trigger{cursor:pointer;padding:6px 12px;border-radius:12px;transition:all .3s;background:#fff;border:1px solid #f1f5f9}.user-info-trigger:hover{background:#f0f7f0;border-color:#4a7c59;box-shadow:0 1px 2px #0000000d}.user-info-trigger .user-info-text{display:flex;flex-direction:column;line-height:1.3}.user-info-trigger .user-name{font-size:14px;font-weight:600;color:#2c3e50}.user-info-trigger .user-role{font-size:12px;color:#64748b}.user-info-trigger .dropdown-icon{font-size:12px;color:#64748b;transition:transform .3s}.user-info-trigger:hover .dropdown-icon{color:#4a7c59}.system-content{margin:24px;padding:32px;background:#fff;border-radius:12px;min-height:calc(100vh - 112px);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;border:1px solid #f1f5f9}@media(max-width:1200px){.system-content{margin:16px;padding:24px}.user-info-trigger .user-role{display:none}}@media(max-width:768px){.system-sider{position:fixed;left:0;top:0;bottom:0;z-index:100}.system-content{margin:12px;padding:16px}.header-left,.header-right{gap:8px}.user-info-trigger{padding:4px 8px}.user-info-trigger .user-name{font-size:13px}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.system-content{animation:slideIn .3s ease-out}.system-menu::-webkit-scrollbar{width:6px}.system-menu::-webkit-scrollbar-track{background:transparent}.system-menu::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:3px}.system-menu::-webkit-scrollbar-thumb:hover{background:#94a3b8}.anchor_form{padding-inline-end:24px}.anchor_form .ant-flex+.ant-flex{border-top:1px solid #dbdbdb}.anchor_form .ant-flex+.ant-flex>div[id]{padding-top:24px}:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:18px;line-height:1.5;font-weight:400;color-scheme:light dark;color:#000000de;background-color:#e8f5e0;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}#root{height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#e8f5e980;border-radius:4px}::-webkit-scrollbar-thumb{background:#4a7c59;border-radius:4px;transition:background .3s ease}::-webkit-scrollbar-thumb:hover{background:#3d6b4a}::-webkit-scrollbar-thumb:active{background:#2d5038}::-webkit-scrollbar-corner{background:#e8f5e980}*{scrollbar-width:thin;scrollbar-color:#4a7c59 rgba(232,245,233,.5)}
