*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;background:#f5f7fa;color:#333}
a{color:#1a73e8;text-decoration:none}
a:hover{text-decoration:underline}
.header{background:#1f3a5f;color:#fff;padding:16px 24px}
.header h1{font-size:18px;font-weight:600}
.header p{margin:4px 0 0;font-size:12px;opacity:.85}
.toolbar{padding:12px 24px;background:#fff;border-bottom:1px solid #eee;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.toolbar input[type=text]{width:320px;padding:8px 14px;border:1px solid #ccc;border-radius:6px;font-size:14px;outline:none}
.toolbar input[type=text]:focus{border-color:#1a73e8;box-shadow:0 0 0 2px rgba(26,115,232,.15)}
.toolbar select{padding:8px 10px;border:1px solid #ccc;border-radius:6px;font-size:14px}
.catbar{display:flex;flex-wrap:wrap;gap:8px;padding:14px 24px;background:#fff;border-bottom:1px solid #eee}
.cat-chip{font-size:13px;padding:7px 14px;border-radius:18px;border:1px solid #d6deea;background:#f3f7fc;color:#274b8f;cursor:pointer;user-select:none;transition:.15s}
.cat-chip:hover{background:#e3edfb}
.cat-chip.active{background:#1a73e8;color:#fff;border-color:#1a73e8}
.cat-chip.empty{opacity:.45;cursor:not-allowed;background:#f0f0f0;color:#999;border-color:#eee}
table{width:100%;border-collapse:collapse;font-size:13px}
thead th{position:sticky;top:0;background:#eef2f7;border-bottom:2px solid #ddd;padding:10px 8px;text-align:left;font-weight:600;color:#555;z-index:1;cursor:pointer;user-select:none}
tbody tr:nth-child(even){background:#fafbfc}
tbody tr:hover{background:#e8f0fe}
td,th{padding:8px 10px;border-bottom:1px solid #eee;white-space:nowrap;text-align:right}
td:nth-child(1),th:nth-child(1),td:nth-child(2),th:nth-child(2){text-align:left}
.type-tag{font-size:11px;padding:2px 7px;border-radius:10px;font-weight:500}
.t1{background:#e6f4ea;color:#137333}.t2{background:#e8f0ff;color:#274b8f}.t3{background:#fff1e6;color:#b35a00}
.t4{background:#fdeaf0;color:#b3245a}.t5{background:#f0ecff;color:#5a32b3}.t6{background:#eef0f2;color:#555}
.revtag{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:4px;font-size:10px;background:#fdeaf0;color:#b3245a;border:1px solid #f3c4d4;vertical-align:middle}
.revrow{background:#fff7f9}.revrow:hover{background:#ffeef4 !important}
.empty-msg{padding:40px;text-align:center;color:#999;font-size:15px}
.detail-wrap{max-width:900px;margin:30px auto;padding:0 20px}
.detail-header{background:#fff;border-radius:10px;padding:24px;margin-bottom:20px;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.detail-header h2{font-size:22px;margin-bottom:4px}
.detail-header .meta{color:#666;font-size:13px;margin-top:6px}
.param-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:16px}
.param-card{background:#f8f9fa;border-radius:8px;padding:14px 16px}
.param-card .label{font-size:12px;color:#888;margin-bottom:2px}
.param-card .value{font-size:18px;font-weight:700;color:#222}
.param-card.na{background:#fff3cd}.param-card.na .value{color:#b8860b}
.drawing-section{background:#fff;border-radius:10px;padding:20px;margin-bottom:20px;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.drawing-section h3{font-size:16px;margin-bottom:12px;color:#444}
.drawing-img{max-width:100%;border:1px solid #e0e0e0;border-radius:6px}
.drawing-full-link{display:inline-block;margin-top:10px;font-size:13px;color:#1a73e8}
.back-link{display:inline-block;margin:20px 0;padding:10px 20px;background:#1a73e8;color:#fff;border-radius:6px;font-size:14px}
.back-link:hover{background:#1557b0;text-decoration:none}
