body { font-family: 'Inter', system-ui, sans-serif; }
.login-bg { background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%); }
.login-card { box-shadow: 0 25px 50px -12px rgba(0,0,0,0.15); }
.sidebar-item.active { background: linear-gradient(135deg, #dcfce7 0%, #bbf7d0 100%); color: #15803d; font-weight: 600; }
.sidebar-item:hover:not(.active) { background: #f0fdf4; }
.card { background: white; border-radius: 16px; box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.04); border: 1px solid #f1f5f9; }
.input-field { border: 1.5px solid #e2e8f0; border-radius: 10px; padding: 10px 14px; width: 100%; transition: all 0.2s; background: #f8fafc; }
.input-field:focus { outline: none; border-color: #22c55e; box-shadow: 0 0 0 4px rgba(34,197,94,0.1); background: white; }
.btn { padding: 10px 20px; border-radius: 10px; font-weight: 500; transition: all 0.2s; display: inline-flex; align-items: center; justify-content: center; gap: 8px; cursor: pointer; border: none; }
.btn-primary { background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%); color: white; box-shadow: 0 2px 8px rgba(34,197,94,0.3); }
.btn-primary:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(34,197,94,0.4); }
.btn-secondary { background: #f1f5f9; color: #475569; }
.btn-secondary:hover { background: #e2e8f0; }
.btn-danger { background: #fef2f2; color: #dc2626; }
.btn-danger:hover { background: #fee2e2; }
.status-badge { padding: 4px 12px; border-radius: 20px; font-size: 12px; font-weight: 600; }
.status-SUCCESS { background: #dcfce7; color: #15803d; }
.status-PENDING, .status-NOTPAY { background: #fef3c7; color: #b45309; }
.status-CLOSED, .status-PAYERROR { background: #f1f5f9; color: #64748b; }
.status-REFUND { background: #dbeafe; color: #1d4ed8; }
.table-row:hover { background: #f8fafc; }
pre { background: #0f172a; color: #e2e8f0; padding: 16px; border-radius: 10px; overflow-x: auto; font-size: 13px; line-height: 1.6; }
code { font-family: 'Consolas', 'Monaco', monospace; }
.method-badge { padding: 4px 10px; border-radius: 6px; font-size: 11px; font-weight: 700; }
.method-get { background: #dbeafe; color: #1d4ed8; }
.method-post { background: #dcfce7; color: #15803d; }
.api-card { border-left: 4px solid #22c55e; }
.animate-fade { animation: fadeIn 0.3s ease-out; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

/* 日期选择器优化 */
input[type="date"] {
    position: relative;
    cursor: pointer;
}
input[type="date"]::-webkit-calendar-picker-indicator {
    background: transparent;
    cursor: pointer;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    opacity: 0.6;
}
input[type="date"]::-webkit-calendar-picker-indicator:hover {
    opacity: 1;
}
input[type="date"]::-webkit-datetime-edit {
    padding-right: 24px;
}
input[type="date"]::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
}

/* 状态异常 */
.status-ABNORMAL { background: #fef2f2; color: #dc2626; }
