/* 理事会用まとめ（A4・1枚） */
.mbs { --navy:#1f3358; --ink:#222a36; --soft:#4d5868; --rule:#d8d0bd; --bad:#a24a14; --cream:#faf6ec;
  font-family:"Hiragino Sans","Yu Gothic","Meiryo",sans-serif; color:var(--ink); background:var(--cream); padding:16px; box-sizing:border-box; }
.mbs *, .mbs *::before, .mbs *::after { box-sizing:inherit; }
.mbs-toolbar { max-width:800px; margin:0 auto 12px; }
.mbs-btn { font:inherit; min-height:48px; padding:6px 18px; margin:4px 8px 4px 0; background:#fff; color:var(--navy); border:2px solid var(--navy); border-radius:6px; cursor:pointer; font-weight:700; max-width:100%; }
.mbs-btn-sub { border-width:1px; font-weight:600; }
.mbs-btn:focus-visible { outline:3px solid var(--navy); outline-offset:2px; }
.mbs-note { font-size:.85rem; color:var(--soft); margin:4px 0; }
.mbs-sharebox input { display:block; width:100%; margin-top:4px; padding:8px; font:inherit; font-size:.9em; }
.mbs-sheet { max-width:800px; margin:0 auto; background:#fff; border:1px solid var(--rule); border-radius:6px; padding:28px 32px; font-size:15px; line-height:1.65; }
.mbs-head { border-bottom:2px solid var(--navy); padding-bottom:8px; margin-bottom:12px; }
.mbs-title { font-size:1.35rem; margin:0; padding:0; border:0; background:none; color:var(--navy); line-height:1.4; }
.mbs-meta { margin:4px 0 0; font-size:.85rem; color:var(--soft); }
.mbs-sec { margin:0 0 12px; break-inside:avoid; }
.mbs-sec h3 { font-size:1rem; margin:0 0 4px; padding:2px 8px; border:0; border-left:4px solid var(--navy); background:#eef1f7; color:var(--navy); line-height:1.5; }
.mbs-cond { width:100%; border-collapse:collapse; font-size:.9rem; }
.mbs-cond th, .mbs-cond td { border:1px solid var(--rule); padding:3px 8px; text-align:left; vertical-align:top; }
.mbs-cond th { width:20%; background:#f7f5ee; font-weight:600; }
.mbs-cond td { width:30%; }
.mbs-line { margin:2px 0; display:grid; grid-template-columns:8.5em minmax(0,1fr); gap:8px; }
.mbs-k { color:var(--soft); }
.mbs-v { font-weight:600; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.mbs-line.bad .mbs-v { color:var(--bad); }
.mbs-sub { margin:2px 0; color:var(--soft); }
.mbs-need { margin:2px 0; color:var(--soft); font-size:.9rem; }
.mbs-need a, .mbs-empty a { color:var(--navy); font-weight:700; }
.mbs-list { margin:4px 0; padding-left:1.3em; }
.mbs-url { display:block; font-size:.75rem; color:var(--soft); overflow-wrap:anywhere; }
.mbs-small { font-size:.85rem; color:var(--soft); margin:4px 0; }
.mbs-chart svg { display:block; width:100%; height:auto; max-width:100%; }
.mbs-foot { border-top:1px solid var(--rule); padding-top:6px; font-size:.75rem; color:var(--soft); }
.mbs-foot p { margin:2px 0; }
.mbs-empty { background:#fff6e0; padding:10px 12px; border-radius:6px; }
@media (max-width:520px) { .mbs-sheet { padding:16px; font-size:14px; } .mbs-line { grid-template-columns:1fr; gap:0; } .mbs-cond, .mbs-cond tbody, .mbs-cond tr { display:block; } .mbs-cond th, .mbs-cond td { display:inline-block; width:50%; } .mbs-cond th.blank, .mbs-cond th.blank + td { display:none; } }
@media print {
  @page { size:A4 portrait; margin:12mm; }
  html.mc-print-board, html.mc-print-board body { background:#fff !important; height:auto !important; overflow:visible !important; }
  html.mc-print-board body * { visibility:hidden !important; }
  html.mc-print-board .mbs-sheet, html.mc-print-board .mbs-sheet * { visibility:visible !important; }
  html.mc-print-board .mbs-sheet { position:absolute; left:0; top:0; width:100%; max-width:none; margin:0; border:0; padding:0; font-size:10.5pt; line-height:1.5; color:#000; }
  html.mc-print-board .mbs-sheet * { color:#000 !important; background:transparent !important; }
  html.mc-print-board .mbs-sec h3 { border-left:3pt solid #000; }
  html.mc-print-board .mbs-cond th, html.mc-print-board .mbs-cond td { border:0.5pt solid #000; }
  html.mc-print-board .mbs-more, html.mc-print-board .mbs-need a::after { display:none !important; }
  html.mc-print-board .mbs-chart svg rect.bar { fill:#555 !important; }
  html.mc-print-board .mbs-chart svg rect.bar.neg { fill:#fff !important; stroke:#000 !important; }
  html.mc-print-board .mbs-chart svg path { fill:#000 !important; }
  html.mc-print-board .mbs-chart svg text { fill:#000 !important; }
  html.mc-print-board .mbs-chart svg { width:auto !important; max-width:100%; height:30mm !important; }
  html.mc-print-board .mbs-sheet { line-height:1.4; }
  html.mc-print-board .mbs-sec { margin-bottom:6pt; }
}
