*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;background-color:#f5f7fa;color:#333;-webkit-font-smoothing:antialiased}.login-container{height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#001529,#003d2b,#00a76f);position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;width:600px;height:600px;background:#00a76f1a;border-radius:50%;top:-200px;right:-100px}.login-container:after{content:"";position:absolute;width:500px;height:500px;background:#007aff14;border-radius:50%;bottom:-150px;left:-100px}.login-card{width:420px;padding:48px 40px;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;position:relative;z-index:1}.login-card .login-logo{text-align:center;margin-bottom:32px}.login-card .login-logo .logo-text{font-size:28px;font-weight:600;color:#00a76f;margin-bottom:8px}.login-card .login-logo .logo-sub{font-size:14px;color:#999}.login-card .login-form .login-btn{width:100%;height:44px;font-size:16px;margin-top:8px}.login-card .login-footer{text-align:center;margin-top:24px;font-size:12px;color:#ccc}.admin-layout{min-height:100vh}.admin-sider .logo{height:64px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.1)}.admin-sider .logo .logo-icon{font-size:24px;margin-right:8px;color:#00a76f}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid #eee;background:#fff}.admin-header .header-left{display:flex;align-items:center}.admin-header .header-left .page-title{font-size:18px;font-weight:500;color:#333}.admin-header .header-right{display:flex;align-items:center;gap:16px}.admin-header .header-right .user-info{display:flex;align-items:center;gap:10px;cursor:pointer}.admin-header .header-right .user-info .user-avatar{width:36px;height:36px;border-radius:50%;background:#00a76f;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:500}.admin-header .header-right .user-info .user-name{font-size:14px;color:#333}.admin-header .header-right .user-info .user-role{font-size:12px;color:#00a76f;background:#e6f9f0;padding:2px 8px;border-radius:4px}.admin-content{margin:16px}.page-container{background:#fff;border-radius:8px;padding:24px;min-height:calc(100vh - 128px)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header .page-title{font-size:18px;font-weight:500;color:#333}.search-section{background:#fafbfc;border-radius:8px;padding:16px 20px;margin-bottom:16px}.search-section .search-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.search-section .search-row .search-item{display:flex;flex-direction:column}.search-section .search-row .search-item label{font-size:12px;color:#666;margin-bottom:4px}.stat-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat-cards .stat-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000000a}.stat-cards .stat-card .stat-label{font-size:14px;color:#666;margin-bottom:8px}.stat-cards .stat-card .stat-value{font-size:28px;font-weight:600;color:#333;margin-bottom:4px}.stat-cards .stat-card .stat-value.success{color:#00a76f}.stat-cards .stat-card .stat-value.warning{color:#ff9500}.stat-cards .stat-card .stat-value.danger{color:#ff3b30}.stat-cards .stat-card .stat-value.info{color:#007aff}.stat-cards .stat-card .stat-trend{font-size:12px;color:#999}.stat-cards .stat-card .stat-trend .up{color:#00a76f}.stat-cards .stat-card .stat-trend .down{color:#ff3b30}.table-actions{display:flex;gap:8px}.tag-active{color:#00a76f;background:#e6f9f0}.tag-pending{color:#ff9500;background:#fff5e6}.tag-paid{color:#007aff;background:#e6f0ff}.tag-settled{color:#52c41a;background:#f6ffed}.tag-refunding{color:#eb2f96;background:#fff0f6}.tag-refunded,.tag-cancelled,.tag-expired{color:#8c8c8c;background:#fafafa}.detail-section{margin-bottom:24px}.detail-section .section-title{font-size:16px;font-weight:500;color:#333;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f0f0f0}.detail-row{display:flex;padding:8px 0}.detail-row .detail-label{width:120px;color:#999;font-size:14px;flex-shrink:0}.detail-row .detail-value{flex:1;color:#333;font-size:14px}@media (max-width: 1200px){.stat-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.stat-cards{grid-template-columns:1fr}.login-card{width:90%;padding:32px 24px}}
