@font-face{font-family:WanderPixel;src:url('pixel-font.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--bg:#102832;--panel:#173b43;--line:#3d686b;--muted:#9abbb1;--text:#f3e8c7;--sage:#8dd3ac;--gold:#f2cb75;--coral:#ed997e;--pixel:WanderPixel,'Courier New',monospace;--serif:var(--pixel);--sans:'Courier New',monospace;--ink:#0c202a}*{box-sizing:border-box}html{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:14px}body{margin:0;background-color:var(--bg);background-image:linear-gradient(45deg,#14323a 25%,transparent 25%,transparent 75%,#14323a 75%),linear-gradient(45deg,#14323a 25%,transparent 25%,transparent 75%,#14323a 75%);background-position:0 0,4px 4px;background-size:8px 8px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;border:0}button,a,svg,img{image-rendering:pixelated}button{transition:filter .1s}button:disabled{opacity:.55;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:4px}button:hover:not(:disabled){filter:brightness(1.15)}button:active:not(:disabled){translate:0 2px}[hidden]{display:none!important}.pixel-sprite{width:32px;height:32px;display:inline-block;vertical-align:middle;flex:none;overflow:visible;pointer-events:none;shape-rendering:crispEdges}.app-shell{max-width:1480px;margin:auto;padding:0 4%}.topbar{height:92px;border-bottom:3px solid var(--line);box-shadow:0 3px 0 var(--ink);display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{color:var(--gold);text-decoration:none;font:26px var(--pixel);display:flex;align-items:center;gap:14px;white-space:nowrap;text-shadow:3px 3px var(--ink)}.brand-icon{display:flex;align-items:center}.brand-icon .pixel-sprite{width:36px;height:36px}.edition{font:9px/1.6 var(--pixel);color:var(--muted);border-left:3px solid var(--line);margin-left:5px;padding-left:20px;max-width:170px;white-space:normal;text-shadow:none}nav{display:flex;align-items:center;gap:14px}.text-button{background:none;font:10px var(--pixel);color:var(--text);padding:10px}.text-button span{border:2px solid #7fa198;font:12px var(--pixel);padding:3px 6px;margin-left:7px}.icon-button{width:40px;height:40px;background:#15343c;color:var(--text);border:2px solid var(--line);box-shadow:3px 3px 0 var(--ink);font:20px var(--pixel);position:relative;display:inline-grid;place-items:center;padding:6px}.icon-button .pixel-sprite{width:24px;height:24px}.journey-heading{display:flex;align-items:center;justify-content:space-between;padding:33px 0 28px;gap:25px}.eyebrow{font:9px/1.6 var(--pixel);color:var(--sage);margin:0 0 11px}.journey-heading h1{font:28px/1.4 var(--pixel);margin:0 0 8px;color:var(--text);text-shadow:3px 3px 0 var(--ink)}.region-description{font-size:12px;color:var(--muted);margin:0;line-height:1.7}.chapter-stepper{display:flex;gap:10px;align-items:center;font:8px var(--pixel);color:#789991}.chapter-stepper span{display:flex;align-items:center;gap:7px;white-space:nowrap}.chapter-stepper b{font:11px var(--pixel);border:2px solid #496967;width:31px;height:31px;display:grid;place-items:center;background:#102932}.chapter-stepper .active{color:var(--gold)}.chapter-stepper .active b{border-color:var(--gold);box-shadow:3px 3px 0 #725f44}.chapter-stepper .complete{color:var(--sage)}.chapter-stepper i{height:3px;width:16px;background:var(--line)}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:26px}.board-panel{border:4px solid #658b79;box-shadow:4px 4px 0 #081b25,inset 0 0 0 4px #143039;overflow:hidden;background-color:#1b4048;position:relative}.board-topline{position:absolute;top:19px;left:21px;right:21px;display:flex;justify-content:space-between;align-items:center;z-index:3;font:8px var(--pixel);color:#cae2bf;gap:10px}.live-dot{display:inline-block;background:var(--sage);width:6px;height:6px;box-shadow:2px 2px 0 #395b4b;margin-right:7px}.small-button{background:#173840;color:var(--text);font:9px var(--pixel);padding:8px 9px;border:2px solid var(--line)}.small-button span{margin-left:5px}.board{width:100%;position:relative;aspect-ratio:760/610;isolation:isolate;overflow:hidden}.board-atmosphere{position:absolute;inset:0;background-image:linear-gradient(90deg,#8bbd9f0c 2px,transparent 2px),linear-gradient(#8bbd9f0c 2px,transparent 2px);background-size:32px 32px}.board:before,.board:after{content:'';position:absolute;background:#274a50;z-index:-1;height:16px;left:23%;right:23%;top:60%;box-shadow:16px -16px #274a50,-16px 16px #274a50,48px 32px #274a50,-32px 48px #274a50;opacity:.8}.board:after{top:36%;left:36%;right:36%;background:#315457;box-shadow:32px -16px #315457,-32px 16px #315457;opacity:.6}.board-path{position:absolute;inset:0;width:100%;height:100%;shape-rendering:crispEdges}.board-path #ring-path{fill:none;stroke:#76968a;stroke-width:2;stroke-dasharray:3 7}.board-path #route-path{fill:none;stroke:var(--gold);stroke-width:3;stroke-dasharray:5 5}.island-art{position:absolute;left:5%;top:8%;width:90%;height:62%;object-fit:contain;pointer-events:none;image-rendering:pixelated}.compass{position:absolute;left:47%;top:9%;display:flex;flex-direction:column;align-items:center;color:#d9cb97;font:8px var(--pixel)}.compass .pixel-sprite{width:24px;height:24px;opacity:.65}.compass small{font-size:6px;letter-spacing:5px;margin:3px 0 0 5px}.center-caption{position:absolute;left:23%;right:23%;top:67%;text-align:center;pointer-events:none}.center-caption p{font:7px var(--pixel);color:#a7c8aa;margin:0 0 8px}.center-caption h2{font:16px/1.5 var(--pixel);color:#ffe6a4;margin:0;text-shadow:2px 2px #10282e}.shrine-indicators{display:flex;gap:9px;justify-content:center;margin-top:12px}.shrine-indicators span{width:8px;height:8px;border:2px solid #a6c092;background:#173b43;box-shadow:2px 2px #10262e}.shrine-indicators .lit{background:var(--gold);border-color:#fff3b7}.tile{position:absolute;width:8%;aspect-ratio:1;border:3px solid #648f7b;background:#31564d;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);box-shadow:0 5px 0 #0c2731,3px 5px 0 #0c2731;z-index:2;padding:0;color:#c9dfb4}.tile:after{content:'';position:absolute;inset:3px;border-top:2px solid #92be872d;border-left:2px solid #92be872d;pointer-events:none}.tile-icon{display:grid;place-items:center;pointer-events:none}.tile-icon .pixel-sprite{width:32px;height:32px}.tile-number{position:absolute;font:6px var(--pixel);color:#b0c3a6;bottom:2px;right:3px;pointer-events:none}.tile.shrine{border-color:#c1a45d;background:#4b543d}.tile.lit{background:#7a6d3b;border-color:#ffe2a0;box-shadow:0 5px 0 #514c36,3px 5px 0 #10272d}.tile.danger{background:#593f44;border-color:#a56d65}.tile.ruin{background:#414958;border-color:#7b8593}.tile.market{background:#55503c;border-color:#a59b6b}.tile.well,.tile.current{background:#295d5d;border-color:#67aaa2}.tile.destination{border-color:#fff0af;outline:3px solid var(--gold);outline-offset:3px;z-index:4}.tile.current:not(.destination){border-color:#f2d297}.tile:hover{transform:translate(-50%,-50%) translateY(-3px);filter:brightness(1.15)}.ship{position:absolute;z-index:5;transform:translate(-50%,-87%);pointer-events:none;transition:left .45s steps(8),top .45s steps(8)}.ship>span{display:flex;align-items:center;justify-content:center;filter:drop-shadow(2px 3px #0b2630)}.ship .pixel-sprite{width:40px;height:40px}.ship i{display:none}.map-coordinate{font:6px/1.8 var(--pixel);color:#8ab098;position:absolute;bottom:18px}.map-coordinate.left{left:21px}.map-coordinate.right{text-align:right;right:21px}.board-footer{min-height:76px;border-top:3px solid #446b63;background:#17353d;display:flex;align-items:center;gap:14px;padding:16px 21px}.weather-icon{width:32px;flex:none}.weather-icon .pixel-sprite{width:32px;height:32px}.board-footer span{font:11px/1.5 var(--pixel);color:#f0dfb4}.board-footer small{display:block;color:#9cbaae;font-size:11px;margin-top:6px;line-height:1.6}.board-footer .seed-label{font:7px var(--pixel);color:#78988b;margin-left:auto;white-space:nowrap}.voyage-panel{display:flex;flex-direction:column}.status-row{display:flex;justify-content:space-between;border-bottom:3px solid var(--line);padding:1px 0 18px}.status-row .eyebrow{display:block;font-size:8px}.hearts{display:flex;align-items:center;gap:3px;min-height:22px}.hearts>span{display:flex}.hearts .pixel-sprite{width:16px;height:16px}.hearts .empty{opacity:.22;filter:grayscale(1)}.hearts small{color:var(--muted);font-size:11px;margin-left:5px}.supplies{text-align:right}.supplies strong{font:22px var(--pixel);display:flex;align-items:center;gap:8px}.supplies .pixel-sprite{width:24px;height:24px}.supplies b{font-weight:400}.storm-panel{padding:20px 0 17px;border-bottom:3px solid var(--line)}.storm-heading{display:flex;align-items:center;justify-content:space-between;font:8px/1.5 var(--pixel);color:#afc9b5;gap:8px}.storm-heading b{font:11px var(--pixel);color:var(--gold);white-space:nowrap}.storm-heading em{font-style:normal;color:#729486}.storm-track{height:10px;background:#0c2530;border:2px solid #4e7165;margin-top:12px;overflow:hidden}.storm-track div{height:100%;background:var(--gold);transition:width .3s steps(4);box-shadow:inset 0 -2px #bf915c}.storm-panel p{font-size:11px;color:#9bb9ab;margin:10px 0 0;line-height:1.6}.turn-panel{padding:22px 0}.section-label{display:flex;justify-content:space-between;align-items:center;color:var(--sage);font:8px/1.6 var(--pixel);gap:8px}.tiny-dice{display:flex}.tiny-dice .pixel-sprite{width:16px;height:16px}.turn-panel h2{font:20px/1.5 var(--pixel);margin:13px 0 9px;color:#f6e6bb;text-shadow:2px 2px #071f29}.turn-panel>p{font-size:12px;color:#bad0ba;line-height:1.7;min-height:41px;margin:0}.dice-tray{display:flex;gap:23px;align-items:center;justify-content:center;padding:28px 0 32px}.die{width:66px;height:66px;border:3px solid #fff1c2;box-shadow:0 6px #9b9569,5px 6px #0d2730;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:11px;gap:5px;position:relative;transform:none}.die:after{content:'';position:absolute;left:2px;top:2px;right:2px;height:3px;background:#ffffff55}.die.ivory{background:#f4e5b5;color:#23463f}.die.sage{background:#93c6a5;color:#1d4a43;border-color:#c7e6ad;box-shadow:0 6px #4b806c,5px 6px #0d2730}.pip{width:8px;height:8px;background:currentColor;align-self:center;justify-self:center}.pip.off{visibility:hidden}.dice-between .pixel-sprite{width:16px;height:16px}.dice-tray.rolling .die{animation:roll .35s steps(2) infinite}.dice-tray.rolling .sage{animation-delay:.13s}@keyframes roll{0%,100%{translate:0 0}25%{translate:-4px -8px}50%{translate:4px -12px}75%{translate:0 -4px}}.primary-button{display:flex;justify-content:space-between;align-items:center;width:100%;padding:17px 17px;background:var(--gold);border:3px solid #ffe4a5;color:#1e3c39;box-shadow:0 5px #9c7750,4px 5px #0a2630;font:11px/1.5 var(--pixel);text-align:left;gap:10px}.primary-button b{font:18px var(--pixel);line-height:1}.primary-button:hover{background:#ffdb86}.bonus-note{text-align:center;color:var(--gold);font:9px/1.6 var(--pixel);margin-top:12px}.route-switch{display:flex;gap:6px;margin-bottom:12px}.route-switch button{width:50%;background:#173841;border:2px solid var(--line);padding:11px 3px;font-size:11px;color:var(--muted)}.route-switch .selected{border-color:var(--gold);color:var(--gold);background:#344a3d}.route-options{display:flex;flex-direction:column;gap:9px;margin:10px 0 14px}.route-option{text-align:left;border:2px solid #4c7468;background:#173840;padding:11px;display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center}.route-option .route-icon .pixel-sprite{width:32px;height:32px}.route-option.selected{border-color:var(--gold);background:#2a473e;box-shadow:3px 3px #0b2530}.route-option b{display:block;font-size:12px;font-weight:bold;line-height:1.5;color:#eaddb8}.route-option small{display:block;font-size:10px;color:#acc8af;line-height:1.6;margin-top:4px}.log-panel{border-top:3px solid var(--line);padding-top:18px;margin-top:auto}.log-panel .section-label{color:var(--sage)}.log-panel #journal{font-size:12px;line-height:1.8;color:#d7dfbd;margin-top:13px;min-height:48px}.journal-old{color:#8eaa99;font-size:11px;display:block;margin-top:6px}.relic-strip{display:flex;gap:8px;margin-top:13px;flex-wrap:wrap}.relic-badge{font:8px/1.5 var(--pixel);background:#203d3d;color:#bdd5a7;border:2px solid #466b59;padding:6px;display:flex;gap:5px;align-items:center}.relic-badge .pixel-sprite{width:16px;height:16px}.hand-section{padding:30px 0 27px}.hand-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.hand-heading h2{font:21px var(--pixel);margin:0;color:#f7e6b8}.hand-heading h2 span{font:10px var(--pixel);color:#9ab799;margin-left:10px;vertical-align:middle}.hand-heading>p{margin-left:auto;font-size:12px;line-height:1.8;color:#c0d0aa}.hand-heading>p span{color:#8eaf99}.hand-heading .eyebrow{font-size:8px}.deck-button{display:flex;align-items:center;gap:12px;margin-left:18px;background:none;border-left:3px solid var(--line);padding:3px 0 3px 23px}.deck-button .pixel-sprite{width:32px;height:32px}.deck-button b{display:block;font:16px var(--pixel);text-align:left}.deck-button small{font:7px var(--pixel);color:#9fb695;margin-top:7px;display:block}.cards{display:flex;gap:13px;min-height:258px}.card{width:calc((100% - 65px)/6);min-width:0;min-height:258px;position:relative;text-align:left;background:#e7dba9;color:#213e37;border:3px solid #faebba;padding:13px 12px 12px;box-shadow:0 5px 0 #9d8b5b,4px 5px 0 #0a202a;display:flex;flex-direction:column;overflow:hidden;transform-origin:bottom}.card:nth-child(even){background:#a6c39a;border-color:#c5d6ac}.card:nth-child(3n){background:#dcb58b;border-color:#f0d0a0}.card:before{content:'';border:2px solid #47654644;position:absolute;inset:4px;pointer-events:none}.card:disabled{opacity:.72}.card:hover:not(:disabled){translate:0 -5px;box-shadow:0 10px 0 #9d8b5b,4px 10px 0 #0a202a}.card-top{font:7px/1.5 var(--pixel);display:flex;justify-content:space-between;color:#416344;position:relative;gap:4px}.card-top span:last-child{font-size:10px}.card-art{display:grid;place-items:center;height:104px;margin:5px 0 12px;position:relative;background-image:linear-gradient(45deg,#56724d15 25%,transparent 25%,transparent 75%,#56724d15 75%),linear-gradient(45deg,#56724d15 25%,transparent 25%,transparent 75%,#56724d15 75%);background-position:0 0,4px 4px;background-size:8px 8px;border-bottom:2px solid #375b3c33}.card-art:before{content:'';width:68px;height:68px;background:#eff0b636;position:absolute;border:2px solid #54744e33;box-shadow:4px 4px 0 #476c401c}.card-art>span{z-index:1;display:flex}.card-art .pixel-sprite{width:64px;height:64px}.card h3{font:12px/1.6 var(--pixel);margin:0 0 9px;color:#214335}.card-description{font-size:11px;line-height:1.65;margin:0;flex:1;font-weight:bold}.card-action{border-top:2px solid #4c654c55;display:flex;justify-content:space-between;align-items:center;font:7px/1.5 var(--pixel);margin-top:14px;padding-top:9px;color:#3b5f43}.card-action span{font-size:17px;line-height:.6}.empty-card{width:calc((100% - 65px)/6);min-height:258px;border:3px dashed #466b59;display:flex;align-items:center;justify-content:center;color:#567864;background:#17363e}.empty-card .pixel-sprite{width:32px;height:32px;opacity:.3}.page-footer{border-top:3px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:23px 0 28px;font:7px/1.8 var(--pixel);color:#98b49b}.page-footer i{font-style:normal;color:var(--gold);margin:0 5px}.modal-backdrop{position:fixed;inset:0;background:#061e29ed;z-index:30;display:flex;align-items:center;justify-content:center;padding:25px}.modal{position:relative;background:#193d44;border:4px solid #adbb82;box-shadow:6px 6px 0 #081d28,inset 0 0 0 4px #284f4b;max-width:780px;width:100%;max-height:90dvh;overflow:auto;padding:40px;color:#e6e7c0;outline:none}.modal-close{position:absolute;right:13px;top:13px;border-color:#789775;z-index:2;font-size:22px}.modal .eyebrow{color:var(--gold)}.modal h2{font:26px/1.5 var(--pixel);margin:12px 0 18px;color:#ffedb4;text-shadow:3px 3px #102a32}.modal p{color:#bed0b4;line-height:1.85;font-size:13px}.modal .lead{font-size:16px;line-height:1.8;color:#e1e3bd}.modal .modal-actions{display:flex;gap:13px;margin-top:26px}.modal-actions>*{flex:1}.secondary-button{border:2px solid #829e77;background:#25483f;color:var(--text);padding:14px 16px;box-shadow:3px 3px #0b2730;font:10px/1.5 var(--pixel)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:27px 0}.steps>div{padding-top:17px;border-top:3px solid #557660}.steps span{color:var(--gold);font:25px var(--pixel)}.steps h3{font:15px/1.5 var(--pixel);margin:12px 0}.steps p{font-size:12px;line-height:1.8}.modal .setting-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;border-bottom:2px solid var(--line);font-size:13px}.setting-row button{font-size:10px;padding:10px 13px;flex:none}.mode-select{display:flex;gap:12px;margin-top:25px}.mode-select button{flex:1;border:2px solid #638567;background:#19353b;color:#d3dbb1;padding:14px;text-align:left;font:11px/1.6 var(--pixel)}.mode-select button small{display:block;font:12px/1.7 var(--sans);color:#aec7ac;margin-top:8px}.mode-select .selected{border-color:var(--gold);background:#334b3e;color:var(--gold);box-shadow:3px 3px #0a2630}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:#f0dfaa;color:#1c3b35;border:3px solid #fff1be;padding:15px 22px;box-shadow:4px 4px #081e28;font:12px/1.7 var(--sans);z-index:80;max-width:90%}.legend-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-top:23px}.legend-item{display:grid;grid-template-columns:32px 1fr;gap:13px;padding:13px;border:2px solid #4e7965;background:#17353c}.legend-item b{font:13px/1.6 var(--pixel)}.legend-item p{font-size:12px;margin:8px 0 0;line-height:1.7}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.collection-grid .card{width:100%;min-height:268px}.relic-choices{display:flex;gap:14px;margin-top:27px}.relic-choice{flex:1;display:flex;flex-direction:column;align-items:center;padding:25px 15px;border:3px solid #8eaa73;background:#284c40;box-shadow:4px 4px #0b2730;min-height:240px}.relic-choice>span .pixel-sprite{width:48px;height:48px}.relic-choice h3{font:15px/1.5 var(--pixel);margin:17px 0 9px}.relic-choice p{font-size:12px;line-height:1.7;margin:0;text-align:center;flex:1}.relic-choice small{color:var(--gold);font:8px/1.6 var(--pixel);margin-top:20px}.shop{padding:15px;border:3px solid #a49a68;margin-bottom:18px;background:#28493d}.shop h3{font:13px/1.5 var(--pixel);margin:0 0 12px;color:var(--gold)}.shop-buttons{display:flex;gap:7px}.shop-buttons button{font-size:11px;border:2px solid #82966a;background:#173a3b;padding:10px 5px;flex:1}.shop small{font-size:11px;color:var(--muted);display:block;margin-top:10px;line-height:1.7}.end-stats{display:flex;gap:30px;margin:27px 0}.end-stats b{font:30px var(--pixel);color:var(--gold);display:block}.end-stats small{font:8px/1.5 var(--pixel);color:var(--muted)}.start-emblem{text-align:center;margin:0 0 23px}.start-emblem .pixel-sprite{width:64px;height:64px}.welcome-modal{text-align:center}.welcome-modal .modal-actions{text-align:left}.welcome-modal .mode-select{text-align:left}.seed-input{background:#102f38;border:3px solid #5e8269;color:var(--text);font:13px var(--sans);padding:13px;width:100%;margin-top:9px}.seed-field{display:block;font:9px/1.6 var(--pixel);color:var(--muted);margin-top:20px;text-align:left}.save-note{font-size:11px!important}.tile-detail-icon .pixel-sprite{width:64px;height:64px}.muted{color:var(--muted)}
@media(max-width:1150px){.app-shell{padding:0 3%}.game-layout{grid-template-columns:minmax(0,1fr) 285px;gap:21px}.wordmark{font-size:23px}.edition{display:none}.chapter-stepper{gap:7px;font-size:7px}.chapter-stepper i{width:9px}.journey-heading h1{font-size:24px}.center-caption h2{font-size:14px}.center-caption p{font-size:6px}.board-footer{padding:15px;gap:11px}.board-footer .seed-label{display:none}.board-footer span{font-size:10px}.board-footer small{font-size:10px}.cards{gap:10px}.card,.empty-card{width:calc((100% - 50px)/6)}.card{padding:12px 9px;min-height:265px}.card h3{font-size:11px}.card-description{font-size:10px}.card-top{font-size:6px}.card-art .pixel-sprite{width:48px;height:48px}.card-art:before{width:56px;height:56px}.board-topline{left:15px;right:15px;top:12px;font-size:7px}.small-button{font-size:8px;padding:7px}.tile-icon .pixel-sprite{width:24px;height:24px}.tile{border-width:2px}.ship .pixel-sprite{width:32px;height:32px}.log-panel #journal{min-height:40px}.turn-panel{padding:18px 0}.turn-panel h2{font-size:18px}.dice-tray{padding:23px 0 27px}.storm-panel{padding:17px 0}.die{width:60px;height:60px;padding:10px;gap:4px}.pip{width:7px;height:7px}.primary-button{font-size:10px}.status-row .eyebrow{font-size:7px}.hearts .pixel-sprite{width:14px;height:14px}.hearts{gap:2px}.hearts small{font-size:10px}.board-panel{align-self:start}.log-panel{margin-top:0}.page-footer{font-size:6px}}
@media(max-width:850px){.topbar{height:78px}.chapter-stepper span{font-size:0;gap:0}.chapter-stepper b{font-size:10px}.journey-heading{padding:26px 0}.game-layout{grid-template-columns:minmax(0,1fr) 254px;gap:16px}.journey-heading h1{font-size:22px}.tile{width:8.2%}.tile:after{inset:2px;border-width:1px}.tile-icon .pixel-sprite{width:20px;height:20px}.tile-number{font-size:5px;bottom:1px;right:2px}.center-caption{top:66%;left:20%;right:20%}.center-caption h2{font-size:11px}.center-caption p{font-size:5px;line-height:1.7;margin-bottom:4px}.shrine-indicators{margin-top:8px;gap:7px}.shrine-indicators span{width:6px;height:6px;border-width:1px}.map-coordinate{font-size:4px;bottom:13px}.board-topline{font-size:6px;left:10px;right:10px;top:8px}.small-button{font-size:6px;padding:6px;border-width:1px}.board-footer{padding:12px;gap:9px}.board-footer small{font-size:9px}.board-footer span{font-size:9px}.weather-icon,.weather-icon .pixel-sprite{width:24px;height:24px}.card,.empty-card{min-width:158px;width:158px}.cards{overflow-x:auto;padding:7px 1px 13px;scroll-snap-type:x mandatory;margin-top:-7px}.card{scroll-snap-align:start;flex:none;min-height:259px;padding:13px 12px}.card h3{font-size:12px}.card-description{font-size:11px}.card-art .pixel-sprite{width:64px;height:64px}.empty-card{flex:none}.hand-section{padding-top:25px}.hand-heading>p{font-size:11px}.page-footer>span:last-child{display:none}.turn-panel h2{font-size:17px}.turn-panel>p{font-size:11px}.section-label{font-size:7px}.dice-tray{padding:22px 0 25px;gap:16px}.status-row{padding-bottom:14px}.storm-panel{padding:14px 0}.storm-heading{font-size:7px}.storm-panel p{font-size:10px}.die{width:56px;height:56px;padding:9px;gap:4px}.pip{width:7px;height:7px}.primary-button{padding:15px}.board-panel{border-width:3px}.compass{top:9%}.compass .pixel-sprite{width:16px;height:16px}.compass span{font-size:5px}.compass small{font-size:4px;letter-spacing:3px}}
@media(max-width:650px){.app-shell{padding:0 5%}.topbar{height:76px;gap:8px}.wordmark{font-size:17px;gap:7px;text-shadow:2px 2px var(--ink)}.brand-icon .pixel-sprite{width:24px;height:24px}.topbar nav{gap:7px}.text-button{font-size:0;padding:0;width:36px;height:36px}.text-button span{font:12px var(--pixel);margin:0;display:grid;place-items:center;width:36px;height:36px;padding:0}.topbar .icon-button{width:36px;height:36px;padding:5px}.topbar .icon-button .pixel-sprite{width:22px;height:22px}.journey-heading{padding:26px 0 23px;align-items:flex-start;gap:9px}.journey-heading h1{font-size:22px;line-height:1.5}.journey-heading .eyebrow{font-size:6px;line-height:1.8;margin-bottom:9px}.region-description{font-size:11px;max-width:236px;line-height:1.6}.chapter-stepper{gap:3px;padding-top:26px}.chapter-stepper b{width:22px;height:22px;font-size:8px}.chapter-stepper i{width:6px;height:2px}.game-layout{display:flex;flex-direction:column;gap:25px}.board-panel{width:100%;box-shadow:3px 3px #081b25}.board{aspect-ratio:760/640}.board-topline{font-size:5px;top:10px;left:10px;right:10px;gap:6px}.small-button{font-size:6px;padding:6px}.board-footer{min-height:75px;padding:13px 12px}.board-footer small{font-size:10px}.board-footer span{font-size:9px}.tile{width:8.3%;border-width:2px;box-shadow:0 3px #0c2731,2px 3px #0c2731}.tile-icon .pixel-sprite{width:18px;height:18px}.tile-number{font-size:4px;bottom:0;right:1px}.island-art{top:7%;height:60%;width:90%;left:5%}.center-caption{top:65%;left:19%;right:19%}.center-caption h2{font-size:10px;white-space:nowrap;line-height:1.6}.center-caption p{font-size:4px;line-height:1.6;margin-bottom:6px}.shrine-indicators{margin-top:8px;gap:7px}.map-coordinate.left{left:12px}.map-coordinate.right{right:12px}.ship .pixel-sprite{width:28px;height:28px}.tile.destination{outline-width:2px;outline-offset:2px}.voyage-panel{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.status-row{border-bottom:0;padding-top:3px;padding-bottom:17px}.status-row .eyebrow{font-size:6px;margin-bottom:8px}.hearts .pixel-sprite{width:11px;height:11px}.hearts{gap:2px}.hearts small{font-size:9px;margin-left:2px}.supplies strong{font-size:18px;gap:5px}.supplies .pixel-sprite{width:18px;height:18px}.storm-panel{padding:3px 0 17px;border-bottom:0}.storm-heading{font-size:5px;line-height:1.8;gap:4px}.storm-heading b{font-size:8px}.storm-track{margin-top:9px;height:8px}.storm-panel p{font-size:9px;line-height:1.5;margin-top:7px}.turn-panel{grid-column:1/-1;border-top:3px solid var(--line);padding:21px 0 18px;display:grid;grid-template-columns:1fr 132px;gap:0 10px}.turn-panel .section-label{grid-column:1/-1;font-size:6px}.turn-panel h2{font-size:18px;grid-column:1;align-self:end;margin:11px 0 10px;line-height:1.6}.turn-panel>p{grid-column:1;font-size:11px;line-height:1.7;margin:0}.dice-tray{grid-column:2;grid-row:2/4;padding:15px 0 18px;gap:10px}.dice-between .pixel-sprite{width:12px;height:12px}.die{width:48px;height:48px;border-width:2px;padding:8px;gap:3px;box-shadow:0 4px #9b9569,3px 4px #0d2730}.die.sage{box-shadow:0 4px #4b806c,3px 4px #0d2730}.pip{width:6px;height:6px}.primary-button,.route-controls,.bonus-note{grid-column:1/-1}.primary-button{padding:16px 17px;margin-top:17px;font-size:11px}.route-options{flex-direction:column;gap:10px}.route-option{width:100%;grid-template-columns:32px 1fr;padding:12px}.route-option b{font-size:12px}.route-option small{font-size:11px}.route-controls{margin-top:17px}.route-controls .primary-button{margin-top:14px}.route-switch button{padding:11px;font-size:11px}.bonus-note{margin-top:10px;font-size:8px}.log-panel{grid-column:1/-1;padding:17px 0 0}.log-panel .section-label{font-size:7px}.log-panel #journal{font-size:12px;margin-top:11px;min-height:36px}.journal-old{display:none}.relic-strip{grid-column:1/-1}.hand-section{padding-top:28px}.hand-heading{gap:10px;margin-bottom:19px}.hand-heading .eyebrow{font-size:6px}.hand-heading h2{font-size:20px}.hand-heading h2 span{font-size:8px}.hand-heading>p{display:none}.deck-button{padding-left:14px;margin-left:auto;gap:8px}.deck-button small{font-size:5px;line-height:1.6}.deck-button b{font-size:14px}.deck-button .pixel-sprite{width:24px;height:24px}.cards{gap:13px}.card,.empty-card{min-width:158px;width:158px}.card{padding:13px 12px;min-height:270px}.card h3{font-size:12px}.card-description{font-size:11px}.card-art{height:104px}.page-footer{font-size:5px;gap:12px;line-height:1.8;padding-top:19px}.page-footer>span{max-width:55%}.page-footer>span:nth-child(2){text-align:right}.modal-backdrop{padding:17px}.modal{padding:37px 22px;max-height:92dvh;border-width:3px;box-shadow:4px 4px #081d28,inset 0 0 0 3px #284f4b}.modal h2{font-size:21px;line-height:1.6}.modal .lead{font-size:15px}.modal p{font-size:12px}.modal-close{right:9px;top:9px}.steps{grid-template-columns:1fr;gap:7px;margin:22px 0}.steps>div{padding:12px 0;display:grid;grid-template-columns:38px 1fr;gap:0 11px}.steps span{grid-row:1/3;font-size:22px}.steps h3{margin:0 0 6px;font-size:14px}.steps p{margin:0;font-size:12px}.mode-select{gap:10px}.mode-select button{font-size:9px;padding:12px}.mode-select button small{font-size:11px}.modal .modal-actions{flex-direction:column;gap:14px;margin-top:23px}.modal-actions .primary-button{margin-top:0}.collection-grid{grid-template-columns:repeat(2,1fr);gap:13px}.collection-grid .card{min-width:0;min-height:264px;padding:12px}.collection-grid .card h3{font-size:10px}.legend-grid{grid-template-columns:1fr}.relic-choices{flex-direction:column}.relic-choice{display:grid;grid-template-columns:40px 1fr;gap:5px 14px;padding:18px;text-align:left;min-height:0;align-items:center}.relic-choice>span{grid-row:1/4}.relic-choice>span .pixel-sprite{width:40px;height:40px}.relic-choice h3{margin:0;font-size:13px}.relic-choice p{text-align:left;font-size:12px}.relic-choice small{margin-top:8px;font-size:7px}.shop{grid-column:1/-1}.toast{font-size:12px;padding:13px 17px;bottom:21px;width:max-content;max-width:90%}.end-stats{gap:20px}.end-stats b{font-size:24px}.end-stats small{font-size:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.card-top .pixel-sprite{width:10px;height:10px}

.tutorial-launch{display:inline-block;margin-top:13px;padding:9px 12px;border:2px solid #71997a;background:#244e42;color:var(--gold);font:9px/1.5 var(--pixel);box-shadow:3px 3px #0b252e}
.tutorial-guide{position:sticky;top:8px;z-index:12;border:3px solid var(--gold);background:#183a42;box-shadow:5px 5px #081e29;padding:16px 20px;margin:0 0 27px;scroll-margin-top:12px}
.tutorial-status{display:flex;justify-content:space-between;align-items:center;gap:15px;font:8px/1.6 var(--pixel);color:var(--gold)}
.tutorial-status>span{display:flex;align-items:center;gap:9px}.tutorial-status .pixel-sprite{width:20px;height:20px}
.tutorial-status>button{background:transparent;border:1px solid #799a7a;color:#d3ddbb;font:8px/1.6 var(--pixel);padding:7px 9px;flex:none}
.tutorial-copy h2{font:17px/1.6 var(--pixel);margin:10px 0 7px;color:#ffe8a3}.tutorial-copy p{font:13px/1.75 var(--sans);color:#e3e5c0;margin:0;max-width:1000px}
.tutorial-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:12px}.tutorial-bottom>span{font:11px/1.7 var(--sans);color:#abd3ae}.tutorial-bottom .primary-button{width:auto;flex:none;font-size:9px;padding:10px 13px}
.tutorial-progress{display:flex;gap:5px;margin-top:16px}.tutorial-progress i{height:4px;flex:1;background:#46695e}.tutorial-progress .done{background:var(--gold)}
.lesson-target{outline:3px dashed #ffdc7f!important;outline-offset:6px;scroll-margin-top:230px;scroll-margin-bottom:30px}.lesson-destination{border-color:#fff0ab!important;box-shadow:0 5px #9e7e4c,3px 5px #10272d!important}.in-tutorial .route-option:disabled{opacity:.6}.in-tutorial .route-option.selected:disabled{opacity:1}.in-tutorial .card:disabled{opacity:.48}.in-tutorial .tutorial-launch{opacity:.6}
@media(max-width:650px){.tutorial-launch{font-size:7px;margin-top:12px;padding:8px 10px}.tutorial-guide{top:5px;padding:12px;margin-bottom:22px;border-width:2px;box-shadow:3px 3px #081e29}.tutorial-status{font-size:6px;gap:8px}.tutorial-status>span{gap:6px}.tutorial-status .pixel-sprite{width:16px;height:16px}.tutorial-status>button{font-size:6px;padding:7px}.tutorial-copy h2{font-size:13px;line-height:1.6;margin:9px 0 6px}.tutorial-copy p{font-size:12px;line-height:1.6}.tutorial-bottom{gap:10px;align-items:flex-start;flex-direction:column;margin-top:9px}.tutorial-bottom>span{font-size:11px;line-height:1.5}.tutorial-bottom .primary-button{margin-top:2px;padding:10px 12px;font-size:8px;width:100%}.tutorial-progress{margin-top:12px;gap:4px}.lesson-target{outline-width:2px;outline-offset:4px;scroll-margin-top:280px}.in-tutorial .hand-section{padding-top:28px}}
@media(max-height:520px) and (min-width:651px){.tutorial-guide{top:3px;padding:8px 12px;margin-bottom:18px}.tutorial-status{font-size:6px}.tutorial-status .pixel-sprite{width:14px;height:14px}.tutorial-status>button{font-size:6px;padding:4px 7px}.tutorial-copy h2{font-size:12px;margin:4px 0}.tutorial-copy p{font-size:11px;line-height:1.4}.tutorial-bottom{margin-top:6px;gap:10px}.tutorial-bottom>span{font-size:10px;line-height:1.4}.tutorial-bottom .primary-button{font-size:8px;padding:6px 9px}.tutorial-progress{margin-top:8px}.lesson-target{scroll-margin-top:170px}}
