/* 船型消防要求对照表 —— 与全站同一套墨绿配色 */
.cmp-shell{max-width:1380px;padding:22px 24px 64px}

/* 位置与标题 */
.cmp-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 14px;font-size:12.5px;color:#8b9c93}
.cmp-crumb a{color:#4f6f63;text-decoration:none}
.cmp-crumb a:hover{color:#185e49;text-decoration:underline}
.cmp-crumb strong{color:#4f6f63;font-weight:600}
.cmp-head{max-width:860px}
.cmp-head h1{margin:0 0 10px;font-size:30px;line-height:1.35;letter-spacing:-.02em;color:#1d322b}
.cmp-head p{margin:0 0 8px;color:#4f6f63;font-size:14.5px;line-height:1.85}
.cmp-head strong{color:#96351f;font-weight:650}
.cmp-meta{margin:0;font-size:12.5px;color:#8b9c93}

/* 工具条 */
.cmp-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:20px 0 10px}
.cmp-search{flex:1 1 220px;min-width:0}
.cmp-search input{width:100%;font:inherit;font-size:13px;padding:8px 12px;min-height:36px;border:1px solid #b8cbbf;border-radius:9px;background:#fff;color:#243b33}
.cmp-search input:focus{outline:2px solid #69a88a;outline-offset:1px;border-color:#69a88a}
.cmp-search input::placeholder{color:#9aaba2}
.cmp-chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{font:inherit;font-size:12.5px;font-weight:600;color:#185e49;background:#fff;border:1px solid #c7dacd;border-radius:999px;padding:6px 12px;min-height:34px;cursor:pointer;white-space:nowrap}
.chip:hover{background:#edf5ef;border-color:#8db49b}
.chip.on{background:#185e49;border-color:#185e49;color:#fff}
.chip:focus-visible,.cmp-btn:focus-visible{outline:2px solid #69a88a;outline-offset:2px}
.cmp-btn{font:inherit;font-size:12.5px;font-weight:600;color:#185e49;background:#fff;border:1px solid #c7dacd;border-radius:8px;padding:6px 12px;min-height:34px;cursor:pointer;white-space:nowrap}
.cmp-btn:hover{background:#edf5ef;border-color:#8db49b}
.cmp-count{font-size:12px;color:#8b9c93;white-space:nowrap;margin-left:auto}

/* 表格外框：横向滚动 + 桌面端纵向滚动，表头与首列吸附 */
.cmp-swipe{display:none;margin:0 0 8px;font-size:12px;color:#9aaba2}
.cmp-wrap{overflow:auto;max-height:calc(100dvh - 128px);background:#fff;border:1px solid #d7e2d9;border-radius:14px;overscroll-behavior-x:contain}
.cmp-table{width:100%;min-width:1180px;border-collapse:separate;border-spacing:0;font-size:12.8px;line-height:1.78;table-layout:fixed}
.cmp-table col.c-item{width:112px}
.cmp-table th,.cmp-table td{vertical-align:top;text-align:left;padding:12px 14px;border-bottom:1px solid #e6ede7;border-right:1px solid #f0f5f1}
.cmp-table th:last-child,.cmp-table td:last-child{border-right:0}

/* 表头 */
.cmp-table thead th{position:sticky;top:0;z-index:3;padding:9px 14px;background:#eef5f0;border-bottom:1px solid #cfdcd3;font-size:13px;color:#1d322b}
.cmp-table thead th .c-name{display:block;font-weight:700;letter-spacing:.01em}
.cmp-table thead th .c-sub{display:block;margin-top:1px;font-size:11.5px;font-weight:500;color:#7b8f86}
.cmp-table thead th.cmp-corner{left:0;z-index:6;background:#e4efe8;font-size:12.5px;color:#4f6f63;font-weight:650}

/* 分组行 */
.cmp-table tr.cmp-group th{position:sticky;left:0;padding:9px 14px;background:#e9f2ec;color:#14483a;font-size:13px;font-weight:700;letter-spacing:.01em;border-top:1px solid #cfdcd3;border-bottom:1px solid #dce5de}
.cmp-table tr.cmp-group:first-child th{border-top:0}
.cmp-table tr.cmp-group .g-idx{display:inline-block;margin-right:8px;padding:0 6px;border-radius:5px;background:#185e49;color:#fff;font-size:11.5px;font-weight:700;line-height:1.7;vertical-align:1px}

/* 首列（项目名） */
.cmp-table tbody th.cmp-item{position:sticky;left:0;z-index:2;padding:12px;background:#fafcf9;font-size:12.8px;font-weight:650;line-height:1.6;color:#1d322b;border-right:1px solid #dce5de}
.cmp-table tbody tr.cmp-row:hover th.cmp-item{background:#f4f9f5}
.cmp-table tbody tr.cmp-row:hover td{background:#fafdfa}

/* 单元格内容 */
.cmp-table td p{margin:0}
.cmp-table td p+p{margin-top:6px}
.cmp-table td strong{color:#96351f;font-weight:700}
.cmp-table td.cmp-skip{color:#a9bab1;background:#fbfcfb}
.cmp-table td.cmp-skip .cmp-skip-tag{display:inline-block;padding:1px 7px;border-radius:5px;background:#f1f5f2;color:#93a49b;font-size:11.5px;font-weight:600}
.cmp-ref{display:block;margin-top:7px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10.5px;line-height:1.6;color:#9aaba2;letter-spacing:.01em;word-break:break-all}
.cmp-col-tag{display:none}
.cmp-table mark{padding:0 2px;border-radius:3px;background:#fdf0c8;color:#6b4a06;font-weight:700}

/* 空状态与口径说明 */
.cmp-empty{margin:26px 0 0;padding:22px;text-align:center;font-size:13.5px;color:#8b9c93;background:#fff;border:1px dashed #cbdacf;border-radius:12px}
.cmp-notes{margin:30px 0 0;padding:22px 24px;background:#fff;border:1px solid #d7e2d9;border-radius:14px}
.cmp-notes h2{margin:0 0 12px;font-size:15px;color:#1d322b}
.cmp-notes ul{margin:0;padding-left:18px;color:#4f6f63;font-size:13px;line-height:1.95}
.cmp-notes li+li{margin-top:6px}
.cmp-notes strong{color:#96351f;font-weight:650}
.cmp-foot{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0 0;padding-top:14px;border-top:1px solid #eef3ef;font-size:13px}
.cmp-foot a{color:#185e49;font-weight:600;text-decoration:none}
.cmp-foot a:hover{text-decoration:underline}

/* 窄屏：只横向滚动，靠页面纵向滚动看内容 */
@media (max-width:900px){
  .cmp-shell{padding:18px 14px 44px}
  .cmp-head h1{font-size:24px}
  .cmp-head p{font-size:13.8px}
  .cmp-bar{gap:8px;margin:16px 0 8px}
  .cmp-search{flex-basis:100%}
  .cmp-chips{flex:1 1 100%;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch}
  .cmp-chips::-webkit-scrollbar{height:0}
  .cmp-count{margin-left:0;flex:1 1 100%;order:9}
  .cmp-btn{min-height:36px}
  .chip{min-height:36px}
  .cmp-swipe{display:block}
  .cmp-wrap{max-height:none;overflow-x:auto;overflow-y:hidden;border-radius:12px}
  .cmp-table{min-width:940px;font-size:12.5px}
  .cmp-table thead th{position:static}
  .cmp-table col.c-item{width:88px}
  .cmp-table tbody th.cmp-item{width:88px;padding:10px 9px;font-size:12px}
  .cmp-table th,.cmp-table td{padding:10px 11px}
  .cmp-col-tag{display:block;margin:0 0 5px;font-size:10.5px;font-weight:700;letter-spacing:.04em;color:#a3b3aa}
  .cmp-notes{padding:18px 16px}
  .cmp-notes ul{font-size:12.5px}
}

/* 打印 / 存 PDF：A4 横向，去掉交互控件 */
@media print{
  html,body{background:#fff}
  .topbar,.cmp-crumb,.cmp-bar,.cmp-swipe,.cmp-empty{display:none!important}
  .cmp-shell{max-width:none;padding:0}
  .cmp-head{max-width:none}
  .cmp-head h1{font-size:18pt;margin-bottom:6pt}
  .cmp-head p{font-size:9pt;line-height:1.6;color:#333}
  .cmp-meta{font-size:8pt}
  .cmp-wrap{max-height:none;overflow:visible;border:0;border-radius:0}
  .cmp-table{min-width:0;width:100%;font-size:7pt;line-height:1.45;table-layout:auto}
  .cmp-table col.c-item{width:15mm}
  .cmp-table th,.cmp-table td{padding:3pt 4pt;border:.4pt solid #bbb}
  .cmp-table thead th,.cmp-table tbody th.cmp-item,.cmp-table tr.cmp-group th{position:static;background:#eef5f0!important}
  .cmp-table thead th .c-sub{font-size:6pt}
  .cmp-table td strong,.cmp-head strong,.cmp-notes strong{color:#000;font-weight:700}
  .cmp-ref{font-size:5.8pt;color:#666;margin-top:2pt}
  .cmp-table mark{background:none;color:inherit;font-weight:700;padding:0}
  .cmp-col-tag{display:none}
  .cmp-notes{margin-top:10pt;padding:0;border:0;break-inside:avoid}
  .cmp-notes h2{font-size:10pt}
  .cmp-notes ul{font-size:8pt;line-height:1.6}
  .cmp-foot{font-size:8pt}
  .cmp-table tr{break-inside:avoid}
  @page{size:A4 landscape;margin:8mm}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
