/* A mobile journey, with the board available as its own exploration mode. */
.experience-switch,.story-panel,.nav-icon{display:none}
.dice{perspective:360px;background:none;box-shadow:none;position:relative;overflow:visible}.dice-cube{width:42px;height:42px;transform-style:preserve-3d;transform:var(--cube-rotation,rotateX(-16deg) rotateY(22deg));transition:transform .65s cubic-bezier(.18,.8,.2,1);position:relative}.dice-face{position:absolute;inset:0;border:1px solid #f8edcb;border-radius:8px;background:linear-gradient(145deg,#fff7e0,#d6bf8f);display:grid;place-items:center;backface-visibility:hidden;box-shadow:inset 0 0 8px #b99b6255}.dice-face .pips{width:27px;height:27px;gap:4px}.dice-face .pip.on{background:#403c32;box-shadow:inset 0 1px 2px #0006}.dice-face:nth-child(1){transform:translateZ(21px)}.dice-face:nth-child(2){transform:rotateY(90deg) translateZ(21px)}.dice-face:nth-child(3){transform:rotateX(90deg) translateZ(21px)}.dice-face:nth-child(4){transform:rotateX(-90deg) translateZ(21px)}.dice-face:nth-child(5){transform:rotateY(-90deg) translateZ(21px)}.dice-face:nth-child(6){transform:rotateY(180deg) translateZ(21px)}.dice:after{content:'';position:absolute;bottom:-7px;left:15%;width:70%;height:9px;background:#0004;filter:blur(5px);border-radius:50%;z-index:-1}.dice.rolling{animation:none}.dice.rolling .dice-cube{animation:cube-turn 1s linear infinite}.primary{transition:transform .2s,box-shadow .2s,filter .2s}.primary:active{transform:scale(.97)}.cell-sheet[open]{animation:luxury-sheet .5s cubic-bezier(.16,1,.3,1)}.cell-sheet[open] .current-card{animation:content-enter .7s .1s both}.travel-layer.active{opacity:1}#travel-path{stroke-width:3}#travel-token{r:12;stroke-width:2}
@keyframes cube-turn{0%{transform:translateY(0) rotateX(-16deg) rotateY(22deg)}25%{transform:translateY(-12px) rotateX(110deg) rotateY(130deg) rotateZ(12deg)}50%{transform:translateY(-18px) rotateX(220deg) rotateY(240deg)}75%{transform:translateY(-9px) rotateX(320deg) rotateY(340deg) rotateZ(-10deg)}100%{transform:translateY(0) rotateX(344deg) rotateY(382deg)}}
@keyframes luxury-sheet{from{opacity:0;transform:translateY(90px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes content-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes sculpture-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-7px) rotate(3deg)}}
@keyframes orbit-drift{from{transform:rotate(-25deg)}to{transform:rotate(335deg)}}
@keyframes story-enter{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:900px){
 :root{--bg:#111419;--panel:#1c2025;--text:#f4f1e9;--gold:#cbb88e;--muted:#a9aaa9;color-scheme:dark}body{background:radial-gradient(ellipse at 80% 0,#34362e88,transparent 42%),#111419}.grain{opacity:.018}header{border:0;padding:18px 22px 10px;gap:0;min-height:72px;max-width:620px}.brand{gap:9px}.brand img{width:34px;height:34px}.brand>span{font-size:33px;letter-spacing:1px}.brand small{display:none}.header-actions{gap:12px}.icon-button{border-color:#e5dcc223;width:42px;height:42px;background:#ffffff04;color:#d0c7b0}.avatar{width:36px;height:36px;background:#d9bd8311;border-color:#d9bd8327;color:#d3c6a8;font-size:13px}
 nav{position:fixed;bottom:12px;left:20px;right:20px;width:auto;max-width:560px;margin:auto;z-index:30;border-radius:24px;background:#24282dec;border:1px solid #d3c8ae24;backdrop-filter:blur(24px);padding:7px 12px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;box-shadow:0 12px 35px #0006}.nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px;min-height:46px;padding:8px 3px;font-size:12px;font-weight:500;color:#b7b7b4;border-radius:16px}.nav.active{background:#ffffff09;color:#eddec0}.nav-icon{display:block!important;width:20px;height:20px;background:none!important;margin:0!important}.nav-icon svg{display:block;width:20px;height:20px}.nav span:not(.nav-icon){font-size:10px;background:#d9bd8317;min-width:16px;height:16px;margin-left:0}.nav.active:after{display:none}
 main{max-width:620px;padding:0 20px 210px}.intro,.has-game .intro{padding:12px 1px 20px}.intro .eyebrow,.intro .subtitle,.intro-symbol{display:none!important}.intro h1,.has-game h1{font:400 34px/1.05 'Cormorant Garamond',Georgia,serif;letter-spacing:-.3px;margin:0;white-space:normal}.intro h1 em,.has-game h1 em{display:inline;margin:0;font-style:italic;color:#c9b890}.game-layout{gap:16px}.intention-card,.has-game .intention-card{order:0;padding:0 0 14px;border:0;border-radius:0;background:none;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 10px;border-bottom:1px solid #d1c6ad20}.intention-card .overline,.has-game .intention-card .overline{font-size:10px;letter-spacing:1.2px;color:#9b9c98;grid-column:1;grid-row:1}.intention-card .text-button,.has-game .intention-card .text-button{grid-row:1;grid-column:2;min-height:32px;font-size:12px;color:#cbbb98}.intention-card p,.has-game .intention-card p{font:400 15px/1.5 Manrope,Arial,sans-serif;grid-column:1/-1;grid-row:2;max-height:72px;margin:0;color:#e7e4d9;overflow:auto}
 .experience-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#ffffff04;border:1px solid #c7b9951c;border-radius:15px;padding:4px;margin:0 0 16px;position:relative;top:0;order:0}.experience-switch button{height:42px;background:none;border:0;color:#aaa9a3;border-radius:11px;font-size:13px;transition:background .3s,color .3s,box-shadow .3s}.experience-switch button.active{background:#e9e4d4;color:#282923;box-shadow:0 3px 12px #0002;font-weight:600}.experience-switch button span{padding-left:8px}.experience-switch{margin-top:0}
 .game-layout{display:flex}.story-panel{order:1;display:flex;flex-direction:column;width:100%;position:relative;isolation:isolate;background:radial-gradient(ellipse at 50% 22%,#fffdf6,#e8e3d7 70%);color:#252923;border:1px solid #fff5df66;border-radius:26px;min-height:375px;overflow:hidden;box-shadow:0 18px 70px #0004,inset 0 1px 0 #fffc;transition:box-shadow .4s}.story-panel:before{content:'';position:absolute;inset:8px;border:1px solid #baab8426;border-radius:20px;pointer-events:none;z-index:3}.story-top{display:flex;justify-content:space-between;gap:10px;padding:22px 22px 0;font-size:9px;font-weight:600;letter-spacing:1.1px;color:#7d7869;position:relative;z-index:2}.story-edition{font-size:7px;letter-spacing:1px;color:#9b9484}.story-art{height:195px;position:relative;display:grid;place-items:center;overflow:hidden;margin-top:3px}.story-art svg{height:205px;width:270px;z-index:2;animation:sculpture-float 8s ease-in-out infinite;overflow:visible}.orbit{border:1px solid #b7a77724;border-radius:50%;position:absolute;width:240px;height:240px;top:-8px;left:50%;margin-left:-120px;pointer-events:none}.orbit-one{width:285px;height:285px;top:-31px;margin-left:-142.5px}.orbit-two{width:180px;height:180px;top:18px;margin-left:-90px;border-style:dashed;animation:orbit-drift 100s linear infinite}.orbit-three{width:330px;height:100px;top:75px;margin-left:-165px;transform:rotate(-25deg);border-color:#b7a77720}.art-coordinate{position:absolute;bottom:7px;font-size:7px;letter-spacing:1.8px;color:#aaa08a;z-index:2}.story-copy{padding:10px 24px 22px;position:relative;z-index:2;flex:1;display:flex;flex-direction:column}.story-heading{display:flex;align-items:center;gap:14px;margin-bottom:12px}.story-heading>span{font:400 40px/1 'Cormorant Garamond',Georgia,serif;letter-spacing:-2px;color:#98815b;min-width:43px;padding-right:12px;border-right:1px solid #b7aa8d55}.story-heading h2{font:500 32px/1.05 'Cormorant Garamond',Georgia,serif;color:#2d3029;text-align:left;margin:0;letter-spacing:-.3px;text-wrap:balance}.story-copy>p{font-size:15px;line-height:1.6;color:#68685e;margin:0 0 19px}.story-copy>button{margin-top:auto;display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:0;border-top:1px solid #b7aa8d55;padding:15px 0 0;text-align:left;min-height:44px;color:#57563f;font-size:13px;font-weight:600}.story-copy>button>span:last-child{display:grid;place-items:center;width:30px;height:30px;border:1px solid #b7a77777;border-radius:50%;font-size:18px}.story-arrival{animation:story-enter .7s cubic-bezier(.16,1,.3,1) both}.board-panel{display:none;order:1}.experience-map .story-panel{display:none}.experience-map .board-panel,.board-panel.map-expanded{display:block}.map-expanded{display:flex!important}.session-stats{order:3;border:0;background:none;border-radius:0;padding:7px 15px 0}.session-stats b{font:400 24px 'Cormorant Garamond',Georgia,serif;color:#d8ccb0}.session-stats span{font-size:10px;color:#999c96;gap:4px}footer{display:none}
 .roll-card{bottom:86px;left:20px;right:20px;max-width:560px;margin:auto;border:1px solid #ded2b044;background:linear-gradient(130deg,#eee9dc,#dad4c4);color:#282c25;border-radius:22px;backdrop-filter:none;box-shadow:0 12px 36px #0005;padding:15px 17px 11px;grid-template-columns:55px minmax(0,1fr);gap:9px 16px}.roll-card .dice{width:52px;height:52px;background:none;box-shadow:none;display:grid;place-items:center}.dice-cube{width:42px;height:42px}.roll-card .primary{background:linear-gradient(130deg,#32372e,#181f19);border:1px solid #3e4839;color:#f5efd9;min-height:52px;font-size:14px;font-weight:500;border-radius:14px;box-shadow:0 4px 12px #18211922;padding:14px 17px}.roll-card .primary:disabled{opacity:.75}.roll-message{font-size:11px;line-height:1.45;color:#747366;max-height:34px;min-height:16px;letter-spacing:0;text-align:left;grid-column:2;margin-top:-1px}.roll-card:has(.rolling){box-shadow:0 12px 36px #0005,0 0 35px #dfc89022}.map-open nav,.map-open .roll-card{visibility:hidden}
 .board-panel{border-radius:24px;background:#1c2126;border-color:#cfc6ae2b}.panel-heading{padding:21px 20px 15px}.panel-heading h2{font-size:30px;color:#f1eddf}.panel-heading .overline{font-size:10px;color:#959e98;letter-spacing:1.3px}.panel-heading .text-button{font-size:12px;color:#cebb97}.map-toolbar{gap:8px;padding-inline:16px}.zoom-controls{background:#101619;border-color:#cbb88e38}.map-button{border-color:#cbb88e2e;background:#ffffff04;color:#cbbc9e}.map-viewport{background:radial-gradient(ellipse at 60% 30%,#30382e,#141b1b 75%);height:clamp(310px,48dvh,420px);border-block-color:#cbb88e20}.cell{background:linear-gradient(135deg,#3b4238,#252c28);border-color:#bfc5ad23;border-radius:12px;padding:9px;box-shadow:inset 0 1px 0 #ffffff05}.cell-name{font-size:max(13px,calc(14px * var(--map-scale)));color:#e4e6d9}.cell-number{font-size:max(24px,calc(30px * var(--map-scale)));color:#f6eed9}.cell.selected{background:linear-gradient(135deg,#776b4d,#454736);border-color:#d8c7a0;box-shadow:inset 0 0 25px #ead09a12,0 0 18px #ead09a15}.connections{opacity:.3}.cell.goal{background:linear-gradient(135deg,#4e5342,#333e32)}.map-position>span{font-size:11px;color:#a3b2a0}.map-position .map-button{font-size:12px}.cell-preview{border-color:#c8b88e3b;background:linear-gradient(120deg,#d9bd8310,#ffffff02);padding:14px}.cell-preview small{font-size:9px;color:#a7a88e;letter-spacing:.7px}.cell-preview strong{font-size:24px;color:#e9e1cb}.cell-preview>span:first-child{color:#d2bf97}.board-legend{font-size:11px;color:#a7b4a3}.board-legend .text-button{font-size:11px}.map-expanded{background:#161e20}.map-expanded .map-viewport{height:auto}.map-expanded .board-legend{padding-block:4px}.map-expanded .panel-heading{padding-top:20px}.map-expanded .cell-preview{min-height:72px}
 .cell-sheet{background:radial-gradient(ellipse at 50% 0,#fcfaf1,#e5dfd1 80%);color:#2e3329;border-color:#f7f0dd;border-radius:30px 30px 0 0;padding-inline:25px;box-shadow:0 -20px 70px #0004}.cell-sheet .dialog-close{border:1px solid #a5936e40;background:#b4a37b10;color:#6b654f}.cell-sheet .sheet-handle:after{background:#b1a78c77}.cell-sheet .card-top .overline{color:#81785e;font-size:11px}.cell-sheet .pill{color:#7f806e;border-color:#a99c743f;background:none}.cell-sheet .cell-symbol{color:#a28b60;margin:20px auto 12px;display:grid;place-items:center;width:105px;height:105px;border:1px solid #cabc962f;border-radius:50%;box-shadow:0 0 0 13px #b4a37b08;font-size:58px;animation:sculpture-float 8s ease-in-out infinite}.cell-sheet h2{color:#2f342b;font-size:39px;font-weight:500}.cell-sheet .current-card>p{font-size:17px;color:#666958;line-height:1.85}.cell-sheet .question-box{border-top-color:#b7aa8d55}.cell-sheet .question-box span{font-size:10px;color:#928264;letter-spacing:1.4px}.cell-sheet .question-box p{color:#53563f;font-size:27px;line-height:1.35}.cell-sheet .current-card>.text-button{color:#7d6d46;font-size:14px}.cell-sheet .primary{background:#30382c;color:#f4edd8;border-color:#424b39;min-height:54px;font-size:15px}.cell-sheet::backdrop{background:#090d10d9;backdrop-filter:blur(12px)}
 .reading-view nav{visibility:visible}.reading-view main{padding-bottom:110px}.reading-view .experience-switch{display:none}.reading-view .section-top h2{font-size:38px}.journal-entry,.guide-grid article,.guide-detail{background:linear-gradient(140deg,#292e30,#1b2024);border-color:#cbb88e24;color:#e9e3d4}.journal-entry p,.guide-grid p,.guide-detail p{color:#c2c4b8}.journal-entry h3{color:#e9dfc7}.toast{bottom:210px;background:#ebe3cf;color:#343c2d}
}
@media(max-width:360px){header{padding-inline:16px;min-height:65px}.intro,.has-game .intro{padding:9px 0 15px}.intro h1,.has-game h1{font-size:31px}main{padding-inline:14px}.story-top{padding:19px 18px 0}.story-edition{display:none}.story-art{height:170px}.story-art svg{width:240px;height:190px}.story-panel{min-height:345px}.story-copy{padding:8px 20px 21px}.story-heading h2{font-size:29px}.story-copy>p{font-size:14px}.roll-card{left:14px;right:14px;padding:13px 14px 10px;grid-template-columns:49px minmax(0,1fr);gap:7px 12px}.roll-card .primary{font-size:13px;padding-inline:13px}.roll-message{font-size:10px}.nav{font-size:11px}.cell-sheet{padding-inline:22px}.cell-sheet h2{font-size:35px}.cell-sheet .current-card>p{font-size:17px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:900px){.experience-switch{order:1;margin:0}.story-panel,.board-panel{order:2}.game-layout{gap:16px}.reading-view .intro{display:none}}
@media(max-width:900px){.story-art{height:165px}.story-art svg{height:180px;width:250px}.story-panel{min-height:355px}.story-copy>p{font-size:15px;margin-bottom:14px}.roll-message{font-size:12px}.story-edition{font-size:8px}.story-top{font-size:10px}.art-coordinate{font-size:8px}} @media(max-width:360px){.story-art{height:145px}.story-art svg{height:165px}.story-panel{min-height:335px}.roll-message{font-size:11px}} @media(max-width:900px) and (max-height:740px){.intro,.has-game .intro{display:none}.intention-card .overline,.has-game .intention-card .overline{display:none}.intention-card,.has-game .intention-card{grid-template-columns:minmax(0,1fr) 36px;padding-bottom:8px}.intention-card p,.has-game .intention-card p{grid-column:1;grid-row:1;font-size:14px;line-height:1.5;max-height:44px}.intention-card .text-button,.has-game .intention-card .text-button{font-size:0;grid-column:2;min-height:44px}.intention-card .text-button:after{content:"↗";font-size:19px}.story-art{height:110px}.story-art svg{height:135px;width:190px}.story-copy>p{display:none}.story-panel{min-height:250px}.story-copy{padding-bottom:18px}.story-heading h2{font-size:30px}.story-top{padding-top:18px}.story-copy>button{padding-top:10px}.roll-card{bottom:80px;padding-top:10px;padding-bottom:8px}.roll-message{max-height:17px;font-size:11px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.game-layout{gap:12px}.session-stats{display:none}.experience-switch button{height:38px}}
@media(max-width:900px){.story-panel{height:340px;min-height:0}.story-top{padding-top:18px}.story-art{height:auto;min-height:70px;flex:1}.story-art svg{height:100%;max-height:170px;width:240px}.story-copy{flex:none;padding:8px 22px 18px}.story-heading{margin-bottom:10px}.story-heading h2{font-size:30px}.story-copy>p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5;margin-bottom:12px}.story-copy>button{min-height:44px;padding-top:11px}.story-edition{display:none}} @media(max-width:900px) and (min-height:950px){.story-panel{height:400px}.story-art svg{max-height:200px}} @media(max-width:900px) and (max-height:740px){header{min-height:56px;padding:10px 16px}.brand img{width:28px;height:28px}.brand>span{font-size:29px}.header-actions .icon-button{width:36px;height:36px}.intro,.has-game .intro{display:none!important}.intention-card,.has-game .intention-card{padding-bottom:6px}.intention-card p,.has-game .intention-card p{font-size:14px;line-height:1.4;max-height:40px}.intention-card .text-button,.has-game .intention-card .text-button{min-height:36px}.game-layout{gap:8px}.experience-switch{padding:3px}.experience-switch button{height:36px}.story-panel{height:225px}.story-art{min-height:55px}.story-art svg{width:160px;max-height:110px}.story-top{padding:14px 18px 0;font-size:9px}.story-copy{padding:5px 19px 14px}.story-heading{margin-bottom:4px}.story-heading h2{font-size:27px}.story-heading>span{font-size:31px}.story-copy>p{display:none}.story-copy>button{min-height:38px;padding-top:7px;font-size:12px}.story-copy>button>span:last-child{width:26px;height:26px}.art-coordinate{display:none}.roll-card{padding:10px 14px 8px}.roll-card .primary{min-height:48px}.roll-card .dice{height:46px}.roll-message{max-height:17px}.session-stats{display:none}}
@media(max-width:900px){dialog:not(.cell-sheet){background:linear-gradient(145deg,#f1ede1,#ddd6c6);color:#31382c;border-color:#faf1d9;border-radius:26px}dialog:not(.cell-sheet) h2{color:#343b2e}dialog:not(.cell-sheet) .eyebrow{color:#8b7956}dialog:not(.cell-sheet) .muted{color:#727764}dialog:not(.cell-sheet) label{color:#666c59}dialog:not(.cell-sheet) textarea{background:#fffaf155;border-color:#a99c734f;color:#363d2e}dialog:not(.cell-sheet) textarea::placeholder{color:#93947f}dialog:not(.cell-sheet) .suggestions button{background:#b8ab8812;border-color:#a99c7340;color:#79775e}dialog:not(.cell-sheet) .primary{background:#30382c;color:#f5eedc;border-color:#49513d}dialog:not(.cell-sheet) .dialog-close{background:#b8ab8815;color:#74715a}dialog:not(.cell-sheet)::backdrop{background:#090d10d9;backdrop-filter:blur(12px)}}
.story-heading h2{min-width:0;overflow-wrap:anywhere}.story-heading>span{flex-shrink:0}
.art-coordinate{display:none}

.form-error{color:#ffd1c4;background:rgba(189,77,49,.13);border:1px solid rgba(255,166,139,.3);border-radius:12px;padding:12px 14px;font-size:15px;line-height:1.5;margin:16px 0}.form-error[hidden]{display:none}
