/* 繼承系統表產生器專用樣式；共用元件沿用 site.css */
#ic-form [hidden] { display: none !important; }
.ic-warn { margin: 10px 0; padding: 10px 14px; background: #fff7e6; border-left: 4px solid var(--warn); border-radius: 6px; font-size: 1rem; }
.ic-warn p { margin: .25rem 0; }
.ic-priv { background: #ecfdf5; border-left-color: var(--ok); }
.ic-h2 { font-size: 1.15rem; margin: 1.25rem 0 .5rem; }
.ic-h3 { font-size: 1rem; margin: 14px 0 4px; color: var(--brand-dark); }
.ic-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0 12px; }
.ic-grid > * { min-width: 0; }
.ic-grid .qr-field input[type=text], .ic-grid .qr-field input[type=date], .ic-grid .qr-field select { min-width: 0; width: 100%; box-sizing: border-box; }
.ic-row { border: 1px solid var(--line); border-radius: 10px; padding: 4px 12px 12px; margin: 10px 0; background: #fff; }
.ic-row-h { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 8px 0 0; }
.ic-row-h strong { color: var(--brand-dark); font-size: 1rem; }
.ic-subs { margin: 6px 0 0 14px; border-left: 3px solid var(--line); padding-left: 10px; }
.ic-addg { margin-top: 8px; }
.ic-result { border: 1px solid var(--line); border-radius: 10px; padding: 8px 14px; background: #f8fafc; }
.ic-order { font-size: 1.15rem; font-weight: 700; color: var(--brand-dark); margin: .4rem 0; }
.ic-order::before { content: "繼承順位："; font-weight: 600; color: var(--fg); }
.ic-sub { margin: .3rem 0; }
.ic-list { margin: .3rem 0 .6rem 1.2rem; padding: 0; }
.ic-list li + li { margin-top: .25rem; }
.ic-notes { color: #7c4a03; }
.ic-bar { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 10px 0; }
.ic-bar .btn { width: 100%; text-align: center; }
.ic-wrap { overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: #e9ecf1; margin: 10px 0; }
.ic-paper {
  width: 210mm; padding: 14mm 18mm; background: #fff; color: #000; transform-origin: 0 0; box-sizing: border-box;
  font-family: "標楷體", "DFKai-SB", "BiauKai", "Noto Serif TC", "PMingLiU", serif; font-size: 13pt; line-height: 1.6;
}
.ic-p-title { text-align: center; font-size: 24pt; letter-spacing: .4em; font-weight: 700; margin: 0 0 5mm; }
.ic-p-tree { break-inside: avoid; page-break-inside: avoid; }
.ic-svg { display: block; width: 100%; height: auto; max-height: 240mm; }
.ic-p-foot { break-inside: avoid; page-break-inside: avoid; }
.ic-p-stmt { margin: 5mm 0 3mm; break-inside: avoid; }
.ic-p-apps { break-inside: avoid; }
.ic-p-app { display: flex; align-items: flex-end; gap: 3mm; margin: 0 0 3mm; break-inside: avoid; }
.ic-p-k { white-space: pre; }
.ic-p-n { min-width: 40mm; border-bottom: 1px solid #000; padding: 0 2mm; overflow-wrap: anywhere; }
.ic-p-ln { flex: 1; border-bottom: 1px solid #000; min-height: 10mm; }
.ic-p-date { text-align: center; margin: 6mm 0 0; break-inside: avoid; }
@media (max-width: 480px) { .ic-bar { grid-template-columns: 1fr; } }

@media print {
  @page { size: A4; margin: 14mm 18mm; }
  html, body { background: #fff; }
  .site-header, .site-footer { display: none !important; }
  main.wrap { max-width: none; padding: 0; margin: 0; }
  main.wrap > * { display: none !important; }
  main.wrap > #ic-form { display: block !important; border: 0; padding: 0; margin: 0; background: none; }
  #ic-form > * { display: none !important; }
  #ic-form > #ic-pv { display: block !important; }
  #ic-pv > .ic-h2, #ic-pv > .ic-bar, #ic-pv > .ic-hint, #ic-pv > .status, #ic-pv > .ic-warn { display: none !important; }
  .ic-wrap { border: 0; background: none; overflow: visible; height: auto !important; margin: 0; border-radius: 0; }
  .ic-paper { transform: none !important; width: auto; padding: 0; font-size: 12pt; }
}
