@charset "UTF-8";
/* 印刷・帳票用。宛名ラベル（A4・12面）と一覧の印刷に使う。 */

@media print {
  /* 画面の配色テーマ・文字サイズは紙に持ち込まない。
     どのテーマで見ていても、印刷は白地・黒文字・標準の大きさにそろえる。 */
  :root, :root[data-theme] {
    --fs-scale: 1;
    --bg:#fff; --surface:#fff; --surface-2:#fff;
    --line:#999; --line-soft:#ccc;
    --text:#000; --text-2:#222; --text-3:#444;
    --brand:#000; --brand-hover:#000; --brand-strong:#000;
    --brand-soft:#f2f2f2; --brand-soft-hover:#e8e8e8; --brand-border:#999;
    --brand-solid:#333; --brand-solid-hover:#000; --on-brand:#fff;
    --accent-strong:#000; --accent-solid:#555; --on-accent:#fff;
    --danger-solid:#555; --on-danger:#fff;
    --field-border:#999; --placeholder:#666; --muted-bg:#eee;
    --disabled-bg:#f2f2f2; --hover-bg:#f2f2f2; --track:#ddd; --scan-bg:#fff;
    --thead-bg:#eee; --thead-text:#000; --thead-border:#999;
    --progress-fill:#555;
    --bw: 1px;
    --sh-1: none; --sh-2: none; --sh-3: none;
  }

  .topbar, .sidenav, .foot, .no-print, .pager, .toolbar, .filters, .prefs { display: none !important; }
  /* 市民の画面の帯は紙では出さない（YOKOHAMA002-287）。
     「受付番号と生年月日で確認できます」は画面の案内で、紙では意味を持たない。
     ログイン中の帯も同じ（誰が印刷したかは控えの見出しに出る）。 */
  .flow-bar, .signed-bar { display: none !important; }
  /* 紙のときだけ出す枠（YOKOHAMA002-287）。誰の・いつの控えかを先頭に出す */
  .print-only { display: block !important; }
  /* 表の見出し（誰の・いつの名簿か）は表の一部として出す（YOKOHAMA002-292） */
  caption.print-only { display: table-caption !important; }
  .print-head {
    border-bottom: 1.5pt solid #000; padding-bottom: 2mm; margin-bottom: 4mm;
  }
  .print-head b { display: block; font-size: 13pt; }
  .print-head span { display: block; font-size: 10pt; }
  body { background: #fff; color: #000; font-size: 10.5pt; line-height: 1.6; }
  .page { max-width: none; padding: 0; }
  .card { border: 1px solid #999; box-shadow: none; break-inside: avoid; }
  /* 画面では表の中だけをスクロールさせているが、紙では全部出す */
  .table-wrap, .app-shell .table-wrap { overflow: visible; border: 0; max-height: none; }
  .steps { position: static; box-shadow: none; }
  /* 本人確認バーは紙では貼り付けない。横に流さず、入りきらない分は折り返す */
  .idbar { position: static; box-shadow: none; overflow: visible; white-space: normal; flex-wrap: wrap; }
  .idbar-opt { display: inline-flex; }
  /* カードの見出しも紙では貼り付けない（同じ見出しが各ページに出てしまう） */
  .detail-main .card > .card-head { position: static; box-shadow: none; }
  /* A面・B面は紙では1枚ずつ。横に2枚並べると1枚あたりが細くなって読めない */
  .form-sides { display: block; }
  .form-sides > .card + .card { margin-top: var(--s-5); }
  table.tbl thead tr:only-child th { position: static; box-shadow: none; }
  /* 折りたたんだ検索条件は紙にも出す（何で絞った結果かが分かるように） */
  details.panel > summary { display: none; }
  details.panel > *:not(summary) { display: block; content-visibility: visible; }
  table.tbl { font-size: 9.5pt; }
  table.tbl thead th { background: #eee !important; color: #000 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  table.tbl tr { break-inside: avoid; }
  a { color: #000; text-decoration: none; }
  .badge, .score-pill { border: 1px solid #666; background: #fff !important; color: #000 !important; }
}

/* ---- 宛名ラベル（A4／2列×6段＝12面。市販のラベル用紙に合わせて調整可） ---- */

.label-sheet {
  --label-w: 86.4mm;
  --label-h: 42.3mm;
  display: grid;
  grid-template-columns: repeat(2, var(--label-w));
  grid-auto-rows: var(--label-h);
  gap: 0;
  width: 172.8mm;
  margin: 0 auto;
}

/* 必ず .label-sheet の中だけに効かせる。
   素の .label に当てると、統計タイルの見出し（.stat .label）など
   同じ名前の部品まで破線の枠と 7mm の余白がついてしまう。 */
.label-sheet .label {
  border: 1px dashed #ccc;
  padding: 7mm 6mm 4mm;
  overflow: hidden;
  break-inside: avoid;
  font-size: 10.5pt;
  line-height: 1.5;
}
.label-sheet .label .zip { font-size: 11pt; letter-spacing: .12em; margin-bottom: 1.5mm; }
.label-sheet .label .addr { font-size: 10pt; margin-bottom: 2mm; }
.label-sheet .label .name { font-size: 12.5pt; font-weight: 700; }
.label-sheet .label .name .sama { font-size: 10.5pt; font-weight: 400; margin-left: 2mm; }
.label-sheet .label .memo { font-size: 8.5pt; color: #555; margin-top: 1.5mm; }

@page { size: A4; margin: 10mm 11mm; }

@media print {
  .label-sheet { width: auto; }
  .label-sheet .label { border-color: transparent; }
}
