/* オンライン遊びの共通スタイル（play ページだけで読み込む）。既存デザイン（紙・インクの色）に合わせる */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.play-wrap{padding-bottom:40px}
.play-bar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 10px}
.play-rules{background:var(--card);border:3px solid var(--ink);border-radius:6px;padding:8px 16px;margin:0 0 14px}
.play-rules summary{font-weight:700;cursor:pointer;min-height:44px;display:flex;align-items:center}
.play-rules ol,.play-rules ul{margin:.3em 0 .6em}
.play-rules .small{font-size:15px;line-height:1.7}
.play-stage{background:var(--card);border:3px solid var(--ink);border-radius:6px;padding:12px;margin:0 0 12px;overflow-x:hidden}
.play-toast{position:fixed;left:50%;bottom:84px;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 18px;border-radius:6px;font-weight:700;z-index:60;max-width:92vw;text-align:center}
.reduce-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.pbtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:48px;min-height:48px;padding:6px 16px;border:3px solid var(--ink);border-radius:6px;background:#fff;color:var(--ink);font:700 17px/1.3 var(--font);cursor:pointer;touch-action:manipulation}
.pbtn:hover{background:#fff6dc}
.pbtn[aria-pressed=true]{background:var(--ink);color:#fff}
.pbtn:disabled{opacity:.45;cursor:not-allowed}
.pbtn-sm{min-height:44px;font-size:15px;padding:4px 12px}
.pbtn-main{background:var(--red);color:#fff;box-shadow:3px 3px 0 var(--ink)}
.pbtn-main:hover{background:#d65236}
.pbtn-danger{background:#fff;border-color:var(--red);color:var(--red)}
.prow{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:8px 0}
.ptool{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:8px 0}
.pswatch{width:48px;height:48px;border-radius:50%;border:3px solid var(--ink);padding:0;cursor:pointer;touch-action:manipulation}
.pswatch[aria-pressed=true]{outline:4px solid var(--focus);outline-offset:2px}
.pcanvas-wrap{position:relative;max-width:100%;margin:0 auto;touch-action:pan-y}
.pcanvas{display:block;width:100%;height:auto;background:#fff;border:2px solid var(--ink);touch-action:none;-webkit-user-select:none;user-select:none}
.pdpad{display:grid;grid-template-columns:repeat(3,64px);grid-template-rows:repeat(3,64px);gap:6px;justify-content:center;margin:10px auto}
.pdpad .pbtn{min-width:64px;min-height:64px;font-size:24px;padding:0}
.pstatus{font-weight:700;min-height:1.8em;margin:6px 0}
.pdialog-back{position:fixed;inset:0;background:rgba(35,50,80,.55);display:flex;align-items:center;justify-content:center;z-index:200;padding:16px}
.pdialog{background:var(--card);border:3px solid var(--ink);border-radius:8px;padding:20px;max-width:420px;width:100%;font-weight:700;box-shadow:6px 6px 0 var(--ink)}
.pclear{background:#e9f6df;border:3px solid var(--green);border-radius:8px;padding:12px 16px;margin:10px 0;font-weight:700}
@media (max-width:560px){.pbtn{font-size:16px;padding:6px 12px}.play-stage{padding:8px}}
