*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#f5f5f5;color:#333}.app{min-height:100vh}.header{background:#1890ff;color:#fff;padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.header h1{font-size:20px;font-weight:600}.container{max-width:1200px;margin:0 auto;padding:24px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.stat-card h3{font-size:14px;color:#666;margin-bottom:8px}.stat-card .value{font-size:32px;font-weight:600;color:#1890ff}.section{background:#fff;border-radius:8px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #0000001a}.section h2{font-size:18px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f0f0f0}.btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-primary{background:#1890ff;color:#fff}.btn-danger{background:#ff4d4f;color:#fff}.btn-success{background:#52c41a;color:#fff}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px;text-align:left;border-bottom:1px solid #f0f0f0}.table th{font-weight:600;color:#666;font-size:14px}.table tr:hover{background:#fafafa}.badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px}.badge-D{background:#fff1f0;color:#cf1322}.badge-I{background:#fff7e6;color:#d46b08}.badge-S{background:#f6ffed;color:#389e0d}.badge-C{background:#f0f5ff;color:#1d39c4}.badge-weak{background:#f0f5ff;color:#1890ff}.badge-medium{background:#fff7e6;color:#d46b08}.badge-strong{background:#f6ffed;color:#389e0d}.warning{background:#fff1f0;border:1px solid #ffccc7;border-radius:4px;padding:12px 16px;margin-bottom:16px;color:#cf1322}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;padding:24px;width:90%;max-width:600px;max-height:80vh;overflow-y:auto}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:14px;margin-bottom:4px;color:#666}.form-group input,.form-group select,.form-group textarea{width:100%;padding:8px 12px;border:1px solid #d9d9d9;border-radius:4px;font-size:14px}.form-group textarea{min-height:100px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
