/* 麻雀の精算ツール（/tools/uma-oka・/tools/sanma-seisan 共用） */
/* styles.css の全体ルール section{display:grid;3列} を打ち消し、入力欄を縦に積む */
.umaoka-tool{display:block;margin:1.25rem 0 2rem;padding:1rem;border:1px solid rgba(128,128,128,.25);border-radius:12px;}
.umaoka-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1rem;}
.umaoka-field{display:flex;flex-direction:column;gap:.25rem;}
.umaoka-field label{font-size:.8rem;opacity:.8;}
.umaoka-field input,.umaoka-field select{padding:.5rem;border:1px solid rgba(128,128,128,.4);border-radius:8px;font-size:1rem;background:transparent;color:inherit;min-width:0;}
.umaoka-custom{display:none;}
.umaoka-custom.is-open{display:flex;}
.umaoka-players{width:100%;border-collapse:collapse;margin-bottom:1rem;}
.umaoka-players th,.umaoka-players td{padding:.35rem .3rem;text-align:left;}
.umaoka-players input{width:100%;padding:.5rem;border:1px solid rgba(128,128,128,.4);border-radius:8px;font-size:1rem;background:transparent;color:inherit;box-sizing:border-box;}
.umaoka-actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;}
.umaoka-btn{padding:.6rem 1.4rem;border-radius:999px;border:none;background:#0e7a5a;color:#fff;font-size:1rem;font-weight:700;cursor:pointer;}
.umaoka-btn:hover{opacity:.9;}
.umaoka-note{font-size:.8rem;opacity:.75;margin:.5rem 0 0;}
.umaoka-warn{display:none;margin:.75rem 0 0;padding:.6rem .8rem;border-radius:8px;background:rgba(220,120,0,.12);color:#b45309;font-size:.85rem;}
.umaoka-warn.is-open{display:block;}
.umaoka-result{display:none;margin-top:1.25rem;}
.umaoka-result.is-open{display:block;}
.umaoka-result-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;}
.umaoka-result-table th,.umaoka-result-table td{padding:.45rem .4rem;border-bottom:1px solid rgba(128,128,128,.25);text-align:right;white-space:nowrap;}
.umaoka-result-table th:nth-child(2),.umaoka-result-table td:nth-child(2){text-align:left;}
.umaoka-result-table .umaoka-plus{color:#0e7a5a;font-weight:700;}
.umaoka-result-table .umaoka-minus{color:#c0392b;font-weight:700;}
.umaoka-cta{margin:2rem 0 1rem;padding:1.25rem;border-radius:12px;background:rgba(14,122,90,.08);text-align:center;}
.umaoka-cta p{margin:0 0 .75rem;}
.umaoka-cta a.umaoka-btn{display:inline-block;text-decoration:none;}
@media (max-width:520px){.umaoka-grid{grid-template-columns:1fr 1fr;}}

/* 点数計算ツール（/tools/tensu-keisan） */
.tensu-choice{display:flex;gap:.5rem;flex-wrap:wrap;margin:0 0 .75rem;padding:0;border:none;}
.tensu-choice legend{font-size:.8rem;opacity:.8;margin-bottom:.25rem;padding:0;}
.tensu-choice label{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .9rem;border:1px solid rgba(128,128,128,.4);border-radius:999px;cursor:pointer;font-size:.95rem;}
.tensu-choice label:has(input:checked){border-color:#0e7a5a;background:rgba(14,122,90,.1);font-weight:700;}
.tensu-check{display:flex;align-items:center;gap:.4rem;font-size:.9rem;margin:.25rem 0 0;}
.tensu-result{margin-top:1rem;padding:1rem;border-radius:12px;background:rgba(14,122,90,.08);text-align:center;}
.tensu-main{font-size:2rem;font-weight:800;color:#0e7a5a;font-variant-numeric:tabular-nums;line-height:1.2;}
.tensu-sub{font-size:.85rem;opacity:.8;margin-top:.35rem;}
.tensu-table th,.tensu-table td{font-variant-numeric:tabular-nums;white-space:nowrap;}
.tensu-table td small{display:block;font-size:.75rem;opacity:.75;}

/* 成績計算ツール（/tools/seiseki-keisan） */
.seiseki-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.75rem;margin-bottom:.75rem;}
.seiseki-inputs [hidden]{display:none;}
.seiseki-result{display:grid;grid-template-columns:auto 1fr;gap:.35rem 1rem;margin:1rem 0 0;padding:1rem;border-radius:12px;background:rgba(14,122,90,.08);font-variant-numeric:tabular-nums;}
.seiseki-result dt{font-size:.9rem;opacity:.8;}
.seiseki-result dd{margin:0;font-weight:700;text-align:right;}

/* 集計ツール・精算表（/tools/seisan-hyo） */
.seisan-hyo-input{width:100%;border-collapse:collapse;}
.seisan-hyo-input th,.seisan-hyo-input td{padding:.25rem;text-align:left;white-space:nowrap;}
.seisan-hyo-input tbody th{font-size:.8rem;opacity:.8;font-weight:600;}
.seisan-hyo-input input{width:100%;min-width:5.5rem;padding:.45rem;border:1px solid rgba(128,128,128,.4);border-radius:8px;font-size:1rem;background:transparent;color:inherit;box-sizing:border-box;}
.seisan-hyo-buttons{display:flex;gap:.5rem;flex-wrap:wrap;margin:.75rem 0 0;}
.seisan-hyo-sub{padding:.45rem 1rem;border-radius:999px;border:1px solid rgba(14,122,90,.5);background:transparent;color:#0e7a5a;font-size:.9rem;font-weight:700;cursor:pointer;}
.seisan-hyo-sub:disabled,.umaoka-btn:disabled{opacity:.45;cursor:not-allowed;}
.seisan-hyo-sub.is-danger{border-color:rgba(192,57,43,.5);color:#c0392b;}
.seisan-hyo-note{color:#b45309;font-size:.8rem;text-align:left !important;white-space:normal !important;}

/* 点数早見表のダウンロード欄（PDF・Excel の2ボタンを並べる） */
.page-tools .guide-dl .guide-dl-btn{margin:.25rem .5rem .25rem 0;}

/* ルール表メーカー（/tools/rule-hyo） */
.rule-group{margin:1rem 0 0;padding:0;border:none;}
.rule-group legend{font-weight:700;font-size:.95rem;margin-bottom:.5rem;padding:0;}
.rule-group [hidden]{display:none;}
.page-rule-hyo textarea{padding:.5rem;border:1px solid rgba(128,128,128,.4);border-radius:8px;font-size:1rem;background:transparent;color:inherit;font-family:inherit;resize:vertical;}
.rule-sheet{margin:.5rem 0 0;padding:1rem 1.25rem;border:1px solid rgba(128,128,128,.35);border-radius:10px;}
.rule-sheet-title{margin:0 0 .5rem;font-size:1.15rem;}
.rule-sheet-table{width:100%;border-collapse:collapse;font-size:.92rem;}
.rule-sheet-table th,.rule-sheet-table td{padding:.3rem .4rem;border-bottom:1px solid rgba(128,128,128,.2);text-align:left;vertical-align:top;}
.rule-sheet-table tbody th[scope="row"]{width:42%;font-weight:600;opacity:.85;}
.rule-sheet-group th{padding-top:.7rem !important;color:#0e7a5a;font-weight:700;border-bottom:2px solid rgba(14,122,90,.35) !important;}
.rule-sheet-memo{margin:.75rem 0 0;font-size:.92rem;white-space:pre-wrap;}
.rule-sheet-foot{margin:.75rem 0 0;font-size:.75rem;opacity:.6;text-align:right;}
.rule-list-group th{background:rgba(14,122,90,.08);text-align:left;}

/* 印刷: ルール表だけを A4 に出す */
@media print{
  body.page-rule-hyo > *:not(main){display:none !important;}
  body.page-rule-hyo main{box-shadow:none !important;border:none !important;margin:0 !important;padding:0 !important;max-width:none !important;background:#fff !important;}
  body.page-rule-hyo main > *:not(.umaoka-tool){display:none !important;}
  body.page-rule-hyo .umaoka-tool{border:none;padding:0;margin:0;}
  body.page-rule-hyo .umaoka-tool > *:not(.rule-sheet){display:none !important;}
  body.page-rule-hyo .rule-sheet{border:none;padding:0;color:#000;}
  body.page-rule-hyo .rule-sheet-table{font-size:10.5pt;}
  body.page-rule-hyo .rule-sheet-table th,body.page-rule-hyo .rule-sheet-table td{padding:.15rem .4rem;}
  body.page-rule-hyo .rule-sheet-group th{padding-top:.45rem !important;}
  body.page-rule-hyo .rule-sheet-title{font-size:16pt;}
}
/* ルール表メーカーは選択肢の文言が長いので、スマホでは1列にして切れないようにする */
@media (max-width:520px){.page-rule-hyo .rule-group .umaoka-grid{grid-template-columns:1fr;}}
