.app-layout{height:100vh;display:flex;background-color:var(--ant-color-bg-layout, #F8FAFC)}.app-layout-sider{height:100vh;position:fixed;left:0;border-right:1px solid var(--ant-color-border-secondary, #F1F5F9);z-index:100;background-color:var(--ant-color-bg-container, #FFFFFF);box-shadow:1px 0 3px #00000005}.app-layout-sider .logo-wrapper{height:60px;display:flex;align-items:center;justify-content:center;border-bottom:1px dashed var(--ant-color-border-secondary, #F1F5F9);margin-bottom:8px}.app-layout-sider .logo-wrapper .wordmark{width:130px;height:28px;background:url(/assets/tianshu-wordmark-BzK-V7_X.png) no-repeat center center;background-size:contain}.app-layout-sider .ant-menu.ant-menu-root.ant-menu-inline{overflow-y:auto;overflow-x:hidden;border:none;padding:0 8px}.app-layout-sider .ant-menu.ant-menu-root.ant-menu-inline::-webkit-scrollbar{width:4px}.app-layout-sider .ant-menu.ant-menu-root.ant-menu-inline::-webkit-scrollbar-thumb{background:#00000014;border-radius:2px}.app-layout>.ant-layout{margin-left:200px;height:100vh;background-color:var(--ant-color-bg-layout, #F8FAFC)}.app-layout>.ant-layout .app-layout-header{position:fixed;top:0;right:0;left:200px;z-index:99;height:56px;line-height:56px;padding:0 24px;background-color:var(--ant-color-bg-container);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ant-color-border-secondary, #F1F5F9);box-shadow:0 1px 2px #00000008}.app-layout>.ant-layout .app-layout-header .header-left .ant-breadcrumb{font-size:14px}.app-layout>.ant-layout .app-layout-header .header-left .ant-breadcrumb .ant-breadcrumb-link{cursor:pointer;color:var(--ant-color-text-secondary, #475569);transition:color .2s ease}.app-layout>.ant-layout .app-layout-header .header-left .ant-breadcrumb .ant-breadcrumb-link:hover{color:var(--ant-color-primary, #4A6BFF)}.app-layout>.ant-layout .app-layout-header .header-right{display:flex;align-items:center;gap:16px}.app-layout>.ant-layout .app-layout-header .header-right .data-screen{cursor:pointer;height:34px;padding:0 16px;display:flex;align-items:center;border-radius:6px;background:linear-gradient(135deg,#4a6bff14,#785cf614);border:1px solid rgba(74,107,255,.15);font-size:13px;font-weight:500;color:var(--ant-color-primary, #4A6BFF);transition:all .2s ease}.app-layout>.ant-layout .app-layout-header .header-right .data-screen:hover{background:linear-gradient(135deg,#4a6bff26,#785cf626);box-shadow:0 2px 8px #4a6bff26}.app-layout>.ant-layout .app-layout-header .header-right .data-screen .icon-data-screen{width:14px;height:14px;margin-right:8px;background:url("data:image/svg+xml,%3csvg%20width='14'%20height='14'%20viewBox='0%200%2014%2014'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20x='0.5'%20y='0.5'%20width='13'%20height='13'%20rx='1.5'%20stroke='%231C67E7'/%3e%3crect%20x='2.5'%20y='2.5'%20width='3'%20height='3'%20rx='1.5'%20stroke='%231C67E7'/%3e%3crect%20x='2.5'%20y='7.5'%20width='3'%20height='4'%20rx='1.5'%20stroke='%231C67E7'/%3e%3crect%20x='7.5'%20y='2.5'%20width='4'%20height='9'%20rx='1.5'%20stroke='%231C67E7'/%3e%3c/svg%3e") no-repeat center center}.app-layout>.ant-layout .app-layout-header .header-right .icon-header-divider{display:block;width:1px;height:24px;background:var(--ant-color-border-secondary, #E2E8F0)}.app-layout>.ant-layout .app-layout-header .header-right .user-info{display:flex;align-items:center;padding:4px 8px;border-radius:6px;cursor:pointer;color:var(--ant-color-text, #1E293B);transition:background-color .2s ease}.app-layout>.ant-layout .app-layout-header .header-right .user-info:hover{background-color:var(--ant-color-fill-alter, #F8FAFC)}.app-layout>.ant-layout .app-layout-header .header-right .ant-btn-link{color:var(--ant-color-text);height:56px;padding:0 12px;display:flex;align-items:center}.app-layout>.ant-layout .app-layout-header .header-right .ant-btn-link:hover{color:var(--ant-color-primary);background-color:#00000006}.app-layout>.ant-layout .app-layout-header .header-right .ant-btn-link .anticon{font-size:16px;margin-right:8px}.app-layout>.ant-layout .app-layout-content{padding:76px 24px 24px;height:100vh;overflow-x:hidden;overflow-y:auto;background-color:var(--ant-color-bg-layout, #F8FAFC)}.app-layout>.ant-layout .app-layout-content::-webkit-scrollbar{width:6px}.app-layout>.ant-layout .app-layout-content::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}.stat-card{border-radius:var(--ant-border-radius);overflow:hidden;cursor:pointer;transition:all .3s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.stat-card .ant-card-body{padding:20px 24px}.stat-card .card-number{color:#000000d9;font-size:24px;font-weight:500;margin-bottom:0}.stat-card .card-footer{margin-top:8px;display:flex;align-items:center;justify-content:space-between;color:var(--ant-color-text-secondary)}.ant-layout-content{background-color:var(--ant-color-bg-layout);transition:background-color .3s ease}.update-password-form{padding-top:24px}.user-dropdown-action-btn{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.user-dropdown-action-btn:hover{background-color:var(--ant-color-fill-secondary, #F1F5F9)}.user-dropdown-action-btn.danger{color:var(--ant-color-error, #EF4444)}.user-dropdown-action-btn.danger:hover{background-color:var(--ant-color-error-bg, #FFF2F0);color:var(--ant-color-error-hover, #DC2626)}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.max-h-\[380px\]{max-height:380px}.w-full{width:100%}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.overflow-y-auto{overflow-y:auto}.break-all{word-break:break-all}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-0{border-width:0px}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.p-4{padding:1rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pr-1{padding-right:.25rem}.text-center{text-align:center}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (prefers-color-scheme: dark){.dark\:border-zinc-800{--tw-border-opacity: 1;border-color:rgb(39 39 42 / var(--tw-border-opacity, 1))}.dark\:bg-zinc-900{--tw-bg-opacity: 1;background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1))}.dark\:text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.dark\:text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}}html,body{margin:0;padding:0;width:100%;height:100%}*{margin:0;padding:0;box-sizing:border-box}ul,ol{list-style:none}a{text-decoration:none;color:inherit}input,button,textarea,select{margin:0;padding:0;border:none;outline:none;font:inherit;color:inherit;background:none}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5;color:var(--ant-color-text, rgba(0, 0, 0, .85));background-color:var(--ant-color-bg-layout, #fff)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background-color:var(--ant-color-fill-secondary, #d9d9d9);border-radius:4px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:var(--ant-color-fill-tertiary, #bfbfbf);border:1px solid transparent}::-webkit-scrollbar-track{background-color:var(--ant-color-fill-quaternary, #f5f5f5);border-radius:4px}.no-select{-webkit-user-select:none;-moz-user-select:none;user-select:none}.clearfix:after{content:"";display:table;clear:both}.ant-table .ant-table-thead>tr>th{color:var(--ant-color-text-secondary, #475569);font-weight:600;background-color:var(--ant-color-fill-alter, #F8FAFC);border-bottom:1px solid var(--ant-color-border-secondary, #F1F5F9);line-height:22px;font-size:14px;padding:12px 16px}.ant-table .ant-table-tbody tr>td{padding:14px 16px;border-bottom:1px solid var(--ant-color-border-secondary, #F1F5F9);transition:background .2s ease}.ant-table .ant-table-tbody tr.ant-table-row:not(.ant-table-expanded-row) td{background-color:var(--ant-color-bg-container, #FFFFFF)}.ant-table .ant-table-tbody tr.ant-table-row:hover td{background-color:var(--ant-color-fill-alter, #F8FAFC)!important}.ant-table .ant-table-tbody tr.ant-table-placeholder td{background-color:var(--ant-color-bg-container, #FFFFFF);border-bottom:1px solid var(--ant-color-border-secondary, #F1F5F9)}.ant-table .ant-table-tbody .ant-table-expanded-row-level-1 .ant-table-cell{padding:20px 20px 20px 70px;background-color:var(--ant-color-fill-alter, #F8FAFC)}.ant-table div.ant-typography{margin-bottom:0}.ant-table .ant-table-selection-column{position:relative;z-index:10;padding-left:20px}.table-actions a{color:var(--ant-color-text-secondary);margin-right:12px}.table-actions a:hover{color:var(--ant-color-primary)}.table-actions .danger:hover{color:var(--ant-color-error)}.table-container .ant-table-wrapper .ant-table .ant-table-thead>tr>th{background:var(--ant-color-fill-alter);font-weight:500}.table-container .table-toolbar{margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}.table-container .table-toolbar .table-toolbar-title{font-size:16px;font-weight:500}.table-container .table-toolbar .table-toolbar-option{display:flex;align-items:center;gap:8px}.table-container .table-alert{margin-bottom:16px}.table-search-form{padding:24px;background:var(--ant-color-fill-alter);border-radius:var(--ant-border-radius);margin-bottom:16px}.table-search-form .ant-form-item{margin-bottom:16px}.table-search-form .ant-form-item:last-child{margin-bottom:0}.table-search-form .form-buttons{text-align:right}.drawer-form .ant-form-item{margin-bottom:24px}.drawer-form .drawer-footer{position:absolute;bottom:0;width:100%;border-top:1px solid var(--ant-color-border-secondary);padding:10px 16px;text-align:right;left:0;background:var(--ant-color-bg-container, #fff);border-radius:0 0 2px 2px}
