.site-issue-page{--sim-border:#e4eaee;--sim-muted:#788791;min-width:0}
.site-issue-page .page-head{padding-bottom:14px}
.sim-panel{min-width:0;border:1px solid var(--sim-border);border-radius:7px;background:#fff;box-shadow:0 2px 10px rgba(27,53,68,.05)}
.sim-tabs{height:43px;padding:0 16px;display:flex;gap:24px;border-bottom:1px solid var(--sim-border)}
.sim-tabs button{position:relative;padding:0 2px;border:0;background:transparent;color:#5f6b73;font-size:14px;cursor:pointer}
.sim-tabs button.active{color:#177d70;font-weight:600}
.sim-tabs button.active:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;background:#177d70;content:""}
.sim-tabs span{margin-left:5px;padding:1px 5px;border-radius:3px;background:#eef2f4;color:#65747d;font-size:11px}
.sim-filters{padding:12px 16px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--sim-border)}
.site-issue-page .sim-filters select{width:126px;height:32px;border-color:#dce3e6;background-color:#fff;color:#65747d;font-weight:400}
.site-issue-page .sim-filters select:nth-of-type(3){width:150px}
.site-issue-page .sim-filters select:focus{border-color:#177d70;color:#26333c;box-shadow:0 0 0 2px rgba(23,125,112,.1)}
.site-issue-page .sim-search{width:220px;flex:0 0 220px;min-width:180px;max-width:260px;height:32px;display:flex;align-items:center;border:1px solid #d6dfe3;border-radius:4px;background:#fff}
.site-issue-page .sim-search:focus-within{border-color:#177d70;box-shadow:0 0 0 2px rgba(23,125,112,.1)}
.site-issue-page .sim-search span{padding-left:9px;color:#788791;font-size:18px}
.site-issue-page .sim-search input{min-width:0;width:100%;height:30px;padding:0 9px;border:0;outline:0}
.site-issue-page .sim-filter-submit{height:32px;padding:0 14px}
.site-issue-page .sim-create-btn{margin-left:auto;white-space:nowrap}
.sim-table-wrap{max-width:100%;overflow-x:auto}
.site-issue-page .sim-table{min-width:1260px;width:100%}
.site-issue-page .sim-table th{height:42px;white-space:nowrap;color:#5f6b73;font-size:13px}
.site-issue-page .sim-table td{height:54px;vertical-align:middle;white-space:nowrap}
.site-issue-page .sim-table td strong{display:block;color:#26333c}
.site-issue-page .sim-table td:nth-child(3),.site-issue-page .sim-table td:nth-child(4){white-space:normal}
.site-issue-page .sim-table td.sim-time-cell,.site-issue-page .sim-table td.code{white-space:nowrap;min-width:138px;font-variant-numeric:tabular-nums}
.sim-link{padding:0;border:0;background:transparent;color:#177d70;font-weight:600;cursor:pointer}
.sim-link:hover{text-decoration:underline}
.sim-type{font-weight:600}
.sim-status{height:24px;padding:0 7px;display:inline-flex;align-items:center;gap:5px;border-radius:4px;font-size:12px;white-space:nowrap}
.sim-status i{width:6px;height:6px;border-radius:50%;background:currentColor}
.sim-status.neutral{background:#eef2f4;color:#65747d}
.sim-status.info{background:#e7f1fa;color:#2f6c9f}
.sim-status.warning{background:#fff2d8;color:#9a6416}
.sim-status.review{background:#f0ecf8;color:#74519a}
.sim-status.success{background:#e3f3f0;color:#12695f}
.site-issue-page .sim-actions{white-space:nowrap;width:135px}
.site-issue-page .sim-actions .text-btn{padding:2px 5px}
.site-issue-page .sim-actions .text-btn.success-copy{color:#12695f;font-weight:600}
.site-issue-page .sim-actions .text-btn.success-copy:hover{color:#094841;text-decoration:underline}
.site-issue-page .sim-actions .text-btn.danger-copy{color:#a43e3b}
.sim-pagination{min-height:52px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--sim-border);color:#788791;font-size:12px}
.sim-pagination div{display:flex;gap:4px}
.sim-pagination button,.sim-pagination b{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--sim-border);border-radius:4px;background:#fff}
.sim-pagination b{border-color:#177d70;background:#177d70;color:#fff}
.sim-empty{padding:48px;text-align:center}
.sim-empty strong,.sim-empty span{display:block}
.sim-empty span{margin-top:4px;color:var(--sim-muted)}
.sim-detail{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px}
.sim-detail-main{display:flex;flex-direction:column}
.sim-detail h3{margin:0 0 9px;font-size:14px}
.sim-section-head{display:flex;align-items:center;gap:10px;margin-bottom:9px}
.sim-section-head h3{margin:0;font-size:14px}
.sim-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--sim-border);border-radius:4px}
.sim-info-grid>div{min-height:54px;padding:8px 12px;border-right:1px solid var(--sim-border);border-bottom:1px solid var(--sim-border)}
.sim-info-grid>div:nth-child(2n){border-right:0}
.sim-info-grid>div:last-child{border-bottom:0}
.sim-info-grid>div.wide{grid-column:1/-1;border-right:0}
.sim-info-grid span,.sim-info-grid strong{display:block}
.sim-info-grid span{color:var(--sim-muted);font-size:11px}
.sim-info-grid strong{margin-top:2px}
.sim-desc-text{display:block;margin-top:2px;font-size:13px;line-height:20px;color:#26333c}

/* 问题描述下方展示创建时的现场图片：纯图片展示，适度放大 */
.sim-overview-photos{margin-top:10px;padding-top:10px;border-top:1px dashed #dce3e6}
.sim-photo-list{display:flex;gap:12px;flex-wrap:wrap}
.sim-photo-large{position:relative;width:144px;height:102px;border-radius:6px;overflow:hidden;border:1px solid #cfd9de;background:linear-gradient(135deg,#547369 0%,#344e45 100%);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s,box-shadow .15s,border-color .15s}
.sim-photo-large:hover{transform:scale(1.02);border-color:#177d70;box-shadow:0 4px 14px rgba(23,125,112,.18)}
.sim-photo-large>svg{width:36px;height:36px;stroke:#fff;opacity:.85}
.sim-photo-large .sim-photo-tag{position:absolute;top:5px;left:5px;padding:1px 5px;border-radius:3px;font-size:9px;color:#fff;font-weight:600;line-height:13px;background:rgba(0,0,0,.55)}
.sim-photo-zoom-hint{position:absolute;right:6px;bottom:6px;width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,.45);display:grid;place-items:center;opacity:0;transition:opacity .15s}
.sim-photo-zoom-hint svg{width:13px;height:13px;stroke:#fff}
.sim-photo-large:hover .sim-photo-zoom-hint{opacity:1}

/* 处理区域（置于最左侧下方，与上方概况区分） */
.sim-action-card{margin-top:16px;border:1px solid #c9d8dc;border-radius:6px;background:#fbfdfd;box-shadow:0 1px 4px rgba(27,53,68,.04);overflow:hidden}
.sim-action-head{padding:9px 14px;background:#eef6f4;border-bottom:1px solid #d9e6e4;display:flex;justify-content:space-between;align-items:center}
.sim-action-head h4{margin:0;font-size:13px;color:#12695f;font-weight:600}
.sim-action-tip{font-size:11px;color:#6d868a}
.sim-action-body{padding:12px 14px}
.sim-action-body .sim-arrange-field{margin-top:8px}
.sim-action-body .sim-arrange-field:first-child{margin-top:0}
.sim-arrange-field label,.sim-arrange-field span{display:block;font-size:11px;color:var(--sim-muted);margin-bottom:3px}
.sim-arrange-field .required{display:inline !important;color:var(--pg-danger);margin-left:2px}
.sim-arrange-field textarea,.sim-arrange-field input{width:100%;padding:6px 8px;border:1px solid #d6dfe3;border-radius:4px;font-size:12px;box-sizing:border-box;background:#fff;outline:0}
.sim-arrange-field textarea:focus,.sim-arrange-field input:focus{border-color:#177d70;box-shadow:0 0 0 2px rgba(23,125,112,.1)}
.sim-arrange-field textarea{min-height:50px;resize:vertical}
.sim-action-body .sim-arrange-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}
.sim-action-body .sim-arrange-row .sim-arrange-field{margin-top:0}
.sim-upload-box{padding:8px 10px;border:1px dashed #aab5bc;border-radius:4px;background:#fafcfc;text-align:center;cursor:pointer;transition:border-color .15s}
.sim-upload-box:hover{border-color:#177d70;background:#eaf5f3}
.sim-upload-box span{display:block;color:#177d70;font-size:12px;font-weight:500}
.sim-upload-box small{display:block;margin-top:2px;color:var(--sim-muted);font-size:10px}

/* 已处理状态：现场处理结果与凭证维护卡片 */
.sim-result-card{border-color:#bfe0d8;background:#fbfdfc}
.sim-result-card .sim-action-head{background:#e8f4f1;border-color:#cbe4de}
.sim-result-head-main{display:flex;align-items:center;gap:8px}
.sim-result-tag{padding:1px 6px;font-size:10.5px;font-weight:600;color:#177d70;background:#e1f2ee;border-radius:3px;border:1px solid #b7ded5}
.sim-result-note-box{padding:8px 10px;background:#fff;border:1px solid #d6dfe3;border-radius:4px;font-size:12px;line-height:1.5;color:#26333c}
.sim-result-photo-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.sim-result-photo-head label{margin-bottom:0}
.sim-btn-add-resolve{height:24px;padding:0 8px;font-size:11px;color:#177d70;border:1px dashed #177d70;background:#f0f8f6;border-radius:3px;cursor:pointer}
.sim-btn-add-resolve:hover{background:#e0f2ee}
.sim-result-photo-grid{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.sim-result-photo-item{position:relative;width:96px;height:68px}
.sim-result-photo-thumb{width:100%;height:100%;border-radius:4px;border:1px solid #c2d5db;background:#2d424e;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;color:#fff;overflow:hidden;position:relative;transition:all .15s}
.sim-result-photo-thumb:hover{border-color:#177d70;box-shadow:0 3px 10px rgba(0,0,0,.15);transform:translateY(-1px)}
.sim-result-photo-badge{position:absolute;top:3px;left:4px;font-size:9px;padding:1px 4px;background:rgba(23,125,112,.9);border-radius:2px;color:#fff}
.sim-result-photo-date{position:absolute;bottom:2px;right:4px;font-size:9px;color:rgba(255,255,255,.8);font-family:Consolas,monospace}
.sim-photo-del-wrap{position:absolute;top:-5px;right:-5px;z-index:10}
.sim-photo-del-btn{width:18px;height:18px;border-radius:50%;background:#e04b4b;color:#fff;border:2px solid #fff;display:flex;align-items:center;justify-content:center;font-size:12px;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:all .15s}
.sim-photo-del-btn:hover{background:#c53030;transform:scale(1.1)}
.sim-photo-del-wrap .sim-popconfirm{right:0;bottom:calc(100% + 6px)}
.sim-result-meta{padding:6px 10px;background:#fff;border:1px solid #d6dfe3;border-radius:4px;font-size:12px;min-height:18px;display:flex;align-items:center}
.sim-result-no-photo{padding:10px 12px;background:#fff;border:1px dashed #cfd8dc;border-radius:4px;color:#788791;font-size:11.5px;width:100%;box-sizing:border-box}
.sim-result-no-photo span{display:block;color:#4a5963;font-weight:500}
.sim-result-no-photo small{display:block;margin-top:2px;color:#8a979e;font-size:10.5px}

/* 右侧侧边栏：限期、进度轴与联系记录 */
.sim-detail aside{padding-left:18px;border-left:1px solid var(--sim-border);display:flex;flex-direction:column;gap:14px}
.sim-deadline{padding:10px 12px;border-radius:4px;background:#f1f7fb}
.sim-deadline span,.sim-deadline strong,.sim-deadline small{display:block}
.sim-deadline span,.sim-deadline small{font-size:11px}
.sim-deadline strong{margin:2px 0;font-size:16px}
.sim-timeline{margin:0;padding:2px 0 0;list-style:none}
.sim-timeline li{position:relative;min-height:50px;padding-left:34px;padding-bottom:12px}
.sim-timeline li:before{position:absolute;top:20px;bottom:0;left:12px;width:1px;background:#dce3e6;content:""}
.sim-timeline li:last-child{padding-bottom:0}
.sim-timeline li:last-child:before{display:none}
.sim-timeline li>i{position:absolute;top:0;left:0;width:25px;height:25px;display:grid;place-items:center;border:1px solid #d4dde1;border-radius:50%;background:#fff;color:#788791;font-size:11px;font-style:normal}
.sim-timeline li.done>i{border-color:#177d70;background:#eaf5f3;color:#177d70}
.sim-timeline li.current>i{background:#177d70;color:#fff}
.sim-tl-content{display:flex;flex-direction:column;gap:5px}
.sim-tl-head strong{font-size:13px;color:#26333c;display:block}
.sim-tl-head small{margin-top:2px;color:#8a969d;font-size:11px;display:block}
.sim-timeline li.sim-timeline-mid{min-height:36px;padding-bottom:10px}
.sim-timeline li.sim-timeline-mid>i{width:9px;height:9px;left:8px;top:4px;border-radius:50%;background:#177d70;border:2px solid #fff;box-shadow:0 0 0 1px #9bc3bb;position:absolute;z-index:2}
.sim-timeline li.sim-timeline-mid strong{font-size:12px;color:#177d70;font-weight:600;display:block}
.sim-timeline li.sim-timeline-mid small{font-size:11px;color:#65747d;display:block}

/* 进度轴节点内嵌备注样式 */
.sim-tl-note-box{margin-top:4px;padding:8px 10px;background:#f7fafb;border:1px solid #e1e8eb;border-radius:4px}
.sim-tl-note-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3px}
.sim-tl-note-header span{font-size:11px;font-weight:600;color:#52626c}
.sim-note-edit-link{background:none;border:0;color:#177d70;font-size:11px;cursor:pointer;padding:0;text-decoration:underline}
.sim-note-edit-link:hover{color:#115e54}
.sim-tl-note-text{font-size:11px;line-height:17px;color:#33424d}
.sim-tl-note-empty{color:#909da3;font-style:italic;font-size:11px}
.sim-tl-note-editor{margin-top:6px}
.sim-tl-note-editor textarea{width:100%;min-height:48px;padding:5px 7px;border:1px solid #d6dfe3;border-radius:3px;font-size:11px;box-sizing:border-box;outline:0;font-family:inherit;background:#fff;resize:vertical}
.sim-tl-note-editor textarea:focus{border-color:#177d70;box-shadow:0 0 0 2px rgba(23,125,112,.1)}
.sim-tl-actions{display:flex;gap:5px;margin-top:5px;justify-content:flex-end}
.sim-tl-actions .btn-sm{height:24px;padding:0 8px;font-size:11px}

/* 进度轴节点内嵌照片缩略图 */
.sim-tl-photos{display:flex;gap:8px;flex-wrap:wrap;margin-top:5px}
.sim-tl-photo{position:relative;width:66px;height:50px;border-radius:4px;overflow:hidden;border:1px solid #cfd9de;background:linear-gradient(135deg,#547369 0%,#344e45 100%);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s,box-shadow .15s}
.sim-tl-photo:hover{transform:scale(1.04);box-shadow:0 2px 8px rgba(0,0,0,.18)}
.sim-tl-photo svg{width:22px;height:22px;stroke:#fff;opacity:.9}
.sim-tl-tag{position:absolute;top:2px;left:2px;padding:0 3px;border-radius:2px;font-size:8.5px;color:#fff;font-weight:600;line-height:12px;background:rgba(0,0,0,.6)}
.sim-tl-tag.done{background:#2a695e}
.sim-tl-photo small{position:absolute;bottom:2px;right:3px;color:#fff;font-size:8px;font-family:Consolas,monospace;text-shadow:0 1px 2px rgba(0,0,0,.8);line-height:10px}

/* 联系记录（展示在右侧侧边栏下方） */
.sim-log-section{margin-top:4px;padding-top:14px;border-top:1px solid var(--sim-border)}
.sim-log-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.sim-log-header h3{margin:0;font-size:13px;color:#33424d}
.sim-log{padding:4px 10px;border-left:3px solid #177d70;background:#f7faf9;border-radius:0 4px 4px 0}
.sim-log p{margin:6px 0;display:flex;gap:8px;align-items:center}
.sim-log b{width:38px;flex:0 0 38px;color:#5f6b73;font:11px Consolas,monospace;line-height:18px}
.sim-log .sim-log-user{display:inline-block;padding:0 4px;border-radius:3px;background:#eaf5f3;color:#177d70;font-size:10.5px;font-weight:600;white-space:nowrap;line-height:18px}
.sim-log .sim-log-text{flex:1;font-size:11.5px;line-height:18px;color:#26333c}
.sim-log-del-wrap{position:relative;margin-left:auto;display:inline-flex;align-items:center}
.sim-log-del{border:0;background:transparent;color:#9aa7ad;cursor:pointer;font-size:15px;line-height:1;padding:1px 5px;border-radius:3px;opacity:.5;transition:all .15s}
.sim-log-del:hover{color:#b93838;background:#fde8e8;opacity:1}
.sim-popconfirm{position:absolute;right:0;bottom:calc(100% + 6px);background:#fff;border:1px solid #dcdfe6;border-radius:4px;box-shadow:0 4px 14px rgba(27,53,68,.14);padding:4px 8px;display:flex;align-items:center;gap:6px;white-space:nowrap;z-index:20;font-size:11.5px;line-height:1.2}
.sim-popconfirm::after{content:'';position:absolute;right:7px;top:100%;border-width:5px 5px 0;border-style:solid;border-color:#fff transparent transparent}
.sim-popconfirm::before{content:'';position:absolute;right:6px;top:100%;border-width:6px 6px 0;border-style:solid;border-color:#dcdfe6 transparent transparent}
.sim-popconfirm-title{color:#303133;font-weight:500;font-size:11px}
.sim-popconfirm-actions{display:inline-flex;gap:4px}
.sim-popconfirm-btn{border:1px solid #dcdfe6;background:#fff;border-radius:3px;padding:1px 6px;font-size:11px;cursor:pointer;line-height:16px}
.sim-popconfirm-btn.cancel{color:#5f6b73}
.sim-popconfirm-btn.cancel:hover{color:#177d70;border-color:#b4dad3}
.sim-popconfirm-btn.ok{background:#d33e3e;border-color:#d33e3e;color:#fff}
.sim-popconfirm-btn.ok:hover{background:#b83232;border-color:#b83232}
.sim-log-empty{margin:8px 0;color:var(--sim-muted);font-size:11px;font-style:italic}
.sim-add-log{margin-top:8px;display:flex;gap:6px;align-items:center}
.sim-add-log input{flex:1;height:30px;padding:0 8px;border:1px solid #d6dfe3;border-radius:4px;font-size:12px;outline:0;box-sizing:border-box}
.sim-add-log input:focus{border-color:#177d70;box-shadow:0 0 0 2px rgba(23,125,112,.1)}
.sim-add-log .btn-sm{height:30px;padding:0 10px;font-size:12px;white-space:nowrap}
.sim-source-note{margin-bottom:14px;padding:10px 12px;border-left:3px solid #177d70;background:#eaf5f3}
.sim-source-note b,.sim-source-note span{display:block}
.sim-source-note span{margin-top:2px;color:#5f6b73;font-size:12px}
.sim-upload{width:100%;min-height:84px;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px dashed #aab5bc;border-radius:4px;background:#fafcfc;color:#177d70;cursor:pointer}
.sim-upload:hover{border-color:#177d70;background:#eaf5f3}
.sim-upload small{margin-top:4px;color:#788791}
.sim-delete-warning{padding:14px;border:1px solid #f1cccc;border-radius:4px;background:#fffafa}
.sim-delete-warning strong,.sim-delete-warning span,.sim-delete-warning small{display:block}
.sim-delete-warning strong{color:#a43e3b}
.sim-delete-warning span{margin-top:5px}
.sim-delete-warning small{margin-top:8px;color:#788791}
.sim-combobox{position:relative;width:100%}
.sim-combobox input{width:100%;height:34px;padding:0 28px 0 10px;border:1px solid #d6dfe3;border-radius:4px;font-size:13px;background:#fff;box-sizing:border-box;outline:0}
.sim-combobox input:focus{border-color:#177d70;box-shadow:0 0 0 2px rgba(23,125,112,.1)}
.sim-combo-arrow{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#788791;font-size:12px;cursor:pointer;padding:4px}
.sim-combo-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:190px;overflow-y:auto;background:#fff;border:1px solid #d6dfe3;border-radius:4px;box-shadow:0 6px 16px rgba(27,53,68,.12);z-index:1050}
.sim-combo-option{padding:8px 12px;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#26333c;cursor:pointer;border-bottom:1px solid #f2f5f7}
.sim-combo-option:last-child{border-bottom:0}
.sim-combo-option strong{color:#26333c}
.sim-combo-option small{color:var(--sim-muted);font-size:11px}
.sim-combo-option:hover,.sim-combo-option.active{background:#f0f7f5;color:#177d70}
.sim-combo-option:hover strong,.sim-combo-option:hover small{color:#177d70}
.sim-combo-empty{padding:12px;text-align:center;color:var(--sim-muted);font-size:12px}
.sim-device-option.is-selected{background:#eaf5f3}
.sim-device-check-wrap{display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none}
.sim-device-check-wrap input[type="checkbox"]{accent-color:#177d70;width:14px;height:14px;margin:0;cursor:pointer}
.sim-device-opt-clear{color:#8a969d;font-size:12px}
.sim-device-opt-clear:hover{color:#b93838;background:#fff5f5}
.modal.large .modal-card:has(.sim-detail){width:min(1120px,calc(100vw - 48px))}
.modal-body:has(.sim-detail){max-height:calc(92vh - 142px);overflow:auto}
@media(max-width:1280px){
  .site-issue-page .sim-filters{flex-wrap:wrap;align-items:stretch}
  .site-issue-page .sim-filters select{flex:1;min-width:110px}
  .site-issue-page .sim-search{min-width:160px;flex:1}
  .site-issue-page .sim-create-btn{margin-left:0}
}
@media(max-width:1024px){
  .sim-detail{grid-template-columns:1fr}
  .sim-detail aside{padding-top:14px;padding-left:0;border-top:1px solid var(--sim-border);border-left:0}
}
