:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;box-sizing:border-box;flex-direction:column;width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.layout-container{background:#f5f7fa;min-height:100vh}.layout-sider{z-index:10;border-right:1px solid #e8eaed;position:relative;box-shadow:2px 0 8px #0000000a;background:#fff!important}.logo-container{border-bottom:1px solid #e8eaed;align-items:center;gap:12px;height:64px;padding:0 20px;display:flex}.logo-icon{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;display:flex;box-shadow:0 2px 8px #667eea4d}.logo-text{flex-direction:column;flex:1;gap:2px;display:flex}.logo-title{color:#1f2329;font-size:16px;font-weight:600;line-height:1.2}.logo-subtitle{color:#8f959e;font-size:12px;line-height:1}.layout-menu{padding:12px 8px;background:0 0!important;border:none!important}.layout-menu .ant-menu-item{color:#4e5969;border-radius:8px;height:40px;margin:4px 0;font-size:14px;line-height:40px;transition:all .2s cubic-bezier(.645,.045,.355,1)}.layout-menu .ant-menu-item:hover{color:#1f2329;background:#f2f3f5}.layout-menu .ant-menu-item-selected{font-weight:500;color:#667eea!important;background:linear-gradient(135deg,#667eea22 0%,#764ba222 100%)!important}.layout-menu .ant-menu-item-selected:after{display:none}.layout-menu .ant-menu-item-icon{font-size:16px}.layout-main{background:#f5f7fa}.layout-header{border-bottom:1px solid #e8eaed;justify-content:space-between;align-items:center;height:64px;line-height:64px;display:flex;box-shadow:0 1px 4px #00000005;background:#fff!important;padding:0 24px!important}.header-breadcrumb{color:#1f2329;font-size:18px;font-weight:600}.user-info{border-radius:8px;padding:8px 16px;transition:background .2s}.user-info:hover{background:#f2f3f5}.user-info span{color:#4e5969;font-size:14px}.layout-content{min-height:calc(100vh - 112px);margin:24px}@media (width<=768px){.layout-sider{z-index:1000;top:0;bottom:0;left:0;position:fixed!important}.layout-content{margin:16px}.logo-title{font-size:14px}.logo-subtitle{display:none}}.login-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-background{position:absolute;inset:0;overflow:hidden}.bg-gradient-1,.bg-gradient-2,.bg-gradient-3{filter:blur(80px);opacity:.5;border-radius:50%;animation:20s ease-in-out infinite float;position:absolute}.bg-gradient-1{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);width:600px;height:600px;animation-delay:0s;top:-200px;left:-200px}.bg-gradient-2{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);width:500px;height:500px;animation-delay:7s;bottom:-150px;right:-150px}.bg-gradient-3{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);width:400px;height:400px;animation-delay:14s;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes float{0%,to{transform:translate(0)scale(1)}33%{transform:translate(50px,-50px)scale(1.1)}66%{transform:translate(-30px,30px)scale(.9)}}.login-content{z-index:1;width:100%;max-width:440px;padding:20px;position:relative}.login-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #fff3;border-radius:24px;padding:48px 40px;box-shadow:0 20px 60px #0000004d}.login-header{text-align:center;margin-bottom:40px}.login-logo{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:20px;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 20px;font-size:36px;animation:3s ease-in-out infinite logoFloat;display:flex;box-shadow:0 8px 24px #667eea66}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.login-title{color:#1f2329;margin:0 0 8px;font-size:28px;font-weight:600;line-height:1.2}.login-subtitle{color:#8f959e;margin:0;font-size:15px}.login-form{margin-top:32px}.login-input{border:1.5px solid #e8eaed;border-radius:12px;height:48px;padding:12px 16px;font-size:15px;transition:all .3s}.login-input:hover{border-color:#c0c4cc}.login-input:focus,.login-input-focused{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-icon{color:#8f959e;font-size:16px}.login-button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:12px;height:48px;margin-top:8px;font-size:16px;font-weight:500;transition:all .3s;box-shadow:0 4px 12px #667eea66}.login-button:hover:not(:disabled){background:linear-gradient(135deg,#7b8ff0 0%,#8b5db8 100%);transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.login-button:active:not(:disabled){transform:translateY(0)}.login-tip{text-align:center;color:#8f959e;background:#f7f8fa;border:1px dashed #e8eaed;border-radius:8px;margin-top:20px;padding:12px;font-size:13px}.login-footer{text-align:center;color:#fffc;margin-top:24px;font-size:14px}.login-footer p{margin:0}@media (width<=768px){.login-card{border-radius:20px;padding:36px 28px}.login-logo{border-radius:16px;width:64px;height:64px;font-size:32px}.login-title{font-size:24px}.login-subtitle{font-size:14px}.login-input,.login-button{height:44px;font-size:15px}.bg-gradient-1,.bg-gradient-2,.bg-gradient-3{filter:blur(60px)}}.login-form .ant-form-item{margin-bottom:20px}.login-form .ant-form-item:last-of-type{margin-bottom:0}.dashboard-container{padding:0}.loading-container{justify-content:center;align-items:center;min-height:400px;display:flex}.dashboard-header{margin-bottom:24px}.dashboard-title{color:#1f2329;margin:0 0 4px;font-size:24px;font-weight:600;line-height:1.4}.dashboard-subtitle{color:#8f959e;margin:0;font-size:14px}.stats-row{margin-bottom:16px}.stats-card{border:1px solid #e8eaed;border-radius:12px;transition:all .3s cubic-bezier(.645,.045,.355,1);overflow:hidden;box-shadow:0 1px 2px #00000008,0 1px 6px -1px #00000005}.stats-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014,0 2px 6px #0000000a}.stats-card .ant-card-body{align-items:center;gap:16px;padding:20px;display:flex}.stats-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:24px;display:flex}.stats-content{flex:1;min-width:0}.stats-title{color:#8f959e;margin-bottom:8px;font-size:14px;font-weight:400}.stats-value{font-variant-numeric:tabular-nums;font-size:28px;font-weight:600;line-height:1}.stats-suffix{opacity:.85;margin-left:4px;font-size:18px}.data-card{border:1px solid #e8eaed;border-radius:12px;height:100%;box-shadow:0 1px 2px #00000008,0 1px 6px -1px #00000005}.data-card .ant-card-head{border-bottom:1px solid #e8eaed;padding:16px 20px}.data-card .ant-card-body{padding:20px}.card-title{color:#1f2329;font-size:16px;font-weight:600}.custom-table{border-radius:8px}.custom-table .ant-table-tbody>tr:last-child>td{border-bottom:none}@media (width<=768px){.dashboard-title{font-size:20px}.stats-card .ant-card-body{gap:12px;padding:16px}.stats-icon{width:48px;height:48px;font-size:20px}.stats-value{font-size:24px}.data-card .ant-card-body{padding:16px}.custom-table .ant-table-thead>tr>th,.custom-table .ant-table-tbody>tr>td{padding:10px 12px}}.primary-button{border-radius:8px;height:40px;font-weight:500;box-shadow:0 2px 8px #1890ff33}.primary-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #1890ff4d}.rank-badge{color:#4e5969;background:#f2f3f5;border-radius:8px;justify-content:center;align-items:center;min-width:32px;height:32px;padding:0 10px;font-size:14px;font-weight:500;display:inline-flex}.rank-badge.rank-top{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);font-weight:600;box-shadow:0 2px 6px #667eea4d}.heat-value{color:#ff4d4f;font-variant-numeric:tabular-nums;font-weight:500}@media (width<=768px){.page-header{flex-direction:column;gap:16px}.primary-button{width:100%}.page-title{font-size:20px}}.preview-modal .ant-modal-header{border-bottom:1px solid #e8eaed;padding:20px 24px}.preview-modal .ant-modal-body{max-height:70vh;padding:24px;overflow-y:auto}.modal-title{color:#1f2329;font-size:18px;font-weight:600}.article-preview{padding:0}.article-title{color:#1f2329;border-bottom:2px solid #e8eaed;margin:0 0 24px;padding-bottom:20px;font-size:24px;font-weight:600}.article-content{color:#4e5969;font-size:15px;line-height:1.8}.article-content br{content:"";margin:.5em 0;display:block}@media (width<=768px){.page-header{flex-direction:column;gap:16px}.page-title{font-size:20px}.preview-modal .ant-modal{max-width:95%;width:95%!important}.article-title{font-size:20px}.article-content{font-size:14px}}.stripe-config-container{background:#fafafa;min-height:100vh;padding:0}.stripe-header{background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;margin-bottom:0;padding:32px 40px;display:flex}.stripe-title{color:#111827;margin:0;font-size:28px;font-weight:600;line-height:1.2}.stripe-subtitle{color:#6b7280;margin:8px 0 0;font-size:14px}.stripe-tabs-container{background:#fff;border-bottom:1px solid #e5e7eb}.stripe-tabs-container .ant-tabs-nav{background:#fff;margin:0;padding:0 40px}.stripe-tabs-container .ant-tabs-nav:before{border-bottom:1px solid #e5e7eb}.stripe-tabs-container .ant-tabs-tab{color:#6b7280;background:0 0;border:none;margin:0;padding:16px 20px;font-size:14px;font-weight:500}.stripe-tabs-container .ant-tabs-tab:hover,.stripe-tabs-container .ant-tabs-tab-active{color:#111827}.stripe-tabs-container .ant-tabs-ink-bar{background:#667eea;height:2px}.stripe-tabs-container .ant-tabs-content-holder{min-height:500px;padding:40px}.status-badge{border-radius:4px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-block}.status-success{color:#065f46;background:#d1fae5}.status-default{color:#6b7280;background:#f3f4f6}.stripe-table-wrapper{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.stripe-table-wrapper .ant-table{font-size:13px}.stripe-table-wrapper .ant-table-thead>tr>th{color:#6b7280;text-transform:uppercase;letter-spacing:.5px;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:12px 16px;font-size:12px;font-weight:500}.stripe-table-wrapper .ant-table-tbody>tr>td{color:#374151;border-bottom:1px solid #f3f4f6;padding:16px}.stripe-table-wrapper .ant-table-tbody>tr:last-child>td{border-bottom:none}.stripe-table-wrapper .ant-table-tbody>tr:hover>td{background:#f9fafb}.stripe-table-wrapper .ant-btn-link{color:#667eea;height:auto;padding:0 8px;font-size:13px}.stripe-table-wrapper .ant-btn-link:hover{color:#4c63d2}.stripe-table-wrapper .ant-btn-link.ant-btn-dangerous{color:#ef4444}.stripe-table-wrapper .ant-btn-link.ant-btn-dangerous:hover{color:#dc2626}.stripe-form .ant-form-item-label>label{color:#374151;font-size:13px;font-weight:500}.stripe-form .ant-input,.stripe-form .ant-input-password,.stripe-form .ant-input-number{border:1px solid #d1d5db;border-radius:6px;font-size:13px;transition:all .2s}.stripe-form .ant-input:hover,.stripe-form .ant-input-password:hover,.stripe-form .ant-input-number:hover{border-color:#9ca3af}.stripe-form .ant-input:focus,.stripe-form .ant-input-password input:focus,.stripe-form .ant-input-number:focus,.stripe-form .ant-input-number-focused{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.stripe-form .ant-switch{background:#d1d5db}.stripe-form .ant-switch-checked{background:#667eea}.task-group{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.task-group h3{color:#111827;margin:0 0 16px;font-size:14px;font-weight:600}.task-group .ant-form-item{margin-bottom:16px}.task-group .ant-form-item:last-child{margin-bottom:0}.stripe-config-container .ant-btn-primary{box-shadow:none;background:#667eea;border-color:#667eea;border-radius:6px;font-weight:500;transition:all .2s}.stripe-config-container .ant-btn-primary:hover{background:#4c63d2;border-color:#4c63d2}.stripe-config-container .ant-btn-primary:disabled{color:#9ca3af;background:#e5e7eb;border-color:#e5e7eb}.drawer-content{padding-top:8px}.drawer-content .ant-form-item-label>label{color:#374151;font-size:13px;font-weight:500}.drawer-content .ant-input,.drawer-content .ant-input-password{border:1px solid #d1d5db;border-radius:6px;font-size:13px}.drawer-content .ant-input:focus,.drawer-content .ant-input-password input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.drawer-content .ant-tag{color:#374151;background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;padding:2px 8px;font-size:12px}.stripe-config-container .ant-badge-status-success .ant-badge-status-dot{background:#10b981}.stripe-config-container .ant-badge-status-default .ant-badge-status-dot{background:#d1d5db}.stripe-config-container .ant-badge-status-text{color:#6b7280;font-size:13px}@media (width<=768px){.stripe-header{flex-direction:column;gap:16px;padding:24px 20px}.stripe-header button{width:100%}.stripe-section{padding:24px 20px}.stripe-title{font-size:24px}.stripe-table-wrapper{overflow-x:auto}.task-group{margin-bottom:16px}}.page-container{padding:0}.page-header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.page-title{color:#1f2329;margin:0 0 4px;font-size:24px;font-weight:600;line-height:1.4}.page-subtitle{color:#8f959e;margin:0;font-size:14px}.filter-card{border:1px solid #e8eaed;border-radius:12px;margin-bottom:16px;box-shadow:0 1px 2px #00000008,0 1px 6px -1px #00000005}.filter-card .ant-card-body{padding:20px 24px}.filter-space{width:100%}.filter-item{align-items:center;gap:8px;display:flex}.filter-icon{color:#8f959e;font-size:16px}.table-card{border:1px solid #e8eaed;border-radius:12px;box-shadow:0 1px 2px #00000008,0 1px 6px -1px #00000005}.table-card .ant-card-body{padding:0}.custom-table .ant-table{font-size:14px}.custom-table .ant-table-thead>tr>th{color:#4e5969;background:#f7f8fa;border-bottom:1px solid #e8eaed;padding:16px;font-weight:500}.custom-table .ant-table-tbody>tr>td{border-bottom:1px solid #f2f3f5;padding:16px}.custom-table .ant-table-tbody>tr:hover>td{background:#f7f8fa}.custom-table .ant-pagination{margin:24px}@media (width<=768px){.page-title{font-size:20px}.filter-card .ant-card-body{padding:16px}.filter-space{flex-direction:column;align-items:stretch}.filter-item{width:100%}.filter-item .ant-select{width:100%!important}}
