@charset "UTF-8";.main-layout{min-height:100vh}.main-layout.ant-layout{background:var(--color-bg-page)}.sidebar{background:linear-gradient(180deg,#fff,#f8fafc)!important;box-shadow:2px 0 12px #0000000a;border-right:none;position:sticky!important;top:0;height:100vh;overflow:hidden}.sidebar:before{content:"";position:absolute;top:0;right:0;width:1px;height:100%;background:linear-gradient(180deg,transparent,rgba(24,144,255,.1),transparent)}.sidebar .sidebar-logo{height:var(--layout-header-height);display:flex;align-items:center;justify-content:center;padding:0 20px;border-bottom:1px solid rgba(0,0,0,.04);background:linear-gradient(135deg,#1890ff0a,#fff0);position:relative}.sidebar .sidebar-logo .logo-content{display:flex;align-items:center;gap:12px}.sidebar .sidebar-logo .logo-content .logo-text{font-size:18px;font-weight:700;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-health) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.sidebar .sidebar-menu{border-right:none!important;background:transparent!important;padding:16px 0}.sidebar .sidebar-menu .ant-menu-item{margin:4px 16px!important;border-radius:0!important;color:var(--color-text-secondary);height:56px;line-height:56px;font-weight:500;font-size:16px;padding:0 20px!important;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:visible;background:transparent!important;display:flex!important;align-items:center!important}.sidebar .sidebar-menu .ant-menu-item .ant-menu-item-icon,.sidebar .sidebar-menu .ant-menu-item span[class*=ant-menu-item-icon],.sidebar .sidebar-menu .ant-menu-item svg{margin-right:16px!important;font-size:20px!important;transition:transform .2s ease;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.sidebar .sidebar-menu .ant-menu-item:before{content:"";position:absolute;left:-7px;top:50%;transform:translateY(-50%);width:4px;height:0;background:linear-gradient(180deg,var(--color-primary),var(--color-health));border-radius:0 4px 4px 0;transition:height .25s ease}.sidebar .sidebar-menu .ant-menu-item:after{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,rgba(24,144,255,.04) 0%,transparent 100%);transition:width .25s ease}.sidebar .sidebar-menu .ant-menu-item:hover{color:var(--color-primary)!important}.sidebar .sidebar-menu .ant-menu-item:hover .ant-menu-item-icon,.sidebar .sidebar-menu .ant-menu-item:hover span[class*=ant-menu-item-icon],.sidebar .sidebar-menu .ant-menu-item:hover svg{transform:scale(1.1)}.sidebar .sidebar-menu .ant-menu-item:hover:before{height:24px}.sidebar .sidebar-menu .ant-menu-item:hover:after{width:100%}.sidebar .sidebar-menu .ant-menu-item.ant-menu-item-selected{color:var(--color-primary)!important;font-weight:600;background:transparent!important;box-shadow:none!important}.sidebar .sidebar-menu .ant-menu-item.ant-menu-item-selected:before{height:32px}.sidebar .sidebar-menu .ant-menu-item.ant-menu-item-selected:after{width:100%}.sidebar .sidebar-menu .ant-menu-item.ant-menu-item-selected .ant-menu-item-icon,.sidebar .sidebar-menu .ant-menu-item.ant-menu-item-selected span[class*=ant-menu-item-icon],.sidebar .sidebar-menu .ant-menu-item.ant-menu-item-selected svg{transform:scale(1.1)}.sidebar.ant-layout-sider-collapsed .sidebar-logo{justify-content:center;padding:0}.sidebar.ant-layout-sider-collapsed .ant-menu-item{padding:0!important}.main-content{overflow-y:auto;background:var(--color-bg-page);min-height:100vh}.app-header{height:68px;background:var(--color-bg-white);display:flex;align-items:center;justify-content:space-between;padding:0 28px;box-shadow:0 1px 3px #0000000a;border-bottom:1px solid var(--color-bg-border);position:sticky;top:0;z-index:100}.app-header .header-left .clinic-name{font-size:17px;font-weight:600;color:var(--color-text-primary);display:flex;align-items:center;gap:10px}.app-header .header-left .clinic-name .clinic-icon{color:var(--color-primary);font-size:20px}.app-header .header-center{display:flex;align-items:center;gap:28px}.app-header .header-center .info-item{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--color-text-secondary)}.app-header .header-center .info-item .info-icon{font-size:16px;color:var(--color-primary)}.app-header .header-center .info-item .info-icon.weather-icon{color:#fa8c16}.app-header .header-center .info-item .time-value{font-family:SF Mono,Monaco,Consolas,monospace;font-weight:600;color:var(--color-text-primary);font-size:16px}.app-header .header-right{display:flex;align-items:center;gap:16px}.app-header .header-right .font-size-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:50%;transition:all .2s ease;color:var(--color-text-secondary);font-size:16px}.app-header .header-right .font-size-btn:hover{background:var(--color-primary-bg);color:var(--color-primary)}.app-header .header-right .user-info{cursor:pointer;padding:10px 14px;border-radius:12px;transition:all .2s ease}.app-header .header-right .user-info:hover{background:var(--color-primary-bg)}.app-header .header-right .user-info .user-name{font-size:16px;color:var(--color-text-primary);font-weight:500}.font-size-dropdown{padding:12px 16px;background:var(--color-bg-white);border-radius:8px;box-shadow:0 4px 12px #00000026}.font-size-dropdown .font-size-title{font-size:14px;color:var(--color-text-secondary);margin-bottom:12px}.font-size-dropdown .ant-radio-group{display:flex;gap:8px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.login-page .login-background{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#e0f2fe,#e8f4fd,#f0fdf4,#faf5ff,#f8fafc);pointer-events:none}.login-page .login-background:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 10% 20%,rgba(24,144,255,.12) 0%,transparent 40%),radial-gradient(circle at 90% 80%,rgba(0,201,167,.12) 0%,transparent 40%),radial-gradient(circle at 50% 50%,rgba(114,46,209,.08) 0%,transparent 50%)}.login-page .login-background .bg-grid{position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(24,144,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(24,144,255,.04) 1px,transparent 1px);background-size:50px 50px;opacity:.8}.login-page .login-background .bg-shape{position:absolute;border-radius:50%;filter:blur(120px)}.login-page .login-background .bg-shape.shape-1{width:700px;height:700px;background:linear-gradient(135deg,#1890ff2e,#00c9a71f);top:-250px;right:-150px;animation:float1 25s ease-in-out infinite}.login-page .login-background .bg-shape.shape-2{width:500px;height:500px;background:linear-gradient(135deg,#722ed11f,#1890ff1a);bottom:-150px;left:-100px;animation:float2 30s ease-in-out infinite}.login-page .login-background .bg-shape.shape-3{width:350px;height:350px;background:linear-gradient(135deg,#00c9a726,#52c41a1a);top:45%;left:25%;animation:float3 20s ease-in-out infinite}.login-page .login-background .ai-neural-network{position:absolute;top:0;left:0;right:0;bottom:0;opacity:.25}.login-page .login-background .ai-neural-network svg{width:100%;height:100%}.login-page .login-background .ai-neural-network .neural-connections .pulse-line{stroke-dasharray:200;stroke-dashoffset:200;animation:pulseLine 6s ease-in-out infinite}.login-page .login-background .ai-neural-network .neural-nodes .pulse-node{animation:pulseNode 4s ease-in-out infinite}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(1){animation-delay:0s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(2){animation-delay:.3s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(3){animation-delay:.6s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(4){animation-delay:.9s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(5){animation-delay:1.2s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(6){animation-delay:1.5s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(7){animation-delay:1.8s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(8){animation-delay:2.1s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(9){animation-delay:2.4s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(10){animation-delay:2.7s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(11){animation-delay:3s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(12){animation-delay:3.3s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(13){animation-delay:3.6s}.login-page .login-background .ai-neural-network .neural-nodes circle:nth-child(14){animation-delay:3.9s}.login-page .login-background .ecg-line{position:absolute;left:0;right:0;height:80px;overflow:hidden}.login-page .login-background .ecg-line.ecg-line-1{bottom:20%;opacity:.25}.login-page .login-background .ecg-line.ecg-line-1 svg{width:200%;height:100%;animation:ecgMove 6s linear infinite}.login-page .login-background .ecg-line.ecg-line-2{bottom:10%;opacity:.15}.login-page .login-background .ecg-line.ecg-line-2 svg{width:200%;height:100%;animation:ecgMove 8s linear infinite reverse}.login-page .login-background .ai-chip{position:absolute;top:15%;right:12%;opacity:.5;animation:chipFloat 4s ease-in-out infinite}.login-page .login-container{width:440px;padding:48px 40px 40px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;box-shadow:0 4px 6px #00000005,0 12px 24px #0000000a,0 24px 48px #0000000f;position:relative;z-index:1;border:1px solid rgba(255,255,255,.8)}.login-page .login-header{text-align:center;margin-bottom:32px}.login-page .login-header .logo{width:80px;height:80px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;animation:logoFloat 3s ease-in-out infinite}.login-page .login-header .title{font-size:26px;font-weight:700;color:var(--color-text-primary);margin-bottom:8px;letter-spacing:-.02em;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-health) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-page .login-header .subtitle{font-size:14px;color:var(--color-text-secondary);font-weight:500;letter-spacing:.02em}.login-page .login-tabs .ant-tabs-nav{margin-bottom:24px}.login-page .login-tabs .ant-tabs-nav:before{display:none}.login-page .login-tabs .ant-tabs-nav .ant-tabs-nav-wrap{justify-content:center}.login-page .login-tabs .ant-tabs-nav .ant-tabs-tab{padding:8px 24px;font-size:16px;font-weight:500;color:var(--color-text-tertiary)}.login-page .login-tabs .ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--color-primary)}.login-page .login-tabs .ant-tabs-nav .ant-tabs-ink-bar{height:3px;border-radius:2px;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-health) 100%)}.login-page .login-form .ant-input-affix-wrapper{border-radius:12px!important;border:1px solid #e8e8e8!important;padding:12px 16px!important;height:auto!important;background:#fafbfc;transition:all .2s ease}.login-page .login-form .ant-input-affix-wrapper:hover{border-color:#d9d9d9!important;background:#fff}.login-page .login-form .ant-input-affix-wrapper:focus,.login-page .login-form .ant-input-affix-wrapper.ant-input-affix-wrapper-focused{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px #1890ff1a!important;background:#fff}.login-page .login-form .ant-input-affix-wrapper .ant-input{font-size:15px}.login-page .login-form .ant-input-affix-wrapper .ant-input::placeholder{color:var(--color-text-tertiary)}.login-page .login-form .ant-input-affix-wrapper .ant-input-prefix{color:var(--color-text-tertiary);margin-right:12px}.login-page .login-form .ant-btn{height:48px;border-radius:12px;font-size:16px;font-weight:600;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-health) 100%);border:none;box-shadow:0 4px 12px #1890ff4d;transition:all .25s ease}.login-page .login-form .ant-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1890ff66}.login-page .login-form .ant-btn:active{transform:translateY(0)}.login-page .login-form .ant-form-item{margin-bottom:20px}.login-page .login-form .ant-form-item:last-child{margin-bottom:0;margin-top:28px}.login-page .login-form .ant-form-item .ant-form-item-extra{font-size:12px;color:var(--color-text-tertiary);padding-left:2px;line-height:1.6}.login-page .login-form .ant-form-item .ant-form-item-extra:before{content:"💡 "}.login-page .login-form .divider{margin:20px 0}.login-page .login-form .divider span{font-size:13px;color:var(--color-text-tertiary)}.login-page .login-form .other-login{display:flex;gap:12px}.login-page .login-form .other-login .other-login-btn{flex:1;height:44px;font-size:13px;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .25s ease}.login-page .login-form .other-login .other-login-btn.mini-program-btn{background:#fff;border:1.5px solid #e0e0e0;color:var(--color-text-secondary)}.login-page .login-form .other-login .other-login-btn.mini-program-btn:hover{border-color:#07c160;color:#07c160;box-shadow:0 2px 12px #07c16026}.login-page .login-form .other-login .other-login-btn.wechat-btn{background:#07c160;border-color:#07c160;color:#fff}.login-page .login-form .other-login .other-login-btn.wechat-btn:hover{background:#06ad56;border-color:#06ad56;box-shadow:0 4px 16px #07c16059}.login-page .login-features{display:flex;justify-content:center;gap:32px;margin-top:32px;padding-top:24px;border-top:1px solid rgba(0,0,0,.04)}.login-page .login-features .feature-item{display:flex;flex-direction:column;align-items:center;gap:8px}.login-page .login-features .feature-item .feature-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center}.login-page .login-features .feature-item .feature-icon.health{background:#00c9a71a;color:var(--color-health)}.login-page .login-features .feature-item .feature-icon.ai{background:#722ed11a;color:var(--color-ai)}.login-page .login-features .feature-item .feature-icon.safe{background:#1890ff1a;color:var(--color-primary)}.login-page .login-features .feature-item span{font-size:12px;color:var(--color-text-tertiary)}.login-page .wechat-modal .ant-modal-content{border-radius:16px;padding:24px}.login-page .wechat-modal .qr-container{display:flex;flex-direction:column;align-items:center;padding:24px}.login-page .wechat-modal .qr-container .qr-placeholder{text-align:center}.login-page .wechat-modal .qr-container .qr-placeholder p{margin:16px 0;color:var(--color-text-secondary)}.login-page .wechat-modal .qr-container .qr-placeholder .qr-code{padding:16px;background:#f5f5f5;border-radius:12px}.login-page .qr-popover .ant-popover-inner{padding:12px!important;border-radius:12px!important;box-shadow:0 6px 24px #00000026!important}.login-page .qr-popover .ant-popover-arrow{display:none}.login-page .qr-popover .qr-popover-content{text-align:center}.login-page .qr-popover .qr-popover-content .qr-popover-title{font-size:13px;font-weight:500;color:var(--color-text-primary);margin-bottom:10px}.login-page .qr-popover .qr-popover-content .qr-code-small{background:#fff;padding:8px;border-radius:8px;display:inline-block;border:1px solid #f0f0f0}.login-page .qr-popover .qr-popover-content .qr-code-small svg{display:block}.login-page .qr-popover .qr-popover-content .qr-popover-hint{font-size:11px;color:var(--color-text-tertiary);margin-top:8px}.login-page .change-password-modal .ant-modal-header{border-bottom:none}.login-page .change-password-modal .ant-modal-header .ant-modal-title{font-size:16px;font-weight:600;color:var(--color-text-primary)}.login-page .change-password-modal .ant-modal-body{padding:8px 24px 24px}.login-page .change-password-modal .ant-form-item-label>label{color:var(--color-text-secondary);font-weight:500}.login-page .change-password-modal .ant-input-affix-wrapper{border-radius:8px}.login-page .change-password-modal .ant-btn-primary{height:44px;border-radius:8px;font-size:15px;font-weight:500;background:linear-gradient(135deg,#1890ff,#096dd9);border:none}.login-page .change-password-modal .ant-btn-primary:hover{background:linear-gradient(135deg,#40a9ff,#1890ff)}@keyframes float1{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(-40px,40px) rotate(3deg)}}@keyframes float2{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(50px,-30px) rotate(-3deg)}}@keyframes float3{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,40px) scale(1.05)}}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes ecgMove{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes pulseLine{0%,to{stroke-dashoffset:200;opacity:.2}50%{stroke-dashoffset:0;opacity:.4}}@keyframes pulseNode{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.15);opacity:.7}}@keyframes chipFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(5deg)}}.change-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.change-password-page .change-password-container{width:100%;max-width:480px}.change-password-page .change-password-card{border-radius:12px;box-shadow:0 8px 32px #00000026}.change-password-page .change-password-card .cp-header{text-align:center;margin-bottom:24px}.change-password-page .change-password-card .cp-header .cp-icon{font-size:48px;color:#faad14;margin-bottom:12px}.change-password-page .change-password-card .cp-header h2{margin:0;font-size:22px;color:#1a1a1a}.change-password-page .change-password-card .cp-alert{margin-bottom:24px}.change-password-page .change-password-card .cp-alert .cp-rules{margin:8px 0 0;padding-left:20px}.change-password-page .change-password-card .cp-alert .cp-rules li{line-height:1.8;color:#666;font-size:13px}.change-password-page .change-password-card .cp-form .ant-form-item-label>label{font-weight:500}.change-password-page .change-password-card .logout-btn{border-color:#d9d9d9}.change-password-page .change-password-card .logout-btn:hover{color:#ff4d4f;border-color:#ff4d4f}.dashboard-page{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}.dashboard-page .page-container{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:var(--spacing-lg);background:linear-gradient(180deg,#f8fafc 0%,var(--color-bg-page) 100%)}.dashboard-page .page-header{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:16px 20px;background:var(--color-bg-white);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04)}.dashboard-page .page-header .header-left .page-title{font-size:var(--font-size-h2);font-weight:600;color:var(--color-text-primary);letter-spacing:-.02em;margin:0}.dashboard-page .page-header .header-left .page-greeting{font-size:var(--font-size-body2);color:var(--color-text-secondary);margin:4px 0 0}.dashboard-page .page-header .header-right .ai-badge{display:flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,var(--color-ai-bg) 0%,#f0f5ff 100%);border-radius:20px;border:1px solid rgba(114,46,209,.1)}.dashboard-page .page-header .header-right .ai-badge .ai-icon{color:var(--color-ai);font-size:var(--font-size-body)}.dashboard-page .page-header .header-right .ai-badge span{font-size:var(--font-size-body2);font-weight:500;color:var(--color-ai)}.dashboard-page .stat-card{border-radius:12px;border:none!important;box-shadow:0 1px 3px #0000000a!important;border:1px solid rgba(0,0,0,.04)!important;transition:all .3s ease;overflow:hidden}.dashboard-page .stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014!important}.dashboard-page .stat-card .ant-card-body{padding:18px;display:flex;flex-direction:column;gap:12px}.dashboard-page .stat-card .stat-header{display:flex;justify-content:space-between;align-items:flex-start}.dashboard-page .stat-card .stat-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);color:#fff;box-shadow:0 2px 8px #00000026}.dashboard-page .stat-card .stat-trend-wrapper .stat-trend{font-size:var(--font-size-small);display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:10px;font-weight:500}.dashboard-page .stat-card .stat-trend-wrapper .stat-trend.up{color:var(--color-success);background:var(--color-success-bg)}.dashboard-page .stat-card .stat-trend-wrapper .stat-trend.down{color:var(--color-error);background:var(--color-error-bg)}.dashboard-page .stat-card .stat-content .stat-value{font-size:var(--font-size-xxl);font-weight:700;color:var(--color-text-primary);line-height:1;letter-spacing:-.02em}.dashboard-page .stat-card .stat-content .stat-label{font-size:var(--font-size-body2);color:var(--color-text-secondary);margin-top:4px;font-weight:500}.dashboard-page .stat-card .stat-footer{display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px solid rgba(0,0,0,.04)}.dashboard-page .stat-card .stat-footer .progress-wrapper{display:flex;align-items:center;gap:10px}.dashboard-page .stat-card .stat-footer .progress-wrapper .progress-bar{flex:1;height:6px;background:#0000000f;border-radius:3px;overflow:hidden}.dashboard-page .stat-card .stat-footer .progress-wrapper .progress-bar .progress-fill{height:100%;border-radius:3px;transition:width .3s ease}.dashboard-page .stat-card .stat-footer .progress-wrapper .progress-label{font-size:var(--font-size-small);color:var(--color-text-tertiary);white-space:nowrap}.dashboard-page .stat-card .stat-footer .extra-info{display:flex;justify-content:space-between;align-items:center}.dashboard-page .stat-card .stat-footer .extra-info .extra-label{font-size:var(--font-size-small);color:var(--color-text-tertiary)}.dashboard-page .stat-card .stat-footer .extra-info .extra-value{font-size:var(--font-size-body2);font-weight:600}.dashboard-page .trend-card{border-radius:12px;border:none!important;box-shadow:0 1px 3px #0000000a!important;border:1px solid rgba(0,0,0,.04)!important;height:100%}.dashboard-page .trend-card .ant-card-head-title{font-size:var(--font-size-body);font-weight:600}.dashboard-page .trend-card .ant-card-body{height:calc(100% - 57px)}.dashboard-page .trend-card .trend-chart{height:100%;min-height:200px;padding:16px 0}.dashboard-page .trend-card .trend-chart .chart-bars{display:flex;align-items:flex-end;justify-content:space-around;height:100%;gap:8px}.dashboard-page .trend-card .trend-chart .chart-bars .chart-bar-item{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.dashboard-page .trend-card .trend-chart .chart-bars .chart-bar-item .chart-bar{width:100%;max-width:40px;min-height:20px;border-radius:6px 6px 0 0;position:relative;transition:all .3s ease;cursor:pointer;margin-top:auto}.dashboard-page .trend-card .trend-chart .chart-bars .chart-bar-item .chart-bar:hover{transform:scaleY(1.02);box-shadow:0 4px 12px #1890ff4d}.dashboard-page .trend-card .trend-chart .chart-bars .chart-bar-item .chart-bar .bar-value{position:absolute;top:-24px;left:50%;transform:translate(-50%);font-size:var(--font-size-body2);font-weight:600;color:var(--color-text-primary)}.dashboard-page .trend-card .trend-chart .chart-bars .chart-bar-item .bar-label{margin-top:10px;font-size:var(--font-size-small);color:var(--color-text-tertiary);font-weight:500}.dashboard-page .diagnosis-card{border-radius:12px;border:none!important;box-shadow:0 1px 3px #0000000a!important;border:1px solid rgba(0,0,0,.04)!important;height:100%}.dashboard-page .diagnosis-card .ant-card-head-title{font-size:var(--font-size-body);font-weight:600}.dashboard-page .diagnosis-card .ant-card-body{height:calc(100% - 57px);display:flex;flex-direction:column}.dashboard-page .diagnosis-card .diagnosis-list{display:flex;flex-direction:column;gap:10px;flex:1}.dashboard-page .diagnosis-card .diagnosis-list .diagnosis-item{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--color-bg-card);border-radius:10px;transition:all .2s ease;border:1px solid rgba(0,0,0,.04)}.dashboard-page .diagnosis-card .diagnosis-list .diagnosis-item:hover{transform:translate(4px);box-shadow:0 2px 8px #0000000f}.dashboard-page .diagnosis-card .diagnosis-list .diagnosis-item .rank-wrapper{flex-shrink:0}.dashboard-page .diagnosis-card .diagnosis-list .diagnosis-item .rank-badge{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;font-size:var(--font-size-body2);font-weight:700}.dashboard-page .diagnosis-card .diagnosis-list .diagnosis-item .diagnosis-name{flex:1;font-size:var(--font-size-body2);font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-page .diagnosis-card .diagnosis-list .diagnosis-item .diagnosis-count-wrapper{display:flex;align-items:center;gap:8px;flex-shrink:0}.dashboard-page .diagnosis-card .diagnosis-list .diagnosis-item .diagnosis-count-wrapper .count-bar{height:6px;width:50px;border-radius:3px}.dashboard-page .diagnosis-card .diagnosis-list .diagnosis-item .diagnosis-count-wrapper .count-value{font-size:var(--font-size-body2);font-weight:600;color:var(--color-text-primary);min-width:36px;text-align:right}.dashboard-page .ai-card{border-radius:12px;border:none!important;box-shadow:0 1px 3px #0000000a!important;border:1px solid rgba(0,0,0,.04)!important;background:linear-gradient(135deg,#fff 0%,var(--color-ai-bg) 100%)}.dashboard-page .ai-card .ant-card-head-title{font-weight:600;font-size:var(--font-size-body)}.dashboard-page .ai-card .ai-feature-item{display:flex;align-items:center;padding:14px;background:#fffc;border-radius:10px;margin-bottom:10px;transition:all .2s ease;border:1px solid rgba(0,0,0,.04)}.dashboard-page .ai-card .ai-feature-item:last-child{margin-bottom:0}.dashboard-page .ai-card .ai-feature-item:hover{transform:translate(4px);box-shadow:0 2px 8px #0000000f}.dashboard-page .ai-card .ai-feature-item .feature-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);background:#0000000a;margin-right:14px}.dashboard-page .ai-card .ai-feature-item .feature-icon svg{fill:currentColor}.dashboard-page .ai-card .ai-feature-item .feature-content{flex:1}.dashboard-page .ai-card .ai-feature-item .feature-content .feature-title{font-weight:600;font-size:var(--font-size-body2);color:var(--color-text-primary)}.dashboard-page .ai-card .ai-feature-item .feature-content .feature-desc{font-size:var(--font-size-small);color:var(--color-text-tertiary);margin-top:2px}.dashboard-page .alert-card{border-radius:12px;border:none!important;box-shadow:0 1px 3px #0000000a!important;border:1px solid rgba(0,0,0,.04)!important}.dashboard-page .alert-card .ant-card-head-title{font-size:var(--font-size-body);font-weight:600}.dashboard-page .alert-card .alert-list .alert-item{display:flex;align-items:center;padding:14px 16px;background:linear-gradient(135deg,var(--color-warning-bg) 0%,#fffbeb 100%);border-radius:10px;margin-bottom:10px;border:1px solid rgba(250,173,20,.15);transition:all .2s ease}.dashboard-page .alert-card .alert-list .alert-item:last-child{margin-bottom:0}.dashboard-page .alert-card .alert-list .alert-item:hover{transform:translate(4px);box-shadow:0 2px 8px #faad141f}.dashboard-page .alert-card .alert-list .alert-item .alert-icon{color:var(--color-warning);margin-right:12px;font-size:var(--font-size-body)}.dashboard-page .alert-card .alert-list .alert-item .alert-text{flex:1;font-size:var(--font-size-body2);color:var(--color-text-primary)}.dashboard-page .alert-card .alert-list .alert-item .alert-action{color:var(--color-primary);font-size:var(--font-size-body2);cursor:pointer;font-weight:500}.dashboard-page .alert-card .alert-list .alert-item .alert-action:hover{color:var(--color-primary-hover)}.dashboard-page .alert-card .no-alert{display:flex;align-items:center;justify-content:center;gap:10px;padding:30px;color:var(--color-success);font-weight:500;font-size:var(--font-size-body2)}.dashboard-page .alert-card .no-alert .success-icon{font-size:var(--font-size-xl)}.patient-list-page{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}.patient-list-page .page-container{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:var(--spacing-lg);background:linear-gradient(180deg,#f8fafc 0%,var(--color-bg-page) 100%)}.patient-list-page .toolbar{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:16px 20px;background:var(--color-bg-white);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04)}.patient-list-page .toolbar .toolbar-left{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.patient-list-page .toolbar .toolbar-left .ant-input-affix-wrapper{height:37px;padding:0 11px;display:flex;align-items:center}.patient-list-page .toolbar .toolbar-left .ant-select{height:37px}.patient-list-page .toolbar .toolbar-left .ant-select .ant-select-selector{height:37px!important;display:flex;align-items:center}.patient-list-page .toolbar .toolbar-left .ant-picker{height:37px;padding:0 11px;display:flex;align-items:center}.patient-list-page .toolbar .toolbar-left .ant-btn{height:37px;padding:0 15px}.patient-list-page .toolbar .toolbar-right{display:flex;gap:12px;align-items:center}.patient-list-page .toolbar .toolbar-right .ant-btn{height:37px;padding:0 15px}.patient-list-page .table-container{flex:1;display:flex;flex-direction:column;background:var(--color-bg-white);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04);padding:16px;overflow:hidden;position:relative}.patient-list-page .table-container .ant-table-wrapper,.patient-list-page .table-container .ant-spin-nested-loading,.patient-list-page .table-container .ant-spin-container,.patient-list-page .table-container .ant-table,.patient-list-page .table-container .ant-table-container{flex:1;display:flex;flex-direction:column}.patient-list-page .table-container .ant-table-body{flex:1}.patient-list-page .table-container .patient-avatar-small{font-size:var(--font-size-lg)}.patient-list-page .table-container .ant-table-thead>tr>th{background:#f8fafc!important;font-weight:600;color:var(--color-text-secondary);font-size:var(--font-size-body);text-align:center}.patient-list-page .table-container .ant-table-tbody>tr>td{padding:12px 16px;font-size:var(--font-size-body)}.patient-list-page .table-container .ant-pagination{margin-top:16px;margin-bottom:0;display:flex;align-items:center}.patient-list-page .table-container .ant-pagination .ant-pagination-options{display:flex;align-items:center}.patient-list-page .table-container .ant-pagination .ant-select{height:28px}.patient-list-page .table-container .ant-pagination .ant-select .ant-select-selector{height:28px!important;min-height:28px!important;padding:0 8px!important;display:flex;align-items:center}.patient-list-page .table-container .ant-pagination .ant-select .ant-select-selection-item{line-height:26px!important}.patient-list-page .table-container .ant-pagination .ant-pagination-options-quick-jumper{height:28px;line-height:28px}.patient-list-page .table-container .ant-pagination .ant-pagination-options-quick-jumper input{height:28px!important;width:40px!important}.patient-detail-page{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}.patient-detail-page .page-container{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:var(--spacing-lg);background:linear-gradient(180deg,#f8fafc 0%,var(--color-bg-page) 100%)}.patient-detail-page .page-header{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:16px 20px;background:var(--color-bg-white);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04)}.patient-detail-page .page-header .header-left{display:flex;align-items:center}.patient-detail-page .page-header .header-left .ant-btn-text{border-radius:10px}.patient-detail-page .page-header .header-left .ant-btn-text:hover{background:var(--color-primary-bg);color:var(--color-primary)}.patient-detail-page .page-header .header-left .page-title{margin:0 0 0 8px;font-size:20px;font-weight:600}.patient-detail-page .page-header .ant-btn{border-radius:10px;font-weight:500;font-size:14px}.patient-detail-page .info-card{flex-shrink:0;border-radius:12px;margin-bottom:16px;border:1px solid rgba(0,0,0,.04)!important;box-shadow:0 1px 3px #0000000a}.patient-detail-page .info-card .ant-card-head{border-bottom:1px solid var(--color-bg-border)!important}.patient-detail-page .info-card .ant-card-head .ant-card-head-title{font-weight:600;font-size:16px}.patient-detail-page .info-card .ant-descriptions-item-label{color:var(--color-text-secondary);font-weight:500;font-size:15px}.patient-detail-page .info-card .ant-descriptions-item-content{color:var(--color-text-primary);font-size:15px}.patient-detail-page .info-card .edit-patient-form{padding:8px 0}.patient-detail-page .info-card .edit-patient-form .edit-form-row{display:flex;gap:24px;margin-bottom:16px}.patient-detail-page .info-card .edit-patient-form .edit-form-row:last-child{margin-bottom:0}.patient-detail-page .info-card .edit-patient-form .edit-form-item{display:flex;align-items:center}.patient-detail-page .info-card .edit-patient-form .edit-form-item label{width:70px;flex-shrink:0;color:var(--color-text-secondary);font-weight:500}.patient-detail-page .info-card .edit-patient-form .edit-form-item .ant-select .ant-select-selector{height:32px!important;min-height:32px!important;padding:0 11px!important;display:flex;align-items:center}.patient-detail-page .info-card .edit-patient-form .edit-form-item .ant-select .ant-select-selection-item{line-height:30px!important}.patient-detail-page .visit-card{flex:1;border-radius:12px;border:1px solid rgba(0,0,0,.04)!important;box-shadow:0 1px 3px #0000000a}.patient-detail-page .visit-card .ant-card-head{border-bottom:1px solid var(--color-bg-border)!important}.patient-detail-page .visit-card .ant-card-head .ant-card-head-title{font-weight:600;font-size:16px}.patient-detail-page .visit-card .ant-table-thead>tr>th{background:#f8fafc!important;font-weight:600;color:var(--color-text-secondary);font-size:15px}.patient-detail-page .visit-card .ant-table-tbody>tr>td{padding:12px 16px;font-size:15px}.consultation-page{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}.consultation-page .page-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:var(--spacing-lg);background:linear-gradient(180deg,#f8fafc 0%,var(--color-bg-page) 100%)}.consultation-page .page-header{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:16px 20px;background:var(--color-bg-white);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04)}.consultation-page .page-header .header-left{display:flex;align-items:center}.consultation-page .page-header .header-left .ant-btn-text{border-radius:10px}.consultation-page .page-header .header-left .ant-btn-text:hover{background:var(--color-primary-bg);color:var(--color-primary)}.consultation-page .page-header .header-left .page-title{margin:0 0 0 8px;font-size:var(--font-size-h2);font-weight:600}.consultation-page .page-header .ant-btn{border-radius:10px;font-weight:500;font-size:var(--font-size-body2)}.consultation-page .consultation-content{display:flex;gap:16px;flex:1;min-height:0;overflow:hidden}.consultation-page .consultation-content .patient-info-card{flex-shrink:0;width:320px;overflow-y:auto;background:var(--color-bg-white);border-radius:12px;padding:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04)}.consultation-page .consultation-content .patient-info-card .ant-collapse{background:transparent;border:none}.consultation-page .consultation-content .patient-info-card .ant-collapse .ant-collapse-item{border-bottom:1px solid rgba(0,0,0,.04)}.consultation-page .consultation-content .patient-info-card .ant-collapse .ant-collapse-item:last-child{border-bottom:none}.consultation-page .consultation-content .patient-info-card .ant-collapse .ant-collapse-header{padding:10px 0;font-weight:600;font-size:var(--font-size-body2)}.consultation-page .consultation-content .patient-info-card .ant-collapse .ant-collapse-content{border:none}.consultation-page .consultation-content .patient-info-card .ant-collapse .ant-collapse-content .ant-collapse-content-box{padding:8px 0 12px}.consultation-page .consultation-content .patient-info-card .ant-descriptions-item-label{color:var(--color-text-secondary);font-size:var(--font-size-small);padding:4px 0}.consultation-page .consultation-content .patient-info-card .ant-descriptions-item-content{color:var(--color-text-primary);font-size:var(--font-size-small);padding:4px 0}.consultation-page .consultation-content .patient-info-card .text-tertiary{color:var(--color-text-tertiary)}.consultation-page .consultation-content .patient-info-card .history-section{margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.06)}.consultation-page .consultation-content .patient-info-card .history-section .history-header{font-size:15px;font-weight:600;color:#333;padding:0 0 12px;border-bottom:1px solid rgba(0,0,0,.06)}.consultation-page .consultation-content .patient-info-card .history-section .history-list{padding-top:12px}.consultation-page .consultation-content .patient-info-card .ant-card .ant-card-body{padding:12px 0}.consultation-page .consultation-content .patient-info-card .ant-timeline{margin-top:8px}.consultation-page .consultation-content .patient-info-card .ant-timeline .ant-timeline-item{padding-bottom:12px}.consultation-page .consultation-content .patient-info-card .ant-timeline .ant-timeline-item:last-child{padding-bottom:0}.consultation-page .consultation-content .patient-info-card .ant-timeline .ant-timeline-item .ant-timeline-item-tail{top:16px}.consultation-page .consultation-content .patient-info-card .ant-timeline .ant-timeline-item .ant-timeline-item-head{width:10px;height:10px;top:6px;left:1px}.consultation-page .consultation-content .patient-info-card .ant-timeline .ant-timeline-item .ant-timeline-item-content{margin-inline-start:28px;top:0;padding-top:0;min-height:auto}.consultation-page .consultation-content .patient-info-card .record-item{display:flex;flex-direction:column;padding:0 8px;margin:-4px -8px;border-radius:8px;cursor:pointer;transition:all .2s}.consultation-page .consultation-content .patient-info-card .record-item:hover{background:var(--color-bg-page)}.consultation-page .consultation-content .patient-info-card .record-item.active{background:var(--color-primary-bg)}.consultation-page .consultation-content .patient-info-card .record-item .record-first-row{display:flex;justify-content:space-between;align-items:center}.consultation-page .consultation-content .patient-info-card .record-item .record-date{font-size:var(--font-size-body);line-height:22px;color:var(--color-text-primary);font-weight:500;display:flex;align-items:center;flex-wrap:nowrap}.consultation-page .consultation-content .patient-info-card .record-item .record-date .visit-type-tag{margin-left:8px;font-size:var(--font-size-small);font-weight:400}.consultation-page .consultation-content .patient-info-card .record-item .record-date .visit-type-tag.first-visit{color:#52c41a}.consultation-page .consultation-content .patient-info-card .record-item .record-date .visit-type-tag.follow-up{color:#1890ff}.consultation-page .consultation-content .patient-info-card .record-item .record-diagnosis{font-size:var(--font-size-body2);color:var(--color-text-secondary);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.consultation-page .consultation-content .patient-info-card .record-item .record-doctor{font-size:var(--font-size-small);color:var(--color-text-tertiary);margin-top:2px}.consultation-page .consultation-content .patient-info-card .record-item .ant-btn-link{padding:0 4px;flex-shrink:0}.consultation-page .consultation-content .form-scroll-area{flex:1;overflow-y:auto;min-width:0}.consultation-page .consultation-content .form-scroll-area .consultation-form-card{border-radius:12px;border:1px solid rgba(0,0,0,.04)!important;box-shadow:0 1px 3px #0000000a}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .ant-card-body{padding:20px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .readonly-value{color:var(--color-text-primary);font-size:var(--font-size-body);line-height:1.6}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-item-readonly{padding:8px 0;border-bottom:1px dashed rgba(0,0,0,.08)}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-item-readonly:last-child{margin-bottom:0;border-bottom:none}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-item-readonly .prescription-name{font-weight:500;font-size:var(--font-size-body);color:var(--color-text-primary);margin-bottom:2px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-item-readonly .prescription-detail{font-size:var(--font-size-body2);color:var(--color-text-secondary)}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .form-section{margin-bottom:16px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .form-section:last-child{margin-bottom:0}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .form-section .form-label{font-size:var(--font-size-body);font-weight:600;color:var(--color-text-primary);margin-bottom:6px;display:flex;align-items:center}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .form-section .form-label .required{color:#ff4d4f;margin-right:4px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .form-section .ant-input,.consultation-page .consultation-content .form-scroll-area .consultation-form-card .form-section .ant-input-number{border-radius:8px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .form-section textarea.ant-input{border-radius:8px;font-size:var(--font-size-body2);line-height:1.6}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .form-section .diagnosis-tags{min-height:auto;padding:4px 0}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .form-section .diagnosis-tags .ant-tag{margin-right:6px;padding:2px 8px;font-size:var(--font-size-body2);border-radius:4px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .ant-divider{margin:16px 0;border-color:#0000000f}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list{display:flex;flex-direction:column;gap:8px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item{padding:12px;background:#fafafa;border-radius:6px;border:1px solid rgba(0,0,0,.06)}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-header .prescription-index{font-weight:600;font-size:var(--font-size-body2);color:var(--color-text-primary)}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields{display:flex;flex-direction:column;gap:8px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row{display:flex;gap:8px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item{display:flex;flex-direction:column;gap:4px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item label{font-size:var(--font-size-body2);color:var(--color-text-secondary);font-weight:500}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-input,.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-input-number,.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-select .ant-select-selector,.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-picker,.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-select-auto-complete .ant-input{height:32px!important;min-height:32px!important}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-input{padding:4px 11px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-select-auto-complete{width:100%}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-select-auto-complete .ant-input{padding:4px 11px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-input-number{width:100%}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-input-number .ant-input-number-input{height:22px;padding:0 7px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-select{width:100%}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-select .ant-select-selector{padding:0 11px!important;display:flex;align-items:center}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-select .ant-select-selection-item{line-height:30px!important}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-name{flex:3;min-width:0}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-spec{flex:2;min-width:0}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-quantity{width:140px;flex-shrink:0}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-quantity .quantity-row{display:flex;gap:6px;align-items:center}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-quantity .quantity-row .ant-input-number{width:55px;height:32px!important}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-quantity .quantity-row .ant-select{width:55px}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-quantity .quantity-row .ant-select .ant-select-selector{height:32px!important;min-height:32px!important;padding:0 6px!important;display:flex;align-items:center}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-quantity .quantity-row .ant-select .ant-select-selection-item{line-height:30px!important}.consultation-page .consultation-content .form-scroll-area .consultation-form-card .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-usage{flex:1}.consultation-page .consultation-content .form-scroll-area .prescription-layout{display:flex;gap:24px}.consultation-page .consultation-content .form-scroll-area .prescription-layout .prescription-left{flex:4;min-width:0}.consultation-page .consultation-content .form-scroll-area .prescription-layout .prescription-right{flex:6;min-width:0}.consultation-page .consultation-content .form-scroll-area .prescription-layout .section-label{font-size:var(--font-size-body2);font-weight:600;color:var(--color-text-primary);margin-bottom:8px;display:flex;align-items:center}.consultation-page .consultation-content .form-scroll-area .prescription-images-section .prescription-images-readonly .ant-image{border-radius:6px;overflow:hidden}.consultation-page .consultation-content .form-scroll-area .prescription-images-section .prescription-image-item{position:relative;display:inline-block}.consultation-page .consultation-content .form-scroll-area .prescription-images-section .prescription-image-item .image-delete-btn{position:absolute;top:-6px;right:-6px;background:#00000080;color:#fff;border-radius:50%;width:18px;height:18px;padding:0;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs)}.consultation-page .consultation-content .form-scroll-area .prescription-images-section .prescription-image-item .image-delete-btn:hover{background:#ff4d4f}.consultation-page .consultation-content .form-scroll-area .prescription-images-section .upload-prescription-image{width:80px;height:80px;border:1px dashed #d9d9d9;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;background:#fafafa;transition:border-color .3s}.consultation-page .consultation-content .form-scroll-area .prescription-images-section .upload-prescription-image:hover{border-color:var(--color-primary)}.consultation-page .consultation-content .form-scroll-area .prescription-images-section .upload-prescription-image .anticon{font-size:var(--font-size-lg);color:#999}.consultation-page .text-tertiary{color:var(--color-text-tertiary)}@media (max-width: 1200px){.consultation-page .consultation-content{flex-direction:column}.consultation-page .consultation-content .patient-info-card{width:100%}.consultation-page .prescription-layout{flex-direction:column}}.chief-complaint-option{padding:8px 4px}.chief-complaint-option .option-main{font-weight:500;color:var(--color-text-primary);margin-bottom:4px;line-height:1.4}.chief-complaint-option .option-sub{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.3}.inventory-page{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}.inventory-page .page-container{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:var(--spacing-lg);background:linear-gradient(180deg,#f8fafc 0%,var(--color-bg-page) 100%)}.inventory-page .toolbar{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:16px 20px;background:var(--color-bg-white);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04)}.inventory-page .toolbar .toolbar-left{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.inventory-page .toolbar .toolbar-left .ant-input-affix-wrapper{height:37px;padding:0 11px;display:flex;align-items:center}.inventory-page .toolbar .toolbar-left .ant-select{height:37px}.inventory-page .toolbar .toolbar-left .ant-select .ant-select-selector{height:37px!important;display:flex;align-items:center}.inventory-page .toolbar .toolbar-left .ant-picker{height:37px;padding:0 11px;display:flex;align-items:center}.inventory-page .toolbar .toolbar-left .ant-btn{height:37px;padding:0 15px}.inventory-page .toolbar .toolbar-left .ant-tag{padding:6px 12px;font-size:var(--font-size-body2);border-radius:6px;font-weight:500}.inventory-page .toolbar .toolbar-right{display:flex;gap:12px;align-items:center}.inventory-page .toolbar .toolbar-right .ant-btn{height:37px;padding:0 15px}.inventory-page .table-container{flex:1;display:flex;flex-direction:column;background:var(--color-bg-white);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04);padding:16px;overflow:hidden;position:relative}.inventory-page .table-container .ant-table-wrapper,.inventory-page .table-container .ant-spin-nested-loading,.inventory-page .table-container .ant-spin-container,.inventory-page .table-container .ant-table,.inventory-page .table-container .ant-table-container{flex:1;display:flex;flex-direction:column}.inventory-page .table-container .ant-table-body{flex:1}.inventory-page .table-container .ant-table-thead>tr>th{background:#f8fafc!important;font-weight:600;color:var(--color-text-secondary);font-size:var(--font-size-body);text-align:center}.inventory-page .table-container .ant-table-tbody>tr>td{padding:12px 16px;font-size:var(--font-size-body)}.inventory-page .table-container .ant-pagination{margin-top:16px;margin-bottom:0;display:flex;align-items:center}.inventory-page .table-container .ant-pagination .ant-pagination-options{display:flex;align-items:center}.inventory-page .table-container .ant-pagination .ant-select{height:28px}.inventory-page .table-container .ant-pagination .ant-select .ant-select-selector{height:28px!important;min-height:28px!important;padding:0 8px!important;display:flex;align-items:center}.inventory-page .table-container .ant-pagination .ant-select .ant-select-selection-item{line-height:26px!important}.inventory-page .table-container .ant-pagination .ant-pagination-options-quick-jumper{height:28px;line-height:28px}.inventory-page .table-container .ant-pagination .ant-pagination-options-quick-jumper input{height:28px!important;width:40px!important}.inventory-page .text-warning{color:var(--color-warning);font-weight:500}.inbound-modal .ant-modal-body{max-height:70vh;overflow:visible;display:flex;flex-direction:column}.inbound-modal .ant-modal-content{overflow:visible}.inbound-modal .ant-form{display:flex;flex-direction:column;flex:1;overflow:visible}.inbound-modal .batch-card{flex:1;display:flex;flex-direction:column;overflow:visible}.inbound-modal .batch-card .ant-card-body{flex:1;overflow:visible;display:flex;flex-direction:column;padding:12px}.inbound-modal .batch-list{flex:1;overflow-y:auto;max-height:300px;padding-right:8px}.inbound-modal .ant-select-selector{height:35px!important;min-height:35px!important;padding:0 11px!important;display:flex!important;align-items:center!important}.inbound-modal .ant-select-selection-item{line-height:33px!important}.inbound-modal .ant-picker{height:35px!important;padding:0 11px!important;display:flex!important;align-items:center!important}.inbound-modal .ant-input,.inbound-modal .ant-input-number{height:35px!important}.inbound-modal .ant-input-number .ant-input-number-input{height:33px!important}.inbound-modal .batch-item{padding:12px 16px;margin-bottom:10px;background:#fafafa;border-radius:8px;border:1px solid #e8e8e8}.inbound-modal .batch-item .batch-row-main{display:flex;gap:8px;align-items:flex-start}.inbound-modal .batch-item .batch-row-main .batch-field{min-width:0}.inbound-modal .batch-item .batch-row-main .batch-field.batch-field-spec{flex:1.4}.inbound-modal .batch-item .batch-row-main .batch-field.batch-field-unit{flex:.55;min-width:55px}.inbound-modal .batch-item .batch-row-main .batch-field.batch-field-batch{flex:1.3}.inbound-modal .batch-item .batch-row-main .batch-field.batch-field-expiry{flex:.85}.inbound-modal .batch-item .batch-row-main .batch-field.batch-field-expiry .ant-form-item{margin-bottom:0}.inbound-modal .batch-item .batch-row-main .batch-field.batch-field-expiry .ant-form-item .ant-form-item-label{padding-bottom:2px}.inbound-modal .batch-item .batch-row-main .batch-field.batch-field-expiry .ant-form-item .ant-form-item-control-input{min-height:35px;display:flex;align-items:center}.inbound-modal .batch-item .batch-row-main .batch-field.batch-field-expiry .expiry-input,.inbound-modal .batch-item .batch-row-main .batch-field.batch-field-expiry .ant-input{height:30px!important}.inbound-modal .batch-item .batch-row-main .ant-form-item{margin-bottom:0}.inbound-modal .batch-item .batch-row-main .ant-form-item .ant-form-item-label{padding-bottom:2px}.inbound-modal .batch-item .batch-row-main .ant-form-item .ant-form-item-label>label{font-size:12px;color:#888;font-weight:500}.inbound-modal .batch-item .batch-row-main .ant-form-item .ant-picker,.inbound-modal .batch-item .batch-row-main .ant-form-item .ant-input-number,.inbound-modal .batch-item .batch-row-main .ant-form-item .ant-select .ant-select-selector,.inbound-modal .batch-item .batch-row-main .ant-form-item .ant-input-affix-wrapper,.inbound-modal .batch-item .batch-row-main .ant-form-item .ant-input{font-size:13px!important}.inbound-modal .batch-item .batch-row-sub{display:flex;gap:12px;align-items:flex-start;margin-top:8px}.inbound-modal .batch-item .batch-row-sub .batch-field{min-width:0}.inbound-modal .batch-item .batch-row-sub .batch-field.batch-field-qty{flex:.7;min-width:60px}.inbound-modal .batch-item .batch-row-sub .batch-field.batch-field-purchase,.inbound-modal .batch-item .batch-row-sub .batch-field.batch-field-sale{flex:.9;min-width:75px}.inbound-modal .batch-item .batch-row-sub .batch-field.batch-field-action{flex-shrink:0;padding-top:24px}.inbound-modal .batch-item .batch-row-sub .batch-field.batch-field-action .ant-btn-dangerous{font-size:13px}.inbound-modal .batch-item .batch-row-sub .ant-form-item{margin-bottom:0}.inbound-modal .batch-item .batch-row-sub .ant-form-item .ant-form-item-label{padding-bottom:2px}.inbound-modal .batch-item .batch-row-sub .ant-form-item .ant-form-item-label>label{font-size:12px;color:#888;font-weight:500}.inbound-modal .batch-item .batch-row-sub .ant-form-item .ant-input-number{width:100%}.inbound-modal .batch-item .ant-form-item{margin-bottom:10px}.inbound-modal .batch-item .ant-form-item .ant-form-item-label{padding-bottom:2px}.inbound-modal .batch-item .ant-form-item .ant-form-item-label>label{font-size:13px;color:#666;font-weight:500}.inbound-modal .batch-item .ant-btn-dangerous{font-size:13px}:global .expiry-date-popup{z-index:1051!important}.prescriptions-page{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}.prescriptions-page .page-container{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:var(--spacing-lg);background:linear-gradient(180deg,#f8fafc 0%,var(--color-bg-page) 100%)}.prescriptions-page .toolbar{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:16px 20px;background:var(--color-bg-white);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04)}.prescriptions-page .toolbar .toolbar-left{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.prescriptions-page .toolbar .toolbar-left .ant-input-affix-wrapper{height:37px;padding:0 11px;display:flex;align-items:center}.prescriptions-page .toolbar .toolbar-left .ant-select{height:37px}.prescriptions-page .toolbar .toolbar-left .ant-select .ant-select-selector{height:37px!important;display:flex;align-items:center}.prescriptions-page .toolbar .toolbar-left .ant-picker{height:37px;padding:0 11px;display:flex;align-items:center}.prescriptions-page .toolbar .toolbar-left .ant-btn{height:37px;padding:0 15px}.prescriptions-page .toolbar .toolbar-right{display:flex;gap:12px;align-items:center}.prescriptions-page .toolbar .toolbar-right .ant-btn{height:37px;padding:0 15px}.prescriptions-page .table-container{flex:1;display:flex;flex-direction:column;background:var(--color-bg-white);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04);padding:16px;overflow:hidden;position:relative}.prescriptions-page .table-container .ant-table-wrapper,.prescriptions-page .table-container .ant-spin-nested-loading,.prescriptions-page .table-container .ant-spin-container,.prescriptions-page .table-container .ant-table,.prescriptions-page .table-container .ant-table-container{flex:1;display:flex;flex-direction:column}.prescriptions-page .table-container .ant-table-body{flex:1}.prescriptions-page .table-container .ant-table-thead>tr>th{background:#f8fafc!important;font-weight:600;color:var(--color-text-secondary);font-size:var(--font-size-body);text-align:center}.prescriptions-page .table-container .ant-table-tbody>tr>td{padding:12px 16px;font-size:var(--font-size-body)}.prescriptions-page .table-container .ant-pagination{margin-top:16px;margin-bottom:0;display:flex;align-items:center}.prescriptions-page .table-container .ant-pagination .ant-pagination-options{display:flex;align-items:center}.prescriptions-page .table-container .ant-pagination .ant-select{height:28px}.prescriptions-page .table-container .ant-pagination .ant-select .ant-select-selector{height:28px!important;min-height:28px!important;padding:0 8px!important;display:flex;align-items:center}.prescriptions-page .table-container .ant-pagination .ant-select .ant-select-selection-item{line-height:26px!important}.prescriptions-page .table-container .ant-pagination .ant-pagination-options-quick-jumper{height:28px;line-height:28px}.prescriptions-page .table-container .ant-pagination .ant-pagination-options-quick-jumper input{height:28px!important;width:40px!important}.templates-page{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}.templates-page .page-container{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:var(--spacing-lg);background:linear-gradient(180deg,#f8fafc 0%,var(--color-bg-page) 100%)}.templates-page .toolbar{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:16px 20px;background:var(--color-bg-white);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04)}.templates-page .toolbar .toolbar-left{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.templates-page .toolbar .toolbar-left .ant-input-affix-wrapper{height:37px;padding:0 11px;display:flex;align-items:center}.templates-page .toolbar .toolbar-left .ant-select{height:37px}.templates-page .toolbar .toolbar-left .ant-select .ant-select-selector{height:37px!important;display:flex;align-items:center}.templates-page .toolbar .toolbar-left .ant-picker{height:37px;padding:0 11px;display:flex;align-items:center}.templates-page .toolbar .toolbar-left .ant-btn{height:37px;padding:0 15px}.templates-page .toolbar .toolbar-right{display:flex;gap:12px;align-items:center}.templates-page .toolbar .toolbar-right .ant-btn{height:37px;padding:0 15px}.templates-page .table-container{flex:1;display:flex;flex-direction:column;background:var(--color-bg-white);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:1px solid rgba(0,0,0,.04);padding:16px;overflow:hidden;position:relative}.templates-page .table-container .ant-table-wrapper,.templates-page .table-container .ant-spin-nested-loading,.templates-page .table-container .ant-spin-container{flex:1;display:flex;flex-direction:column;overflow:hidden}.templates-page .table-container .ant-table{flex:1;display:flex;flex-direction:column;table-layout:fixed}.templates-page .table-container .ant-table-container{flex:1;display:flex;flex-direction:column;overflow:hidden}.templates-page .table-container .ant-table-body{flex:1}.templates-page .table-container .ant-table-thead>tr>th{background:#f8fafc!important;font-weight:600;color:var(--color-text-secondary);font-size:var(--font-size-body);text-align:center}.templates-page .table-container .ant-table-tbody>tr>td{padding:12px 16px;font-size:var(--font-size-body);overflow:hidden;text-overflow:ellipsis}.templates-page .table-container .prescription-detail-cell{display:flex;flex-direction:column;gap:4px;width:100%;overflow:hidden}.templates-page .table-container .prescription-detail-cell .prescription-item-row{display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding:2px 0;font-size:var(--font-size-small);line-height:1.4;max-width:100%;overflow:hidden}.templates-page .table-container .prescription-detail-cell .prescription-item-row .medicine-name{font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.templates-page .table-container .prescription-detail-cell .prescription-item-row .medicine-spec{color:#666;background:#f5f5f5;padding:0 4px;border-radius:2px;white-space:nowrap}.templates-page .table-container .prescription-detail-cell .prescription-item-row .medicine-usage{color:#1890ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.templates-page .table-container .prescription-detail-cell .prescription-item-row .medicine-quantity{color:#52c41a;background:#f6ffed;padding:0 4px;border-radius:2px;white-space:nowrap}.templates-page .table-container .ant-table-cell .ant-space{flex-wrap:nowrap}.templates-page .table-container .ant-table-cell .ant-btn-link{padding:0 8px;font-size:var(--font-size-caption)}.templates-page .table-container .ant-pagination{margin-top:16px;margin-bottom:0;display:flex;align-items:center}.templates-page .table-container .ant-pagination .ant-pagination-options{display:flex;align-items:center}.templates-page .table-container .ant-pagination .ant-select{height:28px}.templates-page .table-container .ant-pagination .ant-select .ant-select-selector{height:28px!important;min-height:28px!important;padding:0 8px!important;display:flex;align-items:center}.templates-page .table-container .ant-pagination .ant-select .ant-select-selection-item{line-height:26px!important}.templates-page .table-container .ant-pagination .ant-pagination-options-quick-jumper{height:28px;line-height:28px}.templates-page .table-container .ant-pagination .ant-pagination-options-quick-jumper input{height:28px!important;width:40px!important}.templates-page .ant-modal .ant-modal-title{font-size:var(--font-size-h2);font-weight:600}.templates-page .ant-modal .ant-form-item-label>label{font-size:var(--font-size-body2)}.templates-page .ant-modal .ant-input,.templates-page .ant-modal .ant-input-textarea textarea{font-size:var(--font-size-body2)}.template-modal .ant-modal-body{max-height:70vh;overflow-y:auto;padding:24px}.template-modal .ant-tabs-content{padding-top:16px}.template-modal .ant-form-item{margin-bottom:16px}.template-modal .ant-input,.template-modal .ant-input-number,.template-modal .ant-select .ant-select-selector{height:32px!important;min-height:32px!important}.template-modal .ant-input{padding:4px 11px}.template-modal .ant-input-textarea{height:auto!important}.template-modal .ant-input-textarea textarea{min-height:80px!important;height:auto!important}.template-modal .physical-exam-textarea,.template-modal .physical-exam-textarea textarea{height:auto!important;min-height:80px!important}.template-modal .ant-select-selector{padding:0 11px!important;display:flex!important;align-items:center!important}.template-modal .ant-select-selection-item{line-height:30px!important}.template-modal .readonly-value{color:var(--color-text-primary);font-size:var(--font-size-body2);min-height:32px;display:flex;align-items:center;flex-wrap:wrap;gap:4px}.template-modal .diagnosis-tags{min-height:auto;padding:4px 0}.template-modal .diagnosis-tags .ant-tag{margin-right:6px;padding:2px 8px;font-size:var(--font-size-body2);border-radius:4px}.template-modal .diagnosis-input-wrapper{display:flex;gap:0;width:100%;margin-bottom:8px}.template-modal .diagnosis-input-wrapper .ant-input{flex:1;height:36px!important;min-height:36px!important;border-top-right-radius:0;border-bottom-right-radius:0}.template-modal .diagnosis-input-wrapper .ant-btn{height:36px!important;min-height:36px!important;border-top-left-radius:0;border-bottom-left-radius:0}.template-modal .prescription-section .prescription-list{display:flex;flex-direction:column;gap:8px}.template-modal .prescription-section .prescription-list .prescription-item{padding:12px;background:#fafafa;border-radius:6px;border:1px solid rgba(0,0,0,.06)}.template-modal .prescription-section .prescription-list .prescription-item .prescription-item-readonly .prescription-name{font-weight:500;font-size:var(--font-size-body);color:var(--color-text-primary);margin-bottom:2px}.template-modal .prescription-section .prescription-list .prescription-item .prescription-item-readonly .prescription-detail{font-size:var(--font-size-body2);color:var(--color-text-secondary)}.template-modal .prescription-section .prescription-list .prescription-item .prescription-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.template-modal .prescription-section .prescription-list .prescription-item .prescription-header .prescription-index{font-weight:600;font-size:var(--font-size-body2);color:var(--color-text-primary)}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields{display:flex;flex-direction:column;gap:8px}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row{display:flex;gap:8px}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item{display:flex;flex-direction:column;gap:4px}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item label{font-size:var(--font-size-body2);color:var(--color-text-secondary);font-weight:500}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-input,.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-input-number,.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-select .ant-select-selector,.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-picker,.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-select-auto-complete .ant-input{height:32px!important;min-height:32px!important}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-input{padding:4px 11px}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-input-number{width:100%}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item .ant-input-number .ant-input-number-input{height:22px;padding:0 7px}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-name{flex:3;min-width:0}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-spec{flex:2;min-width:0}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-quantity{width:140px;flex-shrink:0}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-quantity .quantity-row{display:flex;gap:6px;align-items:center}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-quantity .quantity-row .ant-input-number{width:55px;height:32px!important}.template-modal .prescription-section .prescription-list .prescription-item .prescription-fields .field-row .field-item.field-usage{flex:1;min-width:0}.medicine-option{display:flex;align-items:center;gap:12px;min-width:500px;padding:4px 0}.medicine-option .medicine-name{font-weight:500;color:var(--color-text-primary);min-width:140px}.medicine-option .medicine-spec{font-size:var(--font-size-xs);color:var(--color-text-secondary);min-width:100px}.medicine-option .medicine-batch{font-size:var(--font-size-xs);color:#1890ff;min-width:140px}.medicine-option .medicine-stock{font-size:var(--font-size-xs);color:#52c41a;margin-left:auto;min-width:80px;text-align:right}:global .ant-select-dropdown .medicine-option{min-width:500px}.statistics-page .stat-card{border-radius:16px;border:1px solid rgba(0,0,0,.04)!important}.statistics-page .diagnosis-item{display:flex;align-items:center;padding:12px 0;border-bottom:1px solid var(--color-bg-border)}.statistics-page .diagnosis-item:last-child{border-bottom:none}.statistics-page .diagnosis-item .rank{width:24px;height:24px;border-radius:6px;background:var(--color-primary-bg);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:12px;margin-right:12px}.statistics-page .diagnosis-item .name{flex:1;font-weight:500}.statistics-page .diagnosis-item .count{color:var(--color-primary);font-weight:600}.statistics-page .trend-card .trend-chart{height:200px;display:flex;align-items:flex-end;justify-content:space-around;padding:20px 0}.statistics-page .trend-card .trend-chart .bar-item{display:flex;flex-direction:column;align-items:center}.statistics-page .trend-card .trend-chart .bar-item .bar{width:40px;background:linear-gradient(180deg,var(--color-primary) 0%,#40a9ff 100%);border-radius:8px 8px 0 0;min-height:20px;position:relative}.statistics-page .trend-card .trend-chart .bar-item .bar .value{position:absolute;top:-24px;left:50%;transform:translate(-50%);font-weight:600;font-size:13px}.statistics-page .trend-card .trend-chart .bar-item .label{margin-top:12px;font-size:12px;color:var(--color-text-tertiary)}.clinic-settings-page{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}.clinic-settings-page .page-container{flex:1;display:flex;flex-direction:column;overflow-y:auto;background:#fff}.clinic-settings-page .settings-layout{display:flex;margin:0 auto;width:95%;min-height:100%}.clinic-settings-page .settings-sidebar{width:240px;flex-shrink:0;padding:24px 0;background:#fff;position:sticky;top:0;height:fit-content}.clinic-settings-page .settings-sidebar .sidebar-title{font-size:22px;font-weight:400;color:#202124;padding:0 24px 16px}.clinic-settings-page .settings-sidebar .sidebar-menu .menu-item{padding:10px 24px;font-size:14px;color:#5f6368;cursor:pointer;border-radius:0 24px 24px 0;margin-right:12px;transition:background-color .1s}.clinic-settings-page .settings-sidebar .sidebar-menu .menu-item:hover{background:#0000000a}.clinic-settings-page .settings-sidebar .sidebar-menu .menu-item.active{background:#e8f0fe;color:#1967d2;font-weight:500}.clinic-settings-page .settings-content{flex:1;min-width:0;padding:24px 48px 48px;background:#fff;margin:24px 24px 24px 0;border-radius:8px}.clinic-settings-page .settings-section .section-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e0e0e0}.clinic-settings-page .settings-section .section-header .section-title{font-size:18px;font-weight:400;color:#202124;margin:0 0 4px}.clinic-settings-page .settings-section .section-header .section-desc{font-size:13px;color:#5f6368;margin:0}.clinic-settings-page .setting-item{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 0}.clinic-settings-page .setting-item .setting-info{flex:1;min-width:0}.clinic-settings-page .setting-item .setting-info .setting-label{font-size:14px;font-weight:500;color:#202124;margin-bottom:4px}.clinic-settings-page .setting-item .setting-info .setting-desc{font-size:13px;color:#5f6368;line-height:1.5}.clinic-settings-page .setting-item .setting-control{flex-shrink:0;margin-left:24px;display:flex;align-items:center}.clinic-settings-page .setting-item .setting-control .ant-input-affix-wrapper{border-radius:4px}.clinic-settings-page .setting-item .setting-control .ant-input-affix-wrapper:hover,.clinic-settings-page .setting-item .setting-control .ant-input-affix-wrapper:focus{border-color:#1a73e8}.clinic-settings-page .setting-footer{display:flex;justify-content:flex-end;padding-top:16px}.clinic-settings-page .setting-footer .ant-btn-primary{background:#1a73e8;border-color:#1a73e8;border-radius:4px;font-weight:500}.clinic-settings-page .setting-footer .ant-btn-primary:hover{background:#1557b0;border-color:#1557b0}.clinic-settings-page .ant-divider{margin:0;border-color:#e0e0e0}.clinic-settings-page .clinic-avatar{display:flex;align-items:center;padding-bottom:16px;margin-bottom:16px}.clinic-settings-page .clinic-avatar .avatar-info{margin-left:16px}.clinic-settings-page .clinic-avatar .avatar-info .avatar-tip{font-size:13px;color:#5f6368;margin:6px 0 0}.clinic-settings-page .member-legend{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;background:#f8f9fa;border-radius:8px}.clinic-settings-page .member-legend .legend-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#5f6368}.clinic-settings-page .member-legend .legend-item .anticon{font-size:14px}.clinic-settings-page .member-legend .legend-actions{margin-left:auto}.clinic-settings-page .ant-table .ant-table-thead>tr>th{background:#f8f9fa;font-weight:500;font-size:13px;color:#5f6368}.clinic-settings-page .ant-table .ant-table-tbody>tr>td{font-size:14px}.clinic-settings-page .ant-form-item{margin-bottom:0}@media (max-width: 768px){.clinic-settings-page .settings-layout{flex-direction:column}.clinic-settings-page .settings-sidebar{width:100%;padding:16px;position:static}.clinic-settings-page .settings-sidebar .sidebar-title{padding:0 0 12px}.clinic-settings-page .settings-sidebar .sidebar-menu{display:flex;flex-wrap:wrap;gap:8px}.clinic-settings-page .settings-sidebar .sidebar-menu .menu-item{margin-right:0;border-radius:16px;padding:8px 16px}.clinic-settings-page .settings-content{margin:0 16px 16px;padding:16px}.clinic-settings-page .setting-item{flex-direction:column;gap:12px}.clinic-settings-page .setting-item .setting-control{margin-left:0}}.system-settings-page{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}.system-settings-page .page-container{flex:1;display:flex;flex-direction:column;overflow-y:auto;background:#fff}.system-settings-page .settings-layout{display:flex;margin:0 auto;width:95%;min-height:100%}.system-settings-page .settings-sidebar{width:240px;flex-shrink:0;padding:24px 0;background:#fff;position:sticky;top:0;height:fit-content}.system-settings-page .settings-sidebar .sidebar-title{font-size:22px;font-weight:400;color:#202124;padding:0 24px 16px}.system-settings-page .settings-sidebar .sidebar-menu .menu-item{padding:10px 24px;font-size:14px;color:#5f6368;cursor:pointer;border-radius:0 24px 24px 0;margin-right:12px;transition:background-color .1s}.system-settings-page .settings-sidebar .sidebar-menu .menu-item:hover{background:#0000000a}.system-settings-page .settings-sidebar .sidebar-menu .menu-item.active{background:#e8f0fe;color:#1967d2;font-weight:500}.system-settings-page .settings-content{flex:1;min-width:0;padding:24px 48px 48px;background:#fff;margin:24px 24px 24px 0;border-radius:8px}.system-settings-page .settings-section .section-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e0e0e0}.system-settings-page .settings-section .section-header .section-title{font-size:18px;font-weight:400;color:#202124;margin:0 0 4px}.system-settings-page .settings-section .section-header .section-desc{font-size:13px;color:#5f6368;margin:0}.system-settings-page .setting-footer{display:flex;justify-content:flex-end;padding-top:16px}.system-settings-page .setting-footer .ant-btn-primary{background:#1a73e8;border-color:#1a73e8;border-radius:4px;font-weight:500}.system-settings-page .setting-footer .ant-btn-primary:hover{background:#1557b0;border-color:#1557b0}.system-settings-page .setting-item{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 0}.system-settings-page .setting-item .setting-info{flex:1;min-width:0}.system-settings-page .setting-item .setting-info .setting-label{font-size:14px;font-weight:500;color:#202124;margin-bottom:4px}.system-settings-page .setting-item .setting-info .setting-desc{font-size:13px;color:#5f6368;line-height:1.5}.system-settings-page .setting-item .setting-control{flex-shrink:0;margin-left:24px;display:flex;align-items:center}.system-settings-page .setting-item .setting-control .ant-input-affix-wrapper{border-radius:4px}.system-settings-page .setting-item .setting-control .ant-input-affix-wrapper:hover,.system-settings-page .setting-item .setting-control .ant-input-affix-wrapper:focus{border-color:#1a73e8}.system-settings-page .setting-item .setting-control .ant-switch{background:#00000061}.system-settings-page .setting-item .setting-control .ant-switch.ant-switch-checked{background:#1a73e8}.system-settings-page .ant-divider{margin:0;border-color:#e0e0e0}.system-settings-page .ant-btn-primary{background:#1a73e8;border-color:#1a73e8;border-radius:4px;font-weight:500}.system-settings-page .ant-btn-primary:hover{background:#1557b0;border-color:#1557b0}.system-settings-page .ant-form-item{margin-bottom:0}@media (max-width: 768px){.system-settings-page .settings-layout{flex-direction:column}.system-settings-page .settings-sidebar{width:100%;padding:16px;position:static}.system-settings-page .settings-sidebar .sidebar-title{padding:0 0 12px}.system-settings-page .settings-sidebar .sidebar-menu{display:flex;flex-wrap:wrap;gap:8px}.system-settings-page .settings-sidebar .sidebar-menu .menu-item{margin-right:0;border-radius:16px;padding:8px 16px}.system-settings-page .settings-content{margin:0 16px 16px;padding:16px}.system-settings-page .setting-item{flex-direction:column;gap:12px}.system-settings-page .setting-item .setting-control{margin-left:0}}.operation-logs-page .ant-select-selector{height:32px!important;border-radius:6px!important}.operation-logs-page .ant-select-selection-search-input{height:30px!important}.operation-logs-page .ant-select-selection-item,.operation-logs-page .ant-select-selection-placeholder{line-height:30px!important}.operation-logs-page .ant-input-affix-wrapper,.operation-logs-page .ant-picker{height:32px!important;padding:0 11px!important;border-radius:6px!important}.operation-logs-page .ant-btn{height:32px!important;padding:0 15px!important;border-radius:6px!important}.sys-admin-page{min-height:100vh;background:#f5f7fa}.sys-admin-page .sys-admin-content{max-width:1200px;margin:0 auto;padding:20px}.sys-admin-page .sys-admin-content .ant-tabs{background:#fff;border-radius:12px;padding:16px 24px;box-shadow:0 2px 8px #0000000f}.sys-admin-page .sys-admin-content .table-card{border-radius:8px;box-shadow:none}.sys-admin-page .sys-admin-content .table-card .ant-card-body{padding:0}.sys-admin-page .sys-admin-content .toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:0 4px}.sys-admin-page .sys-admin-content .ant-table .ant-table-thead>tr>th{background:#fafafa;font-weight:600;font-size:13px}.sys-admin-page .sys-admin-content .ant-table .ant-table-tbody>tr>td{font-size:13px}.sys-admin-page .sys-admin-content .ant-table .ant-table-tbody>tr:hover>td{background:#f5f7fa}:root{--color-primary: #1890FF;--color-primary-hover: #40A9FF;--color-primary-active: #69C0FF;--color-primary-bg: #E6F7FF;--color-health: #00C9A7;--color-health-hover: #2EE8C4;--color-health-bg: #E8FBF7;--color-ai: #722ED1;--color-ai-hover: #9254DE;--color-ai-bg: #F9F0FF;--color-success: #52C41A;--color-success-bg: #F6FFED;--color-warning: #FAAD14;--color-warning-bg: #FFF7E6;--color-error: #FF4D4F;--color-error-bg: #FFF2F0;--color-info: #1890FF;--color-info-bg: #E6F7FF;--color-text-primary: #262626;--color-text-secondary: #595959;--color-text-tertiary: #8C8C8C;--color-text-disabled: #BFBFBF;--color-bg-white: #FFFFFF;--color-bg-page: #F5F7FA;--color-bg-card: #F5F5F5;--color-bg-border: #E8ECF0;--color-bg-divider: #D9D9D9;--font-family: "PingFang SC", -apple-system, "Microsoft YaHei", sans-serif;--font-size-xs: 13px;--font-size-sm: 14px;--font-size-base: 15px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-xxl: 24px;--font-size-h1: 24px;--font-size-h2: 20px;--font-size-h3: 18px;--font-size-body: 16px;--font-size-body2: 15px;--font-size-caption: 14px;--font-size-small: 13px;--line-height-h1: 32px;--line-height-h2: 28px;--line-height-h3: 26px;--line-height-body: 24px;--line-height-body2: 22px;--line-height-caption: 20px;--line-height-small: 18px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-2xl: 24px;--spacing-3xl: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 50%;--shadow-card: 0 1px 2px rgba(0,0,0,.04), 0 2px 4px rgba(0,0,0,.04);--shadow-raised: 0 4px 8px rgba(0,0,0,.08), 0 8px 16px rgba(0,0,0,.08);--shadow-modal: 0 8px 16px rgba(0,0,0,.12), 0 16px 32px rgba(0,0,0,.12);--gradient-primary: linear-gradient(135deg, #1890FF 0%, #00C9A7 100%);--gradient-ai: linear-gradient(135deg, #722ED1 0%, #1890FF 100%);--gradient-health: linear-gradient(135deg, #00C9A7 0%, #52C41A 100%);--layout-header-height: 68px;--layout-sidebar-width: 240px;--layout-sidebar-collapsed-width: 80px}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;font-family:var(--font-family);font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--color-text-primary);background-color:var(--color-bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-gutter:auto}#root{width:100%;height:100%}a{color:var(--color-primary);text-decoration:none}a:hover{color:var(--color-primary-hover)}ul,ol{list-style:none}button{cursor:pointer;border:none;background:none;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:transparent;border-radius:3px}::-webkit-scrollbar-corner{background:transparent}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.page-header .page-title{font-size:var(--font-size-h3);font-weight:600;color:var(--color-text-primary);letter-spacing:-.02em}.toolbar .ant-input-affix-wrapper,.toolbar .ant-select,.toolbar .ant-picker,.toolbar .ant-btn{vertical-align:middle}.card{background:var(--color-bg-white);border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000000a,0 4px 12px #00000008;padding:var(--spacing-xl);border:1px solid rgba(0,0,0,.04);transition:box-shadow .2s ease,transform .2s ease}.card:hover{box-shadow:0 4px 12px #0000000f,0 8px 24px #0000000a}.section-title{font-size:var(--font-size-h3);font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-bg-border)}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.bg-primary{background-color:var(--color-primary-bg)}.bg-success{background-color:var(--color-success-bg)}.bg-warning{background-color:var(--color-warning-bg)}.bg-error{background-color:var(--color-error-bg)}.stat-card{background:var(--color-bg-white);border-radius:16px;padding:24px;box-shadow:0 1px 3px #0000000a,0 4px 12px #00000008;border:1px solid rgba(0,0,0,.04);transition:all .25s ease;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-health));opacity:0;transition:opacity .25s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #1890ff1f}.stat-card:hover:before{opacity:1}.stat-card .ant-card-body{padding:24px}.stat-card .stat-icon{width:60px;height:60px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl)}.stat-card .stat-content{flex:1}.stat-card .stat-content .stat-value{font-size:var(--font-size-xxl);font-weight:700;color:var(--color-text-primary);line-height:1.1;letter-spacing:-.02em}.stat-card .stat-content .stat-label{font-size:var(--font-size-body2);color:var(--color-text-secondary);margin-top:8px;font-weight:500}.stat-card .stat-content .stat-trend{font-size:var(--font-size-caption);margin-top:10px;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-weight:500}.stat-card .stat-content .stat-trend.up{color:var(--color-success);background:var(--color-success-bg)}.stat-card .stat-content .stat-trend.down{color:var(--color-error);background:var(--color-error-bg)}.alert-item{display:flex;align-items:center;padding:16px 20px;background:linear-gradient(135deg,var(--color-warning-bg) 0%,#fffbeb 100%);border-radius:12px;margin-bottom:12px;border:1px solid rgba(250,173,20,.2);transition:all .2s ease}.alert-item:hover{transform:translate(4px);box-shadow:0 2px 8px #faad1426}.alert-item .alert-icon{color:var(--color-warning);margin-right:14px;font-size:var(--font-size-md)}.alert-item .alert-text{flex:1;font-size:var(--font-size-body);color:var(--color-text-primary)}.alert-item .alert-action{color:var(--color-primary);font-size:var(--font-size-body);cursor:pointer;font-weight:500}.alert-item .alert-action:hover{color:var(--color-primary-hover)}.ant-card{border-radius:16px!important;border:1px solid rgba(0,0,0,.04)!important;box-shadow:0 1px 3px #0000000a,0 4px 12px #00000008!important}.ant-card .ant-card-head{border-bottom:1px solid var(--color-bg-border)!important;padding:0 24px}.ant-card .ant-card-head .ant-card-head-title{font-weight:600;font-size:var(--font-size-md)}.ant-card .ant-card-body{padding:24px}.ant-table{border-radius:12px;overflow:hidden;font-size:var(--font-size-body2)}.ant-table .ant-table-thead>tr>th,.ant-table .ant-table-tbody>tr>td{min-width:80px}.ant-table .ant-table-thead>tr>th{background:#f8fafc!important;font-weight:600;color:var(--color-text-secondary);font-size:var(--font-size-caption);border-bottom:1px solid var(--color-bg-border)!important;padding:16px}.ant-table .ant-table-tbody>tr>td{padding:16px}.ant-table .ant-table-tbody>tr:hover>td{background:var(--color-primary-bg)!important}.ant-btn{font-size:var(--font-size-body2);height:40px;padding:0 20px;border-radius:10px;font-weight:500}.ant-btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-health) 100%)!important;border:none!important;box-shadow:0 2px 8px #1890ff40!important}.ant-btn-primary:hover{box-shadow:0 4px 12px #1890ff59!important;transform:translateY(-1px)}.ant-input{font-size:var(--font-size-body2)}.ant-input-affix-wrapper{border-radius:10px!important;border:1px solid #e8e8e8!important;padding:10px 14px}.ant-input-affix-wrapper:hover,.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper.ant-input-affix-wrapper-focused{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px #1890ff1a!important}.ant-select-selector{border-radius:10px!important;border:1px solid #e8e8e8!important;height:42px!important}.ant-select-selector .ant-select-selection-item{font-size:var(--font-size-body2);line-height:40px!important}.ant-tag{border-radius:6px;font-weight:500;font-size:var(--font-size-caption);padding:4px 10px}.ant-form-item-label>label{font-size:var(--font-size-body2);font-weight:500}.ant-modal .ant-modal-title{font-size:var(--font-size-h2);font-weight:600}.ant-modal .ant-modal-body{font-size:var(--font-size-body2)}.ant-menu-item{font-size:var(--font-size-body)!important}.ant-descriptions-item-label,.ant-descriptions-item-content{font-size:var(--font-size-body2)!important}.scrollbar-hover::-webkit-scrollbar-thumb{background:transparent}.scrollbar-hover::-webkit-scrollbar-track{background:transparent}.scrollbar-hover:hover::-webkit-scrollbar-thumb{background:#c1c1c1}.scrollbar-hover:hover::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.scrollbar-hover:hover::-webkit-scrollbar-track{background:#f1f1f1}.ant-table-body::-webkit-scrollbar-thumb{background:transparent}.ant-table-body::-webkit-scrollbar-track{background:transparent}.ant-table-body:hover::-webkit-scrollbar-thumb{background:#c1c1c1}.ant-table-body:hover::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.ant-table-body:hover::-webkit-scrollbar-track{background:#f1f1f1}
