#app{min-height:100vh}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Noto Sans SC,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.6;color:#2d2d2d;background:#f4f1de;min-height:100vh}body::-webkit-scrollbar{width:6px;height:6px}body::-webkit-scrollbar-track{background:transparent}body::-webkit-scrollbar-thumb{background:#3d405b33;border-radius:3px}body::-webkit-scrollbar-thumb:hover{background:#3d405b4d}a{color:#e07a5f;text-decoration:none;transition:color .15s ease}a:hover{color:#c45d42}h1,h2,h3,h4,h5,h6{font-family:"Noto Serif SC",serif;font-weight:600;line-height:1.3;color:#2d2d2d}h1{font-size:32px}h2{font-size:28px}h3{font-size:24px}h4{font-size:20px}h5{font-size:18px}h6{font-size:16px}::selection{background:#e07a5f33;color:#2d2d2d}:root{--el-color-primary: #E07A5F;--el-color-primary-light-3: #F4A88E;--el-color-primary-light-5: rgba(224, 122, 95, .5);--el-color-primary-light-7: rgba(224, 122, 95, .3);--el-color-primary-light-8: rgba(224, 122, 95, .2);--el-color-primary-light-9: rgba(224, 122, 95, .1);--el-color-primary-dark-2: #C45D42;--el-color-success: #81B29A;--el-color-warning: #F2CC8F;--el-color-danger: #DC2626;--el-color-info: #6C9BCF;--el-bg-color: #FFFFFF;--el-bg-color-page: #F4F1DE;--el-bg-color-overlay: #FFFFFF;--el-text-color-primary: #2D2D2D;--el-text-color-regular: #4A4A4A;--el-text-color-secondary: #7A7A7A;--el-text-color-placeholder: #ABABAB;--el-border-color: #E5E2D3;--el-border-color-light: #F0EDE0;--el-border-color-lighter: #F0EDE0;--el-border-color-extra-light: #F0EDE0;--el-border-radius-base: 10px;--el-border-radius-small: 6px;--el-border-radius-round: 24px;--el-font-family: Noto Sans SC, -apple-system, BlinkMacSystemFont, sans-serif;--el-font-size-base: 14px}.el-button{font-weight:500;border-radius:10px;transition:all .25s ease}.el-button--primary{color:#fff;background:linear-gradient(135deg,#e07a5f,#c45d42);border:none;box-shadow:0 4px 12px #e07a5f4d}.el-button--primary:hover,.el-button--primary:focus{background:linear-gradient(135deg,#f4a88e,#e07a5f);box-shadow:0 6px 16px #e07a5f66}.el-button--primary.is-link{color:#e07a5f;background:transparent;box-shadow:none;border:none}.el-button--primary.is-link:hover,.el-button--primary.is-link:focus{background:#e07a5f14}.el-button--danger{color:#fff;background:linear-gradient(135deg,#dc2626,#b21d1d);border:none;box-shadow:0 4px 12px #dc26264d}.el-button--danger:hover,.el-button--danger:focus{background:linear-gradient(135deg,#e03c3c,#dc2626)}.el-button--danger.is-link{color:#dc2626;background:transparent;box-shadow:none;border:none}.el-button--danger.is-link:hover,.el-button--danger.is-link:focus{background:#dc262614}.el-button--success{background:linear-gradient(135deg,#81b29a,#5a8a6f);border:none;box-shadow:0 4px 12px #81b29a4d;color:#fff}.el-button--success:hover,.el-button--success:focus{box-shadow:0 6px 16px #81b29a66}.el-button--success.is-link{color:#5a8a6f;background:transparent;box-shadow:none;border:none}.el-button--success.is-link:hover,.el-button--success.is-link:focus{background:#81b29a1a}.el-button--warning{color:#2d2d2d;background:linear-gradient(135deg,#f2cc8f,#d4a85a);border:none;box-shadow:0 4px 12px #f2cc8f4d;color:#fff}.el-button--warning:hover,.el-button--warning:focus{box-shadow:0 6px 16px #f2cc8f66}.el-button--warning.is-link{color:#d4a85a;background:transparent;box-shadow:none;border:none}.el-button--warning.is-link:hover,.el-button--warning.is-link:focus{background:#f2cc8f26}.el-button--default{border-color:#e5e2d3}.el-button--default:hover,.el-button--default:focus{color:#e07a5f;border-color:#e07a5f;background:#e07a5f0d}.el-input{--el-input-border-radius: 10px}.el-input .el-input__wrapper{box-shadow:0 0 0 1px #e5e2d3 inset;transition:all .25s ease}.el-input .el-input__wrapper:hover{box-shadow:0 0 0 1px #d0cdb8 inset}.el-input .el-input__wrapper.is-focus{box-shadow:0 0 0 1px #e07a5f inset,0 0 0 3px #e07a5f1a}.el-select .el-select__wrapper{border-radius:10px;box-shadow:0 0 0 1px #e5e2d3 inset;transition:all .25s ease}.el-select .el-select__wrapper:hover{box-shadow:0 0 0 1px #d0cdb8 inset}.el-select .el-select__wrapper.is-focused{box-shadow:0 0 0 1px #e07a5f inset,0 0 0 3px #e07a5f1a}.el-table{--el-table-border-color: #F0EDE0;--el-table-header-bg-color: #FAF9F5;--el-table-row-hover-bg-color: rgba(224, 122, 95, .04);border-radius:16px;overflow:hidden}.el-table th.el-table__cell{font-weight:600;color:#2d2d2d;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.el-table td.el-table__cell{border-bottom-color:#f0ede0}.el-table .el-table__body tr:last-child td{border-bottom:none}.el-pagination{--el-pagination-button-bg-color: #FFFFFF;--el-pagination-hover-color: #E07A5F}.el-pagination .el-pager li{border-radius:6px;font-weight:500}.el-pagination .el-pager li.is-active{background:linear-gradient(135deg,#e07a5f,#c45d42);color:#fff}.el-pagination .btn-prev,.el-pagination .btn-next{border-radius:6px}.el-dialog{--el-dialog-border-radius: 24px;border-radius:24px;overflow:hidden}.el-dialog .el-dialog__header{padding:20px 24px;border-bottom:1px solid #F0EDE0;margin-right:0}.el-dialog .el-dialog__header .el-dialog__title{font-family:"Noto Serif SC",serif;font-size:18px;font-weight:600;color:#2d2d2d}.el-dialog .el-dialog__body{padding:24px}.el-dialog .el-dialog__footer{padding:16px 24px 20px;border-top:1px solid #F0EDE0}.el-message{--el-message-border-color: transparent;border-radius:16px;box-shadow:0 8px 32px #3d405b1f;border:none;padding:12px 20px}.el-message--success{background:linear-gradient(135deg,#81b29af2,#5a8a6ff2);color:#fff}.el-message--success .el-message__icon,.el-message--success .el-message__content{color:#fff}.el-message--warning{background:linear-gradient(135deg,#f2cc8ff2,#d4a85af2);color:#fff}.el-message--warning .el-message__icon,.el-message--warning .el-message__content{color:#fff}.el-message--error{background:linear-gradient(135deg,#dc2626f2,#c45d42f2);color:#fff}.el-message--error .el-message__icon,.el-message--error .el-message__content{color:#fff}.el-tag{border-radius:16px;font-weight:500;padding:2px 12px}.el-tag--success{background:#81b29a1a;border-color:#81b29a33;color:#5a8a6f}.el-tag--warning{background:#f2cc8f26;border-color:#f2cc8f4d;color:#d4a85a}.el-tag--danger{background:#dc26261a;border-color:#dc262633;color:#c45d42}.el-tag--info{background:#6c9bcf1a;border-color:#6c9bcf33;color:#3b74b4}.el-card{border-radius:16px;border:1px solid #F0EDE0;box-shadow:0 2px 8px #3d405b0f}.el-card .el-card__header{border-bottom-color:#f0ede0;font-family:"Noto Serif SC",serif;font-weight:600}.el-form .el-form-item__label{font-weight:500;color:#2d2d2d}.el-menu{border:none}.el-progress .el-progress-bar__outer{background:#f0ede0}.el-progress .el-progress-bar__inner{background:linear-gradient(90deg,#e07a5f,#f2cc8f)}.text-primary{color:#2d2d2d}.text-regular{color:#4a4a4a}.text-secondary{color:#7a7a7a}.text-success{color:#81b29a}.text-warning{color:#f2cc8f}.text-danger{color:#dc2626}.bg-primary{background:#f4f1de}.bg-card{background:#fff}.mt-sm{margin-top:8px}.mt-md{margin-top:12px}.mt-lg{margin-top:16px}.mt-xl{margin-top:20px}.mb-sm{margin-bottom:8px}.mb-md{margin-bottom:12px}.mb-lg{margin-bottom:16px}.mb-xl{margin-bottom:20px}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-1{flex:1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn .3s ease}.animate-fade-in-up{animation:fadeInUp .4s ease}.animate-fade-in-down{animation:fadeInDown .4s ease}.animate-slide-in-left{animation:slideInLeft .4s ease}.animate-scale-in{animation:scaleIn .3s ease}.page-enter-active,.page-leave-active{transition:all .3s ease}.page-enter-from{opacity:0;transform:translate(20px)}.page-leave-to{opacity:0;transform:translate(-20px)}
