.patient-portal{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;overflow-x:hidden;padding:20px}.patient-portal .ant-card{border:none;border-radius:12px;box-shadow:0 4px 20px #0000001a}.patient-portal .ant-card-head{background:#fafafa;border-bottom:1px solid #f0f0f0;border-radius:12px 12px 0 0}.patient-portal .ant-form-item-label>label{color:#333;font-weight:600}.patient-portal .ant-input,.patient-portal .ant-input-number,.patient-portal .ant-select-selector{border:1px solid #d9d9d9;border-radius:8px;transition:all .3s}.patient-portal .ant-input-focused,.patient-portal .ant-input-number-focused,.patient-portal .ant-input-number:focus,.patient-portal .ant-input:focus,.patient-portal .ant-select-focused .ant-select-selector{border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.patient-portal .ant-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;font-size:16px;font-weight:600;height:48px;transition:all .3s}.patient-portal .ant-btn-primary:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);box-shadow:0 6px 20px #667eea4d;transform:translateY(-2px)}.patient-portal .ant-upload{width:100%}.patient-portal .ant-upload-list{margin-top:8px}.patient-portal .ant-progress{margin-bottom:16px}.patient-portal .ant-progress-text{color:#333;font-weight:600}.patient-portal .ant-badge-status-text{font-weight:500}.patient-portal .ant-list-item{background:#fafafa;border:none;border-radius:8px;margin-bottom:8px;padding:16px}.patient-portal .ant-alert{border:none;border-radius:8px}.patient-portal .ant-divider{border-color:#e8e8e8;margin:24px 0}.patient-portal .ant-typography{margin-bottom:8px}@media (max-width:768px){.patient-portal{padding:16px}.patient-portal .ant-card{margin-bottom:16px}.patient-portal .ant-form-item{margin-bottom:20px}.patient-portal .ant-btn-primary{font-size:16px;height:44px}}.patient-portal .status-icon{display:block;margin:0 auto 16px}.patient-portal .status-content{padding:40px 20px;text-align:center}.patient-portal .assistance-card{background:linear-gradient(135deg,#52c41a,#389e0d);border-radius:12px;color:#fff;padding:24px;text-align:center}.patient-portal .assistance-card .ant-typography{color:#fff!important}.patient-portal .assistance-card .ant-btn{background:#fff;border:none;color:#52c41a;font-weight:600}.patient-portal .assistance-card .ant-btn:hover{background:#f6ffed;color:#389e0d}.signature-container{isolation:isolate;max-width:100%;overflow:hidden;position:relative;width:100%}.signature-container,.signature-container *,.signature-container canvas{-webkit-touch-callout:none!important;touch-action:none!important;-webkit-user-select:none!important;user-select:none!important}.signature-container *,.signature-container canvas{pointer-events:auto}.signature-canvas{-webkit-touch-callout:none;max-width:100%!important;touch-action:none!important;-webkit-user-select:none;user-select:none;width:100%!important}.patient-portal.signing{overflow:hidden;position:fixed;width:100%}.consent-section{background-color:#f9f9f9;border-left:4px solid #1890ff;border-radius:6px;margin:24px 0;padding:16px}.consent-section .ant-typography-title{color:#1890ff;margin-bottom:16px!important}.consent-section .ant-checkbox-wrapper{align-items:flex-start;display:flex;line-height:1.5;margin-bottom:12px}.consent-section .ant-checkbox-wrapper:last-child{margin-bottom:0}.consent-section a{color:#1890ff;text-decoration:underline}.consent-section a:hover{color:#40a9ff}.consent-section .pdf-preview{background:#fff;border:1px solid #d9d9d9;border-radius:6px;height:500px;margin-bottom:16px;overflow:hidden;position:relative}.consent-section .pdf-preview iframe{border:none;height:100%;width:100%}@media (max-width:768px){.consent-section .pdf-preview{height:400px}}.consent-section .pdf-preview.fullscreen{height:80vh;max-height:800px}.signature-container .ant-btn{-webkit-touch-callout:none;touch-action:manipulation;-webkit-user-select:none;user-select:none}.signature-container .ant-btn:active{transform:none}body,html{width:100%}input::-ms-clear,input::-ms-reveal{display:none}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0);font-family:sans-serif;line-height:1.15}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:initial;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{font-weight:500;margin-bottom:.5em;margin-top:0}p{margin-bottom:1em;margin-top:0}abbr[data-original-title],abbr[title]{border-bottom:0;cursor:help;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=number],input[type=password],input[type=text],textarea{-webkit-appearance:none}dl,ol,ul{margin-bottom:1em;margin-top:0}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}code,kbd,pre,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-bottom:1em;margin-top:0;overflow:auto}figure{margin:0 0 1em}img{border-style:none;vertical-align:middle}[role=button],a,area,button,input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{caption-side:bottom;padding-bottom:.3em;padding-top:.75em;text-align:left}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{border:0;margin:0;min-width:0;padding:0}legend{color:inherit;display:block;font-size:1.5em;line-height:inherit;margin-bottom:.5em;max-width:100%;padding:0;white-space:normal;width:100%}progress{vertical-align:initial}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:none;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{background-color:#feffe6;padding:.2em}*{box-sizing:border-box;margin:0;padding:0}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol}#root,body,html{height:100%}.app-container{display:flex;flex-direction:column;min-height:100vh}.app-container .ant-card,.app-container .ant-card-body,.app-container .ant-layout,.app-container .ant-layout-content,.app-container .ant-layout-content>*,.app-container .ant-tabs,.app-container .ant-tabs-content,.app-container .ant-tabs-content-holder,.app-container .ant-tabs-tabpane{max-width:100%;min-width:0}.app-container .ant-table-wrapper{max-width:100%;min-width:0;width:100%}.app-container .ant-table-wrapper .ant-spin-container,.app-container .ant-table-wrapper .ant-spin-nested-loading,.app-container .ant-table-wrapper .ant-table,.app-container .ant-table-wrapper .ant-table-container{max-width:100%;min-width:0}.app-container .ant-table-wrapper .ant-table-body,.app-container .ant-table-wrapper .ant-table-content{max-width:100%;overflow-x:auto!important}.main-content{flex:1 1;padding:24px}.page-header{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:16px 24px}.page-title{color:#262626;font-size:20px;font-weight:600;margin:0}.page-description{color:#8c8c8c;margin-top:4px}.content-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.form-container{padding:24px}.table-container{padding:0}.status-tag{border-radius:4px}.upload-area{background:#fafafa;border:2px dashed #d9d9d9;border-radius:8px;padding:24px;text-align:center;transition:border-color .3s}.upload-area:hover{border-color:#1890ff}.upload-area.dragover{background:#e6f7ff;border-color:#1890ff}.file-list{margin-top:16px}.file-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;padding:8px 0}.file-item:last-child{border-bottom:none}.file-info{flex:1 1;margin-left:8px}.file-name{color:#262626;font-weight:500}.file-size{color:#8c8c8c;font-size:12px}.statistics-card{padding:24px;text-align:center}.statistics-number{font-size:32px;font-weight:600;line-height:1}.statistics-label{color:#8c8c8c;font-size:14px;margin-top:8px}.progress-card{padding:24px}.progress-item{align-items:center;display:flex;margin-bottom:16px}.progress-item:last-child{margin-bottom:0}.progress-label{font-weight:500;width:120px}.progress-bar{flex:1 1;margin:0 16px}.progress-value{color:#1890ff;font-weight:600}.timeline-container{padding:24px}.review-comment{background:#f8f9fa;border-left:4px solid #1890ff;border-radius:6px;margin-top:8px;padding:12px}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh}.login-form{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;padding:40px;width:400px}.login-title{color:#262626;font-size:24px;font-weight:600;margin-bottom:32px;text-align:center}.login-form .ant-form-item:last-child{margin-bottom:0}.error-container{padding:48px;text-align:center}.error-title{color:#262626;font-size:24px;margin-bottom:16px}.error-description{color:#8c8c8c;margin-bottom:24px}@media (max-width:768px){.main-content{padding:16px}.page-header{margin-bottom:16px;padding:12px 16px}.form-container{padding:16px}.login-form{padding:24px;width:90%}.progress-card,.statistics-card,.timeline-container{padding:16px}}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media print{.no-print{display:none!important}.content-card,.page-header{border:1px solid #ddd;box-shadow:none}}