*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,sans-serif;background:#f5f5f5;color:#333}.layout{display:flex;min-height:100vh}.sidebar{width:220px;background:#001529;color:#fff;padding:20px 0;flex-shrink:0}.sidebar h2{padding:0 20px 20px;font-size:16px;border-bottom:1px solid #ffffff20;margin-bottom:12px}.sidebar a{display:block;padding:12px 20px;color:#ffffffa6;text-decoration:none;font-size:14px}.sidebar a:hover,.sidebar a.active{color:#fff;background:#1677ff}.main{flex:1;padding:24px;overflow:auto}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.header h1{font-size:22px}.card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 4px #00000014;margin-bottom:20px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 4px #00000014}.stat-card .value{font-size:32px;font-weight:600;color:#1677ff}.stat-card .label{font-size:13px;color:#999;margin-top:4px}table{width:100%;border-collapse:collapse}th,td{padding:12px;text-align:left;border-bottom:1px solid #f0f0f0;font-size:14px}th{background:#fafafa;font-weight:600}.btn{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-primary{background:#1677ff;color:#fff}.btn-danger{background:#ff4d4f;color:#fff}.btn-sm{padding:4px 10px;font-size:12px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:14px}.form-group input,.form-group select{width:100%;padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.login-card{background:#fff;border-radius:12px;padding:40px;width:400px;box-shadow:0 20px 60px #0003}.login-card h1{text-align:center;margin-bottom:32px;font-size:22px}.badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px}.badge-active{background:#f6ffed;color:#389e0d}.badge-pending{background:#fff7e6;color:#d48806}.badge-trusted{background:#e6f4ff;color:#1677ff}.error{color:#ff4d4f;font-size:13px;margin-top:8px}.app-logo-thumb{width:32px;height:32px;object-fit:contain;border-radius:6px;background:#f5f5f5;border:1px solid #eee}.app-logo-placeholder{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;font-size:11px;color:#bbb;background:#fafafa;border:1px dashed #ddd;border-radius:6px}.logo-upload-row{display:flex;gap:16px;align-items:flex-start}.logo-preview{width:72px;height:72px;border-radius:10px;border:1px solid #e8e8e8;background:#fafafa;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;color:#999;font-size:12px}.logo-preview img{width:100%;height:100%;object-fit:contain}.logo-upload-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.hint-text{margin:0;font-size:12px;color:#999}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:#fff;border-radius:8px;padding:24px;width:480px;max-width:90vw}.modal h2{margin-bottom:20px;font-size:18px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}
