*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.-left-14{left:-3.5rem}.bottom-0{bottom:0}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.right-0{right:0}.right-\[-14\%\]{right:-14%}.top-0{top:0}.top-16{top:4rem}.top-6{top:1.5rem}.top-8{top:2rem}.top-\[8\%\]{top:8%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.mx-auto{margin-left:auto;margin-right:auto}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-5{margin-bottom:1.25rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.flex{display:flex}.grid{display:grid}.aspect-\[4\/5\]{aspect-ratio:4/5}.h-28{height:7rem}.h-9{height:2.25rem}.h-full{height:100%}.h-screen{height:100vh}.max-h-\[88vh\]{max-height:88vh}.max-h-screen{max-height:100vh}.min-h-72{min-height:18rem}.min-h-\[92vh\]{min-height:92vh}.min-h-screen{min-height:100vh}.w-80{width:20rem}.w-\[760px\]{width:760px}.w-\[980px\]{width:980px}.w-\[min\(92vw\,760px\)\]{width:min(92vw,760px)}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[420px\]{max-width:420px}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.self-center{align-self:center}.justify-self-center{justify-self:center}.overflow-hidden{overflow:hidden}.whitespace-pre-line{white-space:pre-line}.rounded{border-radius:.25rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-shu{--tw-border-opacity: 1;border-color:rgb(169 67 43 / var(--tw-border-opacity, 1))}.border-shu\/25{border-color:#a9432b40}.border-sumi\/10{border-color:#1f24261a}.border-sumi\/15{border-color:#1f242626}.border-sumi\/25{border-color:#1f242640}.bg-\[\#efe1bf\]{--tw-bg-opacity: 1;background-color:rgb(239 225 191 / var(--tw-bg-opacity, 1))}.bg-black\/10{background-color:#0000001a}.bg-sumi\/35{background-color:#1f242659}.bg-washi{--tw-bg-opacity: 1;background-color:rgb(244 236 214 / var(--tw-bg-opacity, 1))}.bg-white\/35{background-color:#ffffff59}.bg-white\/40{background-color:#fff6}.bg-white\/45{background-color:#ffffff73}.bg-cover{background-size:cover}.bg-center{background-position:center}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-16{padding-bottom:4rem}.pb-24{padding-bottom:6rem}.pb-4{padding-bottom:1rem}.pr-2{padding-right:.5rem}.pt-10{padding-top:2.5rem}.pt-32{padding-top:8rem}.pt-5{padding-top:1.25rem}.text-center{text-align:center}.text-right{text-align:right}.font-mincho{font-family:Yu Mincho,Hiragino Mincho ProN,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-\[clamp\(4\.2rem\,13vw\,11rem\)\]{font-size:clamp(4.2rem,13vw,11rem)}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-8{line-height:2rem}.leading-\[0\.86\]{line-height:.86}.leading-relaxed{line-height:1.625}.tracking-\[0\.22em\]{letter-spacing:.22em}.tracking-\[0\.24em\]{letter-spacing:.24em}.tracking-\[0\.28em\]{letter-spacing:.28em}.tracking-\[0\.2em\]{letter-spacing:.2em}.text-shu{--tw-text-opacity: 1;color:rgb(169 67 43 / var(--tw-text-opacity, 1))}.text-sumi{--tw-text-opacity: 1;color:rgb(31 36 38 / var(--tw-text-opacity, 1))}.text-sumi\/55{color:#1f24268c}.text-sumi\/65{color:#1f2426a6}.text-sumi\/85{color:#1f2426d9}.opacity-15{opacity:.15}.opacity-35{opacity:.35}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.mix-blend-multiply{mix-blend-mode:multiply}.shadow-paper{--tw-shadow: 0 20px 80px rgba(31,36,38,.18);--tw-shadow-colored: 0 20px 80px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-2xl{--tw-drop-shadow: drop-shadow(0 25px 25px rgb(0 0 0 / .15));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{color-scheme:light;font-family:Yu Gothic,Hiragino Sans,system-ui,sans-serif;background:#f4ecd6;--paper: #f4ead0;--paper-light: #fffaf0;--ink: #202625;--ink-muted: #62645f;--vermilion: #a9432b;--indigo: #174f73;--gold: #b58a3d;--hairline: rgba(32, 38, 37, .16);--shadow-low: 0 10px 28px rgba(32, 38, 37, .1);--shadow-high: 0 24px 70px rgba(32, 38, 37, .2)}html{scroll-behavior:auto}body{margin:0;min-width:320px;background:radial-gradient(circle at 22% 12%,rgba(185,144,69,.18),transparent 34%),linear-gradient(180deg,#f4ecd6,#ead8b4)}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(23,79,115,.38);outline-offset:3px}.ink-title{letter-spacing:0;text-shadow:0 2px 0 rgba(255,255,255,.35),0 24px 70px rgba(31,36,38,.22)}.ink-title:after{content:"";display:block;width:min(46vw,420px);height:18px;margin-top:24px;background:#1f2426;filter:blur(10px);opacity:.16}.title-heading{font-size:clamp(3.2rem,min(13vw,18vh),9.5rem)}.title-heading-red{text-shadow:0 3px 0 rgba(88,12,8,.55),0 20px 64px rgba(0,0,0,.36)}.title-button-primary,.title-button-secondary{display:inline-flex;min-height:54px;align-items:center;justify-content:center;border-radius:8px;padding:.9rem 1.25rem;font-weight:900;line-height:1;text-decoration:none;box-shadow:0 10px 28px #2404022e;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.title-button-primary{border:1px solid rgba(255,232,168,.72);background:linear-gradient(180deg,#ffe2a4,#c8943f);color:#4b130d}.title-button-secondary{border:1px solid rgba(255,239,202,.48);background:#fff8e8e0;color:#4b130d}.title-button-primary:hover,.title-button-secondary:hover{transform:translateY(-2px);box-shadow:0 16px 36px #2404023d}.title-review-link{border-color:#174f736b;color:#174f73}.btn-primary,.btn-secondary,.btn-ghost{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border-radius:8px;padding:.86rem 1.2rem;font-weight:800;line-height:1;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn-primary{background:#a9432b;color:#fff8e8;box-shadow:0 14px 35px #a9432b3d}.btn-secondary{border:1px solid rgba(31,36,38,.26);background:#fff8e8b8;color:#1f2426}.btn-ghost{color:#1f2426;text-decoration:underline;text-underline-offset:7px}.btn-primary:hover,.btn-secondary:hover,.btn-ghost:hover{transform:translateY(-2px)}.nav-link{display:inline-flex;min-height:38px;align-items:center;justify-content:center;border:1px solid rgba(31,36,38,.14);border-radius:999px;background:#fff8e880;padding:.52rem .82rem;color:#1f2426b8;font-size:.86rem;font-weight:800;line-height:1;text-decoration:none;transition:background .18s ease,color .18s ease,transform .18s ease}.nav-link:hover{transform:translateY(-1px);background:#fff8e8d1;color:#1f2426}.nav-link-active{border-color:#a9432b59;background:#a9432b;color:#fff8e8}.nav-link-review{border-color:#174f7352;color:#174f73}.menu-button{display:flex;width:46px;height:46px;flex-direction:column;gap:5px;align-items:center;justify-content:center;place-items:center;border:1px solid rgba(31,36,38,.16);border-radius:999px;background:#fff8e8d1;box-shadow:0 10px 26px #1f24261f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}header .menu-button{position:fixed;right:clamp(.75rem,3vw,1.5rem);top:clamp(.75rem,3vw,1.5rem)}.menu-button span{display:block;width:20px;height:2px;border-radius:999px;background:#1f2426}.menu-button span+span{margin-top:0}.menu-panel{position:absolute;right:1rem;top:4.1rem;display:grid;width:min(260px,calc(100vw - 2rem));gap:.55rem;border:1px solid rgba(31,36,38,.14);border-radius:8px;background:#f4ecd6f0;padding:.75rem;box-shadow:0 20px 60px #1f242638;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.paper-card{position:relative;border:1px solid rgba(31,36,38,.16);border-radius:6px;background:linear-gradient(135deg,#ffffff52,#fff0),#f2e5c3;box-shadow:var(--shadow-low)}.paper-card:before,.modal-card:before{pointer-events:none;content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(90deg,rgba(31,36,38,.04) 1px,transparent 1px),linear-gradient(rgba(31,36,38,.03) 1px,transparent 1px);background-size:42px 42px;mix-blend-mode:multiply;opacity:.42}.tile{position:relative;z-index:1;display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;overflow:hidden;border:1px solid rgba(31,36,38,.18);border-radius:4px;background:#fff8e8b8;padding:.35rem;color:#1f2426;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.tile:hover{transform:translateY(-2px);box-shadow:0 12px 30px #1f24261f}.tile-reached{background:#123f5a29}.tile-active{background:#b9904561;box-shadow:0 0 0 3px #a9432b38,0 0 34px #b990456b}.board-cell{position:absolute;z-index:2;border:1.5px solid transparent;border-radius:2px;background:transparent;color:#fffdf5;font-size:clamp(.58rem,.95vw,.82rem);font-weight:900;line-height:1;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.board-cell span{position:absolute;left:.28rem;top:.28rem;display:grid;min-width:2em;height:2em;padding-inline:.2em;place-items:center;border-radius:999px;border:2px solid rgba(255,253,245,.96);background:#913b29;box-shadow:0 3px 9px #1f242685,0 0 0 1px #1f24263d;text-shadow:0 1px 1px rgba(31,36,38,.45)}.board-cell-rest span{border-color:#fffdf5;background:#174f73;color:#fffdf5;box-shadow:0 3px 9px #1f242685,0 0 0 1px #1f24263d}.board-cell:hover{border-color:#ffdf73a6;background:#fff8e814;box-shadow:inset 0 0 0 2px #fff8e847}.board-cell-reached{border-color:transparent;background:transparent}.board-cell-active{border-color:transparent;background:transparent;box-shadow:none}.board-editing .board-cell{cursor:move;border-color:#ffdf7394;background:#fff8e80a}.board-cell-selected{border-color:#ffdf73!important;box-shadow:inset 0 0 0 2px #ffdf73b8,0 0 24px #ffdf735c}.board-resize-handle{position:absolute;right:-8px;bottom:-8px;width:24px;height:24px;border:0;border-radius:0;background:transparent;cursor:nwse-resize;box-shadow:none}.board-editor-panel{position:absolute;z-index:8;display:grid;width:min(420px,calc(100% - 1.5rem));gap:.55rem;border:1px solid rgba(31,36,38,.18);border-radius:14px;background:#f4ecd6f0;padding:.75rem;box-shadow:0 18px 48px #1f242638;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.board-editor-panel p{font-size:.85rem;font-weight:900;color:#a9432b}.board-editor-panel-handle{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.board-editor-panel-handle:active{cursor:grabbing}.board-editor-panel button{border-radius:999px;background:#1f2426;padding:.45rem .75rem;color:#fff8e8;font-size:.78rem;font-weight:900}.board-editor-panel textarea{height:120px;resize:vertical;border-radius:10px;background:#fff8e8eb;padding:.55rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;line-height:1.45}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1rem;align-items:start}.game-setup-page{display:grid;min-height:100vh;min-height:100dvh;place-items:center;background-position:center;background-size:cover;padding:4.5rem 1rem 2rem}.game-setup-panel{width:min(620px,100%);border:1px solid rgba(31,36,38,.16);border-radius:8px;background:#f2e5c3f0;padding:clamp(1.25rem,4vw,2.25rem);box-shadow:0 24px 80px #1f242633;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.player-count-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.player-count-grid button{display:grid;min-height:110px;place-items:center;align-content:center;gap:.2rem;border:1px solid rgba(31,36,38,.16);border-radius:8px;background:#fff8e8b8;transition:transform .18s ease,border-color .18s ease,background .18s ease}.player-count-grid button:hover{transform:translateY(-3px);border-color:#a9432b73;background:#fff8e8f5}.player-count-grid strong{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:2.25rem;color:#a9432b}.player-count-grid span{font-size:.85rem;font-weight:900;color:#1f24269e}.setup-back-button{border-bottom:1px solid currentColor;color:#1f24269e;font-size:.82rem;font-weight:900}.exact-goal-option{display:grid;min-width:0;margin-top:1rem;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;border:1px solid rgba(31,36,38,.14);border-radius:6px;background:#fff8e8a3;padding:.7rem .8rem;cursor:pointer}.exact-goal-option>div{min-width:0}.exact-goal-option strong,.exact-goal-option>div span{display:block}.exact-goal-option strong{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-weight:900}.exact-goal-option>div span{margin-top:.15rem;color:#1f24269e;font-size:.72rem;font-weight:750;line-height:1.45}.exact-goal-option>input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.exact-goal-switch{position:relative;display:block;width:2.8rem;height:1.55rem;border-radius:999px;background:#1f242640;transition:background .18s ease}.exact-goal-switch i{position:absolute;left:.2rem;top:.2rem;width:1.15rem;height:1.15rem;border-radius:50%;background:#fffdf5;box-shadow:0 2px 7px #1f242647;transition:transform .18s ease}.exact-goal-option>input:checked+.exact-goal-switch{background:#913b29}.exact-goal-option>input:checked+.exact-goal-switch i{transform:translate(1.25rem)}.exact-goal-option>input:focus-visible+.exact-goal-switch{box-shadow:0 0 0 3px #a9432b38}.exact-goal-option>b{min-width:2em;color:#913b29;font-size:.78rem;text-align:center}.player-name-list{display:grid;gap:.65rem}.player-name-list label{display:grid;grid-template-columns:18px 110px minmax(0,1fr);align-items:center;gap:.65rem;border:1px solid rgba(31,36,38,.1);border-radius:8px;background:#fff8e88a;padding:.65rem}.player-name-list label>strong{font-size:.85rem}.player-name-list input{min-width:0;min-height:44px;border:1px solid rgba(31,36,38,.16);border-radius:8px;background:#fffcf2f5;padding-inline:.85rem;font-weight:800;outline:none}.player-name-list input:focus{border-color:#a9432b8c;box-shadow:0 0 0 3px #a9432b1a}@media(min-width:761px)and (min-height:701px)and (orientation:landscape){.game-setup-page{height:100dvh;min-height:0;overflow:hidden}.game-setup-panel[data-player-count="4"]{max-height:100%}.game-setup-panel[data-player-count="4"] .player-name-list{gap:.4rem;margin-top:.625rem}.game-setup-panel[data-player-count="4"] .player-name-list label{padding:.45rem .6rem}.game-setup-panel[data-player-count="4"] .player-name-list input{min-height:40px}.game-setup-panel[data-player-count="4"]>.mt-7>.btn-primary{min-height:44px;margin-top:1rem;padding-block:.7rem}.game-setup-panel[data-player-count="4"]>.btn-secondary{min-height:44px;margin-top:.75rem;padding-block:.7rem}}.player-color{width:14px;height:14px;border:2px solid #fff8e8;border-radius:999px;box-shadow:0 2px 8px #1f242633}.player-color-1{background:#a9432b}.player-color-2{background:#174f73}.player-color-3{background:#317348}.player-color-4{background:#8a4f92}.current-turn-label{display:flex;min-width:0;align-items:center;gap:.5rem;font-size:.9rem;font-weight:900}.current-turn-label span{flex-shrink:0;width:12px;height:12px;border:2px solid #fff8e8;border-radius:999px;box-shadow:0 2px 8px #1f24262e}.current-turn-label p{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-status-list{display:grid;gap:.4rem}.player-status-list>div{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:.5rem;border-radius:6px;padding:.4rem .5rem}.player-status-list>div>span{width:10px;height:10px;border-radius:999px}.player-status-list strong{overflow:hidden;font-size:.85rem;text-overflow:ellipsis;white-space:nowrap}.player-status-list small{color:#1f242694;font-size:.75rem;font-weight:900}.player-status-active{background:#fff8e8c7;box-shadow:inset 0 0 0 1px #a9432b29}.rest-tile-label{display:inline-flex;margin-top:.45rem;border-radius:999px;background:#174f73;padding:.3rem .72rem;color:#fff8e8;font-size:.78rem;font-weight:900}.materials-hero{display:flex;align-items:end;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(31,36,38,.12);padding-bottom:.85rem}.materials-filter-panel{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:.75rem;border:1px solid rgba(31,36,38,.12);border-radius:8px;background:#fff8e8ad;padding:.9rem;box-shadow:0 16px 44px #1f242614;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.materials-filter-panel label{display:grid;gap:.35rem}.materials-filter-panel span{font-size:.78rem;font-weight:900;color:#1f24269e}.materials-filter-panel input,.materials-filter-panel select{min-height:2.9rem;border:1px solid rgba(31,36,38,.16);border-radius:999px;background:#fffcf2eb;padding-inline:1rem;color:#1f2426;font-weight:800;outline:none}.materials-filter-panel input:focus,.materials-filter-panel select:focus{border-color:#a9432b99;box-shadow:0 0 0 3px #a9432b1f}.materials-reset-button{align-self:end;min-height:2.9rem;border:1px solid rgba(169,67,43,.22);border-radius:999px;background:#a9432b1a;padding-inline:1rem;color:#873522;font-weight:900;transition:transform .18s ease,background .18s ease}.materials-reset-button:hover{transform:translateY(-1px);background:#a9432b29}.materials-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1rem;align-items:stretch}.materials-board{width:min(100%,calc((100vh - 270px) * 8162 / 5736))}.material-board-cell-visible{border-color:#ffdf7366;background:#fff8e80a;cursor:pointer}.material-board-cell-visible:hover{border-color:#a9432bb8;background:#fff8e829}.material-board-cell-hidden{opacity:.16;cursor:default}.material-board-cell-hidden span{opacity:0}.materials-list{position:static;display:flex;min-height:0;flex-direction:column}.materials-list-scroll{display:grid;flex:1;min-height:0;gap:.55rem;overflow-y:auto;overscroll-behavior:contain;padding-right:.2rem}.material-list-item{display:grid;grid-template-columns:72px 1fr;gap:.25rem .65rem;width:100%;border:1px solid rgba(31,36,38,.1);border-radius:8px;background:#fff8e894;padding:.8rem;text-align:left;transition:transform .18s ease,border-color .18s ease,background .18s ease}.material-list-item img{grid-row:span 3;width:72px;height:54px;border:1px solid rgba(31,36,38,.16);border-radius:4px;background:#efe1bf;-o-object-fit:cover;object-fit:cover;filter:sepia(.12)}.material-list-item:hover{transform:translateY(-1px);border-color:#a9432b5c;background:#fff8e8e0}.material-list-item span,.material-list-item small{color:#1f242694;font-size:.78rem;font-weight:800}.material-list-item strong{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.08rem;color:#1f2426}.progress-panel{padding-right:4.5rem}.game-board{aspect-ratio:8162 / 5736;width:min(100%,calc((100vh - 150px) * 8162 / 5736));min-height:0;margin-inline:auto}.piece{position:absolute;z-index:5;width:clamp(22px,2.6vw,34px);height:clamp(22px,2.6vw,34px);border:3px solid #fff8e8;border-radius:999px;background:radial-gradient(circle at 35% 28%,#d7b15c,#a9432b 58%,#61251b);box-shadow:0 10px 28px #1f242647,0 0 24px #b9904573;transform:translate(-50%,-50%);will-change:left,top,transform;pointer-events:none}.piece span{display:grid;width:100%;height:100%;place-items:center;color:#fff8e8;font-size:clamp(.58rem,.9vw,.72rem);font-weight:900;line-height:1;text-shadow:0 1px 3px rgba(31,36,38,.72)}.piece-current{z-index:6;box-shadow:0 10px 28px #1f24264d,0 0 0 3px #ffdf73b8,0 0 26px #ffdf7394}.tile-image-frame{position:relative;display:grid;align-self:start;width:min(100%,220px);margin-inline:auto;overflow:hidden;border:1px solid rgba(31,36,38,.18);border-radius:4px;background:#fff8e8b3;box-shadow:0 18px 38px #1f24262e;cursor:zoom-in;padding:0;text-align:left;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.tile-image-frame:hover{transform:translateY(-2px);border-color:#a9432b6b;box-shadow:0 22px 46px #1f24263d}.tile-image-frame img{width:100%;max-height:260px;-o-object-fit:contain;object-fit:contain;filter:sepia(.1) contrast(1.02)}.tile-image-frame span{position:absolute;right:.55rem;bottom:.55rem;border-radius:999px;background:#1f2426c7;padding:.28rem .62rem;color:#fff8e8;font-size:.74rem;font-weight:900;letter-spacing:0}.tile-image-frame-wide{width:min(100%,240px)}.howto-page{min-height:100vh;padding:clamp(6.5rem,11vh,8.5rem) 1.25rem 3.5rem;background:#efe1bf}.howto-inner{width:min(1180px,100%);margin-inline:auto}.howto-header{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(320px,1.3fr);gap:2rem;align-items:end;border-bottom:1px solid rgba(31,36,38,.2);padding-bottom:1.5rem}.howto-header>div>p{color:#913b29;font-size:.78rem;font-weight:900;letter-spacing:.18em}.howto-header h1{margin-top:.3rem;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(2.8rem,6vw,5rem);font-weight:900;line-height:1;letter-spacing:0}.howto-intro{max-width:36rem;color:#1f2426b8;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(1.1rem,2vw,1.4rem);font-weight:800;line-height:1.8}.howto-content{display:grid;margin-top:2.25rem;grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}.howto-steps{position:relative;display:grid;gap:0}.howto-steps:before{content:"";position:absolute;left:1.4rem;top:2.2rem;bottom:2.2rem;width:1px;background:#1f242638}.howto-step{position:relative;display:grid;min-height:7.5rem;grid-template-columns:2.85rem minmax(0,1fr);gap:1.15rem;align-items:start;padding-block:1rem}.howto-step-number{position:relative;z-index:1;display:grid;width:2.85rem;height:2.85rem;place-items:center;border:2px solid #913b29;border-radius:50%;background:#efe1bf;color:#913b29;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.25rem;font-weight:900}.howto-step h2{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.3rem;font-weight:900;letter-spacing:0}.howto-step p{margin-top:.45rem;color:#1f2426ad;font-size:.93rem;font-weight:650;line-height:1.8}.howto-preview{overflow:hidden;border:1px solid rgba(31,36,38,.18);border-radius:6px;background:#202526;box-shadow:0 18px 42px #1f24262e}.howto-preview-board{position:relative;aspect-ratio:8162 / 5736;overflow:hidden;background:#d7c7a2}.howto-preview-board:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:8px solid rgba(255,253,245,.2);pointer-events:none}.howto-preview-board img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.howto-preview-piece{position:absolute;z-index:2;width:clamp(16px,3vw,27px);aspect-ratio:1;border:3px solid #fffdf5;border-radius:50%;box-shadow:0 4px 9px #1f242680}.howto-preview-piece-one{right:19%;bottom:9%;background:#913b29}.howto-preview-piece-two{right:23%;bottom:12%;background:#174f73}.howto-turn-flow{display:grid;min-height:7.5rem;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:.55rem;padding:1rem 1.15rem;color:#fffdf5}.howto-turn-flow>div{display:grid;min-width:0;justify-items:center;gap:.55rem;text-align:center}.howto-turn-flow>div>span{display:grid;width:2.75rem;height:2.75rem;place-items:center;border:1px solid rgba(255,253,245,.42);border-radius:50%;background:#fffdf514;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-weight:900}.howto-turn-flow strong{font-size:.78rem;line-height:1.4}.howto-turn-flow>i{color:#b99045;font-style:normal;font-weight:900}.howto-turn-flow>div>.howto-die{position:relative;border-radius:7px;background-color:#fff7df;background-image:radial-gradient(circle at 28% 28%,#913b29 0 3px,transparent 3.5px),radial-gradient(circle at 72% 28%,#913b29 0 3px,transparent 3.5px),radial-gradient(circle at 50% 50%,#913b29 0 3px,transparent 3.5px),radial-gradient(circle at 28% 72%,#913b29 0 3px,transparent 3.5px),radial-gradient(circle at 72% 72%,#913b29 0 3px,transparent 3.5px);box-shadow:inset 0 0 8px #602a182e}.howto-die:before,.howto-die:after{display:none}.howto-special-rules{display:grid;margin-top:2.25rem;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(31,36,38,.2);border-bottom:1px solid rgba(31,36,38,.2)}.howto-special-rules article{display:grid;grid-template-columns:3.2rem minmax(0,1fr);gap:1rem;padding:1.5rem}.howto-special-rules article+article{border-left:1px solid rgba(31,36,38,.18)}.howto-rule-mark{display:grid;width:3.2rem;height:3.2rem;place-items:center;border:2px solid #fffdf5;border-radius:50%;color:#fffdf5;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:.9rem;font-weight:900;box-shadow:0 3px 8px #1f242647}.howto-rule-rest{background:#174f73}.howto-rule-goal{background:#913b29}.howto-rule-history{background:#317348}.howto-special-rules h2{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1rem;font-weight:900;letter-spacing:0}.howto-special-rules p{margin-top:.35rem;color:#1f2426a3;font-size:.78rem;font-weight:650;line-height:1.7}.howto-start{display:flex;margin-top:2rem;align-items:center;justify-content:flex-end;gap:1.5rem}.howto-start p{color:#1f2426ad;font-weight:800}@media(max-width:900px){.howto-content{grid-template-columns:1fr}.howto-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem}.howto-steps:before{display:none}.howto-special-rules{grid-template-columns:1fr}.howto-special-rules article+article{border-top:1px solid rgba(31,36,38,.18);border-left:0}}@media(max-width:620px){.howto-header{grid-template-columns:1fr;gap:1rem}.howto-steps{grid-template-columns:1fr}.howto-step{min-height:auto}.howto-turn-flow{padding-inline:.65rem}.howto-start{align-items:stretch;flex-direction:column;text-align:center}}.research-group-page{min-height:100vh;padding:clamp(7rem,12vh,9rem) 1.25rem 3rem;background-color:#efe1bf;background-image:linear-gradient(rgba(31,36,38,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(31,36,38,.025) 1px,transparent 1px);background-size:34px 34px}.research-group-inner{display:grid;width:min(1160px,100%);margin-inline:auto;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:clamp(2.5rem,6vw,6rem);align-items:start}.research-group-eyebrow,.research-group-social-heading>p{color:#913b29;font-size:.78rem;font-weight:900;letter-spacing:.18em}.research-group-copy h1{max-width:12em;margin-top:.65rem;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(2.35rem,5.2vw,4.6rem);font-weight:900;line-height:1.18;letter-spacing:0}.research-group-lead{max-width:32em;margin-top:1.6rem;border-left:4px solid #b99045;padding-left:1.1rem;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(1.2rem,2vw,1.55rem);font-weight:800;line-height:1.75}.research-group-description{max-width:44rem;margin-top:1.5rem;color:#1f2426c2;font-size:1rem;font-weight:600;line-height:2}.research-group-description p+p{margin-top:.9rem}.research-group-site-link{display:inline-flex;min-height:3.25rem;margin-top:2rem;align-items:center;gap:1.4rem;border-radius:4px;background:#913b29;padding:.75rem 1.15rem .75rem 1.4rem;color:#fffdf5;font-weight:900;box-shadow:0 8px 20px #602a1833;transition:transform .18s ease,background .18s ease}.research-group-site-link:hover{transform:translateY(-2px);background:#742b1e}.research-group-site-link span{font-size:1.15rem}.research-group-social{border-left:1px solid rgba(31,36,38,.18);padding-left:clamp(1.5rem,4vw,3.5rem)}.research-group-social-heading h2{margin-top:.45rem;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(1.75rem,3vw,2.35rem);font-weight:900;letter-spacing:0}.research-group-social-heading>span{display:block;margin-top:.7rem;color:#1f24269e;font-size:.86rem;font-weight:700;line-height:1.7}.research-group-qr-list{display:grid;margin-top:1.35rem;gap:.85rem}.research-group-qr{display:grid;min-width:0;grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:1rem;border:1px solid rgba(31,36,38,.15);border-radius:6px;background:#fffcf2bd;padding:.75rem;color:#1f2426;box-shadow:0 8px 22px #1f242614;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.research-group-qr:hover{transform:translateY(-2px);border-color:#913b297a;box-shadow:0 12px 28px #1f242621}.research-group-qr img{width:112px;aspect-ratio:1;border:6px solid #fff;background:#fff}.research-group-qr div{min-width:0}.research-group-qr strong,.research-group-qr div span{display:block}.research-group-qr strong{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.2rem;font-weight:900}.research-group-qr div span{overflow-wrap:anywhere;margin-top:.25rem;color:#1f24269e;font-size:.78rem;font-weight:800}.research-group-qr-arrow{color:#913b29;font-size:1.15rem;font-weight:900}@media(max-width:880px){.research-group-page{padding-top:6.5rem}.research-group-inner{grid-template-columns:1fr;gap:2.5rem}.research-group-social{border-top:1px solid rgba(31,36,38,.18);border-left:0;padding-top:2rem;padding-left:0}.research-group-qr-list{grid-template-columns:repeat(2,minmax(0,1fr))}.research-group-qr{grid-template-columns:96px minmax(0,1fr)}.research-group-qr img{width:96px}.research-group-qr-arrow{display:none}}@media(max-width:620px){.research-group-qr-list{grid-template-columns:1fr}.research-group-qr{grid-template-columns:104px minmax(0,1fr) auto}.research-group-qr img{width:104px}.research-group-qr-arrow{display:block}}.image-zoom-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;background:#1f2426a6;padding:clamp(.5rem,2vw,1.25rem);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.image-zoom-card{display:flex;flex-direction:column;width:min(1240px,100%);height:min(94dvh,920px);overflow:hidden;border:1px solid var(--action-border);border-radius:var(--radius-panel);background:#fffaf0;box-shadow:var(--shadow-high)}.image-zoom-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--hairline);padding:1rem 1.25rem;color:var(--ink)}.image-zoom-heading{min-width:0}.image-zoom-header p{color:#713022;font-size:.82rem;font-weight:700}.image-zoom-header h3{margin-top:.15rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(1.15rem,2.4vw,1.8rem);font-weight:900;text-wrap:balance}.image-zoom-controls{display:flex;flex-shrink:0;align-items:center;gap:.25rem}.image-zoom-toolbar{display:flex;flex-shrink:0;align-items:center;justify-content:center;gap:1rem;border-top:1px solid var(--hairline);padding:.75rem 1rem;background:#fffaf0}.image-zoom-level{min-width:4rem;color:#343832;font-size:.9375rem;font-weight:600;font-variant-numeric:tabular-nums;text-align:center}.image-zoom-controls button,.image-zoom-close,.image-zoom-reset{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:48px;min-height:48px;border:1px solid var(--action-border);border-radius:var(--radius-control);background:#fffdf8;color:#343832;font-size:.9375rem;font-weight:700;cursor:pointer;touch-action:manipulation;transition:background-color .16s ease,border-color .16s ease}.image-zoom-controls button:hover:not(:disabled),.image-zoom-close:hover,.image-zoom-reset:hover{background:#f3f0e9;border-color:#a6a298}.image-zoom-controls button:active:not(:disabled),.image-zoom-close:active,.image-zoom-reset:active{background:#e8e4db}.image-zoom-controls button:focus-visible,.image-zoom-close:focus-visible,.image-zoom-reset:focus-visible{outline:3px solid #174f73;outline-offset:3px}.image-zoom-controls button:disabled{cursor:not-allowed;color:#8c8b83;background:#efede7;border-color:#ddd9d0}.image-zoom-close{gap:.4rem;padding:.5rem .85rem}.image-zoom-reset{padding:.5rem 1rem}.image-zoom-scroll{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;padding:clamp(.65rem,2vw,1.35rem);background:#eee9de;scrollbar-color:#aaa498 #eee9de}.image-zoom-canvas{min-width:0;transition:width .18s ease,height .18s ease,margin .18s ease}.image-zoom-canvas:not(.image-zoom-canvas-ready){display:grid;width:100%;height:100%;place-items:center}.image-zoom-canvas img{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;background:#efe1bf;box-shadow:0 3px 16px #1f242624}.image-zoom-canvas:not(.image-zoom-canvas-ready) img{width:auto;max-width:100%;height:auto;max-height:100%}@media(max-width:640px){.image-zoom-header{align-items:flex-start;padding:.85rem 4.5rem .85rem .85rem;gap:.75rem;position:relative}.image-zoom-header p{font-size:.72rem}.image-zoom-header h3{white-space:normal;font-size:1rem;line-height:1.65}.image-zoom-close{position:absolute;right:.75rem;top:.75rem;width:48px;height:48px;padding:0}.image-zoom-close span{display:none}.image-zoom-toolbar{flex-wrap:wrap;gap:.5rem;padding:.65rem}}@media(max-height:500px)and (orientation:landscape){.image-zoom-card{height:calc(100dvh - .8rem)}.image-zoom-header{padding-block:.45rem}.image-zoom-header h3{font-size:1rem}.image-zoom-toolbar{padding-block:.4rem}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;overflow:auto;background:#0d1112a8;padding:1rem}.modal-card{position:relative;display:flex;flex-direction:column;width:min(960px,100%);height:auto;max-height:min(88vh,920px);overflow:hidden;border:1px solid rgba(31,36,38,.25);border-radius:6px;background:#f2e5c3;padding:clamp(1rem,3vw,2rem);box-shadow:0 24px 90px #0000005c}.modal-scroll-area{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:.35rem}.modal-actions{flex-shrink:0;border-top:1px solid rgba(31,36,38,.12);background:linear-gradient(180deg,#f2e5c3e0,#f2e5c3);padding-top:1rem}.clear-modal-card{width:min(900px,100%)}.clear-modal-hero{border-left:4px solid var(--gold);background:#fffaf04d;padding:.85rem 1rem}.clear-modal-copy h3{font-size:clamp(2.25rem,5vw,3rem)}.clear-modal-final{margin-top:1rem;padding:1rem}.clear-modal-final>.grid{grid-template-columns:180px minmax(0,1fr);gap:1rem}.clear-modal-final .tile-image-frame{width:min(100%,180px)}.clear-modal-final .tile-image-frame img{max-height:150px}.history-scroll-area{min-height:0;max-height:min(60vh,560px);overflow-y:auto;overscroll-behavior:contain}.dice-stage{position:relative;display:grid;width:112px;height:112px;margin:0 auto;place-items:center;perspective:720px}.dice-stage:after{content:"";position:absolute;bottom:5px;width:74px;height:18px;border-radius:999px;background:#1f242638;filter:blur(9px)}.dice-cube{position:relative;z-index:1;width:74px;height:74px;transform-style:preserve-3d}.dice-face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;border:2px solid rgba(96,42,24,.22);border-radius:14px;background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.82),transparent 28%),linear-gradient(145deg,#fff7df,#d8b76e 105%);box-shadow:inset 0 0 18px #602a1829,inset -8px -10px 18px #602a181a;transform-style:preserve-3d}.dice-face-1{transform:translateZ(37px)}.dice-face-2{transform:rotateY(90deg) translateZ(37px)}.dice-face-3{transform:rotateX(90deg) translateZ(37px)}.dice-face-4{transform:rotateX(-90deg) translateZ(37px)}.dice-face-5{transform:rotateY(-90deg) translateZ(37px)}.dice-face-6{transform:rotateY(180deg) translateZ(37px)}.dice-dot{position:absolute;width:12px;height:12px;border-radius:999px;background:radial-gradient(circle at 35% 30%,#dc7b5f,#a9432b 62%,#662016);box-shadow:inset 0 1px 2px #fff8e84d,0 1px 2px #1f24262e}.dice-dot-1-1,.dice-dot-3-2,.dice-dot-5-3{left:50%;top:50%;transform:translate(-50%,-50%)}.dice-dot-2-1,.dice-dot-3-1,.dice-dot-4-1,.dice-dot-5-1,.dice-dot-6-1{left:14px;top:14px}.dice-dot-2-2,.dice-dot-3-3,.dice-dot-4-4,.dice-dot-5-5,.dice-dot-6-6{right:14px;bottom:14px}.dice-dot-4-2,.dice-dot-5-2,.dice-dot-6-2{right:14px;top:14px}.dice-dot-4-3,.dice-dot-5-4,.dice-dot-6-5{left:14px;bottom:14px}.dice-dot-6-3{left:14px;top:50%;transform:translateY(-50%)}.dice-dot-6-4{right:14px;top:50%;transform:translateY(-50%)}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.title-stage{position:relative;isolation:isolate}.opening-page{height:100dvh;max-height:100dvh}.title-heading{text-wrap:balance}.title-logo-image{max-height:min(74vh,640px)}.title-menu{position:relative}.title-copyright{position:absolute;right:max(.75rem,env(safe-area-inset-right));bottom:max(.55rem,env(safe-area-inset-bottom));color:#fffdf5;font-size:.68rem;font-weight:700;line-height:1;letter-spacing:0;text-shadow:0 1px 4px rgba(31,36,38,.7);white-space:nowrap}.title-menu a{position:relative;overflow:hidden}.game-setup-panel{border-top:5px solid var(--vermilion);background:#f7edd3f5;box-shadow:var(--shadow-high)}.player-count-grid button{border-radius:6px;box-shadow:inset 0 -3px #20262512}.player-count-grid button:hover{box-shadow:inset 0 -3px #a9432b24,var(--shadow-low)}.game-topbar{min-height:82px;border-bottom:1px solid var(--hairline);padding:0 4.5rem .85rem 0}.game-topbar h2,.materials-hero h1{text-wrap:balance}.progress-panel{border-left:3px solid var(--gold);padding:.65rem 4.5rem .65rem .85rem;background:#fffaf06b}.game-board,.materials-board{border:1px solid rgba(32,38,37,.28)!important;border-radius:4px!important;box-shadow:0 18px 44px #2026252e}.game-sidebar{position:relative;height:var(--board-height, auto);max-height:var(--board-height, calc(100vh - 120px) )}.game-location-card{border-left:4px solid var(--gold)}.game-location-card h3{display:-webkit-box;min-height:2.7em;overflow:hidden;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.title-ruby{ruby-align:center;ruby-position:over}.title-ruby rt{font-family:Noto Sans JP,Hiragino Sans,sans-serif;font-size:clamp(.5rem,.42em,.78rem);font-weight:700;line-height:1;letter-spacing:0}.current-turn-label{color:var(--vermilion);letter-spacing:0}.player-status-list{background:#f9f1dcf0}.player-status-active{background:var(--paper-light);box-shadow:inset 3px 0 0 var(--gold),inset 0 0 0 1px #2026251a}.player-status-resting{background:#174f731c;box-shadow:inset 0 0 0 1px #174f7333}.player-status-resting strong,.player-status-resting small{color:#174f73}.game-control-card{isolation:isolate;overflow:hidden;border-top:4px solid var(--vermilion);background:#fffaf0f5}.game-control-card button{position:relative;z-index:1;touch-action:manipulation}.game-control-card .btn-primary,.game-control-card .btn-secondary{min-height:40px;padding-block:.55rem;line-height:1.1}.game-control-card .btn-primary{box-shadow:0 10px 24px #a9432b38}.dice-result{display:grid;height:2.5rem;margin-block:.5rem;place-items:center;font-size:2.5rem;line-height:1}.dice-result-ready{font-size:1.25rem}.materials-page{background:radial-gradient(circle at 18% 0%,rgba(185,138,61,.14),transparent 28rem),linear-gradient(180deg,#fffaf0b8,#efe1bff2),#efe1bf;color:var(--ink)}.materials-hero{min-height:112px;border-bottom:2px solid var(--ink)}.materials-hero>div{border-left:4px solid var(--vermilion);padding-left:1rem}.materials-filter-panel{border-radius:6px;background:#fffaf0e6;box-shadow:0 8px 24px #20262514}.materials-filter-panel input,.materials-filter-panel select,.materials-reset-button{border-radius:6px}.materials-list{border-top:4px solid var(--indigo);background:#f7edd3f5;overflow:hidden}@media(min-width:761px){.materials-list{height:var(--board-height, max(420px, calc(100dvh - 270px) ))}}.materials-list-scroll{scrollbar-color:rgba(23,79,115,.45) transparent;scrollbar-width:thin}.material-list-item{border-radius:4px;background:#fffaf094}.material-list-item:hover{border-color:#174f7361;background:var(--paper-light)}.modal-card{border-top:5px solid var(--vermilion);box-shadow:0 30px 90px #00000061}.modal-card h3,.modal-card h4{line-height:1.35}@media(min-width:1024px){.game-sidebar{max-height:var(--board-height, calc(100vh - 120px) );overflow-y:auto;padding-right:.2rem;scrollbar-width:thin}}@media(orientation:landscape)and (max-height:700px){.opening-page{padding-top:max(.75rem,env(safe-area-inset-top));padding-bottom:max(.75rem,env(safe-area-inset-bottom))}.title-stage{grid-template-columns:minmax(0,1.2fr) minmax(220px,.72fr);gap:clamp(.75rem,2vw,1.5rem);max-height:88dvh}.title-logo-image{width:100%;max-width:none;max-height:min(82dvh,320px)}.title-menu{width:100%;max-width:min(34vw,300px);gap:.45rem}.title-menu a{min-height:40px;padding:.55rem .75rem;font-size:clamp(.78rem,1.8vw,.95rem)}}@media(max-width:1180px)and (orientation:landscape){.game-setup-page{padding:1rem 1rem 1.25rem}#game{min-height:100dvh;padding-top:.75rem}.game-topbar{min-height:auto;padding-bottom:.55rem}.game-topbar .progress-panel{min-width:280px;padding-right:.85rem}.game-topbar h2{font-size:clamp(1.45rem,3.4vw,2rem)}.game-layout{grid-template-columns:minmax(0,1fr) minmax(240px,280px);gap:.7rem}.game-board{width:min(100%,calc((100vh - 120px) * 8162 / 5736))}.game-sidebar{max-height:calc(100vh - 126px);overflow-y:auto;padding-right:.15rem;scrollbar-width:thin}.game-sidebar>:not([hidden])~:not([hidden]){margin-top:.65rem}.game-sidebar .paper-card{padding:.85rem}.game-location-card h3{font-size:1.25rem}.dice-stage{width:92px;height:92px}.dice-cube{width:62px;height:62px}.dice-face-1{transform:translateZ(31px)}.dice-face-2{transform:rotateY(90deg) translateZ(31px)}.dice-face-3{transform:rotateX(90deg) translateZ(31px)}.dice-face-4{transform:rotateX(-90deg) translateZ(31px)}.dice-face-5{transform:rotateY(-90deg) translateZ(31px)}.dice-face-6{transform:rotateY(180deg) translateZ(31px)}}@media(max-width:760px){.btn-primary,.btn-secondary,.btn-ghost{width:100%}.title-stage{align-content:center;gap:1.25rem}.title-logo-image{max-height:48vh;max-width:min(92vw,520px)}.title-menu{max-width:min(92vw,360px)}.tile{gap:.1rem;padding:.2rem}.tile span:last-child{font-size:.68rem}.game-layout{grid-template-columns:1fr;gap:.75rem}.game-board{width:100%}#game{height:auto;min-height:100vh;min-height:100dvh;overflow:visible}#game .game-sidebar{height:auto;max-height:none;overflow:visible}#game aside{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}#game aside .paper-card{padding:.8rem}#game aside .player-status-list{grid-column:1 / -1}.progress-panel{padding-right:4rem}.player-count-grid{grid-template-columns:repeat(2,1fr)}.player-count-grid button{min-height:88px}.player-name-list label{grid-template-columns:16px 1fr}.player-name-list input{grid-column:1 / -1}.materials-hero{display:grid}.materials-filter-panel,.materials-layout{grid-template-columns:1fr}.materials-board{width:100%}.materials-list{position:static;height:auto;max-height:none;overflow:visible}.materials-list-scroll{flex:none;max-height:440px}}@media(max-width:760px)and (orientation:portrait){#game .game-sidebar{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);grid-template-rows:auto auto;gap:.55rem;align-items:stretch}#game .game-sidebar>:not([hidden])~:not([hidden]){margin-top:0!important}#game .game-sidebar .game-location-card{min-width:0;grid-column:1;grid-row:1;overflow:hidden;padding:.65rem}#game .game-location-card .current-turn-label{gap:.35rem;font-size:.72rem}#game .game-location-card h3{display:-webkit-box;margin-top:.35rem;overflow:hidden;font-size:1.05rem;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}#game .game-location-card>p:last-child{margin-top:.4rem;font-size:.72rem}#game .game-sidebar .game-control-card{display:grid;min-width:0;align-content:center;grid-column:2;grid-row:1;padding:.55rem}#game .game-sidebar .player-status-list{grid-column:1 / -1;grid-row:2}#game .game-control-card .dice-stage{width:76px;height:76px}#game .game-control-card .dice-stage:after{bottom:3px;width:46px;height:11px}#game .game-control-card .dice-cube{width:52px;height:52px}#game .game-control-card .dice-face{border-radius:10px}#game .game-control-card .dice-face-1{transform:translateZ(26px)}#game .game-control-card .dice-face-2{transform:rotateY(90deg) translateZ(26px)}#game .game-control-card .dice-face-3{transform:rotateX(90deg) translateZ(26px)}#game .game-control-card .dice-face-4{transform:rotateX(-90deg) translateZ(26px)}#game .game-control-card .dice-face-5{transform:rotateY(-90deg) translateZ(26px)}#game .game-control-card .dice-face-6{transform:rotateY(180deg) translateZ(26px)}#game .game-control-card .dice-dot{width:8px;height:8px}#game .game-control-card .dice-dot-2-1,#game .game-control-card .dice-dot-3-1,#game .game-control-card .dice-dot-4-1,#game .game-control-card .dice-dot-5-1,#game .game-control-card .dice-dot-6-1{left:10px;top:10px}#game .game-control-card .dice-dot-2-2,#game .game-control-card .dice-dot-3-3,#game .game-control-card .dice-dot-4-4,#game .game-control-card .dice-dot-5-5,#game .game-control-card .dice-dot-6-6{right:10px;bottom:10px}#game .game-control-card .dice-dot-4-2,#game .game-control-card .dice-dot-5-2,#game .game-control-card .dice-dot-6-2{right:10px;top:10px}#game .game-control-card .dice-dot-4-3,#game .game-control-card .dice-dot-5-4,#game .game-control-card .dice-dot-6-5{left:10px;bottom:10px}#game .game-control-card .dice-dot-6-3{left:10px}#game .game-control-card .dice-dot-6-4{right:10px}#game .game-control-card .dice-result{height:1.5rem;margin-block:.25rem;font-size:1.05rem;line-height:1.2}#game .game-control-card .btn-primary,#game .game-control-card .btn-secondary{min-height:36px;padding:.4rem .3rem;font-size:.7rem;line-height:1.25}#game .game-control-card .btn-secondary{margin-top:.4rem}}html.page-lock-opening,body.page-lock-opening{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body.page-lock-opening{position:fixed;top:0;right:0;bottom:0;left:0}html.page-lock-opening #root{width:100%;height:100%;overflow:hidden}@media(orientation:landscape){html.page-lock-game,body.page-lock-game{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body.page-lock-game{position:fixed;top:0;right:0;bottom:0;left:0}html.page-lock-game #root{width:100%;height:100%;overflow:hidden}}@media(min-width:900px)and (orientation:landscape){html.page-lock-howto,body.page-lock-howto,html.page-lock-materials,body.page-lock-materials,html.page-lock-source,body.page-lock-source{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body.page-lock-materials{position:fixed;top:0;right:0;bottom:0;left:0}html.page-lock-materials #root{width:100%;height:100%;overflow:hidden}}@media(min-width:1200px)and (orientation:landscape){.materials-inner .materials-layout{grid-template-columns:minmax(0,1fr) minmax(360px,400px)}}@media(orientation:landscape)and (max-width:1366px){.game-setup-page,#game{overscroll-behavior:none}}@media(min-width:900px)and (orientation:landscape){.howto-page{height:100vh;height:100dvh;min-height:0;overflow:hidden;padding:4.25rem 1rem .65rem}.howto-inner{display:grid;height:100%;grid-template-rows:auto minmax(0,1fr) auto auto;gap:.55rem}.howto-inner [data-reveal]{opacity:1!important;transform:none!important}.howto-header{grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr);gap:1rem;padding-bottom:.5rem}.howto-header h1{margin-top:.1rem;font-size:2.35rem}.howto-intro{font-size:1rem;line-height:1.55}.howto-content{min-height:0;margin-top:0;grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr);gap:1.5rem;align-items:stretch}.howto-steps{align-content:stretch;grid-template-columns:1fr;grid-template-rows:repeat(4,minmax(0,1fr))}.howto-steps:before{left:1rem;top:1.5rem;bottom:1.5rem}.howto-step{min-height:0;grid-template-columns:2.25rem minmax(0,1fr);gap:.75rem;align-items:center;padding-block:.5rem}.howto-step-number{width:2.25rem;height:2.25rem;font-size:1rem}.howto-step h2{font-size:1.05rem}.howto-step p{margin-top:.25rem;font-size:.85rem;line-height:1.5}.howto-preview{display:grid;width:min(100%,560px);max-height:min(55dvh,500px);align-self:center;justify-self:center;min-height:0;grid-template-rows:minmax(0,1fr) auto}.howto-preview-board{min-height:0;aspect-ratio:auto}.howto-preview-board img{-o-object-fit:contain;object-fit:contain}.howto-turn-flow{min-height:4.75rem;padding:.55rem .8rem}.howto-turn-flow>div{gap:.25rem}.howto-turn-flow>div>span{width:2.4rem;height:2.4rem;font-size:.8rem}.howto-turn-flow strong{font-size:.75rem}.howto-special-rules{margin-top:0;grid-template-columns:repeat(3,minmax(0,1fr))}.howto-special-rules article{grid-template-columns:2.5rem minmax(0,1fr);gap:.65rem;padding:.65rem .75rem}.howto-special-rules article+article{border-top:0;border-left:1px solid rgba(31,36,38,.18)}.howto-rule-mark{width:2.5rem;height:2.5rem;font-size:.78rem}.howto-special-rules h2{font-size:.88rem}.howto-special-rules p{margin-top:.2rem;font-size:.75rem;line-height:1.4}.howto-start{margin-top:0;gap:.75rem}.howto-start p{font-size:.85rem}.howto-start .btn-primary{min-height:40px;padding:.6rem 1rem;font-size:.85rem}.materials-page{height:100vh;height:100dvh;min-height:0;overflow:hidden;padding:.7rem 1rem}.materials-inner{display:grid;height:100%;grid-template-rows:auto auto minmax(0,1fr);gap:.55rem}.materials-inner [data-reveal]{opacity:1!important;transform:none!important}.materials-hero{min-height:0;align-items:center;padding-bottom:.4rem}.materials-hero>div{padding-left:.7rem}.materials-hero>div>p:first-child{margin-bottom:.1rem;font-size:.65rem}.materials-hero h1{font-size:2rem;line-height:1.05}.materials-hero>div>p:last-child{margin-top:.2rem;font-size:.78rem;line-height:1.35}.materials-hero .btn-secondary{width:auto;min-height:36px;margin-right:4rem;padding:.45rem .75rem;font-size:.75rem}.materials-filter-panel{margin-top:0;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;padding:.4rem .5rem}.materials-filter-panel label{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.55rem}.materials-filter-panel span{white-space:nowrap}.materials-filter-panel input,.materials-reset-button{min-height:36px}.materials-layout{height:100%;min-height:0;margin-top:0;grid-template-columns:minmax(0,1fr) minmax(270px,300px);align-items:center}.materials-board{width:min(100%,calc((100dvh - 160px) * 8162 / 5736));max-height:100%}.materials-list{height:var(--board-height, 100%);max-height:100%;overflow:hidden}}@media(min-height:701px)and (max-height:820px)and (orientation:landscape){.game-setup-page{height:100vh;height:100dvh;min-height:0;overflow:hidden;padding:.75rem 1rem}.game-setup-panel{max-height:100%;padding:1.5rem 2.25rem}.game-setup-panel .exact-goal-option{margin-top:.75rem}.game-setup-panel>.mt-7{margin-top:1.25rem}.game-setup-panel>.btn-secondary{margin-top:.75rem}#game .game-sidebar{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:.45rem;overflow:hidden;padding-right:0}#game .game-sidebar>:not([hidden])~:not([hidden]){margin-top:0}#game .game-sidebar .paper-card{padding:.6rem}#game .game-location-card h3{font-size:1.05rem}#game .player-status-list{align-content:center;gap:.2rem;overflow:hidden}#game .player-status-list>div{gap:.35rem;padding:.25rem .4rem}#game .player-status-list strong{font-size:.76rem}#game .player-status-list small{font-size:.68rem}#game .game-control-card{display:grid;min-height:0;align-content:center}#game .game-control-card .dice-stage{width:62px;height:62px}#game .game-control-card .dice-cube{width:44px;height:44px}#game .game-control-card .dice-face-1{transform:translateZ(22px)}#game .game-control-card .dice-face-2{transform:rotateY(90deg) translateZ(22px)}#game .game-control-card .dice-face-3{transform:rotateX(90deg) translateZ(22px)}#game .game-control-card .dice-face-4{transform:rotateX(-90deg) translateZ(22px)}#game .game-control-card .dice-face-5{transform:rotateY(-90deg) translateZ(22px)}#game .game-control-card .dice-face-6{transform:rotateY(180deg) translateZ(22px)}#game .game-control-card .dice-result{height:2rem;margin-block:.3rem;font-size:1.8rem;line-height:1}#game .game-control-card .btn-primary,#game .game-control-card .btn-secondary{min-height:34px;padding-block:.4rem;font-size:.78rem}#game .game-control-card .btn-secondary{margin-top:.4rem}}@media(max-width:1024px)and (orientation:portrait){.game-setup-page{align-content:center;padding-top:4.75rem}}@media(max-height:700px)and (orientation:landscape){.game-setup-page{height:100vh;height:100dvh;min-height:0;overflow:hidden;padding:.4rem 3.5rem .4rem .5rem}.game-setup-panel{width:min(620px,100%);max-height:100%;padding:.65rem 1rem}.game-setup-panel .text-center>p:first-child{font-size:.65rem;line-height:1}.game-setup-panel .text-center h1{margin-top:.15rem;font-size:1.65rem;line-height:1.15}.game-setup-panel .text-center>p:last-child{margin-top:.2rem;font-size:.72rem;line-height:1.25}.game-setup-panel>.mt-8,.game-setup-panel>.mt-7{margin-top:.55rem}.game-setup-panel .exact-goal-option{margin-top:.4rem;gap:.5rem;padding:.3rem .5rem}.game-setup-panel .exact-goal-option strong{font-size:.78rem}.game-setup-panel .exact-goal-option>div span{font-size:.62rem}.game-setup-panel .exact-goal-switch{width:2.3rem;height:1.25rem}.game-setup-panel .exact-goal-switch i{width:.91rem;height:.91rem;left:.17rem;top:.17rem}.game-setup-panel .exact-goal-option>input:checked+.exact-goal-switch i{transform:translate(1.05rem)}.game-setup-panel h2{font-size:.95rem;line-height:1.2}.game-setup-panel .player-count-grid{grid-template-columns:repeat(4,1fr);gap:.45rem;margin-top:.45rem}.game-setup-panel .player-count-grid button{min-height:58px}.game-setup-panel .player-count-grid strong{font-size:1.45rem;line-height:1}.game-setup-panel .player-count-grid span{font-size:.68rem}.game-setup-panel .player-name-list{gap:.2rem;margin-top:.4rem}.game-setup-panel .player-name-list label{grid-template-columns:12px 78px minmax(0,1fr);gap:.4rem;padding:.2rem .45rem}.game-setup-panel .player-name-list input{min-height:28px;grid-column:auto;padding-inline:.55rem;font-size:.72rem}.game-setup-panel .player-name-list label>strong,.game-setup-panel .setup-back-button{font-size:.68rem}.game-setup-panel>div>.btn-primary,.game-setup-panel>.btn-secondary{min-height:34px;padding:.4rem .7rem;font-size:.72rem}.game-setup-panel>div>.btn-primary{margin-top:.45rem}.game-setup-panel>.btn-secondary{margin-top:.4rem}#game{height:100vh;height:100dvh;min-height:0;padding:.35rem .5rem max(.5rem,env(safe-area-inset-bottom))}#game>div{height:100%}.game-topbar{flex-direction:row;align-items:flex-end;justify-content:space-between;min-height:52px;margin-bottom:.35rem;padding:0 3.75rem .35rem 0;gap:.5rem}.game-topbar>div:first-child p{display:none}.game-topbar h2{font-size:1.45rem;line-height:1.1}.game-topbar .progress-panel{min-width:190px;padding:.35rem .5rem}.game-topbar .progress-panel>div:first-child{margin-bottom:.25rem;font-size:.72rem}.game-topbar .progress-panel>div:last-child{height:.42rem}.game-layout{height:calc(100dvh - 76px - env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr) minmax(280px,42vw);gap:.45rem;align-items:center}.game-board{width:min(100%,calc((100dvh - 80px - env(safe-area-inset-bottom)) * 8162 / 5736));max-height:calc(100dvh - 80px - env(safe-area-inset-bottom))}.game-sidebar{display:grid;height:var(--board-height, calc(100dvh - 64px) );max-height:var(--board-height, calc(100dvh - 64px) );grid-template-columns:minmax(105px,.8fr) minmax(155px,1.2fr);grid-template-rows:auto 1fr;gap:.4rem;overflow:hidden;padding-right:0}.game-sidebar>*{min-width:0;margin-top:0!important}.game-location-card{grid-column:1;grid-row:1}.game-sidebar .game-location-card.paper-card{padding:.5rem}.game-location-card .current-turn-label{gap:.3rem;font-size:.68rem}.game-location-card .current-turn-label span{width:8px;height:8px}.game-location-card h3{margin-top:.2rem;font-size:clamp(.8rem,2.2vw,1rem);line-height:1.2}.game-location-card>p:last-child{display:none}.game-sidebar .player-status-list{align-content:start;grid-column:1;grid-row:2;gap:.18rem;overflow:hidden}.game-sidebar .player-status-list.paper-card{padding:.35rem}.player-status-list>div{min-height:0;grid-template-columns:8px minmax(0,1fr);gap:.1rem .3rem;padding:.25rem .3rem}.player-status-list>div>span{width:8px;height:8px}.player-status-list strong{overflow:hidden;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.player-status-list small{grid-column:2;font-size:.62rem}.game-control-card{display:grid;min-height:0;align-content:center;grid-column:2;grid-row:1 / 3}.game-sidebar .game-control-card.paper-card{padding:.45rem}.game-control-card .dice-stage{width:62px;height:62px}.game-control-card .dice-stage:after{bottom:3px;width:42px;height:10px}.game-control-card .dice-cube{width:44px;height:44px}.game-control-card .dice-face{border-radius:9px}.game-control-card .dice-face-1{transform:translateZ(22px)}.game-control-card .dice-face-2{transform:rotateY(90deg) translateZ(22px)}.game-control-card .dice-face-3{transform:rotateX(90deg) translateZ(22px)}.game-control-card .dice-face-4{transform:rotateX(-90deg) translateZ(22px)}.game-control-card .dice-face-5{transform:rotateY(-90deg) translateZ(22px)}.game-control-card .dice-face-6{transform:rotateY(180deg) translateZ(22px)}.game-control-card .dice-dot{width:7px;height:7px}.game-control-card .dice-dot-2-1,.game-control-card .dice-dot-3-1,.game-control-card .dice-dot-4-1,.game-control-card .dice-dot-5-1,.game-control-card .dice-dot-6-1{left:8px;top:8px}.game-control-card .dice-dot-2-2,.game-control-card .dice-dot-3-3,.game-control-card .dice-dot-4-4,.game-control-card .dice-dot-5-5,.game-control-card .dice-dot-6-6{right:8px;bottom:8px}.game-control-card .dice-dot-4-2,.game-control-card .dice-dot-5-2,.game-control-card .dice-dot-6-2{right:8px;top:8px}.game-control-card .dice-dot-4-3,.game-control-card .dice-dot-5-4,.game-control-card .dice-dot-6-5{left:8px;bottom:8px}.game-control-card .dice-dot-6-3{left:8px}.game-control-card .dice-dot-6-4{right:8px}.game-control-card .dice-result{height:1.65rem;margin-block:.2rem;font-size:1.35rem;line-height:1.15}.game-control-card .btn-primary,.game-control-card .btn-secondary{min-height:36px;padding:.45rem .35rem;font-size:.68rem;line-height:1.2}.game-control-card .btn-secondary{margin-top:.35rem}.modal-backdrop{overflow:hidden;padding:.4rem}.modal-card{max-height:calc(100dvh - .8rem);padding:.75rem}.modal-actions{margin-top:.45rem;padding-top:.45rem}}@media(max-height:700px)and (max-width:899px)and (orientation:landscape){.howto-page,.research-group-page{height:auto;min-height:100vh;min-height:100dvh;overflow:visible;padding:4.5rem .75rem 1.5rem}.howto-header{gap:.75rem;padding-bottom:.75rem}.howto-header h1,.research-group-copy h1{font-size:2rem}.howto-intro{font-size:.9rem;line-height:1.5}.howto-content{margin-top:1rem;gap:1rem}.howto-step{min-height:0;padding-block:.6rem}.howto-special-rules,.howto-start{margin-top:1rem}.research-group-inner{gap:1.5rem}.research-group-copy h1{margin-top:.35rem}.research-group-lead{margin-top:.8rem;font-size:1rem;line-height:1.55}.research-group-description{margin-top:.8rem;font-size:.84rem;line-height:1.65}.research-group-site-link{min-height:2.75rem;margin-top:1rem}.research-group-social{padding-top:1.25rem}.menu-panel{max-height:calc(100dvh - 5rem);overflow-y:auto;overscroll-behavior:contain}.game-tile-modal{width:min(860px,100%);padding:.55rem}.game-tile-modal .modal-scroll-area{overflow-y:auto}.game-tile-modal-content{display:grid;grid-template-columns:minmax(140px,.62fr) minmax(0,1.38fr);gap:.75rem;align-items:start}.game-tile-modal .tile-image-frame{height:min(42dvh,180px)}.game-tile-modal .tile-image-frame img{height:100%;max-height:none}.game-tile-modal-copy>p:first-child{font-size:.7rem}.game-tile-modal-copy h3{margin-top:.2rem;font-size:1.35rem;line-height:1.2}.game-tile-modal-summary{margin-top:.45rem;padding:.55rem}.game-tile-modal-summary>p:first-child{font-size:.68rem}.game-tile-modal-summary>p:last-child{margin-top:.2rem;font-size:.75rem;line-height:1.45}.game-tile-modal .modal-actions{justify-content:flex-end}.game-tile-modal .modal-actions .btn-primary{width:min(180px,100%);min-height:34px;padding:.4rem .75rem;font-size:.75rem}}@media(max-width:1024px)and (max-height:500px)and (orientation:landscape){.game-setup-panel .player-name-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem}.game-setup-panel .player-name-list label{grid-template-columns:10px 68px minmax(0,1fr);gap:.3rem;padding:.2rem .35rem}.game-setup-panel .player-name-list input{min-height:28px;grid-column:auto;padding-inline:.45rem}#game{height:100svh;max-height:100svh;padding:.25rem .4rem max(.4rem,env(safe-area-inset-bottom))}html.page-lock-game,body.page-lock-game,html.page-lock-game #root{height:100svh;max-height:100svh}.game-topbar{display:none}.game-layout{height:calc(100svh - .65rem - env(safe-area-inset-bottom));grid-template-columns:minmax(0,min(calc((100svh - .9rem - env(safe-area-inset-bottom)) * 8162 / 5736),calc(100vw - clamp(160px,25vw,230px) - 1.5rem))) clamp(160px,25vw,230px);gap:.35rem;justify-content:center}.game-board{width:min(100%,calc((100svh - .9rem - env(safe-area-inset-bottom)) * 8162 / 5736));max-height:calc(100svh - .9rem - env(safe-area-inset-bottom))}#game .game-sidebar{height:var(--board-height, calc(100svh - .9rem) );max-height:var(--board-height, calc(100svh - .9rem) );grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:.3rem;overflow:hidden;padding-top:2.7rem}#game .game-sidebar .game-location-card{grid-column:1;grid-row:1;height:50px;min-height:50px;overflow:hidden}#game .game-sidebar .player-status-list{display:none}#game .game-sidebar .game-control-card{grid-column:1;grid-row:2;overflow:hidden}#game .game-sidebar .game-location-card.paper-card,#game .game-sidebar .game-control-card.paper-card{padding:.4rem}.game-location-card .current-turn-label{font-size:.62rem}.game-location-card .current-turn-label p,.game-location-card h3{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-location-card h3{font-size:clamp(.72rem,2vw,.9rem)}.game-control-card .dice-stage{width:54px;height:54px}.game-control-card .dice-result{height:1.25rem;margin-block:.1rem;font-size:1.05rem}.game-control-card .btn-primary,.game-control-card .btn-secondary{min-height:32px;padding:.35rem .3rem;font-size:.64rem}html.page-lock-game header .menu-button{top:.35rem;right:.35rem;width:38px;height:38px}.clear-modal-card{width:min(900px,100%);padding:.55rem}.clear-modal-scroll{display:grid;min-height:0;grid-template-columns:minmax(180px,.62fr) minmax(0,1.38fr);gap:.55rem;overflow:hidden;padding-right:0}.clear-modal-hero{min-width:0;align-content:center;border:1px solid rgba(31,36,38,.12);border-left:4px solid var(--gold);background:#fffaf066;padding:.5rem}.clear-modal-copy>p:first-child{font-size:.62rem}.clear-modal-copy h3{margin-top:.1rem;font-size:1.65rem;line-height:1.1}.clear-modal-copy h3+p{margin-top:.3rem;overflow:hidden;font-size:.9rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.clear-modal-copy h3+p+p{margin-top:.25rem;font-size:.68rem;line-height:1.35}.clear-modal-copy>p:last-child{margin-top:.25rem;font-size:.65rem}.clear-modal-final{min-height:0;margin-top:0;overflow-y:auto;padding:.5rem}.clear-modal-final>.grid{grid-template-columns:108px minmax(0,1fr);gap:.55rem}.clear-modal-final .tile-image-frame{width:108px}.clear-modal-final .tile-image-frame img{max-height:76px}.clear-modal-final h4{margin-top:.15rem;font-size:1.05rem;line-height:1.25}.clear-modal-final>.mt-4{margin-top:.4rem}.clear-modal-final>.mt-4>div{padding:.45rem}.clear-modal-final>.mt-4 p:first-child{font-size:.62rem}.clear-modal-final>.mt-4 p:last-child{margin-top:.15rem;font-size:.68rem;line-height:1.4}.clear-modal-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.clear-modal-actions .btn-primary,.clear-modal-actions .btn-secondary{width:100%;min-height:34px;padding:.4rem .45rem;font-size:.68rem;line-height:1.2}}@media(max-height:430px)and (orientation:landscape){.game-setup-page{padding:.2rem 3.5rem .2rem .5rem}.game-setup-panel{padding:.45rem 1rem}.game-setup-panel .text-center>p:last-child,.game-setup-panel .exact-goal-option>div span{display:none}}@media(max-height:360px)and (orientation:landscape){.game-setup-panel .text-center>p:first-child,.game-setup-panel>.btn-secondary{display:none}}@media(max-width:760px),(max-width:1024px)and (max-height:500px)and (orientation:landscape){#game .board-cell{font-size:.52rem}#game .board-cell span{left:.18rem;top:.18rem;min-width:1.9em;height:1.9em;border-width:1.5px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}:root{--color-bg: #eee2c3;--color-surface: #fffaf0;--color-surface-muted: #f4ead0;--color-text: #202625;--color-text-muted: #555b58;--color-border: #827b6b;--color-border-soft: rgba(32, 38, 37, .22);--color-primary: #963c28;--color-primary-hover: #782c1d;--color-primary-active: #5f2116;--color-focus: #005ea8;--color-info: #174f73;--radius-control: 8px;--radius-panel: 12px;--shadow-panel: 0 18px 48px rgba(32, 38, 37, .16);color:var(--color-text);background:var(--color-bg);font-size:100%;line-height:1.6}body{color:var(--color-text);background-color:var(--color-bg);font-size:1rem;text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px;box-shadow:0 0 0 2px var(--color-surface)}.skip-link{position:fixed;left:1rem;top:.75rem;z-index:100;min-height:44px;transform:translateY(-160%);border:2px solid var(--color-text);border-radius:var(--radius-control);background:var(--color-surface);padding:.55rem 1rem;color:var(--color-text);font-weight:800;text-decoration:none}.skip-link:focus{transform:translateY(0)}.btn-primary,.btn-secondary,.btn-ghost,.title-button-primary,.title-button-secondary{min-height:48px;border-radius:var(--radius-control);padding:.75rem 1.15rem;font-size:1rem;font-weight:800;line-height:1.4;transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .14s ease,box-shadow .14s ease}.btn-primary{border:2px solid var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 8px 22px #782c1d33}.btn-primary:hover{border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.btn-primary:active{transform:translateY(1px);border-color:var(--color-primary-active);background:var(--color-primary-active);box-shadow:none}.btn-secondary{border:2px solid #625f57;background:#fffaf0f0;color:var(--color-text);box-shadow:none}.btn-secondary:hover{border-color:var(--color-text);background:#fff}.btn-ghost{color:#124f79;text-underline-offset:.3em}button:disabled,.btn-primary:disabled,.btn-secondary:disabled{transform:none!important;border-color:#aaa599!important;background:#ded9cc!important;color:#66645e!important;box-shadow:none!important;opacity:1!important}.menu-button{width:auto;min-width:108px;height:48px;flex-direction:row;gap:.55rem;border:2px solid rgba(32,38,37,.58);border-radius:var(--radius-control);background:#fffaf0f5;padding:0 .8rem;color:var(--color-text);box-shadow:0 6px 20px #20262524;cursor:pointer}.menu-button:hover{background:#fff}.menu-button>.menu-button-icon{display:grid;width:20px;height:16px;flex:0 0 20px;align-content:space-between;border-radius:0;background:transparent}.menu-button-icon i{display:block;width:20px;height:2px;border-radius:2px;background:currentColor}.menu-button>.menu-button-label{display:inline;width:auto;height:auto;border-radius:0;background:transparent;font-size:.875rem;font-weight:800;line-height:1}.menu-panel{position:fixed;right:max(.75rem,env(safe-area-inset-right));top:calc(max(.75rem,env(safe-area-inset-top)) + 3.6rem);width:min(300px,calc(100vw - 1.5rem));gap:.35rem;border:1px solid var(--color-border-soft);border-top:4px solid var(--color-primary);border-radius:var(--radius-panel);background:#fffaf0fa;padding:.65rem;box-shadow:var(--shadow-panel)}.nav-link{min-height:48px;justify-content:flex-start;border:0;border-left:4px solid transparent;border-radius:6px;background:transparent;padding:.65rem .85rem;color:var(--color-text);font-size:1rem}.nav-link:hover{transform:none;background:#f0e5ca}.nav-link-active{border-left-color:var(--color-primary);background:#f0e5ca;color:#6f291c}.nav-link-review{border-top:1px solid var(--color-border-soft);color:#124f79}.external-mark{margin-left:auto;font-size:.9em}.paper-card,.game-setup-panel,.materials-filter-panel,.modal-card{border-color:var(--color-border-soft);border-radius:var(--radius-panel);background-color:#fffaf0f5}.opening-page:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(90deg,rgba(26,20,13,.14),transparent 48%,rgba(26,20,13,.22));pointer-events:none}.title-stage,.title-copyright{z-index:1}.title-menu{gap:.55rem;border:1px solid rgba(255,250,240,.54);border-top:4px solid #c8a14f;border-radius:var(--radius-panel);background:#221912ad;padding:1rem;box-shadow:0 18px 46px #160f0a4d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.title-context{margin-bottom:.25rem;color:#fff;font-size:.875rem;font-weight:800;line-height:1.65;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.7)}.title-button-primary{border:2px solid #f5d58e;background:#f3cf7c;color:#4b130d;box-shadow:none}.title-button-primary:hover{background:#ffe2a4}.title-button-secondary{border:2px solid rgba(255,250,240,.82);background:#fffaf0f5;color:#341a14;box-shadow:none}.title-button-secondary:hover{background:#fff}.title-review-link{border-color:#c8dfea;color:#124f79}.game-setup-panel{border-top:6px solid var(--color-primary);box-shadow:var(--shadow-panel)}.game-setup-panel h1{font-size:clamp(2rem,7vw,3rem);line-height:1.25;text-wrap:balance}.game-setup-panel .text-sumi\/65,.materials-page .text-sumi\/72{color:var(--color-text-muted)}.setup-steps{display:grid;margin-top:1.25rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;list-style:none}.setup-steps li{display:flex;min-width:0;align-items:center;gap:.35rem;border-bottom:3px solid #b9b3a6;padding:.35rem .2rem .5rem;color:var(--color-text-muted);font-size:.875rem;font-weight:800}.setup-steps li[data-active=true]{border-bottom-color:var(--color-primary);color:#6f291c}.setup-steps li span{display:grid;width:1.5rem;height:1.5rem;flex:0 0 1.5rem;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:.75rem}.exact-goal-option{min-height:76px;border:1px solid var(--color-border-soft);border-radius:var(--radius-control);background:#ffffff75;padding:.75rem}.exact-goal-option>div span{color:var(--color-text-muted);font-size:.875rem;line-height:1.55}.exact-goal-switch{width:3rem;height:1.75rem;border:2px solid #77736a;background:#d0cbc0}.exact-goal-switch i{left:.18rem;top:.18rem;width:1.15rem;height:1.15rem}.exact-goal-option>input:checked+.exact-goal-switch{border-color:var(--color-primary);background:var(--color-primary)}.exact-goal-option>input:focus-visible+.exact-goal-switch{box-shadow:0 0 0 3px var(--color-surface),0 0 0 6px var(--color-focus)}.player-count-grid button{min-height:96px;border:2px solid #77736a;border-radius:var(--radius-control);background:#fffaf0f5;cursor:pointer}.player-count-grid button:hover{transform:none;border-color:var(--color-primary);background:#fff}.setup-back-button{min-height:44px;color:#124f79;font-size:.875rem;text-underline-offset:.25em}.player-name-list label{border-color:var(--color-border-soft);background:#ffffff70}.player-name-list input{min-height:48px;border:2px solid #77736a;background:#fff;font-size:1rem}.game-layout{grid-template-columns:minmax(0,1fr) 300px;grid-template-areas:"board sidebar";gap:1rem}.game-layout>.game-board{grid-area:board}.game-layout>.game-sidebar{grid-area:sidebar}.game-topbar{min-height:88px;align-items:end;padding-right:8rem}.game-topbar h1{line-height:1.25;text-wrap:balance}.game-progress{display:grid;width:min(290px,100%);grid-template-columns:minmax(0,1fr) auto;gap:.15rem .75rem;align-items:baseline;border-left:4px solid var(--color-info);background:#fffaf0c7;padding:.55rem .75rem}.game-progress>span{overflow:hidden;color:var(--color-text-muted);font-size:.875rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.game-progress>strong{color:var(--color-info);font-size:1.25rem;line-height:1}.game-progress small{color:var(--color-text-muted);font-size:.75rem}.game-progress progress{width:100%;height:.45rem;grid-column:1 / -1;overflow:hidden;border:0;border-radius:999px;background:#d7d1c3;accent-color:var(--color-info)}.game-progress progress::-webkit-progress-bar{background:#d7d1c3}.game-progress progress::-webkit-progress-value{background:var(--color-info)}.game-location-card,.player-status-list,.game-control-card{background:#fffaf0f5}.game-location-card{border-left-color:var(--color-primary)}.current-turn-label{color:#6f291c;font-size:1rem}.player-status-list>div{min-height:44px}.player-status-list strong{font-size:.875rem}.player-status-list small{color:var(--color-text-muted);font-size:.75rem}.player-status-active{background:#fff;box-shadow:inset 4px 0 0 var(--color-primary),inset 0 0 0 1px var(--color-border-soft)}.game-action-label{margin-bottom:.1rem;color:var(--color-text-muted);font-size:.75rem;font-weight:800;letter-spacing:.08em}.game-action-help{margin-top:.55rem;color:var(--color-text-muted);font-size:.75rem;font-weight:700;line-height:1.55}.game-control-card .btn-primary,.game-control-card .btn-secondary{min-height:48px;padding:.65rem .75rem;font-size:.9375rem}.game-board{background-color:var(--color-surface)}.board-cell:focus-visible{z-index:5;outline:3px solid var(--color-focus);outline-offset:-3px;box-shadow:inset 0 0 0 3px #fff}.materials-filter-panel input,.materials-filter-panel select{min-height:48px;border:2px solid #77736a;background:#fff;font-size:1rem}.materials-reset-button,.material-list-item,.tile-image-frame,.image-zoom-controls button,.image-zoom-close{min-height:44px}.materials-reset-button{border:2px solid #625f57;color:var(--color-text)}.modal-backdrop{background:#0a0e0fc2}.modal-card{border-top:6px solid var(--color-primary);background:var(--color-surface-muted);box-shadow:0 28px 80px #00000070}.modal-card:focus{outline:none}.modal-actions{border-top-color:var(--color-border-soft);background:var(--color-surface-muted)}.empty-history{border:1px solid var(--color-border-soft);background:#ffffff7a;padding:1rem;color:var(--color-text-muted);line-height:1.75}.clear-modal-actions .btn-primary{order:3}@media(max-width:760px){.opening-page{padding-inline:.75rem}.title-stage{gap:.75rem}.title-logo-image{max-height:35vh}.title-menu{width:min(100%,360px);gap:.4rem;padding:.75rem}.title-context{font-size:.8125rem}.title-button-primary,.title-button-secondary{min-height:48px;padding-block:.6rem;font-size:.9375rem!important}.game-setup-page{align-content:start;overflow-y:auto;padding:4.75rem .75rem 1rem}.game-setup-panel{padding:1.1rem}.game-setup-panel h1{font-size:clamp(2rem,10vw,2.6rem)}.game-setup-panel>.mt-7>.flex{align-items:flex-start;flex-direction:column;gap:.15rem}.game-setup-panel>.mt-7>.flex h2{font-size:1.125rem}.game-setup-panel>.mt-7>.flex .setup-back-button{align-self:flex-end}.setup-steps{margin-top:.9rem}.exact-goal-option{grid-template-columns:minmax(0,1fr) auto}.exact-goal-option>b{grid-column:2}.player-count-grid button{min-height:84px}#game{padding-top:.75rem}.game-topbar{min-height:0;padding:0 7.25rem .65rem 0}.game-topbar>div:first-child p{margin-bottom:.2rem;font-size:.6875rem}.game-topbar h1{font-size:1.55rem}.game-progress{width:100%;grid-column:1 / -1;padding:.45rem .65rem}.game-layout{grid-template-columns:1fr;grid-template-areas:"sidebar" "board"}#game .game-sidebar{order:0}#game .game-sidebar .game-control-card .btn-primary,#game .game-sidebar .game-control-card .btn-secondary{min-height:44px;padding:.55rem .45rem;font-size:.8125rem}#game .game-sidebar .player-status-list>div{min-height:40px}#game .game-sidebar .player-status-list{grid-column:1;grid-row:2}#game .game-sidebar .player-status-list>div{grid-template-columns:10px minmax(0,1fr);gap:.2rem .4rem}#game .game-sidebar .player-status-list small{grid-column:2}#game .game-sidebar .game-control-card{grid-column:2;grid-row:1 / span 2}.materials-list{order:-1}.modal-backdrop{align-items:end;padding:0}.modal-card{width:100%;max-height:92dvh;border-radius:var(--radius-panel) var(--radius-panel) 0 0;padding:1rem}.modal-actions{display:grid;grid-template-columns:1fr;gap:.5rem}.modal-actions .btn-primary,.modal-actions .btn-secondary{width:100%;min-height:48px}.clear-modal-actions .btn-primary{order:-1}}@media(max-width:380px){.menu-button{min-width:48px;padding-inline:.75rem}.menu-button-label{position:absolute;width:1px!important;height:1px!important;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.game-topbar{padding-right:3.75rem}.setup-steps li{gap:.2rem;font-size:.75rem}}@media(max-width:1023px){.title-stage{align-content:center;gap:1rem}.title-logo-image{max-height:min(36vh,360px)}.title-menu{max-width:min(92vw,380px)}}@media(forced-colors:active){.btn-primary,.nav-link-active,.player-status-active,.rest-tile-label,.board-cell span{border:2px solid ButtonText}.game-progress progress{border:1px solid CanvasText}}.materials-layout{grid-template-columns:minmax(0,1fr) clamp(340px,29vw,400px)}.materials-list{min-width:0;padding:0}.materials-list-heading{display:flex;flex:none;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(31,36,38,.14);padding:1rem 1rem .85rem}.materials-list-heading h2{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(1.45rem,2vw,1.8rem);font-weight:900;line-height:1.2}.materials-list-heading>span{flex:none;border-radius:999px;background:#a9432b1a;padding:.32rem .65rem;color:#873522;font-size:.82rem;font-weight:900}.materials-list-scroll{align-content:start;grid-auto-rows:minmax(88px,auto);gap:0;overflow-x:hidden;padding:.45rem}.material-list-item{display:grid;min-width:0;min-height:88px;grid-template-columns:76px minmax(0,1fr) 1.25rem;gap:.75rem;align-items:center;border:0;border-bottom:1px solid rgba(31,36,38,.12);border-radius:3px;background:transparent;padding:.6rem;overflow:hidden}.material-list-thumb{display:block;width:76px;height:62px;overflow:hidden;border:1px solid rgba(31,36,38,.2);border-radius:3px;background:#e6d4ad}.material-list-thumb img{display:block;width:100%;height:100%;border:0;border-radius:0;-o-object-fit:cover;object-fit:cover}.material-list-copy{display:grid;min-width:0;gap:.18rem;color:inherit}.material-list-copy .material-list-meta{color:#174f73;font-size:.76rem;font-weight:900;line-height:1.35}.material-list-copy strong{display:-webkit-box;min-width:0;max-width:100%;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1rem;font-weight:900;line-height:1.5;overflow-wrap:anywhere}.material-list-copy strong ruby{max-width:100%}.material-list-copy small{display:block;min-width:0;overflow:hidden;color:#1f24269e;font-size:.72rem;font-weight:750;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.material-list-arrow{color:#913b29;font-size:1.45rem;font-weight:900;line-height:1}.material-list-item:hover{transform:none;border-bottom-color:#174f7352;background:#fffdf5c7}.material-list-item:focus-visible{position:relative;z-index:1}@media(max-width:1023px){.materials-layout{grid-template-columns:1fr}.materials-list-scroll{max-height:min(54vh,540px)}}@media(max-width:520px){.materials-list-heading{padding-inline:.85rem}.materials-list-scroll{padding:.25rem .35rem}.material-list-item{grid-template-columns:68px minmax(0,1fr) 1rem;gap:.65rem;padding-inline:.45rem}.material-list-thumb{width:68px;height:58px}}.howto-page{height:auto;min-height:100dvh;overflow:visible;background-color:#efe1bf;background-image:linear-gradient(rgba(31,36,38,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(31,36,38,.025) 1px,transparent 1px);background-size:34px 34px}.howto-inner{display:block;height:auto}.howto-header{align-items:center;border:1px solid rgba(31,36,38,.14);border-top:5px solid #913b29;border-radius:6px;background:#fffcf2d1;padding:clamp(1.25rem,3vw,2rem);box-shadow:0 12px 30px #1f242614}.howto-header h1{font-size:clamp(2.65rem,6vw,4.75rem)}.howto-content{grid-template-columns:minmax(340px,.92fr) minmax(0,1.08fr);gap:clamp(1rem,3vw,2rem);align-items:stretch}.howto-steps-panel,.howto-preview,.howto-rules{min-width:0;border:1px solid rgba(31,36,38,.16);border-radius:6px;box-shadow:0 12px 30px #1f242617}.howto-steps-panel,.howto-rules{background:#fffcf2d6}.howto-section-heading,.howto-preview-heading{display:flex;align-items:center;gap:.75rem;border-bottom:1px solid rgba(31,36,38,.14);padding:.85rem 1rem}.howto-section-heading>span,.howto-preview-heading>span{display:grid;width:2rem;height:2rem;flex:none;place-items:center;border-radius:50%;background:#913b29;color:#fffdf5;font-size:.72rem;font-weight:900}.howto-section-heading h2,.howto-preview-heading h2{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.15rem;font-weight:900;letter-spacing:0}.howto-steps{padding:.65rem 1rem}.howto-steps:before{left:2.4rem;top:2.6rem;bottom:2.6rem}.howto-step{min-height:6.5rem;gap:.9rem;padding-block:.85rem}.howto-step-number{background:#fffaf0}.howto-step h3,.howto-special-rules h3{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.08rem;font-weight:900;line-height:1.5;letter-spacing:0}.howto-step p{color:#1f2426c2;font-size:.94rem;line-height:1.75}.howto-preview{display:grid;max-height:none;align-self:stretch;grid-template-rows:auto minmax(0,1fr) auto;background:#202526}.howto-preview-heading{border-bottom-color:#fffdf529;background:#202526;color:#fffdf5}.howto-preview-heading>span{background:#b99045;color:#202526}.howto-preview-board{aspect-ratio:8162 / 5736}.howto-turn-flow{min-height:7rem}.howto-rules{margin-top:1.25rem;overflow:hidden}.howto-special-rules{margin-top:0;border:0}.howto-special-rules article{min-width:0;align-items:start;padding:1.25rem}.howto-special-rules p{color:#1f2426b8;font-size:.86rem;line-height:1.7}.howto-start{justify-content:space-between;border:1px solid rgba(31,36,38,.14);border-radius:6px;background:#fffcf2b3;padding:1rem 1.15rem}.research-group-inner{gap:clamp(1.25rem,3vw,2rem)}.research-group-copy,.research-group-social{min-width:0;border:1px solid rgba(31,36,38,.15);border-radius:6px;background:#fffcf2d6;box-shadow:0 12px 30px #1f242617}.research-group-copy{overflow:hidden}.research-group-header{border-top:5px solid #913b29;padding:clamp(1.25rem,3vw,2rem)}.research-group-copy h1{font-size:clamp(2.25rem,4.8vw,4.25rem)}.research-group-lead{max-width:36em;font-size:clamp(1.08rem,1.8vw,1.35rem)}.research-group-about{border-top:1px solid rgba(31,36,38,.14);padding:clamp(1.25rem,3vw,2rem);color:#1f2426c2;font-size:1rem;font-weight:600;line-height:1.9}.research-group-about h2{margin-top:1.5rem;font-family:Yu Mincho,Hiragino Mincho ProN,serif;color:#1f2426;font-size:1.25rem;font-weight:900}.research-group-activities{display:grid;margin-top:.75rem;gap:.55rem;list-style:none}.research-group-activities li{position:relative;border-radius:4px;background:#174f7312;padding:.7rem .85rem .7rem 2.2rem;color:#273235;font-weight:800;line-height:1.55}.research-group-activities li:before{content:"✓";position:absolute;left:.85rem;color:#174f73;font-weight:900}.research-group-site-link{min-height:48px;margin-top:1.5rem}.research-group-social{border-left:1px solid rgba(31,36,38,.15);border-top:5px solid #174f73;padding:clamp(1.25rem,3vw,1.75rem)}.research-group-social-heading>span{font-size:.92rem}.research-group-qr{min-height:132px;background:#fffdf7}@media(min-width:900px)and (orientation:landscape){.howto-page{height:auto;min-height:100dvh;overflow:visible;padding:5.5rem 1.25rem 3rem}.howto-inner{display:block;height:auto}.howto-header{padding:1.25rem 1.5rem}.howto-header h1{font-size:clamp(2.65rem,4vw,4rem)}.howto-content{margin-top:1.25rem;grid-template-columns:minmax(360px,.92fr) minmax(0,1.08fr);gap:1.25rem}.howto-steps{display:grid;align-content:start;grid-template-columns:1fr;grid-template-rows:none}.howto-step{min-height:6.25rem;grid-template-columns:2.6rem minmax(0,1fr);gap:.85rem;padding-block:.75rem}.howto-step-number{width:2.6rem;height:2.6rem;font-size:1.05rem}.howto-step h3{font-size:1.05rem}.howto-step p{font-size:.9rem;line-height:1.65}.howto-preview{display:grid;width:100%;max-height:none;align-self:stretch;grid-template-rows:auto minmax(0,1fr) auto}.howto-preview-board{min-height:0;aspect-ratio:8162 / 5736}}@media(max-width:900px){.howto-content{grid-template-columns:1fr}.howto-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}.howto-steps:before{display:none}}@media(max-width:880px){.research-group-inner{gap:1.25rem}.research-group-social{border-top:5px solid #174f73;padding:1.25rem}}@media(max-width:620px){.howto-page,.research-group-page{padding-inline:.75rem}.howto-header{padding:1.1rem}.howto-header h1{font-size:2.65rem}.howto-content{margin-top:1rem}.howto-steps{grid-template-columns:1fr;padding-inline:.85rem}.howto-special-rules article{padding:1rem}.howto-start{margin-top:1rem}.research-group-header,.research-group-about,.research-group-social{padding:1.1rem}.research-group-copy h1{font-size:clamp(2.05rem,11vw,3rem)}.research-group-lead{padding-left:.85rem}.research-group-qr{min-height:0;grid-template-columns:88px minmax(0,1fr) auto;gap:.75rem;padding:.65rem}.research-group-qr img{width:88px}}:root{--action-fill: #873b2c;--action-hover: #713022;--action-border: #c9c3b7;--radius-control: 12px}.btn-primary,.btn-secondary,.title-button-primary,.title-button-secondary,.materials-reset-button,.setup-back-button,.research-group-site-link{min-height:48px;border:1px solid transparent;border-radius:var(--radius-control);padding:.8rem 1.25rem;font-size:1rem;font-weight:700;line-height:1.5;letter-spacing:.015em;text-align:center;text-decoration:none;text-shadow:none;box-shadow:none;cursor:pointer;touch-action:manipulation;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.btn-primary,.title-button-primary,.research-group-site-link{border-color:var(--action-fill);background:var(--action-fill);color:#fff}.btn-primary:hover,.title-button-primary:hover,.research-group-site-link:hover{transform:none;border-color:var(--action-hover);background:var(--action-hover);box-shadow:none}.btn-primary:active,.title-button-primary:active,.research-group-site-link:active{transform:none;border-color:#5e271c;background:#5e271c;box-shadow:none}.btn-secondary,.title-button-secondary,.materials-reset-button,.setup-back-button{border-color:var(--action-border);background:#fffdf8;color:#343832}.btn-secondary:hover,.title-button-secondary:hover,.materials-reset-button:hover,.setup-back-button:hover{transform:none;border-color:#a6a298;background:#f3f0e9;color:#242822;box-shadow:none}.btn-secondary:active,.title-button-secondary:active,.materials-reset-button:active,.setup-back-button:active{transform:none;background:#e8e4db}.title-menu{gap:.65rem;border:1px solid var(--action-border);border-radius:var(--radius-panel);background:#fffaf0f7;padding:clamp(1.1rem,3vw,1.5rem);box-shadow:var(--shadow-low);-webkit-backdrop-filter:none;backdrop-filter:none}.title-context{margin:0 0 .65rem;color:#343832;font-weight:600;line-height:1.8;text-shadow:none}.title-menu .title-button-primary,.title-menu .title-button-secondary{min-height:52px;border-radius:12px;padding:.8rem 1rem;font-size:1rem;line-height:1.5}.title-menu .title-button-primary{border-color:var(--action-fill);background:var(--action-fill);color:#fff}.title-menu .title-button-primary:hover{border-color:var(--action-hover);background:var(--action-hover)}.title-menu .title-button-primary:active{border-color:#5e271c;background:#5e271c}.title-menu .title-button-secondary{border-color:var(--action-border);background:#fffdf8;color:#343832}.title-menu .title-button-secondary:hover{border-color:#a6a298;background:#f3f0e9;color:#242822}.title-menu .title-button-secondary:active{background:#e8e4db}.title-menu .title-review-link{margin-top:.25rem;min-height:44px;border-color:transparent;background:transparent;padding:.6rem .25rem;font-size:.875rem;font-weight:500;color:#5d5a50;text-decoration:underline;text-underline-offset:.3em}.title-menu .title-review-link:hover,.title-menu .title-review-link:active{border-color:transparent;background:transparent;color:var(--action-hover)}.menu-button{border:1px solid var(--action-border);border-radius:var(--radius-control);box-shadow:0 3px 12px #20262514}.player-count-grid button,.player-count-grid button:hover{border-width:1px;border-radius:var(--radius-control);box-shadow:none}.menu-panel,.game-setup-panel,.materials-list,.modal-card,.game-control-card{border-top:1px solid var(--color-border-soft)}.howto-header,.research-group-social{border-top:1px solid rgba(31,36,38,.15)}.research-group-header{border-top:0}.btn-primary:focus-visible,.btn-secondary:focus-visible,.title-button-primary:focus-visible,.title-button-secondary:focus-visible,.research-group-site-link:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px;box-shadow:0 0 0 2px #fffdf8}.game-progress,.progress-panel,.game-location-card,.clear-modal-hero,.materials-hero>div,.research-group-lead{border-left:0}.game-progress{border:1px solid var(--color-border-soft);border-radius:10px}.game-location-card{border:1px solid var(--color-border-soft)}.player-status-active,#game .player-status-list .player-status-active{background:#f6f3ed;box-shadow:inset 0 0 0 1px #c9c3b7}.nav-link,.nav-link-active{border-left:0}.materials-hero>div,.research-group-lead{padding-left:0}html.page-lock-howto,body.page-lock-howto{height:auto;overflow:auto;overscroll-behavior:auto}.play-guide{min-height:100dvh;padding:4.5rem clamp(1.25rem,3vw,2rem) 2rem;background-color:#efe1bf;background-size:cover;background-position:center;color:var(--ink)}.play-guide-inner{max-width:1200px;margin-inline:auto}.play-guide-header{display:flex;align-items:end;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--hairline);padding-bottom:1rem;margin-bottom:1.25rem}.play-guide-eyebrow{margin-bottom:.3rem;color:var(--action-fill);font-size:.875rem;font-weight:700;letter-spacing:.16em}.play-guide-header h1{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(2rem,4vw,2.75rem);font-weight:800;line-height:1.35;letter-spacing:0}.play-guide-summary{color:#5d5a50;font-size:.9375rem;font-weight:700}.play-guide-intro{margin-top:1.25rem;color:#536059;font-size:1.0625rem;line-height:1.9}.play-guide-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1.25rem;align-items:start}.play-guide h2{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.3rem;font-weight:800;line-height:1.55;letter-spacing:0}.play-guide-reading{min-width:0;border:1px solid var(--color-border-soft);border-radius:var(--radius-panel);background:#fffaf0f5;padding:clamp(1.1rem,2.2vw,1.75rem);box-shadow:var(--shadow-low)}.play-guide-preparation{border-bottom:1px solid var(--hairline);padding-bottom:1.1rem}.play-guide-preparation>p{margin-top:.65rem;color:#5d5a50;line-height:1.85}.play-guide-facts{display:flex;gap:2.5rem;margin-top:1.25rem}.play-guide-facts div{display:flex;gap:.75rem;align-items:baseline}.play-guide-facts dt{color:#626c64;font-size:.875rem}.play-guide-facts dd{font-size:1rem;font-weight:700}.play-guide-procedure{margin-top:1.1rem}.play-guide-steps{list-style:none;margin-top:.5rem}.play-guide-steps li{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:1rem;padding:1rem 0;border-bottom:1px solid var(--hairline)}.play-guide-steps li:last-child{border-bottom:0;padding-bottom:0}.play-guide-step-index{padding-top:.2rem;color:var(--action-fill);font-size:1.125rem;font-weight:500;font-variant-numeric:tabular-nums}.play-guide-steps h3{font-size:1.125rem;font-weight:800;line-height:1.55}.play-guide-steps p{margin-top:.45rem;color:#5d5a50;font-size:1rem;line-height:1.85}.play-guide-board{order:-1;min-width:0;margin:0}.play-guide-board>img{display:block;width:100%;aspect-ratio:8162 / 5736;-o-object-fit:contain;object-fit:contain;border:1px solid var(--color-border-soft);border-radius:4px;background:#e8dfc9}.play-guide-board figcaption{padding-top:.4rem}.play-guide-board figcaption>span{font-size:1.125rem;font-weight:800}.play-guide-board figcaption p{max-width:32em;margin-top:.6rem;color:#536059;line-height:1.85}.play-guide-board a{display:inline-flex;gap:.75rem;min-height:44px;align-items:center;margin-top:.65rem;color:#713022;font-weight:700;text-decoration:underline;text-underline-offset:.3em}.play-guide-rules{margin-top:1.25rem;border:1px solid var(--color-border-soft);border-radius:var(--radius-panel);background:#fffaf0f5;padding:1.25rem 1.5rem;box-shadow:var(--shadow-low)}.play-guide-rules dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.85rem;gap:1.5rem}.play-guide-rules>div p{margin-top:.75rem;color:#68716b;line-height:1.8}.play-guide-rules dl>div{min-width:0}.play-guide-rules dl>div+div{border-left:1px solid var(--hairline);padding-left:1.5rem}.play-guide-rules dt{font-size:1.0625rem;font-weight:800}.play-guide-rules dd{margin-top:.5rem;color:#5d5a50;line-height:1.85}.play-guide-start{display:flex;align-items:center;justify-content:center;margin-top:1.25rem}.play-guide-start h2{font-family:Yu Mincho,Hiragino Mincho ProN,serif}.play-guide-start p{margin-top:.35rem;color:#536059}.play-guide-start a{flex:none;gap:1rem;min-width:min(100%,280px);border-radius:var(--radius-control)}.materials-hero .btn-secondary{margin-right:8rem}.research-group-title-suffix{display:block;margin-top:.4rem;font-size:.5em;line-height:1.5}.research-group-name-part{display:inline-block}@media(max-width:1023px){.title-screen{display:block;overflow-y:auto;overscroll-behavior:contain;padding:max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom))}.title-stage{height:auto;max-height:none;min-height:calc(100dvh - 4rem);align-content:center;gap:1rem}.title-logo-image{max-height:min(30dvh,300px)}.title-copyright{position:static;margin-top:1rem;text-align:right}}@media(max-width:767px)and (orientation:portrait){.game-topbar{display:grid;grid-template-columns:minmax(0,1fr);padding-right:0}.game-topbar>div:first-child{min-width:0;padding-right:7.25rem}.game-topbar h1{white-space:normal;font-size:clamp(1.2rem,5.2vw,1.55rem);line-height:1.35}}.animal-token{position:relative;display:block;flex-shrink:0;width:48px;height:48px;border:3px solid var(--token-color);border-radius:50%;background:#fffdf8;padding:3px;overflow:visible}.animal-token img{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;border-radius:50%}.animal-token .animal-token-number{position:absolute;right:-4px;bottom:-4px;display:grid;place-items:center;width:17px;height:17px;border:1px solid #fffdf8;border-radius:50%;background:var(--token-color);color:#fff;font-family:sans-serif;font-size:10px;font-weight:800;line-height:1;text-shadow:none}.game-setup-page[data-choosing-pieces=true]{height:100dvh;min-height:0;overflow-y:auto;overscroll-behavior:contain;align-content:start;padding:5rem 1rem 2rem}.game-setup-page[data-choosing-pieces=true] .game-setup-panel{width:min(920px,100%);max-width:920px;height:auto;max-height:none;overflow:visible;padding:clamp(1rem,3vw,2rem)}.animal-picker-help{margin-top:.75rem;color:#5d5a50;font-size:.875rem;line-height:1.6}.animal-player-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.game-setup-panel[data-player-count="1"] .animal-player-list{grid-template-columns:1fr;max-width:480px;margin-inline:auto}.animal-player-card{min-width:0;border:1px solid var(--action-border);border-radius:var(--radius-panel);background:#fffdf8;padding:.85rem}.animal-player-card legend{padding:0 .3rem;color:#343832;font-size:.875rem;font-weight:700}.animal-player-name{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:.75rem}.animal-player-name label{display:block;margin-bottom:.25rem;color:#5d5a50;font-size:.75rem;font-weight:700}.animal-player-name input{width:100%;min-width:0;min-height:44px;border:1px solid #aaa498;border-radius:var(--radius-control);background:#fff;padding:.55rem .75rem;color:#343832;font-size:1rem}.animal-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;margin-top:.85rem}.animal-option{position:relative;min-width:0;cursor:pointer;border:0;border-radius:var(--radius-control);background:transparent;padding:0}.animal-option-content{display:grid;justify-items:center;gap:.2rem;border:1px solid var(--action-border);border-radius:var(--radius-control);background:#fffdf8;padding:.4rem .15rem;color:#343832;font-size:.75rem;font-weight:700}.animal-option-content img{width:44px;height:44px;-o-object-fit:contain;object-fit:contain}.animal-option-check{position:absolute;right:3px;top:3px;display:none;border-radius:50%;background:var(--token-color);color:#fff;width:16px;height:16px;text-align:center;font-size:11px}.animal-option[aria-pressed=true] .animal-option-content{border-color:var(--token-color);box-shadow:inset 0 0 0 1px var(--token-color);background:#f6f3ed}.animal-option[aria-pressed=true] .animal-option-check{display:block}.animal-option:focus-visible,.animal-picker-trigger:focus-visible,.animal-picker-close:focus-visible,.animal-player-name input:focus-visible{outline:3px solid #174f73;outline-offset:2px}.animal-option:hover .animal-option-content{background:#f3f0e9}.animal-picker-trigger{display:grid;justify-items:center;gap:.25rem;min-width:64px;min-height:72px;border:0;border-radius:var(--radius-control);padding:.25rem;background:transparent;color:#5d5a50;cursor:pointer}.animal-picker-trigger>span:last-child{font-size:.75rem;font-weight:700}.animal-picker-trigger:hover{background:#f3f0e9}.animal-picker-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:1rem;background:#1f242680;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.animal-picker-dialog{width:min(440px,100%);max-height:calc(100dvh - 2rem);overflow-y:auto;border:1px solid var(--action-border);border-radius:var(--radius-panel);padding:1.25rem;background:#fffaf0;color:#343832;box-shadow:var(--shadow-high)}.animal-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.animal-picker-heading p{color:#5d5a50;font-size:.8rem;font-weight:700}.animal-picker-heading h2{margin-top:.25rem;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.5rem;font-weight:800}.animal-picker-close{flex-shrink:0;width:44px;height:44px;border:1px solid var(--action-border);border-radius:var(--radius-control);background:#fffdf8;color:#343832;font-size:1.5rem;cursor:pointer}.animal-picker-dialog .animal-picker{margin-top:1.25rem;gap:.65rem}.animal-picker-dialog .animal-option-content{padding:.65rem .25rem;font-size:.875rem}.animal-picker-dialog .animal-option-content img{width:min(100%,64px);height:64px}@media(min-width:1024px){.game-setup-page[data-choosing-pieces=true]{padding:4rem 1.5rem 1.25rem;align-content:center}.game-setup-page[data-choosing-pieces=true] .game-setup-panel{display:grid;grid-template-columns:1fr 1.1fr;-moz-column-gap:1.5rem;column-gap:1.5rem;padding:1.25rem}.game-setup-page[data-choosing-pieces=true] .game-setup-panel>:not(.animal-setup-heading):not(.setup-steps){grid-column:1 / -1}.game-setup-page[data-choosing-pieces=true] .animal-setup-heading{text-align:left}.game-setup-page[data-choosing-pieces=true] .animal-setup-heading>p:first-child{display:none}.game-setup-page[data-choosing-pieces=true] .animal-setup-heading h1{margin-top:0;font-size:2rem;line-height:1.3}.game-setup-page[data-choosing-pieces=true] .animal-setup-heading>p:last-child{display:none}.game-setup-page[data-choosing-pieces=true] .setup-steps{margin-top:0;align-self:center;padding-bottom:.5rem}.game-setup-page[data-choosing-pieces=true] .exact-goal-option{margin-top:.75rem;min-height:60px;padding:.6rem .75rem}.game-setup-page[data-choosing-pieces=true] .exact-goal-option>div{display:flex;align-items:center;gap:1rem}.game-setup-page[data-choosing-pieces=true] .animal-setup-members{margin-top:.75rem}.game-setup-page[data-choosing-pieces=true] .setup-back-button{min-height:40px;padding:.4rem .75rem;font-size:.8rem}.game-setup-page[data-choosing-pieces=true] .animal-picker-help{margin-top:.4rem}.game-setup-page[data-choosing-pieces=true] .animal-player-list{margin-top:.6rem;gap:.75rem}.game-setup-page[data-choosing-pieces=true] .animal-player-card{padding:.6rem .75rem}.game-setup-page[data-choosing-pieces=true] .animal-setup-members>.btn-primary,.game-setup-page[data-choosing-pieces=true] .game-setup-panel>.btn-secondary{margin-top:.75rem}}#game .current-turn-label>.animal-token,#game .game-sidebar .player-status-list>div>.animal-token{width:32px;height:32px;border-width:2px;border-color:var(--token-color);padding:2px;background:#fffdf8}#game .game-sidebar .player-status-list.player-status-animals>div{grid-template-columns:32px minmax(0,1fr) auto;gap:.6rem;min-height:44px;align-items:center}.piece{width:clamp(24px,3vw,38px);height:clamp(24px,3vw,38px);border-width:3px;background:#fffdf8;box-shadow:0 2px 6px #1f24264d,0 0 0 1px #fffdf8}.piece .piece-token{display:block;width:100%;height:100%;border:0;padding:1px;background:#fffdf8}.piece .animal-token-number{width:13px;height:13px;right:-5px;bottom:-5px;font-size:8px}.piece-current{box-shadow:0 2px 8px #1f24264d,0 0 0 2px #fffdf8}@media(min-width:641px)and (min-height:501px)and (max-height:850px)and (orientation:landscape){#game .game-sidebar .player-status-list.player-status-animals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));height:auto;max-height:none;overflow:visible;gap:.35rem;padding:.5rem}#game .game-sidebar .player-status-list.player-status-animals>div{grid-template-columns:28px minmax(0,1fr);gap:.2rem .4rem;padding:.3rem}#game .game-sidebar .player-status-list>div>.animal-token{width:28px;height:28px;grid-row:span 2}#game .game-sidebar .player-status-list.player-status-animals small{grid-column:2}}@media(max-width:640px){.animal-player-list{grid-template-columns:1fr}#game .game-sidebar .player-status-list.player-status-animals>div{grid-template-columns:28px minmax(0,1fr);gap:.3rem .45rem}#game .game-sidebar .player-status-list>div>.animal-token{width:28px;height:28px;grid-row:span 2}#game .game-sidebar .player-status-list.player-status-animals small{grid-column:2}}@media(max-height:500px)and (orientation:landscape){#game .game-sidebar .game-location-card{padding:.25rem .5rem}#game .current-turn-label>.animal-token{width:20px;height:20px;padding:1px}#game .current-turn-label .animal-token-number{width:12px;height:12px;font-size:8px}#game .game-location-card h3{margin-top:0;min-height:0;font-size:.875rem;line-height:1.2}}@media(min-width:1024px){.play-guide,.research-group-page{min-height:100dvh;padding:5rem 1.5rem 1.5rem;display:grid;align-content:center}.play-guide-inner{width:100%;display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.35fr) minmax(0,.8fr);gap:1rem}.play-guide-header{grid-column:1 / -1;margin:0;padding-bottom:.75rem}.play-guide-header h1{font-size:2.25rem}.play-guide-layout{display:contents}.play-guide-board{grid-column:1;grid-row:2;align-self:center}.play-guide-board a{margin-top:0}.play-guide-reading{grid-column:2;grid-row:2;padding:1rem}.play-guide h2{font-size:1.2rem}.play-guide-preparation{padding-bottom:.75rem}.play-guide-preparation>p,.play-guide-steps p,.play-guide-rules dd{margin-top:.4rem;line-height:1.65}.play-guide-procedure{margin-top:.75rem}.play-guide-steps li{grid-template-columns:1.75rem minmax(0,1fr);gap:.65rem;padding-block:.5rem}.play-guide-steps h3{font-size:1rem}.play-guide-rules{grid-column:3;grid-row:2;margin:0;padding:1.25rem;align-self:stretch}.play-guide-rules dl{grid-template-columns:1fr;gap:1rem}.play-guide-rules dl>div+div{border-left:0;border-top:1px solid var(--hairline);padding:1rem 0 0}.play-guide-rules dt{font-size:1rem}.play-guide-start{grid-column:1 / -1;margin-top:0}.research-group-inner{grid-template-columns:minmax(0,1.2fr) minmax(0,.85fr);gap:1.5rem}.research-group-header,.research-group-about,.research-group-social{padding:1.5rem}.research-group-copy h1{font-size:clamp(2rem,3vw,2.6rem);line-height:1.3}.research-group-title-suffix{display:inline-block;margin:0 0 0 .5em;font-size:.55em}.research-group-lead{margin-top:1rem;font-size:1.125rem;line-height:1.65}.research-group-about{line-height:1.7}.research-group-about h2{margin-top:1rem}.research-group-activities li{padding-block:.55rem}.research-group-site-link{margin-top:1rem}.research-group-social-heading h2{font-size:1.8rem}}@media(max-width:760px){.play-guide{padding:4.75rem 1rem 1.5rem}.play-guide-layout{grid-template-columns:1fr;gap:1rem}.play-guide-header h1{font-size:2.25rem}.play-guide-header{flex-wrap:wrap;gap:.5rem 1rem}.play-guide-board{order:0}.play-guide-rules{margin-top:1rem;padding:1.1rem}.play-guide-rules dl{grid-template-columns:1fr;gap:1rem}.play-guide-rules dl>div+div{border-left:0;border-top:1px solid var(--hairline);padding:1rem 0 0}.play-guide-rules>div p br,.play-guide-desktop-break{display:none}.play-guide-start{margin-top:1rem}.play-guide-preparation{padding:0 0 1rem}.play-guide-facts{flex-wrap:wrap;gap:.75rem 2rem}.materials-hero .btn-secondary{margin-right:0;justify-self:start}.materials-page .materials-hero{padding-top:2.25rem}}@media(max-width:1024px)and (max-height:500px)and (orientation:landscape){#game .game-layout{display:grid;grid-template-areas:"board sidebar";grid-template-columns:minmax(0,1fr) clamp(180px,29vw,240px);grid-template-rows:minmax(0,1fr);height:calc(100dvh - .65rem - env(safe-area-inset-bottom));min-height:0;gap:.5rem;align-items:center}#game .game-layout>.game-board{grid-area:board;justify-self:center;width:min(100%,calc((100dvh - 1rem - env(safe-area-inset-bottom)) * 8162 / 5736));max-height:calc(100dvh - 1rem - env(safe-area-inset-bottom));min-height:0;margin:0}#game .game-layout>.game-sidebar{display:grid;grid-area:sidebar;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);height:100%;max-height:none;min-height:0;gap:.35rem;padding:2.8rem 0 0;overflow:hidden}#game .game-sidebar>*{margin:0;min-width:0}#game .game-sidebar .game-location-card{grid-column:1;grid-row:1;min-height:48px;height:auto;padding:.35rem .5rem}#game .game-sidebar .game-location-card .current-turn-label{gap:.35rem;font-size:.8rem}#game .game-location-card .current-turn-label>.animal-token{width:24px;height:24px}#game .game-sidebar .game-location-card h3{margin-top:.15rem;font-size:.8rem}#game .game-sidebar .player-status-list{display:none}#game .game-sidebar .game-control-card{display:flex;flex-direction:column;grid-column:1;grid-row:2;min-height:0;padding:.45rem;overflow-y:auto;overscroll-behavior:contain}#game .game-control-card .dice-stage{flex:0 0 auto;width:42px;height:42px;margin:0 auto}#game .game-control-card .game-action-label,#game .game-control-card .game-action-help{display:none}#game .game-control-card .dice-result{flex:0 0 auto;height:auto;min-height:20px;margin:.2rem 0;font-size:1rem;line-height:1.2}#game .game-control-card .btn-primary,#game .game-control-card .btn-secondary{flex:0 0 auto;min-height:44px;padding:.5rem .35rem;font-size:.8rem;line-height:1.3}#game .game-control-card .btn-secondary{margin-top:.35rem}}@media(max-width:1024px)and (max-height:300px)and (orientation:landscape){#game .game-control-card .dice-stage{display:none}}@media(min-width:900px)and (min-height:501px){#game{height:100dvh;min-height:0;max-height:none;padding:1rem 1.25rem;overflow:hidden}#game>.mx-auto{width:min(100%,1280px,calc((100dvh - 156px) * 8162 / 5736 * 4 / 3 + 16px));max-width:none;height:100%;display:grid;grid-template-rows:88px minmax(0,1fr) 20px;gap:.75rem}#game .game-topbar{display:flex;flex-direction:row;align-items:center;justify-content:space-between;min-height:0;margin:0;padding:0 7.5rem .65rem 0;gap:1rem}#game .game-topbar>div:first-child p{display:block;margin-bottom:.35rem;font-size:.75rem}#game .game-topbar h1{font-size:2rem;line-height:1.25}#game .game-progress{flex:0 0 240px;width:240px;min-width:0;padding:.5rem .75rem;font-size:.875rem}#game .game-layout{display:grid;grid-template-areas:"board sidebar";grid-template-columns:minmax(0,3fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100%;min-height:0;gap:1rem;align-items:start}#game .game-layout>.game-board{grid-area:board;width:100%;height:auto;max-height:none;aspect-ratio:8162 / 5736;margin:0}#game .game-layout>.game-sidebar{display:flex;flex-direction:column;grid-area:sidebar;height:var(--board-height);max-height:100%;min-height:0;gap:.5rem;padding:0;overflow-y:auto;scrollbar-width:thin}#game .game-sidebar>.paper-card{flex:0 0 auto;margin:0;padding:.5rem}#game .game-sidebar .game-location-card{height:auto;min-height:0}#game .game-sidebar .game-location-card h3{min-height:0;font-size:1.125rem;line-height:1.4}#game .game-sidebar .current-turn-label{font-size:.875rem}#game .game-sidebar .player-status-list.player-status-animals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;font-size:.75rem}#game .game-sidebar .player-status-list.player-status-animals>div{min-height:42px;grid-template-columns:24px minmax(0,1fr);gap:.15rem .35rem;padding:.3rem}#game .game-sidebar .player-status-list.player-status-animals .animal-token{width:24px;height:24px;grid-row:1 / 3}#game .game-sidebar .player-status-list.player-status-animals small{grid-column:2;font-size:.6875rem;line-height:1.2}#game .game-sidebar .player-status-list.player-status-animals strong{overflow:visible;white-space:normal;overflow-wrap:anywhere;font-size:.75rem;line-height:1.2}#game .game-sidebar .game-control-card{flex:0 0 auto;display:block;overflow:visible}#game .game-control-card .game-action-label{display:none;margin-top:.25rem;font-size:.75rem}#game .game-control-card .dice-result{height:auto;min-height:1.5rem;margin:.25rem 0 .5rem;font-size:1.5rem;line-height:1.2}#game .game-control-card .game-action-help{display:none;font-size:.75rem}#game .game-control-card .btn-primary,#game .game-control-card .btn-secondary{min-height:44px;padding:.5rem;font-size:.875rem}#game .piece{width:clamp(22px,calc(var(--board-height) * .05),34px);height:clamp(22px,calc(var(--board-height) * .05),34px)}#game .game-control-card .dice-stage{display:grid;width:62px;height:62px;margin-inline:auto}#game .game-control-card .dice-cube{width:44px;height:44px}#game .game-control-card .dice-face-1{transform:translateZ(22px)}#game .game-control-card .dice-face-2{transform:rotateY(90deg) translateZ(22px)}#game .game-control-card .dice-face-3{transform:rotateX(90deg) translateZ(22px)}#game .game-control-card .dice-face-4{transform:rotateX(-90deg) translateZ(22px)}#game .game-control-card .dice-face-5{transform:rotateY(-90deg) translateZ(22px)}#game .game-control-card .dice-face-6{transform:rotateY(180deg) translateZ(22px)}}.image-credit{margin:0;min-width:0;overflow-wrap:anywhere;color:#625d52;font-size:.75rem;font-weight:400;line-height:20px;text-align:right}.research-group-about .research-image-credit{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--hairline);font-size:.8125rem;text-align:left}.materials-page{position:relative;padding-bottom:2rem}.materials-image-credit{position:absolute;max-width:calc(100% - 2rem);right:max(1rem,env(safe-area-inset-right));bottom:.4rem}@media(max-width:500px){.materials-page{padding-bottom:3.5rem}}@media(max-width:899px)and (min-height:501px)and (orientation:landscape){#game>.mx-auto{display:grid;height:100%;grid-template-rows:auto minmax(0,1fr) 20px;gap:.35rem}#game .game-layout{height:100%;min-height:0}#game .game-board{width:min(100%,calc((100dvh - 140px) * 8162 / 5736))}}@media(max-width:1024px)and (max-height:500px)and (orientation:landscape){#game .game-layout{height:calc(100dvh - 2.15rem - env(safe-area-inset-bottom))}#game .game-layout>.game-board{width:min(100%,calc((100dvh - 2.5rem - env(safe-area-inset-bottom)) * 8162 / 5736));max-height:calc(100dvh - 2.5rem - env(safe-area-inset-bottom))}}#game .dice-stage[data-solid-die]{--solid-die-size: 44px;perspective:500px;isolation:isolate}.dice-stage[data-solid-die]:after{display:none}.solid-die-travel,.solid-die-camera,.solid-die-cube{width:var(--solid-die-size);height:var(--solid-die-size);transform-style:preserve-3d}.solid-die-travel{position:relative;z-index:1}.solid-die-camera{transform:rotateX(-18deg) rotateY(-24deg)}.solid-die-cube{position:relative}.solid-die-face{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);gap:9%;padding:17%;border:1px solid #b3a48c;border-radius:4px;background:linear-gradient(135deg,#fffdf5,#ebddc2);box-shadow:inset 0 0 3px #fff9ea;backface-visibility:hidden}.solid-die-face-1{transform:translateZ(calc(var(--solid-die-size) / 2))}.solid-die-face-2{transform:rotateY(90deg) translateZ(calc(var(--solid-die-size) / 2));background:#d9c8aa}.solid-die-face-3{transform:rotateX(90deg) translateZ(calc(var(--solid-die-size) / 2));background:#fff9e9}.solid-die-face-4{transform:rotateX(-90deg) translateZ(calc(var(--solid-die-size) / 2));background:#e4d5b9}.solid-die-face-5{transform:rotateY(-90deg) translateZ(calc(var(--solid-die-size) / 2));background:#f4e8d0}.solid-die-face-6{transform:rotateY(180deg) translateZ(calc(var(--solid-die-size) / 2))}.solid-die-pip{border-radius:50%;background:#3b332d;box-shadow:inset 0 1px 2px #1f1a16,0 1px #fff9e8}.solid-die-face-1 .solid-die-pip{background:#ad422b;box-shadow:inset 0 1px 2px #752918,0 1px #fff9e8;transform:scale(1.35)}.solid-die-shadow{position:absolute;left:calc(50% - 26px);bottom:0;width:52px;height:10px;border-radius:50%;background:radial-gradient(ellipse,#49362155,transparent 72%)}[data-rolling=true]>.solid-die-shadow{animation:solid-die-bounce-shadow .82s ease-in-out}@keyframes solid-die-bounce-shadow{0%,to{transform:scale(1);opacity:1}25%{transform:translate(-10px) scale(.7);opacity:.55}60%{transform:translate(10px) scale(.85);opacity:.75}}@media(max-height:500px)and (orientation:landscape){#game .dice-stage[data-solid-die]{--solid-die-size: 32px}}#game .game-sidebar .game-control-card{align-self:start;width:100%;height:auto;min-height:0;max-height:100%}@media(min-height:501px){#game .game-sidebar .game-control-card{padding:.75rem}#game .game-control-card .dice-stage[data-solid-die]{width:80px;height:80px;margin:0 auto}#game .game-control-card .dice-result{height:auto;min-height:24px;margin:.25rem 0 .5rem;font-size:1.5rem;line-height:1.2}#game .game-control-card .btn-secondary{margin-top:.5rem}}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-45:disabled{opacity:.45}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.md\:grid-cols-\[220px_1fr\]{grid-template-columns:220px 1fr}.md\:grid-cols-\[240px_1fr\]{grid-template-columns:240px 1fr}.md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:justify-between{justify-content:space-between}.md\:px-5{padding-left:1.25rem;padding-right:1.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}}@media(min-width:1024px){.lg\:max-w-xs{max-width:20rem}.lg\:grid-cols-\[1fr_0\.86fr\]{grid-template-columns:1fr .86fr}.lg\:grid-cols-\[minmax\(0\,1\.1fr\)_minmax\(280px\,0\.75fr\)\]{grid-template-columns:minmax(0,1.1fr) minmax(280px,.75fr)}}
