*{box-sizing:border-box;margin:0;padding:0}html,body,#app{width:100%;height:100%}body{color:#1a2a4a;background:#f3f6fb;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}.app-shell{min-height:100%;position:relative}.page-fade-enter-active,.page-fade-leave-active{transition:opacity .2s}.page-fade-enter-from,.page-fade-leave-to{opacity:0}#nprogress{pointer-events:none}#nprogress .bar{z-index:1031;background:#29d;width:100%;height:2px;position:fixed;top:0;left:0}#nprogress .peg{opacity:1;width:100px;height:100%;display:block;position:absolute;right:0;transform:rotate(3deg)translateY(-4px);box-shadow:0 0 10px #29d,0 0 5px #29d}#nprogress .spinner{z-index:1031;display:block;position:fixed;top:15px;right:15px}#nprogress .spinner-icon{box-sizing:border-box;border:2px solid #0000;border-color:#29d #0000 #0000 #29d;border-radius:50%;width:18px;height:18px;animation:.4s linear infinite nprogress-spinner}.nprogress-custom-parent{position:relative;overflow:hidden}.nprogress-custom-parent #nprogress .spinner,.nprogress-custom-parent #nprogress .bar{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes nprogress-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,Arial,sans-serif}a{color:inherit;text-decoration:none}.t-dialog{max-width:calc(100vw - 32px)}.t-dialog__body{max-height:70vh;overflow-y:auto;overflow-x:hidden!important}.t-dialog .t-form{box-sizing:border-box;width:100%}.t-button.t-button--shape-circle.t-button--size-small{width:32px!important;min-width:32px!important;height:32px!important;padding:0!important}.t-button.t-button--shape-circle.t-button--size-small .t-icon{font-size:16px!important}html{-webkit-text-size-adjust:100%}body{-webkit-tap-highlight-color:transparent;text-rendering:optimizelegibility}.layout-content,.t-dialog__body,.t-drawer__body,.t-table__content{-webkit-overflow-scrolling:touch}.protocol-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr))!important}@media (width<=768px){.captcha-dialog-root .t-dialog,.t-dialog.captcha-dialog-root{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;padding:16px 14px!important}.captcha-dialog-root .t-dialog__header,.t-dialog.captcha-dialog-root .t-dialog__header{padding:14px 13px 6px!important}.captcha-dialog-root .t-dialog__body,.t-dialog.captcha-dialog-root .t-dialog__body{padding:12px 13px 10px!important;overflow:hidden!important}}@media (width<=1024px){.page-main,.home-main{padding:18px 18px 28px!important}}@media (width<=768px){.page-main,.home-main{padding:12px 12px 28px!important}.search-bar{border-radius:10px!important;margin-bottom:12px!important;padding:12px!important}.search-bar .t-form{display:block!important}.search-bar .t-form__item{width:100%!important;margin:0 0 10px!important;display:block!important}.search-bar .t-form__controls,.search-bar .t-form__controls-content{width:100%!important}.search-bar .t-form__item:not(:last-child) .t-form__controls-content>*{width:100%!important;max-width:100%!important}.search-bar .t-form__item:last-child{margin-bottom:0!important}.search-bar .t-form__item:last-child .t-form__controls,.search-bar .t-form__item:last-child .t-form__controls-content{align-items:center;gap:10px;display:flex}.search-bar .t-form__item:last-child .t-button{flex:1 1 0;min-width:0}.action-bar{flex-wrap:wrap;align-items:stretch;gap:10px;margin-bottom:12px!important;padding:0!important}.action-bar-left{flex-wrap:wrap;gap:8px;width:100%;display:flex}.action-bar-left .t-button{flex:auto;margin-left:0!important}.action-bar-right{text-align:right;width:100%;line-height:1.3}.data-card,.table-card{border-radius:10px!important;padding:12px!important}.table-card .t-table__content>table{min-width:640px}.t-pagination{flex-wrap:wrap;justify-content:center;row-gap:8px}.t-pagination__total{text-align:center;flex:100%}.t-pagination__jump{padding-left:0}.t-dialog{border-radius:14px!important;width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important}.t-dialog__header{padding:16px 16px 10px!important;font-size:16px!important}.t-dialog__body{max-height:62vh;padding:10px 16px 16px!important}.t-dialog__footer{padding:12px 16px 16px!important}.t-dialog .t-form__item{margin-bottom:14px;display:block}.t-dialog .t-form__label{margin-bottom:4px;line-height:22px;display:block;float:none!important;text-align:left!important;width:auto!important;min-height:0!important;padding-right:0!important}.t-dialog .t-form__controls-content{flex-wrap:wrap;gap:8px}.t-dialog .t-form .t-form__controls{width:100%!important;margin-left:0!important}.t-dialog .t-form .t-input,.t-dialog .t-form .t-input__wrap,.t-dialog .t-form .t-select,.t-dialog .t-form .t-select__wrap,.t-dialog .t-form .t-tree-select,.t-dialog .t-form .t-cascader,.t-dialog .t-form .t-input-number,.t-dialog .t-form .t-date-picker,.t-dialog .t-form .t-date-range-picker,.t-dialog .t-form .t-time-picker,.t-dialog .t-form .t-textarea,.t-dialog .t-form .t-textarea__inner{width:100%!important;max-width:100%!important}.t-dialog .t-tree{max-height:min(260px,42vh)!important}.t-dialog .t-tree .t-tree__item{min-height:40px}.t-dialog .t-table__content>table{min-width:480px}.t-dialog__footer .t-button{flex:1 1 0}.t-dialog .dialog-footer{flex-wrap:wrap;gap:10px}.t-dialog .dialog-footer .t-button{flex:1 1 0;min-width:0;min-height:40px}.form-row-2{width:100%!important;display:block!important}.form-row-2>*{flex:none!important;width:100%!important}.t-drawer,.t-drawer__content-wrapper{width:100%!important;max-width:100vw!important}.confirm-del{gap:10px}.confirm-del-footer{gap:10px!important}.confirm-del-footer .t-button{flex:1 1 0}.result-page{min-height:62vh;padding:32px 16px!important}.result-code{letter-spacing:-2px!important;font-size:64px!important}.result-title{font-size:20px!important}.result-actions{width:100%;max-width:320px}.result-actions .t-button{flex:1 1 0}}:root{--mx-brand:#2379f7;--mx-brand-hover:#1a5fb8;--mx-brand-light:#c6dcff;--mx-brand-bg:#eff4ff;--mx-success:#16a34a;--mx-warning:#d97706;--mx-danger:#dc2626;--mx-text:#1a2a4a;--mx-text-2:#5e6d8c;--mx-text-3:#8a9ab8;--mx-text-4:#b8c8e0;--mx-bg-page:#f0f4ff;--mx-bg-card:#fff;--mx-border:#eef0f5;--mx-divider:#eef0f5;--mx-fill:#f5f7fa;--mx-radius-sm:8px;--mx-radius-md:12px;--mx-radius-lg:16px;--mx-radius-xl:20px;--mx-shadow-sm:0 1px 3px #0f172a0d;--mx-shadow-md:0 4px 16px #0f172a0f;--mx-dialog-gutter:32px;--mx-touch-min:44px}@media (width<=768px){:root{--mx-dialog-gutter:24px}}.patient-detail-page{flex-direction:column;gap:16px;padding:20px 24px 32px;display:flex}.patient-detail-page .page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.patient-detail-page .page-title{letter-spacing:-.02em;color:var(--mx-text);font-size:22px;font-weight:700;line-height:1.2}.patient-detail-page .page-subtitle{color:var(--mx-text-3);margin-top:4px;font-size:13px;line-height:1.6}.patient-detail-page .action-btns{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.patient-detail-page .detail-card{background:var(--mx-bg-card);border:1px solid var(--mx-border);border-radius:var(--mx-radius-lg);box-shadow:var(--mx-shadow-sm);padding:20px 24px 24px}.patient-detail-page .card-head{border-bottom:1px solid var(--mx-divider);justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;display:flex}.patient-detail-page .card-title{color:var(--mx-text);align-items:center;gap:8px;font-size:15px;font-weight:600;display:inline-flex}.patient-detail-page .card-title .t-icon{color:var(--mx-brand)}.patient-detail-page .card-extra{align-items:center;gap:8px;margin-left:auto;display:flex}.patient-detail-page .info-item label{color:var(--mx-text-3);margin-bottom:4px;font-size:12px;display:block}.patient-detail-page .info-item span{color:var(--mx-text);word-break:break-all;font-size:14px}.patient-detail-page .mono-pre,.patient-detail-page .raw-pre,.patient-detail-page .analysis-content pre,.patient-detail-page .health-info-raw pre,.patient-detail-page .sub-detail-wrap pre{color:var(--mx-text-2);white-space:pre-wrap;word-break:break-all;background:var(--mx-fill);border:1px solid var(--mx-divider);border-radius:var(--mx-radius-sm);max-height:440px;padding:14px 16px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.7;overflow:auto}.patient-detail-page .t-table th{background:var(--mx-fill)!important}.patient-detail-page .t-table__content,.patient-detail-page .t-table__body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#64748b47 transparent}.patient-detail-page .t-table__content::-webkit-scrollbar{width:6px;height:6px}.patient-detail-page .t-table__body::-webkit-scrollbar{width:6px;height:6px}.patient-detail-page .t-table__content::-webkit-scrollbar-track{background:0 0}.patient-detail-page .t-table__body::-webkit-scrollbar-track{background:0 0}.patient-detail-page .t-table__content::-webkit-scrollbar-corner{background:0 0}.patient-detail-page .t-table__body::-webkit-scrollbar-corner{background:0 0}.patient-detail-page .t-table__content::-webkit-scrollbar-thumb{background:#64748b42;border-radius:999px}.patient-detail-page .t-table__body::-webkit-scrollbar-thumb{background:#64748b42;border-radius:999px}.patient-detail-page .t-table__content::-webkit-scrollbar-thumb:hover{background:#64748b73}.patient-detail-page .t-table__body::-webkit-scrollbar-thumb:hover{background:#64748b73}.patient-detail-page .t-table--column-fixed th.t-table__cell--fixed-right,.patient-detail-page .t-table--column-fixed td.t-table__cell--fixed-right{background-color:var(--mx-bg-card);white-space:nowrap}.patient-detail-page .t-table--column-fixed thead th.t-table__cell--fixed-right{background-color:var(--mx-fill)!important}.patient-detail-page .t-table--column-fixed .t-table__cell--fixed-right-first:after{box-shadow:none;border-left:0!important}.patient-detail-page .t-table--column-fixed.t-table__content--scrollable-to-right .t-table__cell--fixed-right-first:after,.patient-detail-page .t-table--column-fixed .t-table__content--scrollable-to-right .t-table__cell--fixed-right-first:after{box-shadow:-8px 0 8px -8px #0f172a47;border-left:0!important}.patient-detail-page .t-table--column-fixed .t-table__cell--fixed-right-first{border-left:1px solid var(--mx-border)}.patient-detail-page .t-table--column-fixed.t-table--hoverable tbody>tr:hover>td.t-table__cell--fixed-right,.patient-detail-page .t-table--column-fixed tbody>tr.t-table__row--hover>td.t-table__cell--fixed-right{background-color:var(--td-bg-color-container-hover)}.patient-detail-page .t-table--column-fixed tbody>tr.t-table__row--active>td.t-table__cell--fixed-right{background-color:var(--td-brand-color-light)}.patient-detail-page .t-table--column-fixed.t-table--striped tbody>tr:nth-of-type(2n)>td.t-table__cell--fixed-right{background-color:var(--td-bg-color-secondarycontainer)}.patient-detail-page .list-cards,.patient-detail-page .list-cards>.t-loading__parent{flex-direction:column;gap:10px;display:flex}.patient-detail-page .list-card{background:var(--mx-bg-card);border:1px solid var(--mx-border);border-radius:var(--mx-radius-lg);box-shadow:var(--mx-shadow-sm);padding:12px 14px 10px;transition:border-color .2s,background .2s}.patient-detail-page .list-card.is-selected{border-color:var(--mx-brand-light);background:var(--mx-brand-bg)}.patient-detail-page .list-card-head{align-items:center;gap:8px;min-width:0;display:flex}.patient-detail-page .list-card-check{min-height:var(--mx-touch-min);flex-shrink:0;align-items:center;padding-right:4px}.patient-detail-page .list-card-title{min-width:0;color:var(--mx-text);flex:1;align-items:center;gap:6px;font-size:16px;font-weight:600;display:flex}.patient-detail-page .list-card-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.patient-detail-page .list-card-alert{border-radius:var(--mx-radius-sm);color:var(--mx-warning);word-break:break-all;background:#fef6e9;align-items:flex-start;gap:4px;margin-top:8px;padding:8px 10px;font-size:12px;line-height:1.6;display:flex}.patient-detail-page .list-card-alert .t-icon{flex-shrink:0;margin-top:3px}.patient-detail-page .list-card-tags{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.patient-detail-page .list-card-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin:10px 0 0;display:grid}.patient-detail-page .list-card-field{flex-direction:column;gap:2px;min-width:0;display:flex}.patient-detail-page .list-card-field dt{color:var(--mx-text-4);font-size:11px;line-height:1.4}.patient-detail-page .list-card-field dd{color:var(--mx-text-2);word-break:break-all;margin:0;font-size:13px;line-height:1.5}.patient-detail-page .list-card-field--wide{grid-column:1/-1}.patient-detail-page .list-card-foot{border-top:1px dashed var(--mx-border);align-items:center;gap:4px;margin-top:10px;padding-top:8px;display:flex}.patient-detail-page .list-card-foot .t-button{min-width:0;min-height:var(--mx-touch-min);flex:1 1 0}.patient-detail-page .list-card-pager{padding-top:4px}.patient-detail-page .tnum{font-variant-numeric:tabular-nums}@media (width<=1024px){.patient-detail-page{gap:14px;padding:18px 18px 28px}.patient-detail-page .detail-card{padding:16px 16px 18px}}@media (width<=768px){.patient-detail-page{gap:12px;padding:12px 12px 28px}.patient-detail-page .page-title{font-size:18px}.patient-detail-page .page-subtitle{font-size:12px}.patient-detail-page .page-header{flex-direction:column;align-items:stretch;gap:10px}.patient-detail-page .action-btns{gap:8px}.patient-detail-page .action-btns .t-button{min-height:var(--mx-touch-min);flex:auto}.patient-detail-page .detail-card{padding:14px 12px 16px}.patient-detail-page .card-head{margin-bottom:12px;padding-bottom:10px}.patient-detail-page .card-title{min-width:0;font-size:14px}.patient-detail-page .list-card-fields{gap:8px}}
