@charset "UTF-8";.el-table{border-radius:8px!important;overflow:hidden!important;border:1px solid #dee2e6!important}.el-table.el-table--border{border:1px solid #dee2e6!important}.el-table.el-table--border:after,.el-table.el-table--border .el-table__inner-wrapper:before{display:none!important}.el-table .el-table__inner-wrapper{border-radius:8px!important;overflow:hidden!important}.el-table__header-wrapper tr:first-child th:first-child{border-top-left-radius:8px!important}.el-table__header-wrapper tr:first-child th:last-child{border-top-right-radius:8px!important}.el-table__header-wrapper th{background:linear-gradient(135deg,#495057,#343a40)!important;color:#fff!important;font-weight:600!important;font-size:13px!important;padding:12px 10px!important;text-align:center!important;border-right:1px solid #dee2e6!important;border-bottom:2px solid #dee2e6!important;position:relative!important;white-space:nowrap!important;-webkit-user-select:none;user-select:none;text-transform:uppercase;letter-spacing:.5px}.el-table__header-wrapper th .cell{padding:0!important;font-weight:600!important;color:#fff!important}.el-table__header-wrapper th:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:linear-gradient(90deg,#667eea,#764ba2)}.el-table__header-wrapper th:hover{background:linear-gradient(135deg,#495057,#343a40)!important}.el-table__body-wrapper td{padding:10px 8px!important;border-right:1px solid #e9ecef!important;border-bottom:1px solid #e9ecef!important;vertical-align:middle!important;font-size:13px!important;color:#2c3e50!important;font-weight:500!important;text-align:center!important;position:relative!important;white-space:nowrap!important}.el-table__body-wrapper td .cell{padding:0!important}.el-table__body-wrapper tr:last-child td:first-child{border-bottom-left-radius:8px!important}.el-table__body-wrapper tr:last-child td:last-child{border-bottom-right-radius:8px!important}.el-table__body tr{background:#fff;transition:all .2s ease}.el-table__body tr:nth-child(2n){background:#f8f9fa}.el-table__body tr:nth-child(2n)>td{background:#f8f9fa}.el-table__body tr:hover>td{background:#e3f2fd!important;transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.el-table__body tr.current-row>td{background:#f0f9ff!important}.el-table__body tr.el-table__row--striped>td{background:#f8f9fa}.el-table__body tr.el-table__row--striped:hover>td{background:#e3f2fd!important}.el-table__empty-block{background:#fff!important;padding:40px 0!important;min-height:auto!important}.el-table__empty-block .el-table__empty-text{color:#909399!important;font-size:14px!important;line-height:1.5}.el-table .el-button--link{padding:6px 8px!important;font-size:14px!important;transition:all .3s ease!important}.el-table .el-button--link:hover{transform:translateY(-1px)}.el-table .el-button--link i{font-size:16px!important}.el-table .el-button--small{padding:5px 10px!important;font-size:13px!important;height:28px!important;border-radius:4px!important}.el-table td.is-right .cell{font-weight:600;color:#303133}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Apple System,BlinkMacSystemFont,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg-primary, #f5f5f5);line-height:1.6;color:var(--text-primary, #333);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--primary-color: #667eea;--primary-dark: #5a6fd8;--primary-light: #7c8fea;--secondary-color: #6c757d;--success-color: #28a745;--warning-color: #ffc107;--danger-color: #dc3545;--info-color: #17a2b8;--bg-primary: #f5f5f5;--bg-secondary: #ffffff;--bg-tertiary: #f8f9fa;--bg-overlay: rgba(0, 0, 0, .5);--text-primary: #333333;--text-secondary: #666666;--text-muted: #999999;--text-inverse: #ffffff;--border-color: #dee2e6;--border-light: #e9ecef;--border-dark: #adb5bd;--shadow-sm: 0 1px 3px rgba(0,0,0,.1);--shadow: 0 2px 10px rgba(0,0,0,.1);--shadow-lg: 0 10px 25px rgba(0,0,0,.15);--shadow-xl: 0 20px 40px rgba(0,0,0,.2);--radius-sm: 4px;--radius: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 50px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-2xl: 24px;--spacing-3xl: 30px;--transition-fast: .15s ease;--transition: .2s ease;--transition-slow: .3s ease}@media(prefers-color-scheme:dark){:root{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-tertiary: #404040;--bg-overlay: rgba(255, 255, 255, .1);--text-primary: #ffffff;--text-secondary: #e0e0e0;--text-muted: #b0b0b0;--border-color: #404040;--border-light: #4d4d4d;--border-dark: #666666;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow: 0 2px 10px rgba(0,0,0,.3);--shadow-lg: 0 10px 25px rgba(0,0,0,.4);--shadow-xl: 0 20px 40px rgba(0,0,0,.5)}}#app{min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:0 20px}.text-left{text-align:left}.mb-10{margin-bottom:10px}.mb-20{margin-bottom:20px}.mb-30{margin-bottom:30px}.mt-10{margin-top:10px}.mt-20{margin-top:20px}.mt-30{margin-top:30px}.p-10{padding:10px}.p-20{padding:20px}.p-30{padding:30px}.text-primary{color:#3498db}.text-success{color:#2ecc71}.text-warning{color:#f39c12}.text-danger{color:#e74c3c}.text-muted{color:#7f8c8d}.bg-primary{background-color:#3498db}.bg-success{background-color:#2ecc71}.bg-warning{background-color:#f39c12}.bg-danger{background-color:#e74c3c}.bg-light{background-color:#f8f9fa}.shadow-sm{box-shadow:0 1px 3px #0000001a}.shadow{box-shadow:0 2px 10px #0000001a}.shadow-lg{box-shadow:0 10px 25px #00000026}.border{border:1px solid #dee2e6}.border-top{border-top:1px solid #dee2e6}.border-bottom{border-bottom:1px solid #dee2e6}.border-left{border-left:1px solid #dee2e6}.border-right{border-right:1px solid #dee2e6}.rounded{border-radius:4px}.rounded-lg{border-radius:8px}.rounded-xl{border-radius:12px}.rounded-2xl{border-radius:16px}.d-none{display:none}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:flex}.d-grid{display:grid}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.align-start{align-items:flex-start}.align-center{align-items:center}.align-end{align-items:flex-end}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-1{flex:1}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.position-sticky{position:sticky}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.w-100{width:100%}.w-50{width:50%}.w-25{width:25%}.w-auto{width:auto}.h-100{height:100%}.h-auto{height:auto}.min-h-100{min-height:100%}.text-xs{font-size:12px}.text-sm{font-size:14px}.text-base{font-size:16px}.text-lg{font-size:18px}.text-xl{font-size:20px}.text-2xl{font-size:24px}.text-3xl{font-size:30px}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.transition{transition:all .3s ease}.transition-fast{transition:all .15s ease}.transition-slow{transition:all .5s ease}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.hover-scale:hover{transform:scale(1.05)}@media(max-width:576px){.d-sm-none{display:none}.d-sm-block{display:block}.d-sm-flex{display:flex}.text-sm-center{text-align:center}}@media(max-width:768px){.d-md-none{display:none}.d-md-block{display:block}.d-md-flex{display:flex}.text-md-center{text-align:center}}@media(max-width:992px){.d-lg-none{display:none}.d-lg-block{display:block}.d-lg-flex{display:flex}.text-lg-center{text-align:center}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}::selection{background-color:#3498db;color:#fff}::-moz-selection{background-color:#3498db;color:#fff}:focus{outline:none}.focus-ring:focus{box-shadow:0 0 0 3px #3498db40}.disabled{opacity:.6;cursor:not-allowed;pointer-events:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,20%,53%,80%,to{transform:translateZ(0)}40%,43%{transform:translate3d(0,-30px,0)}70%{transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-bounce{animation:bounce 1s infinite}.page-enter-active,.page-leave-active{transition:all .3s cubic-bezier(.55,0,.1,1)}.page-enter-from{opacity:0;transform:translate(30px)}.page-leave-to{opacity:0;transform:translate(-30px)}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.scale-enter-active,.scale-leave-active{transition:all .3s cubic-bezier(.55,0,.1,1)}.scale-enter-from,.scale-leave-to{opacity:0;transform:scale(.9)}.slide-enter-active,.slide-leave-active{transition:all .3s ease}.slide-enter-from{opacity:0;transform:translateY(20px)}.slide-leave-to{opacity:0;transform:translateY(-20px)}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#ffffffe6;display:flex;justify-content:center;align-items:center;z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.loading-overlay.dark{background:#000c}.loading-content{text-align:center;color:#333}.loading-overlay.dark .loading-content{color:#fff}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.loading-overlay.dark .loading-spinner{border-color:#555;border-top-color:#3498db}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.animate-fade-in-up{animation:fadeInUp .6s ease-out}.animate-fade-in-down{animation:fadeInDown .6s ease-out}.animate-fade-in-left{animation:fadeInLeft .6s ease-out}.animate-fade-in-right{animation:fadeInRight .6s ease-out}.hover-card{transition:all .3s cubic-bezier(.4,0,.2,1)}.hover-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000026}.btn-click-effect{position:relative;overflow:hidden}.btn-click-effect:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-click-effect:active:before{width:300px;height:300px}.el-overlay,.el-overlay-dialog{background-color:#00000080!important}.el-dialog{background:#fff!important;border:none!important;outline:none!important;box-shadow:0 10px 40px #0003!important;border-radius:12px!important;overflow:hidden!important;padding:0!important}.el-dialog__header{background:linear-gradient(135deg,#667eea,#764ba2)!important;border:none!important;outline:none!important;border-radius:12px 12px 0 0!important;padding:16px 20px!important;margin:0!important}.el-dialog__title{color:#fff!important;font-size:18px!important;font-weight:600!important}.el-dialog__headerbtn{top:16px!important;right:20px!important;width:32px!important;height:32px!important;background:#ffffff1a!important;border-radius:50%!important;transition:background .2s!important;border:none!important;outline:none!important}.el-dialog__headerbtn:hover{background:#fff3!important}.el-dialog__close{color:#fff!important;font-size:20px!important;font-weight:700!important}.el-dialog__body{background:#fff!important;border:none!important;outline:none!important;padding:24px!important;margin:0!important;max-height:70vh;overflow-y:auto}.el-dialog__body>*:first-child.dialog-body{margin:-24px;padding:0}.el-dialog__body>*:first-child.dialog-body>*{padding:24px}.el-dialog__footer{background:#f8f9fa!important;border-top:1px solid #e5e7eb!important;border:none!important;outline:none!important;border-radius:0 0 12px 12px!important;padding:16px 20px!important}:root{--breakpoint-min: 375px;--breakpoint-xs: 414px;--breakpoint-sm: 480px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1200px;--breakpoint-2xl: 1440px}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;height:100%;-webkit-overflow-scrolling:touch}body{min-width:375px;overflow-x:hidden;height:100%}.page-container{width:100%;min-height:100vh;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}@media(max-width:767px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr!important}.desktop-only,.tablet-only{display:none!important}.mobile-only{display:block!important}.btn,.el-button{min-height:44px!important;min-width:44px!important;margin:4px}h1{font-size:24px!important}h2{font-size:20px!important}h3{font-size:18px!important}h4,p,span,input,select,textarea{font-size:16px!important}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.modal,.el-dialog{width:95vw!important;max-width:none!important;margin:0 auto!important;border-radius:12px}.navbar{height:56px}.sidebar{position:fixed;width:280px;height:100vh;z-index:1000;transform:translate(-100%);transition:transform .3s ease}.sidebar.open{transform:translate(0)}}@media(min-width:768px)and (max-width:1023px){.grid-2,.grid-3{grid-template-columns:repeat(2,1fr)}.grid-4{grid-template-columns:repeat(3,1fr)}.tablet-only{display:block!important}}@media(min-width:768px){.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}}@media(max-width:767px){.modal,.el-dialog,.modern-modal{width:95vw!important;max-width:none!important;max-height:90vh;margin:0 auto!important;border-radius:12px}.modal .modal-header,.modal .el-dialog__header,.modal .modern-modal-header,.el-dialog .modal-header,.el-dialog .el-dialog__header,.el-dialog .modern-modal-header,.modern-modal .modal-header,.modern-modal .el-dialog__header,.modern-modal .modern-modal-header{padding:16px 20px}.modal .modal-body,.modal .el-dialog__body,.modal .modern-modal-body,.el-dialog .modal-body,.el-dialog .el-dialog__body,.el-dialog .modern-modal-body,.modern-modal .modal-body,.modern-modal .el-dialog__body,.modern-modal .modern-modal-body{padding:16px 20px;max-height:calc(90vh - 140px);overflow-y:auto;-webkit-overflow-scrolling:touch}.modal .modal-footer,.modal .el-dialog__footer,.modal .modern-modal-footer,.el-dialog .modal-footer,.el-dialog .el-dialog__footer,.el-dialog .modern-modal-footer,.modern-modal .modal-footer,.modern-modal .el-dialog__footer,.modern-modal .modern-modal-footer{padding:16px 20px}}@media(max-width:479px){.modal,.el-dialog,.modern-modal{width:98vw!important;max-height:92vh;border-radius:8px}.modal .modal-header,.modal .el-dialog__header,.modal .modern-modal-header,.el-dialog .modal-header,.el-dialog .el-dialog__header,.el-dialog .modern-modal-header,.modern-modal .modal-header,.modern-modal .el-dialog__header,.modern-modal .modern-modal-header{padding:12px 16px}.modal .modal-body,.modal .el-dialog__body,.modal .modern-modal-body,.el-dialog .modal-body,.el-dialog .el-dialog__body,.el-dialog .modern-modal-body,.modern-modal .modal-body,.modern-modal .el-dialog__body,.modern-modal .modern-modal-body{padding:12px 16px;max-height:calc(92vh - 120px)}.modal .modal-footer,.modal .el-dialog__footer,.modal .modern-modal-footer,.el-dialog .modal-footer,.el-dialog .el-dialog__footer,.el-dialog .modern-modal-footer,.modern-modal .modal-footer,.modern-modal .el-dialog__footer,.modern-modal .modern-modal-footer{padding:12px 16px}}.form-container .form-row{display:grid;gap:16px;grid-template-columns:1fr}@media(min-width:480px){.form-container .form-row.two-columns{grid-template-columns:1fr 1fr}.form-container .form-row.three-columns{grid-template-columns:repeat(3,1fr)}}@media(max-width:479px){.form-container .form-row{grid-template-columns:1fr!important;gap:12px}.form-container .form-label{font-size:14px;margin-bottom:4px}.form-container .form-row.two-cols-mobile{grid-template-columns:1fr 1fr!important;gap:8px}}@media(max-width:479px){.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-container table{min-width:600px}.table-container.mobile-card table{display:block;min-width:100%}.table-container.mobile-card thead{display:none}.table-container.mobile-card tbody{display:block}.table-container.mobile-card tr{display:block;margin-bottom:16px;border:1px solid #e2e8f0;border-radius:8px;padding:12px;background:#fff}.table-container.mobile-card td{display:flex;justify-content:space-between;padding:8px 0;border:none}.table-container.mobile-card td:before{content:attr(data-label);font-weight:600;color:#6b7280}}@media(max-width:479px){.navbar{padding:0 16px;height:56px}.navbar .navbar-brand{font-size:18px}.navbar .navbar-menu{display:none}.navbar .navbar-toggle{display:block}}@media(max-width:479px){.sidebar{position:fixed;top:0;left:-100%;width:280px;height:100vh;z-index:1000;transition:left .3s ease}.sidebar.open{left:0}.sidebar .sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:999}}.mobile-only{display:none}@media(max-width:479px){.mobile-only{display:block}.mobile-hidden{display:none!important}}.p-sm-mobile{padding:8px}.p-md-mobile{padding:12px}.p-lg-mobile{padding:16px}.m-sm-mobile{margin:8px}.m-md-mobile{margin:12px}.m-lg-mobile{margin:16px}.text-xs-mobile{font-size:11px}.text-sm-mobile{font-size:12px}.text-base-mobile{font-size:14px}.text-lg-mobile{font-size:16px}@media(max-width:767px){.el-dialog{width:95vw!important;max-width:none!important;margin:0 auto!important;border-radius:12px}.el-dialog__header{padding:16px 20px!important}.el-dialog__body{padding:20px!important;max-height:calc(90vh - 140px);overflow-y:auto}.el-dialog__footer{padding:16px 20px!important}}@media(max-width:479px){.el-dialog{width:98vw!important;border-radius:8px}.el-dialog__header{padding:12px 16px!important}.el-dialog__body{padding:16px!important}.el-dialog__footer{padding:12px 16px!important}}@media(max-width:767px){.el-form-item{margin-bottom:16px!important}.el-form-item__label{font-size:14px!important;line-height:20px!important}.el-input__wrapper{min-height:44px}.el-input__inner{height:44px!important;font-size:14px!important}.el-select,.el-date-editor{width:100%!important}.el-form--inline .el-form-item{margin-right:0;margin-bottom:12px}}@media(max-width:479px){.el-form-item{margin-bottom:12px!important}.el-form-item__label,.el-input__inner{font-size:13px!important}}@media(max-width:767px){.el-table{font-size:12px!important}.el-table th,.el-table td{padding:8px 4px!important}.el-table__cell{word-break:break-all}.el-table .el-table__cell .el-button{padding:4px 8px;font-size:12px;margin:2px}}@media(max-width:479px){.el-table{font-size:11px!important}.el-table th,.el-table td{padding:6px 2px!important}.el-table .el-table__cell .el-button{padding:2px 6px;font-size:11px;min-height:32px}}@media(max-width:767px){.el-button{min-height:44px;padding:0 16px;font-size:14px;margin:4px}.el-button--small{min-height:36px;font-size:12px;padding:0 12px}.el-button--large{min-height:48px;padding:0 20px;font-size:16px}.el-button-group .el-button{margin:2px}}@media(max-width:479px){.el-button{min-height:44px;padding:0 12px;font-size:13px}.el-button--small{min-height:36px;font-size:11px;padding:0 8px}.el-button--large{min-height:48px;padding:0 16px;font-size:15px}}.safe-area-padding{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.safe-area-margin{margin-top:env(safe-area-inset-top);margin-bottom:env(safe-area-inset-bottom)}@media(max-width:844px)and (orientation:landscape){.modal{max-height:100vh}.modal .modal-body{max-height:calc(100vh - 120px)}.navbar{height:48px}}@media print{.no-print{display:none!important}body{min-width:auto}}@media(prefers-contrast:high){.btn{border:2px solid currentColor}a{text-decoration:underline}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--modal-primary-blue: #3b82f6;--modal-primary-dark: #1d4ed8;--modal-secondary-gray: #6b7280;--modal-secondary-dark: #4b5563;--modal-header-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--modal-primary-gradient: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);--modal-text-primary: #374151;--modal-text-regular: #6b7280;--modal-text-placeholder: #9ca3af;--modal-text-white: #ffffff;--modal-bg-light: #f9fafb;--modal-bg-white: #ffffff !important;--modal-border-color: #e5e7eb;--modal-success: #10b981;--modal-warning: #f59e0b;--modal-danger: #ef4444;--modal-info: #3b82f6;--modal-shadow: 0 10px 30px rgba(0, 0, 0, .3);--modal-button-shadow: 0 2px 4px rgba(59, 130, 246, .3);--modal-button-shadow-hover: 0 4px 8px rgba(59, 130, 246, .4)}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:modalFadeIn .3s ease-out}.modal-content{background:var(--modal-bg-white) #fff!important;border-radius:12px;box-shadow:var(--modal-shadow);width:90%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:modalSlideIn .3s ease-out}.modal-header{background:var(--modal-header-gradient);color:var(--modal-text-white);padding:20px 24px;display:flex;justify-content:space-between;align-items:center;border-radius:12px 12px 0 0}.modal-header h3{margin:0;font-size:18px;font-weight:600;display:flex;align-items:center;gap:8px}.modal-header h3 i{font-size:20px;opacity:.9}.modal-header .btn-close{background:none;border:none;color:var(--modal-text-white);font-size:24px;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease}.modal-header .btn-close:hover{background:#fff3}.modal-header .btn-close:active{transform:scale(.95)}.modal-body{padding:24px;max-height:60vh;overflow-y:auto;background:var(--modal-bg-white) #fff!important}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.modal-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.modal-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.modal-footer{background:var(--modal-bg-light);padding:20px 24px;border-top:1px solid var(--modal-border-color);display:flex;justify-content:flex-end;gap:12px;border-radius:0 0 12px 12px}.btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;min-width:80px;justify-content:center;text-decoration:none;box-sizing:border-box}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn i{font-size:14px}.btn.btn-primary{background:var(--modal-primary-gradient);color:var(--modal-text-white);box-shadow:var(--modal-button-shadow)}.btn.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:var(--modal-button-shadow-hover)}.btn.btn-primary:active:not(:disabled){transform:translateY(0)}.btn.btn-secondary{background:var(--modal-secondary-gray);color:var(--modal-text-white)}.btn.btn-secondary:hover:not(:disabled){background:var(--modal-secondary-dark);transform:translateY(-1px)}.btn.btn-secondary:active:not(:disabled){transform:translateY(0)}.btn.btn-success{background:var(--modal-success);color:var(--modal-text-white)}.btn.btn-success:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.btn.btn-success:active:not(:disabled){transform:translateY(0)}.btn.btn-warning{background:var(--modal-warning);color:var(--modal-text-white)}.btn.btn-warning:hover:not(:disabled){background:#d97706;transform:translateY(-1px)}.btn.btn-warning:active:not(:disabled){transform:translateY(0)}.btn.btn-danger{background:var(--modal-danger);color:var(--modal-text-white)}.btn.btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-1px)}.btn.btn-danger:active:not(:disabled){transform:translateY(0)}.btn.btn-info{background:var(--modal-info);color:var(--modal-text-white)}.btn.btn-info:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.btn.btn-info:active:not(:disabled){transform:translateY(0)}.btn.btn-outline-primary{background:transparent;color:var(--modal-primary-blue);border:2px solid var(--modal-primary-blue)}.btn.btn-outline-primary:hover:not(:disabled){background:var(--modal-primary-blue);color:var(--modal-text-white);transform:translateY(-1px)}.btn.btn-outline-secondary{background:transparent;color:var(--modal-secondary-gray);border:2px solid var(--modal-secondary-gray)}.btn.btn-outline-secondary:hover:not(:disabled){background:var(--modal-secondary-gray);color:var(--modal-text-white);transform:translateY(-1px)}.form-group{margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--modal-text-primary);font-size:14px}.form-group label .required{color:var(--modal-danger);margin-left:4px}.form-group .form-control{width:100%;padding:12px 16px;border:2px solid var(--modal-border-color);border-radius:8px;font-size:14px;transition:border-color .2s ease,box-shadow .2s ease;background:var(--modal-bg-white);box-sizing:border-box}.form-group .form-control:focus{outline:none;border-color:var(--modal-primary-blue);box-shadow:0 0 0 3px #3b82f61a}.form-group .form-control::placeholder{color:var(--modal-text-placeholder)}.form-group .form-control:disabled{background:#f9fafb;cursor:not-allowed}.form-group textarea.form-control{resize:vertical;min-height:80px;font-family:inherit;line-height:1.5}.form-group select.form-control{cursor:pointer;padding-right:40px;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;appearance:none;-webkit-appearance:none;-moz-appearance:none}.form-group .form-control.is-valid{border-color:var(--modal-success)}.form-group .form-control.is-invalid{border-color:var(--modal-danger)}.form-group .validation-message{font-size:12px;color:var(--modal-danger);margin-top:6px;display:flex;align-items:center;gap:4px}.form-group .validation-message i{font-size:12px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.form-row.full-width{grid-template-columns:1fr}.form-row .form-group.full-width{grid-column:1/-1}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modalFadeOut{0%{opacity:1}to{opacity:0}}@keyframes modalSlideOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-50px) scale(.9)}}@media(max-width:768px){.modal-content{width:95vw;max-width:95vw;margin:2.5vh auto}.modal-header{padding:16px 20px}.modal-header h3{font-size:16px}.modal-body{padding:16px 20px}.modal-footer{padding:16px 20px;flex-wrap:wrap;gap:8px}.modal-footer .btn{min-width:100px;font-size:13px}.form-row{grid-template-columns:1fr;gap:12px}.form-group.full-width{grid-column:1}}@media(max-width:480px){.modal-header{padding:12px 16px}.modal-header h3{font-size:15px;gap:6px}.modal-header h3 i{font-size:18px}.modal-header .btn-close{width:28px;height:28px;font-size:20px}.modal-body{padding:12px 16px}.modal-footer{padding:12px 16px;flex-direction:column}.modal-footer .btn{width:100%;min-width:auto}.form-control{padding:10px 12px;font-size:16px}}.modal-content.modal-wide{max-width:800px}.modal-content.modal-fullscreen{width:100vw;height:100vh;max-width:100vw;max-height:100vh;border-radius:0;margin:0}@media(prefers-reduced-motion:reduce){.modal-overlay,.modal-content,.btn{animation:none;transition:none}}@media(prefers-contrast:high){.btn,.form-control{border-width:2px}}.modal-centered{align-items:center;justify-content:center}.modal-top{align-items:flex-start;justify-content:center;padding-top:10vh}.modal-scrollable{overflow-y:auto}.btn-group{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.btn-group.right{justify-content:flex-end}.btn-group.center{justify-content:center}.text-center{text-align:center}.text-right{text-align:right}.el-button{min-width:120px;height:44px;font-size:15px;font-weight:600;letter-spacing:.3px;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;border:none!important}.el-button:before{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(to bottom,rgba(255,255,255,.15),transparent);pointer-events:none;opacity:0;transition:opacity .3s ease}.el-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 6px 20px #0003,0 2px 6px #0000001a}.el-button:hover:not(:disabled):before{opacity:1}.el-button:active:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.el-button.el-button--danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 2px 8px #dc262640}.el-button.el-button--danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 8px 24px #dc262666}.el-button.el-button--danger:active:not(:disabled){background:linear-gradient(135deg,#b91c1c,#991b1b);box-shadow:0 2px 8px #dc26264d}.el-button.el-button--primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 2px 8px #1d4ed840}.el-button.el-button--primary:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 8px 24px #1d4ed866}.el-button.el-button--primary:active:not(:disabled){background:linear-gradient(135deg,#1e40af,#1e3a8a);box-shadow:0 2px 8px #1d4ed84d}.el-button.el-button--success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #05966940}.el-button.el-button--success:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 8px 24px #05966966}.el-button.el-button--success:active:not(:disabled){background:linear-gradient(135deg,#047857,#065f46);box-shadow:0 2px 8px #0596694d}.el-button.el-button--warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 2px 8px #d9770640}.el-button.el-button--warning:hover:not(:disabled){background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 8px 24px #d9770666}.el-button.el-button--warning:active:not(:disabled){background:linear-gradient(135deg,#b45309,#92400e);box-shadow:0 2px 8px #d977064d}.el-button.el-button--info{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:#fff;box-shadow:0 2px 8px #3b82f640}.el-button.el-button--info:hover:not(:disabled){background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 8px 24px #3b82f666}.el-button.el-button--info:active:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 2px 8px #3b82f64d}.el-button.el-button--default{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff;box-shadow:0 2px 8px #4b556333}.el-button.el-button--default:hover:not(:disabled){background:linear-gradient(135deg,#4b5563,#374151);box-shadow:0 8px 24px #4b556359}.el-button.el-button--default:active:not(:disabled){background:linear-gradient(135deg,#374151,#1f2937);box-shadow:0 2px 8px #4b556340}.el-button.el-button--text,.el-button[link]{background:transparent!important;box-shadow:none!important;border:none!important;height:36px!important;line-height:36px!important;padding:0 12px!important;font-size:14px!important}.el-button.el-button--text:hover:not(.el-button--primary),.el-button[link]:hover:not(.el-button--primary){background:#0000000d!important;transform:none!important}.el-button[link]{min-width:auto!important}.el-button.is-disabled,.el-button:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.el-button+.el-button{margin-left:12px}.action-buttons{display:flex;justify-content:center;align-items:center;gap:8px}.action-buttons .el-button{min-width:80px;height:36px;font-size:14px;padding:0 16px;flex:1;max-width:100px}.action-buttons .el-button:hover:not(:disabled){transform:none!important;box-shadow:0 2px 8px #00000026!important}.action-buttons .el-button:active:not(:disabled){transform:none!important}.action-buttons .el-button:before{display:none!important}.action-buttons .el-button+.el-button{margin-left:0!important}.el-dialog__footer{padding:16px 20px!important;background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.02) 100%);border-top:1px solid rgba(0,0,0,.08)}@media(max-width:767px){.el-button{min-width:90px;height:40px;font-size:14px;padding:0 16px}.el-button:hover:not(:disabled){transform:translateY(-1px)}.el-button:active:not(:disabled){transform:translateY(0)}.el-dialog__footer{padding:12px 16px!important}.el-dialog__footer .el-button{min-width:80px;height:36px;font-size:14px}.el-dialog__footer .el-button:hover:not(:disabled){transform:translateY(-1px)}.el-dialog__footer .el-button:active:not(:disabled){transform:translateY(0)}.el-dialog__footer .el-button+.el-button{margin-left:0;margin-top:8px}.el-dialog__footer{display:flex;flex-direction:column;gap:8px}}@media(prefers-color-scheme:dark){:root{--modal-text-primary: #e5e7eb;--modal-text-regular: #d1d5db;--modal-text-placeholder: #9ca3af;--modal-bg-white: #1f2937;--modal-bg-light: #374151;--modal-border-color: #4b5563}}
