body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;height:100vh;justify-content:center;padding:20px;width:100%}.login-content{max-width:420px;width:100%}.login-header{color:#fff;margin-bottom:32px;text-align:center}.login-logo{color:#fff;font-size:64px;margin-bottom:16px}.login-logo-image{height:64px;margin-bottom:16px;object-fit:contain;width:64px}.login-title{color:#fff!important;font-size:28px!important;font-weight:600!important;margin-bottom:8px!important}.login-subtitle{color:#ffffffe6!important;font-size:14px!important;margin:0!important}.login-card{border-radius:12px;box-shadow:0 8px 32px #0000001a}.login-card .ant-card-body{padding:32px}.login-tips{border-top:1px solid #f0f0f0;margin-top:24px;padding-top:24px;text-align:left}.login-tips .ant-typography{color:#666;margin-bottom:8px!important}.login-tips span{color:#999;display:block;font-size:13px;line-height:1.8}@media (max-width:768px){.login-content{max-width:100%}.login-card .ant-card-body{padding:24px}.login-logo{font-size:48px}.login-title{font-size:24px!important}}.dashboard-container{animation:fadeIn .3s ease-out;padding:0}.dashboard-header{margin-bottom:24px}.dashboard-header h2{color:#1a1a1a;font-size:28px;font-weight:600;margin:0 0 8px}.dashboard-date{color:#8c8c8c;font-size:14px;margin:0}.stat-card{border:none;border-radius:12px;box-shadow:0 2px 8px #00000014;transition:all .3s ease}.stat-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-4px)}.stat-card .ant-statistic-title{color:#8c8c8c;font-size:14px;margin-bottom:8px}.stat-card .ant-statistic-content{font-size:28px;font-weight:600}.stat-card .ant-statistic-content-prefix{font-size:24px;margin-right:8px}.stat-card .ant-statistic-content-suffix{font-size:16px;margin-left:4px}.stat-card-blue{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-card-blue .ant-statistic-content,.stat-card-blue .ant-statistic-content-prefix,.stat-card-blue .ant-statistic-content-suffix,.stat-card-blue .ant-statistic-title{color:#fff}.stat-card-green{background:linear-gradient(135deg,#11998e,#38ef7d)}.stat-card-green .ant-statistic-content,.stat-card-green .ant-statistic-content-prefix,.stat-card-green .ant-statistic-content-suffix,.stat-card-green .ant-statistic-title{color:#fff}.stat-card-orange{background:linear-gradient(135deg,#f093fb,#f5576c)}.stat-card-orange .ant-statistic-content,.stat-card-orange .ant-statistic-content-prefix,.stat-card-orange .ant-statistic-content-suffix,.stat-card-orange .ant-statistic-title{color:#fff}.stat-card-purple{background:linear-gradient(135deg,#4facfe,#00f2fe)}.stat-card-purple .ant-statistic-content,.stat-card-purple .ant-statistic-content-prefix,.stat-card-purple .ant-statistic-content-suffix,.stat-card-purple .ant-statistic-title{color:#fff}.stat-footer{align-items:center;border-top:1px solid #fff3;display:flex;gap:8px;margin-top:12px;padding-top:12px}.stat-trend{font-size:14px;font-weight:500}.stat-trend.up{color:#52c41a}.stat-trend.down{color:#ff4d4f}.stat-compare{color:#fffc;font-size:12px}.activity-card,.patients-card,.schedule-card,.todo-card{border:none;border-radius:12px;box-shadow:0 2px 8px #00000014}.activity-card .ant-card-head,.patients-card .ant-card-head,.schedule-card .ant-card-head,.todo-card .ant-card-head{border-bottom:2px solid #f0f0f0;padding:16px 24px}.activity-card .ant-card-head-title,.patients-card .ant-card-head-title,.schedule-card .ant-card-head-title,.todo-card .ant-card-head-title{color:#1a1a1a;font-size:16px;font-weight:600}.activity-card .ant-card-body,.patients-card .ant-card-body,.schedule-card .ant-card-body,.todo-card .ant-card-body{padding:20px 24px}.todo-item{border-bottom:1px solid #f0f0f0;padding:12px 0}.todo-item:last-child{border-bottom:none}.todo-priority{border-radius:50%;color:#fff;font-weight:600;height:32px;justify-content:center;width:32px}.todo-priority,.todo-title{align-items:center;display:flex;font-size:14px}.todo-title{color:#1a1a1a;font-weight:500;justify-content:space-between}.todo-time{color:#8c8c8c;font-size:12px;margin-top:4px}.patient-item{border-bottom:1px solid #f0f0f0;padding:12px 0}.patient-item:last-child{border-bottom:none}.patient-item .ant-list-item-meta-title{color:#1a1a1a;font-size:14px;font-weight:500;margin-bottom:4px}.patient-item .ant-list-item-meta-description{color:#8c8c8c;font-size:12px}.activity-card .ant-timeline{padding-left:8px}.activity-card .ant-timeline-item{padding-bottom:20px}.activity-card .ant-timeline-item:last-child{padding-bottom:0}.activity-title{color:#1a1a1a;font-size:14px;font-weight:500;margin:0 0 4px}.activity-time{color:#8c8c8c;font-size:12px;margin:0}@media (max-width:1200px){.stat-card .ant-statistic-content{font-size:24px}}@media (max-width:768px){.dashboard-header h2{font-size:24px}.stat-card .ant-statistic-content{font-size:20px}.activity-card .ant-card-body,.patients-card .ant-card-body,.schedule-card .ant-card-body,.todo-card .ant-card-body{padding:16px}}.human-body-image-container{background:linear-gradient(135deg,#fff,#f5f7fa);border-radius:12px;flex-direction:column;height:100%;overflow:hidden;padding:10px}.human-body-image-container,.image-wrapper{align-items:center;display:flex;justify-content:center;position:relative;width:100%}.image-wrapper{aspect-ratio:210/297;max-height:100%}.human-body-image{border-radius:8px;display:block;height:100%;width:100%}.body-marker{cursor:pointer;position:absolute;transform:translate(-50%,-50%);z-index:10}.marker-dot{background:radial-gradient(circle,#ff4d4f 0,#ff7875 50%,#ff4d4f 100%);border-radius:50%;box-shadow:0 0 10px #ff4d4fcc,0 0 20px #ff4d4f66;height:16px;position:relative;width:16px;z-index:2}.marker-ring{animation:ringPulse 2s ease-out infinite;border:2px solid #ff4d4f99;border-radius:50%;height:30px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:30px}.marker-label{background:linear-gradient(135deg,#ff4d4f,#ff7875);border-radius:12px;box-shadow:0 2px 8px #ff4d4f66;color:#fff;font-size:11px;font-weight:600;left:50%;opacity:0;padding:4px 10px;position:absolute;top:-28px;transform:translateX(-50%);transition:opacity .3s ease;white-space:nowrap}.body-marker:hover .marker-label{opacity:1}.body-marker.pulse .marker-dot{animation:dotPulse .8s ease-in-out infinite}@keyframes dotPulse{0%{background:radial-gradient(circle,#f33 0,#f66 50%,#f33 100%);box-shadow:0 0 5px #ff323299,0 0 10px #ff32324d;transform:scale(.9)}50%{background:radial-gradient(circle,red 0,#f33 50%,red 100%);box-shadow:0 0 25px red,0 0 50px #ff3232cc,0 0 75px #ff646466;transform:scale(1.4)}to{background:radial-gradient(circle,#f33 0,#f66 50%,#f33 100%);box-shadow:0 0 5px #ff323299,0 0 10px #ff32324d;transform:scale(.9)}}@keyframes ringPulse{0%{opacity:.8;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(2)}}.markers-legend{background:#fffffff2;border-radius:8px;bottom:10px;box-shadow:0 2px 8px #0000001a;left:10px;max-height:80px;overflow-y:auto;padding:10px 12px;position:absolute;right:10px}.legend-title{border-bottom:1px solid #e8e8e8;color:#333;font-size:12px;font-weight:600;margin-bottom:6px;padding-bottom:4px}.legend-items{display:flex;flex-wrap:wrap;gap:6px}.legend-item{align-items:center;background:linear-gradient(135deg,#fff1f0,#ffccc7);border-radius:10px;color:#cf1322;display:inline-flex;font-size:11px;font-weight:500;gap:4px;padding:2px 8px}.legend-item:before{background:#ff4d4f;border-radius:50%;content:"";height:6px;width:6px}@media (max-width:768px){.marker-dot{height:12px;width:12px}.marker-ring{height:24px;width:24px}.marker-label{font-size:10px;padding:3px 8px;top:-24px}.markers-legend{padding:8px 10px}.legend-title{font-size:11px}.legend-item{font-size:10px;padding:2px 6px}}.pulse-diagnosis-container{min-height:calc(100vh - 104px)}.form-card{position:sticky;top:24px}.card-title{align-items:center;display:flex;font-size:16px;font-weight:500;gap:8px}.diagnosis-form{margin-top:16px}.custom-select{width:100%}.result-container{animation:fadeIn .3s ease-in}.result-card{min-height:600px}.result-section{margin-bottom:24px}.section-title{align-items:center;display:flex;gap:8px;margin-bottom:16px!important}.tag-container{display:flex;flex-wrap:wrap;gap:8px}.result-tag{cursor:default;font-size:14px;padding:6px 12px}.disease-tag{cursor:pointer;transition:all .3s}.disease-tag:hover{box-shadow:0 2px 8px #00000026;transform:scale(1.05)}.empty-card{align-items:center;display:flex;justify-content:center;min-height:600px}.empty-content{padding:60px 20px;text-align:center}.empty-icon{color:#d9d9d9;font-size:80px}@media (max-width:992px){.form-card{position:static}}.prd-viewer{background:#fff;margin:0 auto;max-width:900px;min-height:100vh;padding:40px 60px}.prd-section{border:none;border-radius:0;box-shadow:none;margin-bottom:40px;page-break-inside:avoid}.prd-section .ant-card-body{padding:0}.prd-main-title{border-bottom:3px solid #1890ff;color:#1a1a1a;font-size:28px;font-weight:600;margin-bottom:24px;padding-bottom:16px;text-align:center}.prd-section .ant-typography h3{border-bottom:2px solid #e8e8e8;color:#1890ff;font-size:20px;font-weight:600;margin-bottom:16px;margin-top:32px;padding-bottom:8px}.prd-section .ant-typography h4{color:#262626;font-size:16px;font-weight:600;margin-bottom:12px;margin-top:24px}.prd-section .ant-typography h5{color:#595959;font-size:14px;font-weight:600;margin-bottom:10px;margin-top:20px}.prd-section .ant-typography p{color:#262626;font-size:14px;line-height:1.8;margin-bottom:12px}.toc-list{padding-left:0}.toc-item{border-bottom:1px solid #f0f0f0;padding:10px 0}.toc-item:last-child{border-bottom:none}.toc-item a{color:#262626;font-size:14px;text-decoration:none;transition:color .3s}.toc-item a:hover{color:#1890ff}.toc-sub{padding-left:24px}.scope-section{display:flex;gap:24px;margin:16px 0}.scope-excluded,.scope-included{border-radius:4px;flex:1 1;padding:16px}.scope-included{background:#f6ffed;border:1px solid #b7eb8f}.scope-excluded{background:#fff1f0;border:1px solid #ffa39e}.scope-section ul{margin:8px 0 0;padding-left:20px}.scope-section li{color:#595959;font-size:14px;margin:4px 0}.architecture-diagram,.flow-diagram,.module-tree{background:#fafafa;border:1px solid #e8e8e8;border-radius:4px;margin:16px 0;overflow-x:auto;padding:20px}.architecture-diagram pre,.flow-diagram pre,.module-tree pre{color:#262626;font-family:Courier New,Courier,monospace;font-size:12px;line-height:1.6;margin:0;white-space:pre}.feature-overview{margin:16px 0}.feature-card{background:#e6f7ff;border:1px solid #91d5ff;border-radius:4px;margin:12px 0}.feature-card .ant-card-body{padding:16px}.user-story-card{background:#e6f7ff;border:1px solid #91d5ff;border-radius:4px;margin:12px 0}.user-story-card .ant-card-body{padding:16px}.story-content{border-top:1px dashed #91d5ff;margin-top:12px;padding-top:12px}.story-content ol{margin:8px 0 0;padding-left:20px}.story-content li{color:#595959;font-size:14px;margin:4px 0}.persona-card{background:#fff7e6;border:1px solid #ffd591;border-radius:4px;margin-top:12px}.back-top-btn{align-items:center;background:#1890ff;border-radius:50%;box-shadow:0 2px 8px #1890ff4d;color:#fff;display:flex;font-size:18px;height:44px;justify-content:center;transition:all .3s;width:44px}.back-top-btn:hover{background:#40a9ff}.prd-section .ant-table{font-size:13px;margin:16px 0}.prd-section .ant-table-thead>tr>th{background:#fafafa;border-bottom:2px solid #e8e8e8;color:#262626;font-weight:600}.prd-section .ant-table-tbody>tr>td{border-bottom:1px solid #f0f0f0}.prd-section .ant-table-tbody>tr:hover>td{background:#fafafa}.prd-section .ant-tag{margin:0}.detail-card{background:#fafafa;border:1px solid #e8e8e8;border-radius:4px;margin:16px 0}.detail-card .ant-card-body{padding:16px}.detail-card .ant-typography strong{border-bottom:1px dashed #d9d9d9;color:#1890ff;display:block;font-size:14px;margin-bottom:12px;padding-bottom:8px}.prd-section .ant-alert{border-radius:4px;margin:16px 0}.prd-section .ant-collapse{border:1px solid #e8e8e8;border-radius:4px;margin:12px 0}.prd-section .ant-collapse-header{background:#fafafa;font-weight:600}.prd-section .ant-list{margin:12px 0}.prd-section .ant-list-bordered{border:1px solid #e8e8e8;border-radius:4px}.prd-section .ant-descriptions{margin:12px 0}.prd-section .ant-descriptions-bordered .ant-descriptions-item-label{background:#fafafa;font-weight:600}.prd-section .ant-divider{border-color:#e8e8e8;margin:24px 0}.prd-section ol,.prd-section ul{margin:8px 0;padding-left:24px}.prd-section li{color:#262626;line-height:1.8;margin:6px 0}.prd-section code{background:#f5f5f5;border-radius:3px;color:#d73a49;font-family:Courier New,Courier,monospace;font-size:13px;padding:2px 6px}@media print{.prd-viewer{max-width:100%;padding:20px}.prd-section{page-break-inside:avoid}.back-top-btn{display:none}}@media (max-width:768px){.prd-viewer{padding:20px}.scope-section{flex-direction:column;gap:16px}.prd-section .ant-card-body{padding:0}.architecture-diagram pre,.flow-diagram pre,.module-tree pre{font-size:10px}}.call-patient{padding:16px}.call-patient .ant-card,.call-patient .doctor-switch{margin-bottom:16px}.call-patient .status-badge{font-size:12px;font-weight:700}.call-patient .patient-info{align-items:center;display:flex;margin-bottom:8px}.call-patient .patient-avatar{margin-right:12px}.call-patient .patient-details{flex:1 1}.call-patient .patient-name{font-size:16px;font-weight:700;margin-bottom:4px}.call-patient .patient-meta{color:#8c8c8c;font-size:12px}.call-patient .priority-tag{margin-left:8px}.call-patient .action-buttons{display:flex;gap:8px}.call-patient .current-consultation{background-color:#f6ffed;border-radius:4px;margin-bottom:16px;padding:12px}.call-patient .waiting-time{color:#faad14;font-weight:700}.call-patient .call-modal-content{padding:20px 0;text-align:center}.call-patient .call-modal-avatar{margin-bottom:16px}.call-patient .call-modal-info{margin:16px 0;text-align:left}.call-patient .doctor-card{cursor:pointer;transition:all .3s}.call-patient .doctor-card:hover{box-shadow:0 4px 12px #00000026}.call-patient .doctor-card.selected{background-color:#e6f7ff;border-color:#1890ff}.call-patient .stat-card{padding:16px;text-align:center}.call-patient .stat-card .ant-statistic-title{color:#8c8c8c;font-size:14px}.call-patient .stat-card .ant-statistic-content{font-size:24px;font-weight:700}.patient-overview{padding:16px}.patient-overview .ant-card{margin-bottom:16px}.patient-overview .patient-avatar-section{padding:20px 0;text-align:center}.patient-overview .patient-name{font-size:18px;font-weight:700;margin-bottom:4px}.patient-overview .patient-meta{color:#8c8c8c;font-size:14px}.patient-overview .vital-signs-card{background-color:#fafafa;border:1px solid #f0f0f0}.patient-overview .vital-signs-card .ant-card-body{padding:12px}.patient-overview .allergy-alert{margin-top:16px}.patient-overview .timeline-section{padding:16px 0}.patient-overview .timeline-item{margin-bottom:8px}.patient-overview .quick-actions{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.patient-overview .quick-actions button{width:100%}.patient-overview .tab-icon{margin-right:8px}.patient-overview .medical-history-row{cursor:pointer;transition:background-color .3s}.patient-overview .medical-history-row:hover{background-color:#fafafa}.patient-overview .exam-result-item{display:flex;justify-content:space-between;padding:4px 0}.patient-overview .exam-result-label{color:#595959;font-weight:500}.patient-overview .exam-result-value{color:#1890ff;font-weight:700}.patient-overview .abnormal-value{color:#ff4d4f;font-weight:700}.patient-overview .normal-value{color:#52c41a;font-weight:700}.patient-overview .image-view-button{color:#1890ff}.patient-overview .image-view-button:hover{color:#40a9ff}.patient-overview .patient-select-table{max-height:200px;overflow-y:auto}.patient-overview .status-tag{font-weight:700}.patient-overview .warning-card{background-color:#fff7e6;border-color:#ffd591}.patient-overview .info-card{background-color:#e6f7ff;border-color:#91d5ff}.patient-overview .success-card{background-color:#f6ffed;border-color:#b7eb8f}.patient-overview .statistic-card{text-align:center}.patient-overview .statistic-title{color:#8c8c8c;font-size:12px;margin-bottom:4px}.patient-overview .statistic-value{color:#262626;font-size:16px;font-weight:700}.patient-overview .main-complaint-section{background-color:#f0f8ff;border-radius:4px;margin-bottom:16px;padding:16px}.patient-overview .physical-exam-section{background-color:#f6ffed;border-radius:4px;padding:16px}.patient-overview .medication-tag{margin-bottom:4px;margin-right:4px}.patient-overview .action-buttons{display:flex;gap:8px;margin-top:16px}.patient-overview .image-modal-content{text-align:center}.patient-overview .image-info{background-color:#fafafa;border-radius:4px;margin-top:16px;padding:16px;text-align:left}.patient-consultation{background:#f0f2f5;height:calc(100vh - 64px);overflow:hidden;padding:16px 16px 16px 0}.waiting-list-card{border-radius:8px;box-shadow:0 2px 8px #00000014;height:calc(100vh - 96px)}.waiting-list-card .ant-card-head{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px 8px 0 0;color:#fff;min-height:auto;padding:12px 16px}.waiting-list-card .ant-card-head-title{color:#fff;font-size:16px;font-weight:600}.waiting-list-card .ant-card-body{background:#fff;height:calc(100% - 45px);overflow:hidden;padding:12px}.waiting-list-card .ant-spin-container,.waiting-list-card .ant-spin-nested-loading,.waiting-list-card .ant-table,.waiting-list-card .ant-table-wrapper{height:100%}.waiting-list-card .ant-table-container{display:flex;flex-direction:column;height:100%}.waiting-list-card .ant-table-header{overflow:hidden}.waiting-list-card .ant-table-body{flex:1 1;overflow-x:hidden!important;overflow-y:auto!important}.waiting-list-card .ant-table-row{height:auto}.waiting-list-card .ant-table-cell{padding:12px 8px;vertical-align:top}.waiting-list-card .ant-table-cell span[style*="cursor: pointer"]:hover{opacity:.8;text-decoration:underline}.waiting-list-card .ant-table-cell span[style*="cursor: pointer"]:active{opacity:.6}.waiting-list-card .ant-table-body::-webkit-scrollbar{width:6px}.waiting-list-card .ant-table-body::-webkit-scrollbar-thumb{background-color:#d9d9d9;border-radius:3px}.waiting-list-card .ant-table-body::-webkit-scrollbar-track{background-color:#f0f0f0}.active-patient-row{background-color:#e6f7ff}.active-patient-row:hover>td{background-color:#bae7ff!important}.patient-overview-container{display:flex;flex-direction:column;height:calc(100vh - 96px);overflow:hidden}.patient-overview-container>.ant-card{flex-shrink:0}.patient-overview-container>.ant-row{flex:1 1;margin:0;overflow:hidden}.patient-overview-container>.ant-row>.ant-col{height:100%;overflow:hidden}.patient-overview-container>.ant-row>.ant-col>.ant-card{display:flex;flex-direction:column;height:100%}.patient-overview-container>.ant-row>.ant-col>.ant-card>.ant-card-body{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:16px}.patient-overview-container>.ant-row>.ant-col>.ant-card>.ant-card-body::-webkit-scrollbar{width:6px}.patient-overview-container>.ant-row>.ant-col>.ant-card>.ant-card-body::-webkit-scrollbar-thumb{background-color:#d9d9d9;border-radius:3px}.patient-overview-container>.ant-row>.ant-col>.ant-card>.ant-card-body::-webkit-scrollbar-track{background-color:#f0f0f0}.empty-patient-card{align-items:center;border-radius:8px;box-shadow:0 2px 8px #00000014;display:flex;height:calc(100vh - 96px);justify-content:center}.empty-patient-card .ant-card-body{width:100%}.custom-tabs{display:flex;flex-direction:column;height:100%}.custom-tab-header{border-bottom:1px solid #f0f0f0;display:flex;margin-bottom:16px}.custom-tab{align-items:center;border-bottom:2px solid #0000;color:#8c8c8c;cursor:pointer;display:flex;font-size:14px;gap:6px;margin-bottom:-1px;padding:8px 16px;transition:all .3s}.custom-tab:hover{color:#1890ff}.custom-tab.active{border-bottom-color:#1890ff;color:#1890ff;font-weight:500}.custom-tab-content{flex:1 1;overflow-x:hidden;overflow-y:auto}.custom-tab-content::-webkit-scrollbar{width:6px}.custom-tab-content::-webkit-scrollbar-thumb{background-color:#d9d9d9;border-radius:3px}.custom-tab-content::-webkit-scrollbar-track{background-color:#f0f0f0}.patient-consultation .ant-card{border-radius:8px}.patient-consultation .ant-card-head{border-bottom:1px solid #f0f0f0}.patient-consultation .ant-table-thead>tr>th{background:#fafafa;color:#262626;font-weight:600}.patient-consultation .ant-table-tbody>tr:hover>td{background:#f5f5f5}.patient-consultation .ant-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;box-shadow:0 2px 4px #667eea66}.patient-consultation .ant-btn-primary:hover{background:linear-gradient(135deg,#7a8ff0,#8a5fb0);box-shadow:0 4px 8px #667eea80}.patient-consultation .ant-tag{border-radius:4px;font-size:12px;padding:2px 8px}.patient-consultation .ant-descriptions-item-label{color:#595959;font-weight:500}.patient-consultation .ant-form-item-label>label{color:#262626;font-weight:500}.patient-consultation .ant-input-focused,.patient-consultation .ant-input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.patient-consultation .ant-select-focused .ant-select-selector{border-color:#667eea!important;box-shadow:0 0 0 2px #667eea33!important}.ai-doctor-selector{margin-bottom:16px}.ai-doctor-selector .ant-select{width:100%}.ai-analysis-button{overflow:hidden;position:relative;transition:all .3s ease}.ai-analysis-button:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.ai-analysis-button:hover:before{left:100%}.ai-analysis-button:active{transform:scale(.98)}.ai-analysis-button.loading{opacity:.7;pointer-events:none}.ai-analysis-button .anticon{transition:transform .3s ease}.ai-analysis-button:hover .anticon{transform:rotate(1turn)}.ai-result-container{background:#f5f7fa;border:1px solid #e8e8e8;border-radius:8px;margin-top:16px;padding:16px}.ai-result-title{align-items:center;color:#1890ff;display:flex;font-size:16px;font-weight:600;gap:8px;margin-bottom:12px}.ai-result-content{color:#262626;font-size:14px;line-height:1.8}.ai-result-content p{margin-bottom:8px}.ai-result-content ul{margin:8px 0;padding-left:20px}.ai-result-content li{margin:4px 0}.doctor-avatar{border:2px solid #1890ff;border-radius:50%;height:48px;margin-right:12px;width:48px}.doctor-info{align-items:center;background:#f0f5ff;border-radius:8px;display:flex;margin-bottom:16px;padding:12px}.doctor-info-content{flex:1 1}.doctor-name{color:#262626;font-size:16px;font-weight:600;margin-bottom:4px}.doctor-specialty{color:#8c8c8c;font-size:12px}.ai-analyzing{animation:pulse 1.5s ease-in-out infinite}.medical-record-management{padding:16px}.medical-record-management .ant-card{margin-bottom:16px}.medical-record-management .stat-card{padding:12px;text-align:center}.medical-record-management .stat-card .ant-statistic-title{color:#8c8c8c;font-size:14px}.medical-record-management .stat-card .ant-statistic-content{font-size:24px;font-weight:700}.medical-record-management .record-form-section{background-color:#fafafa;border-radius:4px;margin-bottom:16px;padding:16px}.medical-record-management .form-section-title{color:#262626;font-weight:700;margin-bottom:8px}.medical-record-management .diagnosis-tag{margin-bottom:4px;margin-right:4px}.medical-record-management .action-buttons{display:flex;gap:8px;margin-top:16px}.medical-record-management .record-view{max-height:600px;overflow-y:auto}.medical-record-management .record-view .ant-descriptions-item-label{font-weight:700;width:120px}.medical-record-management .record-view .ant-descriptions-item-content{min-height:24px}.medical-record-management .template-list{max-height:400px;overflow-y:auto}.medical-record-management .template-card{cursor:pointer;transition:all .3s}.medical-record-management .template-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.medical-record-management .signature-modal-content{padding:20px 0;text-align:center}.medical-record-management .collapse-section{margin-bottom:16px}.medical-record-management .collapse-section .ant-collapse-header{background-color:#f0f8ff;font-weight:700}.medical-record-management .required-field .ant-form-item-label label:before{color:#ff4d4f;content:"*";margin-right:4px}.medical-record-management .record-table-row{cursor:pointer;transition:background-color .3s}.medical-record-management .record-table-row:hover{background-color:#fafafa}.medical-record-management .record-status-tag{font-weight:700}.medical-record-management .record-status-tag.signed{background-color:#f6ffed;border-color:#b7eb8f;color:#52c41a}.medical-record-management .record-status-tag.draft{background-color:#fff7e6;border-color:#ffd591;color:#faad14}.medical-record-management .patient-select{width:200px}.medical-record-management .toolbar{align-items:center;background-color:#fafafa;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:16px;padding:12px 16px}.medical-record-management .toolbar-title{color:#262626;font-size:16px;font-weight:700}.medical-record-management .toolbar-actions{display:flex;gap:8px}.medical-record-management .form-section-divider{margin:24px 0}.medical-record-management .textarea-counter{color:#8c8c8c;font-size:12px;margin-top:4px;text-align:right}.medical-record-management .diagnosis-select{width:100%}.medical-record-management .template-preview{background-color:#f0f8ff;border-radius:4px;color:#595959;font-size:12px;margin-top:8px;max-height:100px;overflow-y:auto;padding:8px}.medical-record-management .signature-info{background-color:#f6ffed;border-radius:4px;margin-top:16px;padding:16px}.medical-record-management .signature-info p{margin:4px 0}.medical-record-management .print-options{background-color:#f0f8ff;border-radius:4px;margin-top:16px;padding:16px}.medical-record-management .print-options h4{color:#262626;margin-bottom:8px}.medical-record-management .history-timeline{margin-top:16px;padding-left:24px}.medical-record-management .history-timeline-item{border-left:2px solid #1890ff;margin-bottom:12px;padding-left:8px}.medical-record-management .history-timeline-date{color:#1890ff;font-weight:700}.medical-record-management .history-timeline-content{color:#595959;margin-top:4px}.electronic-prescription{padding:16px}.electronic-prescription .ant-card{margin-bottom:16px}.electronic-prescription .stat-card{padding:12px;text-align:center}.electronic-prescription .stat-card .ant-statistic-title{color:#8c8c8c;font-size:14px}.electronic-prescription .stat-card .ant-statistic-content{font-size:20px;font-weight:700}.electronic-prescription .prescription-item-row{background-color:#fafafa;border-radius:4px;margin-bottom:8px;padding:8px}.electronic-prescription .item-controls{align-items:center;display:flex;gap:8px}.electronic-prescription .item-controls .ant-select{flex:1 1}.electronic-prescription .item-controls .ant-input-number{width:100%}.electronic-prescription .total-section{background-color:#f0f8ff;border-radius:4px;margin-top:16px;padding:16px}.electronic-prescription .total-section h4{color:#262626;margin-bottom:8px}.electronic-prescription .review-results{margin-bottom:16px;max-height:300px;overflow-y:auto}.electronic-prescription .review-alert{align-items:center;border-radius:4px;display:flex;margin-bottom:8px;padding:8px 12px}.electronic-prescription .review-alert.error{background-color:#fff2f0;border:1px solid #ffccc7;color:#ff4d4f}.electronic-prescription .review-alert.warning{background-color:#fff7e6;border:1px solid #ffd591;color:#faad14}.electronic-prescription .review-alert.success{background-color:#f6ffed;border:1px solid #b7eb8f;color:#52c41a}.electronic-prescription .prescription-detail{max-height:600px;overflow-y:auto}.electronic-prescription .prescription-detail .ant-table{margin-top:16px}.electronic-prescription .quick-actions{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.electronic-prescription .quick-actions button{width:100%}.electronic-prescription .medicine-search{width:300px}.electronic-prescription .prescription-type-selector{display:flex;gap:16px;margin-bottom:16px}.electronic-prescription .prescription-type-card{cursor:pointer;padding:16px;text-align:center;transition:all .3s}.electronic-prescription .prescription-type-card:hover{box-shadow:0 4px 12px #00000026}.electronic-prescription .prescription-type-card.selected{background-color:#e6f7ff;border-color:#1890ff}.electronic-prescription .medicine-list{border:1px solid #f0f0f0;border-radius:4px;max-height:400px;overflow-y:auto}.electronic-prescription .medicine-item{border-bottom:1px solid #f0f0f0;cursor:pointer;padding:8px 12px;transition:background-color .3s}.electronic-prescription .medicine-item:hover{background-color:#fafafa}.electronic-prescription .medicine-item.selected{background-color:#e6f7ff}.electronic-prescription .medicine-name{color:#262626;font-weight:700}.electronic-prescription .medicine-spec{color:#8c8c8c;font-size:12px}.electronic-prescription .medicine-price{color:#52c41a;font-weight:700}.electronic-prescription .dosage-input{width:100%}.electronic-prescription .frequency-select{width:120px}.electronic-prescription .days-input,.electronic-prescription .quantity-input{width:80px}.electronic-prescription .amount-display{color:#262626;font-weight:700;text-align:right}.electronic-prescription .insurance-info{background-color:#f6ffed;border-radius:4px;margin-bottom:16px;padding:16px}.electronic-prescription .insurance-info h4{color:#262626;margin-bottom:8px}.electronic-prescription .action-buttons{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.electronic-prescription .history-prescription{border:1px solid #f0f0f0;border-radius:4px;cursor:pointer;margin-bottom:8px;padding:8px;transition:all .3s}.electronic-prescription .history-prescription:hover{box-shadow:0 2px 8px #00000026}.electronic-prescription .history-prescription-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.electronic-prescription .history-prescription-id{color:#1890ff;font-weight:700}.electronic-prescription .history-prescription-date{color:#8c8c8c;font-size:12px}.electronic-prescription .history-prescription-items{color:#595959;font-size:12px}.electronic-prescription .template-list{max-height:300px;overflow-y:auto}.electronic-prescription .template-card{border:1px solid #f0f0f0;border-radius:4px;cursor:pointer;margin-bottom:8px;padding:12px;transition:all .3s}.electronic-prescription .template-card:hover{background-color:#fafafa}.electronic-prescription .template-name{color:#262626;font-weight:700}.electronic-prescription .template-desc{color:#8c8c8c;font-size:12px;margin-top:4px}.electronic-prescription .print-preview{background-color:#fff;border:1px solid #d9d9d9;border-radius:4px;margin-top:16px;padding:24px}.electronic-prescription .print-header{border-bottom:2px solid #262626;margin-bottom:24px;padding-bottom:16px;text-align:center}.electronic-prescription .print-header h2{font-size:24px;font-weight:700;margin:0}.electronic-prescription .print-header h3{color:#595959;font-size:18px;margin:8px 0 0}.electronic-prescription .print-patient-info{margin-bottom:24px}.electronic-prescription .print-table{border-collapse:collapse;margin-bottom:24px;width:100%}.electronic-prescription .print-table td,.electronic-prescription .print-table th{border:1px solid #d9d9d9;padding:8px;text-align:left}.electronic-prescription .print-table th{background-color:#fafafa;font-weight:700}.electronic-prescription .print-footer{border-top:1px solid #d9d9d9;display:flex;justify-content:space-between;margin-top:24px;padding-top:16px}.electronic-prescription .print-signature{text-align:center}.electronic-prescription .print-signature-line{border-top:1px solid #262626;margin:40px auto 8px;width:200px}.electronic-prescription .print-signature-text{color:#595959;font-size:14px}.medical-request{padding:16px}.medical-request .ant-card{margin-bottom:16px}.medical-request .stat-card{padding:12px;text-align:center}.medical-request .stat-card .ant-statistic-title{color:#8c8c8c;font-size:14px}.medical-request .stat-card .ant-statistic-content{font-size:20px;font-weight:700}.medical-request .item-grid{grid-gap:8px;border:1px solid #f0f0f0;border-radius:4px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));max-height:300px;overflow-y:auto;padding:8px}.medical-request .item-card{cursor:pointer;transition:all .3s}.medical-request .item-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.medical-request .item-card.selected{background-color:#e6f7ff;border-color:#1890ff}.medical-request .item-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:4px}.medical-request .item-name{color:#262626;font-size:14px;font-weight:700}.medical-request .item-category{color:#8c8c8c;font-size:12px;margin-top:2px}.medical-request .item-price{color:#52c41a;font-size:14px;font-weight:700}.medical-request .item-department{color:#595959;font-size:12px}.medical-request .selected-items-table{margin-top:16px}.medical-request .selected-items-table .ant-table{background-color:#fafafa}.medical-request .request-detail{max-height:600px;overflow-y:auto}.medical-request .request-detail .ant-descriptions-item-label{font-weight:700;width:120px}.medical-request .request-detail .ant-descriptions-item-content{min-height:24px}.medical-request .request-detail .ant-table{margin-top:8px}.medical-request .urgent-tag{margin-left:8px}.medical-request .type-selector{display:flex;gap:16px;margin-bottom:16px}.medical-request .type-card{cursor:pointer;flex:1 1;padding:16px;text-align:center;transition:all .3s}.medical-request .type-card:hover{box-shadow:0 4px 12px #00000026}.medical-request .type-card.selected{background-color:#e6f7ff;border-color:#1890ff}.medical-request .type-card-icon{font-size:24px;margin-bottom:8px}.medical-request .type-card-title{color:#262626;font-weight:700}.medical-request .type-card-desc{color:#8c8c8c;font-size:12px;margin-top:4px}.medical-request .search-box{margin-bottom:16px}.medical-request .form-section{background-color:#fafafa;border-radius:4px;margin-bottom:16px;padding:16px}.medical-request .form-section-title{color:#262626;font-weight:700;margin-bottom:8px}.medical-request .action-buttons{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.medical-request .status-badge{border-radius:4px;font-size:12px;font-weight:700;padding:4px 8px}.medical-request .status-badge.pending{background-color:#fff7e6;border:1px solid #ffd591;color:#faad14}.medical-request .status-badge.in_progress{background-color:#e6f7ff;border:1px solid #91d5ff;color:#1890ff}.medical-request .status-badge.completed{background-color:#f6ffed;border:1px solid #b7eb8f;color:#52c41a}.medical-request .status-badge.cancelled{background-color:#fff2f0;border:1px solid #ffccc7;color:#ff4d4f}.medical-request .total-section{background-color:#f0f8ff;border-radius:4px;margin-top:16px;padding:16px}.medical-request .total-section-title{color:#262626;font-weight:700;margin-bottom:8px}.medical-request .total-amount{color:#52c41a;font-size:24px;font-weight:700;text-align:center}.medical-request .category-filter{margin-bottom:16px}.medical-request .category-tag{cursor:pointer;transition:all .3s}.medical-request .category-tag:hover{opacity:.8}.medical-request .category-tag.selected{background-color:#1890ff;color:#fff}.medical-request .specimen-section{background-color:#f6ffed;border-radius:4px;margin-bottom:16px;padding:12px}.medical-request .treatment-section{background-color:#fff7e6;border-radius:4px;margin-bottom:16px;padding:12px}.medical-request .preparation-alert{margin-top:8px}.medical-request .quantity-input{width:80px}.medical-request .price-display{color:#262626;font-weight:700;text-align:right}.medical-request .department-badge{background-color:#f0f0f0;border-radius:10px;color:#595959;font-size:11px;padding:2px 6px}.medical-request .item-notes{margin-top:8px}.medical-request .item-notes .ant-input{font-size:12px}.medical-request .history-request{border:1px solid #f0f0f0;border-radius:4px;cursor:pointer;margin-bottom:8px;padding:12px;transition:all .3s}.medical-request .history-request:hover{box-shadow:0 2px 8px #00000026}.medical-request .history-request-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.medical-request .history-request-id{color:#1890ff;font-weight:700}.medical-request .history-request-date{color:#8c8c8c;font-size:12px}.medical-request .history-request-items{color:#595959;font-size:12px}.medical-request .print-preview{background-color:#fff;border:1px solid #d9d9d9;border-radius:4px;margin-top:16px;padding:24px}.medical-request .print-header{border-bottom:2px solid #262626;margin-bottom:24px;padding-bottom:16px;text-align:center}.medical-request .print-header h2{font-size:24px;font-weight:700;margin:0}.medical-request .print-header h3{color:#595959;font-size:18px;margin:8px 0 0}.medical-request .print-patient-info{margin-bottom:24px}.medical-request .print-table{border-collapse:collapse;margin-bottom:24px;width:100%}.medical-request .print-table td,.medical-request .print-table th{border:1px solid #d9d9d9;padding:8px;text-align:left}.medical-request .print-table th{background-color:#fafafa;font-weight:700}.medical-request .print-footer{border-top:1px solid #d9d9d9;display:flex;justify-content:space-between;margin-top:24px;padding-top:16px}.medical-request .print-signature{text-align:center}.medical-request .print-signature-line{border-top:1px solid #262626;margin:40px auto 8px;width:200px}.medical-request .print-signature-text{color:#595959;font-size:14px}.medical-request .toolbar{align-items:center;background-color:#fafafa;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:16px;padding:12px 16px}.medical-request .toolbar-title{color:#262626;font-size:16px;font-weight:700}.medical-request .toolbar-actions{display:flex;gap:8px}.ai-voice-input{padding:16px}.ai-voice-input .ant-card{margin-bottom:16px}.ai-voice-input .recording-controls{align-items:center;background-color:#fafafa;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:16px;padding:16px}.ai-voice-input .recording-status{align-items:center;display:flex;gap:12px}.ai-voice-input .status-indicator{align-items:center;animation:pulse 2s infinite;border-radius:50%;color:#fff;display:flex;font-size:24px;height:60px;justify-content:center;width:60px}.ai-voice-input .recording-status.listening .status-indicator{background-color:#1890ff}.ai-voice-input .recording-status.processing .status-indicator{background-color:#faad14}.ai-voice-input .recording-status.completed .status-indicator{background-color:#52c41a}.ai-voice-input .status-info h3{font-size:18px;font-weight:700;margin:0}.ai-voice-input .status-info p{color:#8c8c8c;margin:4px 0 0}.ai-voice-input .audio-level{align-items:center;display:flex;flex-direction:column;gap:8px}.ai-voice-input .audio-level-bar{background-color:#e8e8e8;border-radius:4px;height:8px;overflow:hidden;width:200px}.ai-voice-input .audio-level-fill{background:linear-gradient(90deg,#52c41a,#1890ff);height:100%;transition:width .2s}.ai-voice-input .audio-level-text{color:#595959;font-size:12px}.ai-voice-input .confidence-display{align-items:center;display:flex;flex-direction:column;gap:8px}.ai-voice-input .confidence-label{color:#595959;font-size:14px}.ai-voice-input .control-buttons{align-items:center;background-color:#f0f8ff;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:16px;padding:16px}.ai-voice-input .field-selection{background-color:#fff7e6;border-radius:8px;margin-bottom:16px;padding:16px}.ai-voice-input .field-selection h4{color:#262626;margin:0 0 12px}.ai-voice-input .transcript-editor{background-color:#f6ffed;border-radius:8px;padding:16px}.ai-voice-input .transcript-editor h4{color:#262626;margin:0 0 12px}.ai-voice-input .transcript-textarea{border:1px solid #d9d9d9;border-radius:4px;font-size:14px;line-height:1.6;resize:vertical}.ai-voice-input .transcript-textarea:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33}.ai-voice-input .editor-actions{align-items:center;display:flex;justify-content:space-between}.ai-voice-input .template-list{max-height:400px;overflow-y:auto}.ai-voice-input .template-item{border:1px solid #f0f0f0;border-radius:4px;cursor:pointer;margin-bottom:8px;padding:12px;transition:all .3s}.ai-voice-input .template-item:hover{border-color:#1890ff;box-shadow:0 2px 8px #00000026}.ai-voice-input .template-item.selected{background-color:#e6f7ff;border-color:#1890ff}.ai-voice-input .template-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.ai-voice-input .template-name{color:#262626;font-size:14px;font-weight:700}.ai-voice-input .template-favorite{color:#faad14}.ai-voice-input .template-meta{color:#8c8c8c;display:flex;font-size:12px;gap:8px}.ai-voice-input .template-meta-item{align-items:center;display:flex;gap:4px}.ai-voice-input .template-content-preview{color:#595959;font-size:12px;margin-top:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-voice-input .history-item{border-bottom:1px solid #f0f0f0;cursor:pointer;padding:8px;transition:all .3s}.ai-voice-input .history-item:hover{background-color:#fafafa}.ai-voice-input .history-item-time{color:#8c8c8c;font-size:12px;margin-bottom:4px}.ai-voice-input .history-item-text{color:#262626;font-size:13px;margin-bottom:4px}.ai-voice-input .history-item-confidence{align-items:center;color:#52c41a;display:inline-flex;font-size:12px;gap:4px}.ai-voice-input .history-item-field{align-items:center;color:#1890ff;display:inline-flex;font-size:12px;gap:4px;margin-left:8px}.ai-voice-input .stat-card{background-color:#fafafa;border:1px solid #f0f0f0;border-radius:8px;padding:16px;text-align:center}.ai-voice-input .stat-card-title{color:#8c8c8c;font-size:14px;margin-bottom:8px}.ai-voice-input .stat-card-value{color:#1890ff;font-size:24px;font-weight:700}.ai-voice-input .modal-template-form{max-height:500px;overflow-y:auto}.ai-voice-input .template-form-section{background-color:#fafafa;border-radius:4px;margin-bottom:16px;padding:12px}.ai-voice-input .template-form-section-title{color:#262626;font-weight:700;margin-bottom:8px}.ai-voice-input .quick-insert-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.ai-voice-input .quick-insert-button{font-size:12px;height:auto;padding:2px 8px}.ai-voice-input .recording-time-display{background-color:#f0f8ff;border-radius:4px;margin-bottom:16px;padding:8px;text-align:center}.ai-voice-input .recording-time{color:#1890ff;font-family:monospace;font-size:24px;font-weight:700}.ai-voice-input .recording-time-label{color:#8c8c8c;font-size:14px;margin-top:4px}.ai-voice-input .model-selector{display:flex;gap:16px;margin-bottom:16px}.ai-voice-input .model-card{border:1px solid #f0f0f0;border-radius:8px;cursor:pointer;flex:1 1;padding:16px;text-align:center;transition:all .3s}.ai-voice-input .model-card:hover{box-shadow:0 4px 12px #00000026}.ai-voice-input .model-card.selected{background-color:#e6f7ff;border-color:#1890ff}.ai-voice-input .model-card-icon{color:#1890ff;font-size:24px;margin-bottom:8px}.ai-voice-input .model-card-title{color:#262626;font-weight:700;margin-bottom:4px}.ai-voice-input .model-card-desc{color:#8c8c8c;font-size:12px}.ai-voice-input .template-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.ai-voice-input .template-usage-badge{background-color:#e6f7ff;border-radius:12px;color:#1890ff;font-size:12px;padding:2px 8px}.ai-voice-input .template-category-badge{background-color:#f6ffed;border-radius:12px;color:#52c41a;font-size:12px;padding:2px 8px}.ai-voice-input .list-item-actions{opacity:0;transition:opacity .3s}.ai-voice-input .ant-list-item:hover .list-item-actions{opacity:1}.ai-voice-input .audio-visualizer{align-items:center;background-color:#f0f0f0;border-radius:4px;display:flex;height:60px;justify-content:center;margin-bottom:16px;overflow:hidden;width:100%}.ai-voice-input .visualizer-bar{animation:wave 1s ease-in-out infinite;animation-delay:calc(var(--i)*.1s);background-color:#1890ff;border-radius:2px;height:20px;margin:0 1px;width:4px}@keyframes wave{0%,to{transform:scaleY(.5)}50%{transform:scaleY(2)}}.ai-voice-input .language-selector{align-items:center;display:flex;gap:8px;margin-bottom:16px}.ai-voice-input .language-flag{font-size:20px}.drug-review{padding:16px}.drug-review .ant-card{margin-bottom:16px}.drug-review .insurance-summary{background-color:#f0f8ff;border-radius:8px;margin-bottom:16px;padding:16px}.drug-review .insurance-item{align-items:center;border-bottom:1px solid #e8e8e8;display:flex;justify-content:space-between;padding:12px 0}.drug-review .insurance-item:last-child{border-bottom:none}.drug-review .insurance-label{color:#262626;font-size:16px}.drug-review .insurance-value{font-size:18px;font-weight:700}.drug-review .coverage-breakdown{margin-top:16px}.drug-review .coverage-breakdown h4{color:#262626;margin:0 0 12px}.drug-review .review-settings{background-color:#fafafa;border-radius:8px;margin-bottom:16px;padding:16px}.drug-review .review-settings-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.drug-review .review-settings-row:last-child{margin-bottom:0}.drug-review .review-settings-label{color:#262626;font-size:14px}.drug-review .review-result-card{border-left:4px solid #8c8c8c;margin-bottom:8px;transition:all .3s}.drug-review .review-result-card:hover{box-shadow:0 4px 12px #00000026}.drug-review .review-result-card.high{background-color:#fff2f0;border-left-color:#ff4d4f}.drug-review .review-result-card.medium{background-color:#fffbe6;border-left-color:#faad14}.drug-review .review-result-card.low{background-color:#f6ffed;border-left-color:#52c41a}.drug-review .review-result-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.drug-review .review-result-type{align-items:center;display:flex;gap:8px}.drug-review .review-result-type-icon{font-size:16px}.drug-review .review-result-type-text{color:#262626;font-size:14px;font-weight:700}.drug-review .review-result-severity{border-radius:12px;font-size:12px;padding:2px 8px}.drug-review .review-result-title{color:#262626;font-size:14px;font-weight:700;margin-bottom:4px}.drug-review .review-result-description{color:#595959;font-size:13px;margin-bottom:4px}.drug-review .review-result-details{color:#8c8c8c;font-size:12px;margin-bottom:8px}.drug-review .review-result-recommendation{background-color:#fff;border:1px solid #f0f0f0;border-radius:4px;color:#262626;font-size:13px;padding:8px}.drug-review .review-result-references{color:#8c8c8c;font-size:11px;margin-top:8px;text-align:right}.drug-review .review-detail{max-height:500px;overflow-y:auto}.drug-review .knowledge-base{background-color:#fafafa;border-radius:8px;margin-bottom:16px;padding:16px}.drug-review .knowledge-base h4{color:#262626;margin:0 0 12px}.drug-review .knowledge-base-item{border-bottom:1px solid #e8e8e8;cursor:pointer;padding:8px;transition:all .3s}.drug-review .knowledge-base-item:hover{background-color:#f0f8ff}.drug-review .knowledge-base-item:last-child{border-bottom:none}.drug-review .knowledge-base-title{color:#262626;font-size:14px;font-weight:700;margin-bottom:4px}.drug-review .knowledge-base-desc{color:#8c8c8c;font-size:12px}.drug-review .history-item{border:1px solid #f0f0f0;border-radius:4px;cursor:pointer;margin-bottom:8px;padding:12px;transition:all .3s}.drug-review .history-item:hover{box-shadow:0 2px 8px #00000026}.drug-review .history-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.drug-review .history-item-time{color:#8c8c8c;font-size:12px}.drug-review .history-item-patient{color:#262626;font-weight:700}.drug-review .history-item-status{border-radius:12px;font-size:12px;padding:2px 8px}.drug-review .history-item-status.passed{background-color:#f6ffed;border:1px solid #b7eb8f;color:#52c41a}.drug-review .history-item-status.warning{background-color:#fffbe6;border:1px solid #ffe58f;color:#faad14}.drug-review .history-item-status.failed{background-color:#fff2f0;border:1px solid #ffccc7;color:#ff4d4f}.drug-review .history-item-stats{display:flex;gap:8px}.drug-review .history-item-stat{border-radius:10px;font-size:11px;padding:2px 6px}.drug-review .history-item-stat.high{background-color:#fff2f0;border:1px solid #ffccc7;color:#ff4d4f}.drug-review .history-item-stat.medium{background-color:#fffbe6;border:1px solid #ffe58f;color:#faad14}.drug-review .history-item-stat.low{background-color:#f6ffed;border:1px solid #b7eb8f;color:#52c41a}.drug-review .prescription-preview{background-color:#fafafa;border-radius:8px;margin-bottom:16px;padding:16px}.drug-review .prescription-preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.drug-review .prescription-preview-title{color:#262626;font-size:16px;font-weight:700}.drug-review .prescription-preview-date{color:#8c8c8c;font-size:14px}.drug-review .prescription-preview-patient{margin-bottom:16px}.drug-review .prescription-preview-patient-info{color:#595959;display:flex;font-size:14px;gap:16px}.drug-review .prescription-preview-items{margin-bottom:16px}.drug-review .prescription-preview-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:8px}.drug-review .prescription-preview-item:last-child{border-bottom:none}.drug-review .prescription-preview-item-name{color:#262626;font-weight:700}.drug-review .prescription-preview-item-details{color:#8c8c8c;font-size:12px}.drug-review .prescription-preview-item-amount{color:#262626;font-weight:700}.drug-review .prescription-preview-total{border-top:2px solid #262626;padding-top:8px;text-align:right}.drug-review .prescription-preview-total-label{color:#595959;font-size:14px}.drug-review .prescription-preview-total-value{color:#262626;font-size:18px;font-weight:700}.drug-review .action-buttons{display:flex;gap:16px;justify-content:center;margin-top:24px}.drug-review .review-progress{padding:24px;text-align:center}.drug-review .review-progress-title{color:#262626;font-size:16px;margin-bottom:16px}.drug-review .review-progress-steps{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.drug-review .review-progress-step{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:4px}.drug-review .review-progress-step-icon{align-items:center;border-radius:50%;display:flex;font-size:14px;height:32px;justify-content:center;width:32px}.drug-review .review-progress-step-icon.completed{background-color:#52c41a;color:#fff}.drug-review .review-progress-step-icon.current{background-color:#1890ff;color:#fff}.drug-review .review-progress-step-icon.pending{background-color:#f0f0f0;color:#8c8c8c}.drug-review .review-progress-step-text{color:#595959;font-size:12px;text-align:center}.drug-review .review-progress-bar{background-color:#f0f0f0;border-radius:2px;height:4px;margin:16px 0;overflow:hidden}.drug-review .review-progress-fill{background-color:#1890ff;height:100%;transition:width .3s}.drug-review .database-info{align-items:center;background-color:#f0f8ff;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:16px;padding:12px}.drug-review .database-info-icon{color:#1890ff;font-size:24px}.drug-review .database-info-content{flex:1 1;margin-left:12px}.drug-review .database-info-title{color:#262626;font-size:14px;font-weight:700}.drug-review .database-info-desc{color:#8c8c8c;font-size:12px;margin-top:4px}.drug-review .database-info-version{color:#8c8c8c;font-size:12px}.drug-review .severity-legend{display:flex;gap:16px;margin-bottom:16px}.drug-review .severity-legend-item{align-items:center;display:flex;font-size:12px;gap:4px}.drug-review .severity-legend-color{border-radius:50%;height:12px;width:12px}.drug-review .severity-legend-color.high{background-color:#ff4d4f}.drug-review .severity-legend-color.medium{background-color:#faad14}.drug-review .severity-legend-color.low{background-color:#52c41a}.drug-review .report-section{margin-bottom:24px}.drug-review .report-section-title{border-bottom:1px solid #f0f0f0;color:#262626;font-size:16px;font-weight:700;margin-bottom:12px;padding-bottom:8px}.drug-review .report-table{border-collapse:collapse;margin-bottom:16px;width:100%}.drug-review .report-table td,.drug-review .report-table th{border:1px solid #d9d9d9;padding:8px;text-align:left}.drug-review .report-table th{background-color:#fafafa;font-weight:700}.drug-review .insurance-calculator{background-color:#f6ffed;border-radius:8px;margin-bottom:16px;padding:16px}.drug-review .insurance-calculator-title{color:#262626;font-size:14px;font-weight:700;margin-bottom:12px}.drug-review .insurance-calculator-input{display:flex;gap:8px;margin-bottom:12px}.drug-review .insurance-calculator-result{background-color:#fff;border:1px solid #f0f0f0;border-radius:4px;padding:12px;text-align:center}.drug-review .insurance-calculator-result-label{color:#8c8c8c;font-size:12px;margin-bottom:4px}.drug-review .insurance-calculator-result-value{color:#52c41a;font-size:18px;font-weight:700}.main-layout{display:flex;flex-direction:column;min-height:100vh}.top-header{background:linear-gradient(135deg,#1890ff,#096dd9);box-shadow:0 2px 8px #00000026;height:56px;justify-content:space-between;left:0;padding:0 24px;position:fixed;right:0;top:0;z-index:1000}.top-header,.top-header-left{align-items:center;display:flex}.top-header-left{flex-shrink:0;width:220px}.system-logo{align-items:center;display:flex}.logo-icon{color:#fff;font-size:28px;margin-right:10px}.logo-image{height:28px;margin-right:10px;object-fit:contain;width:28px}.logo-text{color:#fff!important;font-size:18px!important;font-weight:600!important;margin:0!important;white-space:nowrap}.top-menu{background:#0000;border-bottom:none;flex:1 1;line-height:54px;min-width:0}.top-menu .ant-menu-item{border-bottom:2px solid #0000;color:#ffffffd9;margin:0 4px;padding:0 12px}.top-menu .ant-menu-item:hover{border-bottom-color:#ffffff80;color:#fff}.top-menu .ant-menu-item-selected{background:#ffffff1a;border-bottom-color:#fff;color:#fff}.top-header-right{flex-shrink:0;justify-content:flex-end;width:120px}.top-header-right,.user-info{align-items:center;display:flex}.user-info{border-radius:4px;cursor:pointer;gap:8px;padding:4px 12px;transition:background .3s}.user-info:hover{background:#ffffff1a}.user-name{color:#fff;font-weight:500}.layout-body{display:flex;flex:1 1;margin-top:56px;min-height:calc(100vh - 56px)}.side-sider{background:#fff;border-right:1px solid #e8e8e8;bottom:0;box-shadow:2px 0 8px #0000000f;flex:0 0 220px!important;left:0;max-width:220px!important;min-width:220px!important;overflow-y:auto;padding-bottom:80px;position:fixed;top:56px;width:220px!important;z-index:100}.side-menu-header{background:linear-gradient(135deg,#f6f8fa,#fff);border-bottom:1px solid #e8e8e8;padding:16px 24px}.side-menu-header h5{color:#262626;font-size:15px;font-weight:600;margin:0}.side-menu{border-right:none;padding:8px 0}.side-menu .ant-menu-item{border-radius:6px;height:40px;line-height:40px;margin:4px 8px}.side-menu .ant-menu-submenu-title{border-radius:6px;font-weight:500;height:44px;line-height:44px;margin:4px 8px}.side-menu .ant-menu-item-selected{background:#e6f7ff;color:#1890ff}.side-menu .ant-menu-sub{background:#fafafa}.pulse-float-btn{align-items:center;background:linear-gradient(135deg,#1890ff,#096dd9);border-radius:18px;bottom:24px;box-shadow:0 4px 12px #1890ff66;color:#fff;cursor:pointer;display:flex;font-size:13px;height:36px;justify-content:center;left:50%;min-width:80px;padding:0 16px;position:absolute;transform:translateX(-50%);transition:all .3s ease;z-index:10}.pulse-float-btn .float-btn-text{font-weight:500;white-space:nowrap}.pulse-float-btn:hover{box-shadow:0 6px 20px #1890ff80;transform:translateX(-50%) scale(1.05)}.pulse-float-btn:active{transform:translateX(-50%) scale(.95)}.main-content{background:#f0f2f5;flex:1 1;margin-left:220px;min-height:calc(100vh - 56px);overflow-x:hidden;overflow-y:auto;padding:24px}.main-content>.ant-card{border-radius:8px;box-shadow:0 1px 4px #00000014}.welcome-page{align-items:center;background:#fff;border-radius:8px;color:#8c8c8c;display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 104px);padding:100px 20px;text-align:center}.welcome-page h2{color:#262626;margin-bottom:16px}@media (max-width:1200px){.top-menu .ant-menu-item{margin:0 2px;padding:0 8px}}@media (max-width:992px){.side-sider{left:-220px;position:fixed;transition:left .3s;z-index:1000}.side-sider.mobile-open{left:0}.main-content{margin-left:0;padding:16px}.top-menu{display:none}.top-header-left{width:auto}.system-logo{margin-right:0}}@media (max-width:768px){.top-header{padding:0 12px}.logo-text{font-size:16px!important}.main-content{padding:12px}}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{height:100%;width:100%}body{background:#f0f2f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.app{height:100%;width:100%}.prd-page{animation:fadeIn .5s ease}.side-menu .ant-menu-sub{background:#00000005;border-radius:8px;margin:4px 0}.side-menu .ant-menu-sub .ant-menu-item{height:40px;line-height:40px;margin:2px 8px}.side-menu .ant-menu-sub .ant-menu-item-selected{background:#e6f7ff!important;color:#1890ff!important}.diagnosis-page{animation:fadeIn .3s ease-out}.form-card{border-radius:12px;box-shadow:0 2px 8px #00000014}.form-card .card-title{align-items:center;color:#1a1a1a;display:flex;font-weight:600;gap:8px}.form-card .card-title .anticon{color:#1890ff;font-size:18px}.diagnosis-form .ant-form-item-label>label{color:#333;font-weight:500}.custom-select .ant-select-selector{border:1px solid #d9d9d9!important;border-radius:8px!important;transition:all .3s}.custom-select:hover .ant-select-selector{border-color:#1890ff!important}.custom-select.ant-select-focused .ant-select-selector{border-color:#1890ff!important;box-shadow:0 0 0 2px #1890ff33!important}.submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea66;font-size:16px;font-weight:500;height:44px;transition:all .3s}.submit-btn:hover{box-shadow:0 6px 16px #667eea80;transform:translateY(-2px)}.reset-btn{border:1px solid #d9d9d9;border-radius:8px;font-size:16px;height:44px;transition:all .3s}.reset-btn:hover{border-color:#1890ff;color:#1890ff}.result-card{border-radius:12px;box-shadow:0 2px 8px #00000014;min-height:calc(100vh - 160px)}.result-card .card-title{align-items:center;color:#1a1a1a;display:flex;font-weight:600;gap:8px}.result-card .card-title .anticon{color:#1890ff;font-size:18px}.result-content{padding:8px}.params-row{margin-bottom:16px}.param-card{background:linear-gradient(135deg,#f5f7fa,#e4e8eb);border:none;border-radius:10px;text-align:center;transition:all .3s}.param-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.param-card .ant-statistic-title{color:#666;font-size:13px}.param-card .ant-statistic-content{color:#2c3e50;font-weight:700}.result-content-row{margin-top:16px}.result-section{animation:fadeIn .5s ease-out;border:none;border-radius:12px;height:100%;margin-bottom:0;transition:all .3s}.result-section:hover{transform:translateX(4px)}.parts-card{background:linear-gradient(135deg,#e3f2fd,#bbdefb)}.diseases-card{background:linear-gradient(135deg,#ffebee,#ffcdd2)}.section-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.section-icon{font-size:24px}.parts-icon{color:#1976d2}.diseases-icon{color:#d32f2f}.model-icon{color:#00b4d8}.treatment-icon{color:#52c41a}.section-title{color:#1a1a1a;font-weight:600;margin:0!important}.model-card-light{background:linear-gradient(135deg,#fff,#f5f7fa);border:1px solid #e8e8e8}.model-card-light .section-title{color:#333}.model-container-light{border-radius:8px;display:flex;flex:1 1;flex-direction:column;height:500px;min-height:400px;overflow:hidden}.treatment-card-full{background:linear-gradient(135deg,#f6ffed,#d9f7be);border:1px solid #b7eb8f}.treatment-list{max-height:400px;overflow-y:auto;padding-right:8px}.treatment-list::-webkit-scrollbar{width:6px}.treatment-list::-webkit-scrollbar-track{background:#0000000d;border-radius:3px}.treatment-list::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.treatment-item{background:#ffffffb3;border:1px solid #52c41a33;border-radius:10px;margin-bottom:12px;padding:16px;transition:all .3s}.treatment-item:hover{background:#ffffffe6;box-shadow:0 4px 12px #52c41a26}.treatment-item:last-child{margin-bottom:0}.treatment-content{animation:fadeIn .3s ease-out}.disease-name-header{align-items:center;background:linear-gradient(135deg,#fff1f0,#ffccc7);border-radius:8px;display:flex;gap:8px;margin-bottom:12px;padding:10px 14px}.disease-alert-icon{color:#ff4d4f;font-size:16px}.disease-name-text{color:#cf1322;font-size:15px}.treatment-descriptions .ant-descriptions-item-label{color:#333;font-weight:600}.treatment-descriptions .ant-descriptions-row>td{padding-bottom:8px}.symptom-text{color:#595959}.symptom-text,.treatment-text{font-size:13px;line-height:1.7;margin:0}.treatment-text{color:#389e0d;font-weight:500}.treatment-placeholder{align-items:center;display:flex;flex-direction:column;height:300px;justify-content:center;text-align:center}.placeholder-icon{color:#bfbfbf;font-size:64px;margin-bottom:16px;opacity:.5}.tags-container{max-height:120px;overflow-y:auto;padding-right:8px}.tags-container.disease-tags{max-height:150px}.tags-container::-webkit-scrollbar{width:6px}.tags-container::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.tags-container::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}.tags-container::-webkit-scrollbar-thumb:hover{background:#0000004d}.result-tag{border-radius:16px;font-size:13px;margin:4px;padding:4px 12px;transition:all .3s}.result-tag.clickable{cursor:pointer}.result-tag.clickable:hover{box-shadow:0 2px 8px #00000026;transform:scale(1.05)}.disease-tag{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:80px 24px;text-align:center}.empty-icon{color:#bdc3c7;font-size:96px;margin-bottom:24px;opacity:.5}.empty-title{color:#7f8c8d;margin-bottom:12px}.empty-description{color:#95a5a6;line-height:1.8;margin-bottom:24px}.empty-tips{flex-wrap:wrap;gap:8px}.coming-soon-card,.empty-tips{display:flex;justify-content:center}.coming-soon-card{align-items:center;border-radius:12px;min-height:calc(100vh - 160px)}.coming-soon{color:#999;text-align:center}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:992px){.result-content-row .ant-col{width:100%}}@media (max-width:768px){.params-row .ant-col{width:50%}.model-container-light{height:350px;min-height:300px}}
/*# sourceMappingURL=main.ab0b62bb.css.map*/