/* 帳票（見積書・請求明細書）のスタイル。**帳票CSSはこのファイル1箇所だけ。**
   レイアウトはFM出力の「請求明細書」PDFに合わせている（見積書もこれに揃えている）。
   このファイルはブラウザ（プレビュー）が<link>で読み込み、PDF出力時は
   orders/estimate_pdf.blade.php / billing_slips/statement_pdf.blade.php が
   同じ内容を<style>へ流し込む（1箇所で管理するため）。
   ・厳格CSP（style-src 'self'）のため、帳票のCSSを<style>タグでビューに書いてはいけない
   ・dompdfはflex/gridを解釈しないので、位置合わせはtableと単純なブロックだけで組むこと
   ・先頭のフォント名は App\Support\JapanesePdfFont::FAMILY と一致させること（PDFの日本語埋め込み用） */

.report-doc { font-family: "BIZUDPGothic", "BIZ UDPGothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; color: #000; font-size: 10pt; line-height: 1.35; }
.report-doc table { border-collapse: collapse; width: 100%; }
.report-doc td { vertical-align: top; }
/* 表題は用紙の中央（左右30%のセットで挟んだ40%セル）に置き、太字で出す */
.report-doc .doc-title { border: 1px solid #000; text-align: center; font-size: 14pt; font-weight: bold; padding: 6pt 12pt; letter-spacing: 2pt; }
.report-doc .doc-no { text-align: right; font-size: 10pt; white-space: nowrap; }
.report-doc .to-name { font-size: 14pt; line-height: 1.5; }
.report-doc .lead { padding-top: 12pt; font-size: 10pt; }
.report-doc .amount-box { width: 84%; }
.report-doc .total-label { font-size: 13pt; border-bottom: 1px solid #000; }
.report-doc .total-value { font-size: 15pt; text-align: right; border-bottom: 1px solid #000; white-space: nowrap; }
.report-doc .breakdown { text-align: right; font-size: 9pt; padding-top: 3pt; }
.report-doc .issuer { font-size: 10pt; }
.report-doc .issuer-logo { text-align: right; padding-bottom: 6pt; }
.report-doc .issuer-logo img { width: 96pt; }
/* 社印は住所行に重ねて捺す（FM出力の請求明細書PDFと同じ 約70pt角）。
   .issuer-block を position:relative にして、その中で絶対配置する（dompdfもこの形なら解釈する） */
.report-doc .issuer-block { position: relative; }
.report-doc .issuer-seal { position: absolute; top: 5pt; right: 44pt; }
.report-doc .issuer-seal img { width: 70pt; }
.report-doc .limit { font-size: 10pt; padding-top: 10pt; }
.report-doc .points { text-align: right; font-size: 9.5pt; padding-top: 10pt; white-space: nowrap; }
/* 明細表は列幅を固定する。詳細欄に長いファイル名（空白の無い長大な文字列）が入ると
   自動レイアウトでは表がA4の幅を超え、数量・単価・金額の列が用紙の外へ出てしまう。
   ここは見積書・納品書・請求明細書の3帳票で共有している既定値。行の高さを帳票ごとに変えたい場合は
   下の「請求明細書だけで使う部分」のように `.report-statement` を付けた個別ルールで上書きすること
   （3帳票とも同じ `table.items` セレクタを共有しているため、ここを直接変えると他の帳票にも影響する）。 */
.report-doc table.items { margin-top: 4pt; table-layout: fixed; }
.report-doc table.items th,
.report-doc table.items td { border: 1px solid #000; padding: 4pt 5pt; font-weight: normal; font-size: 9.5pt; }
.report-doc table.items th { text-align: center; }
/* 詳細欄。折り返し位置が無い文字列でもセル幅で折り返す（行数は見積書側で空欄行数に反映する） */
.report-doc table.items td.d { word-wrap: break-word; overflow-wrap: break-word; }
.report-doc table.items td.c { text-align: center; white-space: nowrap; }
.report-doc table.items td.n { text-align: right; white-space: nowrap; }
.report-doc table.items td.blank { height: 19pt; }
/* クレジットカード決済希望の顧客の明細行に付けるアイコン（請求明細書のみ） */
.report-doc .pay-icon { width: 11pt; vertical-align: middle; margin-right: 3pt; }
.report-doc .opt { font-size: 8.5pt; }
/* フッターの摘要欄（明細表と同じ枠線で続けて見せる） */
.report-doc table.note { margin-top: 6pt; }
.report-doc table.note th,
.report-doc table.note td { border: 1px solid #000; padding: 4pt 5pt; font-size: 9.5pt; font-weight: normal; }
.report-doc table.note th { text-align: center; }
.report-doc table.note td { height: 44pt; }
/* 見積書の注意書き（摘要欄とは別・編集不可の固定文言） */
.report-doc .disclaimer { margin-top: 6pt; font-size: 8.5pt; color: #333; }

/* ===== 請求明細書だけで使う部分（FMレイアウト「帳票 : 請求明細書」） ===== */
/* 締切分（表題の右）。見積書の「見積番号・作成日」と同じ位置 */
.report-doc .closing { text-align: right; font-size: 10pt; white-space: nowrap; }
/* お振込先（見積書には出さない。フッターの摘要欄の代わりに入る） */
.report-doc .bank { margin-top: 10pt; font-size: 9.5pt; }
.report-doc .bank-label { width: 60pt; }
.report-doc .bank-note { padding-top: 6pt; font-size: 9.5pt; }
/* 明細行の高さを固定する（FMの明細行数どおり1明細=1行・1ページ13行を保つため。2026-09-01ユーザー指示）。
   見積書・納品書はこのページに振込先を詰めて収める必要が無いため対象外にしている
   （`.report-statement` を付けた `_statement_document.blade.php` の `.report-doc` にだけ効く）。
   **23ptが実測での上限に近い値（24ptまでは1ページに収まるが25ptで振込先が2ページ目へ落ちる。
   dompdfがページごとの必要高さを判定しているため、境目を越えると表全体ではなく振込先だけが
   ページ送りされる）。この値を変えたら、13行の表と振込先が1ページに収まるか
   必ず実際のPDFで確認すること**（BillingStatement::ROWS_PER_PAGE・DETAIL_MAX_LINESと連動）。 */
.report-doc.report-statement table.items th,
.report-doc.report-statement table.items td { box-sizing: border-box; }
/* 見出し行は8pt（詳細列と同じ大きさ）。9.5ptでは「ポイント利用」が枠からはみ出していた
   （2026-09-01ユーザー指示）。行ごとに大きさがばらつかないよう見出しは全列まとめて小さくする */
.report-doc.report-statement table.items th { height: 18pt; font-size: 8pt; }
.report-doc.report-statement table.items td { height: 23pt; }
/* 詳細欄はDETAIL_MAX_LINES=1（BillingStatement::clampDetailが1行に丸める）ので折り返さない。
   PHP側の見積もりとPDFの実際の折り返しがずれた場合の保険として、はみ出す分は非表示にする。
   **請求明細書の詳細列だけ 8pt に落としてある**（2026-09-01ユーザー指示。9.5ptでは全角22文字ほどしか
   入らず品名がほとんど「…」で切れていた。8ptで全角26文字ほど入る）。行の高さは変えていないので
   1ページ13行のままだが、**この値を変えたら BillingStatement::DETAIL_LINE_WIDTH も合わせて
   実際のPDFで文字数を確認すること**。他の列は9.5ptのまま（列内で大きさがばらつかないようにする） */
.report-doc.report-statement table.items td.d { white-space: nowrap; overflow: hidden; text-overflow: clip; font-size: 8pt; }
.report-doc.report-statement table.items td.blank { height: 23pt; }
/* 明細が14行以上あるときのページ送り（FMの「合計請求書 ページ移動」= 1ページ13行） */
.report-page { page-break-after: always; }
.report-page-last { page-break-after: auto; }
/* プレビューだけ、2枚目以降を区切り線で分けて縦に並べる
   （.report-preview を付けないとPDF側にも余白が入って版面が下にずれる） */
.report-preview .report-page + .report-page { margin-top: 24pt; border-top: 1px dashed #999; padding-top: 24pt; }
/* 明細行「ポイント利用」欄の手入力（プレビューのみ。PDFには出さないので行の高さ固定は崩さなくてよい） */
.report-preview table.items td.point-cell { height: auto; white-space: normal; }
.report-preview .points-line-input { width: 100%; margin-top: 2pt; font-size: 8.5pt; padding: 1pt 2pt; box-sizing: border-box; }
