:root{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--bg-tertiary: #fafafa;--text-primary: rgba(0, 0, 0, .85);--text-secondary: rgba(0, 0, 0, .65);--text-tertiary: rgba(0, 0, 0, .45);--border-color: #f0f0f0;--border-color-hover: #d9d9d9;--shadow-light: rgba(0, 0, 0, .06);--shadow-medium: rgba(0, 0, 0, .1);--primary-blue: #1890ff;--primary-blue-hover: #40a9ff;--success-green: #52c41a;--warning-orange: #fa8c16;--error-red: #ff4d4f}.dark{--bg-primary: #1f1f1f;--bg-secondary: #141414;--bg-tertiary: #262626;--text-primary: rgba(255, 255, 255, .85);--text-secondary: rgba(255, 255, 255, .65);--text-tertiary: rgba(255, 255, 255, .45);--border-color: #303030;--border-color-hover: #434343;--shadow-light: rgba(0, 0, 0, .2);--shadow-medium: rgba(0, 0, 0, .4);--primary-blue: #177ddc;--primary-blue-hover: #3a9bff;--success-green: #389e0d;--warning-orange: #d46b08;--error-red: #cf1322}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5715;color:var(--text-primary);background-color:var(--bg-secondary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:color .3s ease,background-color .3s ease}#root{width:100%;min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--border-color-hover);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.ant-layout-header{box-shadow:0 2px 8px var(--shadow-medium);background-color:var(--bg-primary);border-bottom:1px solid var(--border-color)}.ant-card{box-shadow:0 2px 8px var(--shadow-light);border-radius:8px;background-color:var(--bg-primary);border-color:var(--border-color)}.ant-card-head{border-bottom:1px solid var(--border-color);background:linear-gradient(90deg,var(--bg-tertiary) 0%,var(--bg-primary) 100%)}.ant-card-head-title{font-weight:600;color:var(--text-primary)}.ant-btn-primary{background:var(--primary-blue);border-color:var(--primary-blue);box-shadow:0 2px 4px #1890ff4d}.ant-btn-primary:hover{background:var(--primary-blue-hover);border-color:var(--primary-blue-hover);box-shadow:0 4px 8px #1890ff66}.ant-progress-bg{background:linear-gradient(90deg,var(--primary-blue) 0%,var(--success-green) 100%)}.ant-tag{border-radius:6px;font-weight:500;background-color:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-primary)}@media (max-width: 768px){.ant-layout-sider{width:280px!important;min-width:280px!important;max-width:280px!important}.ant-layout-content{margin-left:280px!important}}@media (max-width: 576px){.ant-layout-sider{position:fixed!important;z-index:1000!important;height:100vh!important;width:100%!important;min-width:100%!important;max-width:100%!important}.ant-layout-content{margin-left:0!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-out}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning{animation:spin 1s linear infinite}.markdown-content{line-height:1.6}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}.markdown-content h1{font-size:28px;border-bottom:2px solid #1890ff;padding-bottom:8px}.markdown-content h2{font-size:24px;color:#1890ff}.markdown-content h3{font-size:20px;color:#595959}.markdown-content p{margin-bottom:16px;font-size:16px}@media (max-width: 768px){.markdown-content p{font-size:16px;line-height:1.6}.markdown-content li{font-size:16px}.markdown-content code{font-size:14px}.markdown-content th,.markdown-content td{font-size:15px}body{font-size:16px}}.markdown-content ul,.markdown-content ol{margin-bottom:16px;padding-left:24px}.markdown-content li{margin-bottom:4px;font-size:15px}.markdown-content blockquote{margin:16px 0;padding:16px;background:#f6f8fa;border-left:4px solid #1890ff;border-radius:4px}.markdown-content table{width:100%;margin-bottom:16px;border-collapse:collapse;border-spacing:0}.markdown-content th,.markdown-content td{padding:8px 12px;border:1px solid #f0f0f0;text-align:left;font-size:14px}.markdown-content th{background:#fafafa;font-weight:600;color:#1890ff}.markdown-content tr:nth-child(2n){background:#fafafa}.markdown-content code{padding:2px 6px;margin:0 2px;background:#f5f5f5;border:1px solid #e8e8e8;border-radius:3px;font-size:14px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}.markdown-content pre{padding:16px;margin-bottom:16px;background:#f6f8fa;border-radius:6px;overflow-x:auto}.markdown-content pre code{padding:0;margin:0;background:transparent;border:none;border-radius:0}.auth-guard-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%);position:relative}.auth-guard-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 30% 30%,rgba(24,144,255,.1) 0%,transparent 50%),radial-gradient(circle at 70% 70%,rgba(80,227,194,.1) 0%,transparent 50%);pointer-events:none}.auth-guard-content{position:relative;z-index:1;text-align:center;padding:3rem 2rem;max-width:480px;width:100%;background:#ffffffb3;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border-radius:20px;border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 32px #0000001a;transition:all .3s ease}.dark .auth-guard-content{background:#1f1f1fcc;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d}.auth-guard-hero{margin-bottom:2.5rem}.auth-guard-icon{width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#1890ff,#50e3c2);border-radius:20px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 24px #1890ff4d;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.auth-guard-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem;background:linear-gradient(135deg,#1890ff,#50e3c2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-guard-subtitle{font-size:1rem;color:var(--text-secondary);margin:0;line-height:1.5}.auth-guard-login-btn{width:100%;height:48px;border-radius:12px;font-size:1.1rem;font-weight:600;background:linear-gradient(135deg,#1890ff,#50e3c2);border:none;box-shadow:0 4px 16px #1890ff4d;transition:all .3s ease}.auth-guard-login-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #1890ff66;background:linear-gradient(135deg,#40a9ff,#73e6c7)}.auth-guard-login-btn:active{transform:translateY(0)}.ant-modal-content{background:#fffffff2!important;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border-radius:16px!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 8px 32px #0000001a!important}.dark .ant-modal-content{background:#1f1f1ff2!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:0 8px 32px #0000004d!important}.dark .ant-form-item-label>label{color:var(--text-primary)!important}.dark .ant-input{background-color:var(--bg-tertiary)!important;border-color:var(--border-color)!important;color:var(--text-primary)!important}.dark .ant-input:focus,.dark .ant-input-focused{border-color:var(--primary-blue)!important;box-shadow:0 0 0 2px #177ddc33!important}.dark .ant-input::placeholder{color:var(--text-tertiary)!important}.dark .ant-btn-primary{background:var(--primary-blue)!important;border-color:var(--primary-blue)!important}.dark .ant-btn-primary:hover{background:var(--primary-blue-hover)!important;border-color:var(--primary-blue-hover)!important}.login-form-container{padding:1rem}.login-form-title{font-weight:700!important;color:var(--text-primary)!important;background:linear-gradient(135deg,#1890ff,#50e3c2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1.5rem!important}.login-form-submit-btn{height:48px!important;border-radius:12px!important;font-size:1rem!important;font-weight:600!important;background:linear-gradient(135deg,#1890ff,#50e3c2)!important;border:none!important;box-shadow:0 4px 16px #1890ff4d!important;transition:all .3s ease!important}.login-form-submit-btn:hover{transform:translateY(-1px)!important;box-shadow:0 6px 20px #1890ff66!important;background:linear-gradient(135deg,#40a9ff,#73e6c7)!important}.login-form-submit-btn:active{transform:translateY(0)!important}.login-form-container .ant-input,.login-form-container .ant-input-password{border-radius:8px!important;height:44px!important;border:2px solid transparent!important;background-color:var(--bg-tertiary)!important;transition:all .3s ease!important}.login-form-container .ant-input:focus,.login-form-container .ant-input-focused,.login-form-container .ant-input-password:focus,.login-form-container .ant-input-password.ant-input-password-focused{border-color:#1890ff!important;box-shadow:0 0 0 3px #1890ff1a!important}.login-form-container .ant-input-prefix{display:flex!important;align-items:center!important;justify-content:center!important;margin-right:8px!important;color:var(--text-tertiary)!important;width:16px!important;height:16px!important}.login-form-container .ant-input-prefix .anticon{font-size:16px!important;line-height:1!important;width:16px!important;height:16px!important;display:flex!important;align-items:center!important;justify-content:center!important}.login-form-container .ant-input-password .ant-input{border:none!important;background:transparent!important;box-shadow:none!important;height:100%!important;display:flex!important;align-items:center!important;padding-left:0!important;padding-right:0!important}.login-form-container .ant-input-password .ant-input-suffix{display:flex!important;align-items:center!important;justify-content:center!important;margin-left:8px!important}.login-form-container .ant-input-password .ant-input-prefix,.login-form-container .ant-input:not(.ant-input-password) .ant-input-prefix{position:relative!important;left:0!important;top:0!important;transform:none!important}.login-form-container .email-input-field{border-radius:8px!important;height:44px!important;border:2px solid #d9d9d9!important;background-color:var(--bg-primary)!important;transition:all .3s ease!important;padding:0 16px!important}.login-form-container .email-input-field:hover{border-color:#40a9ff!important}.login-form-container .email-input-field:focus,.login-form-container .email-input-field.ant-input-focused{border-color:#1890ff!important;box-shadow:0 0 0 3px #1890ff1a!important;outline:none!important}.login-form-container .ant-input-password{border-radius:8px!important;height:44px!important;border:2px solid #d9d9d9!important;background-color:var(--bg-primary)!important;transition:all .3s ease!important;padding:0 16px!important}.login-form-container .ant-input-password:hover{border-color:#40a9ff!important}.login-form-container .ant-input-password:focus,.login-form-container .ant-input-password.ant-input-password-focused{border-color:#1890ff!important;box-shadow:0 0 0 3px #1890ff1a!important;outline:none!important}.login-form-container .ant-input-password .ant-input{border:none!important;background:transparent!important;box-shadow:none!important;height:100%!important;padding:0!important;font-size:inherit!important;line-height:inherit!important}.login-form-container .ant-input-password .ant-input-prefix{display:flex!important;align-items:center!important;justify-content:center!important;margin-left:8px!important;margin-right:8px!important;color:var(--text-tertiary)!important;width:16px!important;height:16px!important}.login-form-container .ant-input-password .ant-input-prefix .anticon{font-size:16px!important;line-height:1!important}.login-form-container .ant-input-password .ant-input-suffix{display:flex!important;align-items:center!important;justify-content:center!important;margin-right:8px!important;color:var(--text-tertiary)!important}.dark .login-form-container .email-input-field,.dark .login-form-container .ant-input-password{background-color:var(--bg-tertiary)!important;border-color:var(--border-color)!important;color:var(--text-primary)!important}.dark .login-form-container .email-input-field:focus,.dark .login-form-container .email-input-field.ant-input-focused,.dark .login-form-container .ant-input-password:focus,.dark .login-form-container .ant-input-password.ant-input-password-focused{border-color:var(--primary-blue)!important;box-shadow:0 0 0 3px #177ddc33!important}.dark .login-form-container .email-input-field::placeholder,.dark .login-form-container .ant-input-password .ant-input::placeholder{color:var(--text-tertiary)!important}.dark .login-form-container .ant-input-password .ant-input{color:var(--text-primary)!important}.login-form-container .password-input-field{border-radius:8px!important;height:44px!important;border:2px solid #d9d9d9!important;background-color:var(--bg-primary)!important;transition:all .3s ease!important;padding:0 16px!important}.login-form-container .password-input-field:hover{border-color:#40a9ff!important}.login-form-container .password-input-field:focus,.login-form-container .password-input-field.ant-input-password-focused{border-color:#1890ff!important;box-shadow:0 0 0 3px #1890ff1a!important;outline:none!important}.login-form-container .password-input-field .ant-input{border:none!important;background:transparent!important;box-shadow:none!important;height:100%!important;padding:0!important;font-size:inherit!important;line-height:inherit!important}.login-form-container .password-input-field .ant-input-suffix{display:flex!important;align-items:center!important;justify-content:center!important;margin-right:8px!important;color:var(--text-tertiary)!important}.dark .login-form-container .password-input-field{background-color:var(--bg-tertiary)!important;border-color:var(--border-color)!important;color:var(--text-primary)!important}.dark .login-form-container .password-input-field:focus,.dark .login-form-container .password-input-field.ant-input-password-focused{border-color:var(--primary-blue)!important;box-shadow:0 0 0 3px #177ddc33!important}.dark .login-form-container .password-input-field .ant-input{color:var(--text-primary)!important}.dark .login-form-container .password-input-field .ant-input::placeholder{color:var(--text-tertiary)!important}html,body,#root{min-height:100vh;min-height:100dvh;min-height:-webkit-fill-available;overflow:hidden}@media (max-width: 768px){html{height:100%;height:100vh;height:-webkit-fill-available}body{min-height:100%;min-height:100vh;min-height:-webkit-fill-available;height:auto;overflow-x:hidden;overflow-y:auto;background-color:var(--bg-secondary)}#root{min-height:100%;min-height:100vh;min-height:-webkit-fill-available;height:auto;display:flex;flex-direction:column}}.ant-layout{min-height:100vh;min-height:100dvh;min-height:-webkit-fill-available;overflow:hidden}@media (max-width: 768px){.ant-layout{min-height:100%;min-height:100vh;min-height:-webkit-fill-available;height:auto;flex:1;display:flex;flex-direction:column;overflow-x:hidden}}.ant-layout-header{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:1000!important;height:64px!important;line-height:64px!important}.ant-layout-sider{position:fixed!important;left:0!important;top:64px!important;z-index:999!important;height:calc(100vh - 64px)!important;overflow-y:auto!important}.ant-layout-content{margin-top:64px!important;min-height:calc(100vh - 64px)!important;min-height:calc(100dvh - 64px)!important;min-height:calc(-webkit-fill-available - 64px)!important;overflow-y:auto!important;overflow-x:hidden!important}@media (min-width: 769px){.ant-layout-content{margin-left:350px!important;height:calc(100vh - 64px)!important}}@media (max-width: 768px){.ant-layout-sider{display:none!important}.ant-layout-content{margin-left:0!important;min-height:calc(100vh - 64px)!important;min-height:calc(100% - 64px)!important;min-height:calc(-webkit-fill-available - 64px)!important;height:auto!important;flex:1!important;display:flex!important;flex-direction:column!important;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))!important}}.ant-layout-content::-webkit-scrollbar{width:8px}.ant-layout-content::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}.ant-layout-content::-webkit-scrollbar-thumb{background:var(--border-color-hover);border-radius:4px}.ant-layout-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@media (max-width: 768px){.ant-layout-content{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.ant-layout-content>*{max-width:100%;overflow-wrap:break-word}}
