*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:#f0f2f5;color:#333}.layout{display:flex;min-height:100vh}.sidebar{width:220px;background:#001529;color:#fff;padding:20px 0;position:fixed;top:0;left:0;bottom:0;overflow-y:auto}.sidebar h2{padding:0 20px 20px;font-size:18px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar a{display:block;padding:12px 20px;color:#ffffffb3;text-decoration:none;font-size:14px}.sidebar a:hover,.sidebar a.active{background:#ffffff1a;color:#fff}.main{margin-left:220px;flex:1}.header{background:#fff;padding:16px 24px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 4px #00000014}.header-right{display:flex;align-items:center;gap:16px}.content{padding:24px}.card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 4px #00000014;margin-bottom:16px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 4px #00000014;text-align:center}.stat-card h3{font-size:32px;color:#1677ff}.stat-card p{color:#999;margin-top:8px}.btn{display:inline-block;padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.btn-primary{background:#1677ff;color:#fff}.btn-primary:hover{background:#4096ff}.btn-danger{background:#ff4d4f;color:#fff}.btn-danger:hover{background:#ff7875}.btn-sm{padding:4px 12px;font-size:12px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1677ff}table{width:100%;border-collapse:collapse}th,td{padding:12px 16px;text-align:left;border-bottom:1px solid #f0f0f0}th{background:#fafafa;font-weight:600;font-size:14px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:12px;padding:24px;width:90%;max-width:500px;max-height:80vh;overflow-y:auto}.modal h3{margin-bottom:20px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.tag{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;margin-right:4px}.tag-blue{background:#e6f4ff;color:#1677ff}.tag-green{background:#f6ffed;color:#52c41a}.tag-orange{background:#fff7e6;color:#fa8c16}.tag-red{background:#fff2f0;color:#ff4d4f}.search-bar{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.search-bar input{padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;width:240px}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.login-card{background:#fff;border-radius:12px;padding:40px;width:400px;box-shadow:0 20px 60px #0000004d}.login-card h1{text-align:center;margin-bottom:8px;color:#1677ff}.login-card p{text-align:center;color:#999;margin-bottom:32px}.login-card .btn{width:100%;padding:12px;font-size:16px;margin-top:8px}.deal-board{display:flex;gap:16px;overflow-x:auto;padding-bottom:16px}.deal-column{min-width:220px;background:#f5f5f5;border-radius:8px;padding:16px}.deal-column h4{margin-bottom:12px;font-size:14px;color:#666}.deal-card{background:#fff;border-radius:8px;padding:12px;margin-bottom:8px;box-shadow:0 1px 2px #0000000f;cursor:pointer}.deal-card:hover{box-shadow:0 2px 8px #0000001f}.timeline{position:relative;padding-left:24px}.timeline:before{content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;background:#e8e8e8}.timeline-item{position:relative;padding-bottom:20px}.timeline-item:before{content:"";position:absolute;left:-20px;top:4px;width:10px;height:10px;border-radius:50%;background:#1677ff;border:2px solid white}.timeline-date{font-size:12px;color:#999}.timeline-user{font-size:13px;color:#666;margin-top:4px}.timeline-content{margin-top:8px;font-size:14px;line-height:1.6}.empty{text-align:center;padding:48px 0;color:#999}.empty-icon{font-size:48px;margin-bottom:16px}
