/* ICC 樣板僅配置版面，表單、按鈕、頁籤、進度與選單沿用站內元件。 */
.icc-demo-page { font-size: 14px; line-height: 1.8; }
.icc-demo-page .icc-preview { padding: 0; overflow: hidden; }
.icc-app-layout { display: grid; grid-template-columns: 200px minmax(0, 1fr); }
.icc-sidebar { border-right: 1px solid var(--line); background: var(--surface); }
.icc-sidebar .side-menu-basic { width: 100%; }
.icc-content { min-width: 0; padding: 16px 24px; background: var(--surface); }
.icc-content .breadcrumbContainer { padding: 0 0 8px; background: transparent; }
.icc-demo-page .breadcrumbContainer li + li::before { margin: 0 8px; }
.icc-content h2 { font-size: 20px; margin: 0 0 8px; }
.icc-demo-page .icc-content h3 { font-size: 16px; font-weight: 400; }
.icc-content h4 { font-size: 16px; font-weight: 400; margin: 20px 0 12px; }
.icc-query-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px 12px; }
.icc-query-fields label, #icc-advanced label, .icc-dialog label { display: grid; gap: 4px; }
.icc-query-fields .legacy-input, .icc-dialog .legacy-input { width: 100%; box-sizing: border-box; }
.icc-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 8px 0; }
.icc-demo-page .legacy-button img { flex-shrink: 0; }
.icc-demo-page .legacy-button.deep img, .icc-demo-page .legacy-button.green img { filter: brightness(0) invert(1); }
.icc-demo-page .legacy-button:disabled img { opacity: .5; }
.icc-section-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.icc-demo-page .icc-section-heading h3 { margin: 0; }
.icc-section-heading .icc-actions { margin: 0; }
#icc-feedback:empty { display: none; }
#icc-feedback:not(:empty) { margin: 8px 0; }
#icc-selection-status, #icc-results-status { margin: 4px 0; }
#icc-advanced { display: flex; flex-wrap: wrap; gap: 12px; margin: 8px 0; }
.icc-demo-page .query-table-wrap { max-width: 100%; overflow-x: auto; }
.icc-table { width: 100%; min-width: 1150px; border-collapse: collapse; background: var(--surface); }
.icc-table th, .icc-table td { padding: 10px 8px; border: 1px solid var(--line); text-align: left; vertical-align: middle; white-space: nowrap; }
.icc-table th { background: var(--reference-card); border-top: 4px solid var(--text); font-weight: 600; }
.icc-table tbody tr:nth-child(even) { background: var(--reference-card); }
.icc-table .component-action { padding: 6px; display: inline-flex; align-items: center; }
.icc-table .legacy-checkbox { margin: 0; }
.icc-table .legacy-checkbox > span { flex-shrink: 0; }
.icc-detail-layout { display: grid; grid-template-columns: minmax(0, 1fr) 48px; gap: 14px; }
.icc-detail-layout > div { min-width: 0; }
.icc-shortcuts { display: flex; flex-direction: column; gap: 12px; }
.icc-demo-page .icc-shortcuts .legacy-button { width: 44px; min-width: 44px; height: 44px; padding: 10px; }
.icc-utility { margin-bottom: 12px; }
.icc-demo-page [role='tabpanel'] { background: var(--surface); padding: 12px; border: 1px solid var(--line); }
.icc-group-title { padding: 10px 12px; background: var(--reference-card); }
.icc-alert-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.icc-alert-grid span { border: 1px solid var(--line); padding: 12px; }
.icc-demo-page .icc-facts .formRow { grid-template-columns: 110px minmax(0, 1fr) 110px minmax(0, 1fr); min-width: 0; }
.icc-demo-page .icc-facts .formCell { overflow-wrap: anywhere; }
.icc-demo-page #progress-catalog { margin-bottom: 16px; }
.icc-dialog { width: min(560px, calc(100% - 40px)); max-height: 85vh; box-sizing: border-box; overflow: auto; padding: 24px; border: 1px solid var(--line); border-radius: 8px; color: var(--text); background: var(--surface); font: inherit; }
.icc-dialog::backdrop { background: #0008; }
.icc-dialog h2 { font-size: 20px; margin: 0; }
.icc-dialog .icc-section-heading { margin-top: 0; }
#icc-edit-fields { display: grid; gap: 12px; }
#icc-feedback:not(:empty) { padding: 12px; border: 1px solid var(--green); background: var(--surface); }
@media (max-width: 900px) {
  .icc-app-layout { grid-template-columns: minmax(0, 1fr); }
  .icc-sidebar { border-right: 0; border-bottom: 1px solid var(--line); }
  .icc-sidebar .side-menu-basic { display: flex; flex-wrap: wrap; gap: 8px; }
  .icc-query-fields { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
  .icc-content { padding: 16px; }
  .icc-detail-layout { grid-template-columns: minmax(0, 1fr); }
  .icc-shortcuts { flex-direction: row; flex-wrap: wrap; }
  .icc-alert-grid { grid-template-columns: minmax(0, 1fr); }
  .icc-demo-page .icc-facts .formRow { grid-template-columns: 100px minmax(0, 1fr); }
  .icc-demo-page .legacy-form-tabs { flex-wrap: wrap; }
  .icc-demo-page .legacy-form-tabs .formLabel { min-width: 120px; flex: 1; font-size: 14px; }
}

.icc-table a { color: var(--green); }
.icc-section-heading > .icc-group-title { flex: 1; }

/* ICC 五段進度保持置中，縮短步驟間距。 */
.icc-demo-page #icc-progress { max-width: 680px; margin-inline: auto; }
