/* Legacy DOS glyphs are used only for decimal numbers; UI symbols use the system font. */
@font-face{font-family:PixelDOS;src:url('assets/source-ui/PerfectDOSVGA437.ttf') format('truetype');font-display:swap;unicode-range:U+002E,U+0030-0039}
:root{color-scheme:dark;--ink:#f4eacb;--blue:#1591fd;--yellow:#f5d428;--red:#ec1b0a;--green:#64b77d;--wood:#463932;--font:PixelDOS,"PingFang SC","Microsoft YaHei",monospace}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#171e26;color:var(--ink);font-family:var(--font)}body{display:grid;place-items:center}button,input,select{font:inherit}button{color:inherit;border:0;background:none;padding:0;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:2px solid #fff3a4;outline-offset:2px;z-index:15}button:disabled{cursor:default;filter:grayscale(.7) brightness(.55)}img{image-rendering:pixelated;user-select:none;-webkit-user-drag:none}button img{pointer-events:none}button:active:not(:disabled){filter:brightness(1.25)}[hidden]{display:none!important}#viewport{position:relative;flex:none;overflow:hidden;box-shadow:0 0 80px #0007}.game{position:absolute;left:0;top:0;width:320px;height:694px;transform-origin:0 0;overflow:hidden;background:#3c322e url('assets/source-ui/Bg_WoodFloor.png') repeat;background-size:128px 64px;image-rendering:pixelated;isolation:isolate;user-select:none}.battlefield{position:absolute;inset:0 0 auto;height:154px;overflow:hidden;border-bottom:3px solid #685443;background:#739aaf}.sky{position:absolute;inset:0;background:linear-gradient(#6589a2 0 38%,#b5c8bd 100%)}.sky:after,.sky:before{content:"";position:absolute;background:#d7e1ce;width:120px;height:23px;top:18px;left:48px;clip-path:polygon(0 50%,12% 50%,12% 28%,24% 28%,24% 0,43% 0,43% 17%,60% 17%,60% 39%,82% 39%,82% 67%,100% 67%,100% 100%,0 100%);opacity:.75}.sky:after{top:2px;left:226px;width:95px;height:30px;opacity:.55}.mountain{position:absolute;left:0;right:0;bottom:25px;height:99px;clip-path:polygon(0 50%,8% 50%,8% 40%,15% 40%,15% 22%,23% 22%,23% 5%,30% 5%,30% 30%,35% 30%,35% 42%,42% 42%,42% 70%,49% 70%,49% 42%,58% 42%,58% 20%,65% 20%,65% 0,70% 0,70% 22%,76% 22%,76% 40%,85% 40%,85% 16%,93% 16%,93% 42%,100% 42%,100% 100%,0 100%);background:#6e8991}.mountain.near{height:45px;background:#456f72;bottom:30px;transform:scaleX(-1)}.ground{position:absolute;bottom:0;left:0;right:0;height:40px;background:repeating-linear-gradient(0deg,#607c73 0 5px,#506d68 5px 9px,#456269 9px 16px);border-top:3px solid #acc5a2}.ground:after{content:"";position:absolute;inset:5px 0 auto;height:2px;background:repeating-linear-gradient(90deg,transparent 0 11px,#a2b08a 11px 30px,transparent 30px 67px)}.pause{position:absolute;left:9px;top:38px;width:19px;height:20px;z-index:4}.pause img{width:16px;height:18px;object-fit:contain}.stage-label{position:absolute;top:4px;left:9px;font-size:9px;color:#eef1ce;text-shadow:1px 1px #19363c;max-width:230px;white-space:nowrap}.coin-display{position:absolute;right:10px;top:7px;display:flex;align-items:center;gap:4px;font-size:13px;background:#343940b3;min-width:39px;justify-content:flex-end}.coin-display img{width:19px;height:18px}.vehicle{position:absolute;background-repeat:no-repeat;background-size:200% 200%;z-index:2;image-rendering:pixelated;filter:drop-shadow(0 2px #263c45)}.vehicle.player{left:5px;top:12px;width:119px;height:112px;background-position:0 0}.vehicle.enemy{right:-1px;top:1px;width:150px;height:120px;background-position:100% 0}.enemy-name{position:absolute;right:18px;top:29px;font-size:8px;text-shadow:1px 1px #1d272a;background:#1b273455;padding:1px 3px;z-index:3}.stat{position:absolute;display:flex;gap:4px;align-items:center;z-index:4;height:12px}.stat>img{object-fit:contain;width:8px;height:9px}.player-hp{left:11px;top:122px;width:94px}.player-mana{left:11px;top:136px;width:94px}.enemy-hp{left:220px;right:9px;top:136px}.meter{flex:1;height:12px;background:#454747 url('assets/source-ui/Bar_HP_Empty.png') center/100% 100%;position:relative;border-radius:2px;overflow:hidden}.meter i{position:absolute;inset:0 auto 0 0;width:100%;background:#c42a34 url('assets/source-ui/Bar_HP.png') left center/100% 100%}.meter.mana i{background:#d46c20 url('assets/source-ui/Bar_Rum.png') left center/100% 100%}.meter span{position:absolute;inset:0;text-align:center;font-size:12px;line-height:12px;color:#fff;text-shadow:1px 1px #0006}.shield-stat{position:absolute;left:114px;top:125px;display:flex;align-items:center;gap:2px;font-size:10px;z-index:5}.shield-stat img{width:10px}.enemy-attack{position:absolute;top:122px;left:220px;display:flex;align-items:center;gap:3px;font-size:12px;z-index:5}.enemy-attack>img{width:10px;height:10px}.enemy-attack #enemy-armor{display:flex;gap:1px;margin-left:5px}.armor-die{width:9px;height:9px;background:#182927;box-shadow:0 0 0 1px #f3d081}.armor-die.broken{opacity:.25}.deck{position:absolute;left:46px;top:162.5px;width:228px;height:77px;display:grid;grid-template-columns:repeat(6,38px);grid-template-rows:repeat(2,38.5px);isolation:isolate}.deck-slot{border:1px solid #b48f5844;background:url('assets/source-ui/T_ShipDeck.png') top/38px 77px;position:relative}.deck-slot:nth-child(n+7){background-position:bottom}.deck-slot.closed{opacity:.3}.deck-slot.closed:after{content:"·";display:grid;place-items:center;height:100%;color:#aaa49c;font-size:13px}.crew-card{position:absolute;z-index:2;border:5px solid transparent;border-image:url('assets/source-ui/CrewFrame_Common.png') 5 fill stretch;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#293f43;background-clip:padding-box}.crew-card.rarity-1{border-image-source:url('assets/source-ui/CrewFrame_Uncommon.png')}.crew-card.rarity-2{border-image-source:url('assets/source-ui/CrewFrame_Rare.png')}.crew-card.rarity-3,.crew-card.rarity-4{border-image-source:url('assets/source-ui/CrewFrame_Legendary.png')}.portrait{display:inline-block;background-repeat:no-repeat;background-size:400% 300%;image-rendering:pixelated;flex:none;width:42px;height:42px}.crew-card .portrait{height:100%;width:100%;min-width:28px;min-height:28px;background-size:400% 300%}.crew-card.wide .portrait{width:42px}.crew-card .crew-short{position:absolute;bottom:-2px;right:-1px;background:#14262ac7;color:#fff1bd;padding:1px;font-size:7px;text-shadow:1px 1px #10191c}.crew-card.moving{outline:2px dashed #ffe276;filter:brightness(1.35)}.deck-hint{position:absolute;left:54px;top:181px;width:212px;text-align:center;pointer-events:none;font-size:10px;color:#b5a78b;text-shadow:1px 1px #1c272a;line-height:17px}.formula{position:absolute;left:43px;top:243px;width:234px;height:41px;border:5px solid transparent;border-image:url('assets/source-ui/Frame_FormulaBar.png') 16 fill stretch;display:flex;align-items:center;justify-content:space-around;padding:0 7px}.term{display:flex;align-items:center;flex-direction:column;justify-content:center;min-width:43px;gap:1px}.term b{font-size:21px;font-weight:normal;line-height:23px;text-shadow:1px 1px #18181e}.term img{max-width:15px;height:9px;object-fit:contain}.ad{color:var(--blue)}.flux{color:var(--yellow)}.bd{color:#e91d3e}.formula em{font-style:normal;font-size:23px;color:#f1eee5;margin-top:-10px}.speed{position:absolute;left:2px;top:259px;border:1px solid #a67b57;background:#352a2b;display:flex;gap:1px;align-items:center;font-size:10px;height:18px}.speed span{color:#f2dda2}.shot-count{position:absolute;right:2px;top:251px;width:36px;font-size:10px;text-align:center;color:#ffd16c;line-height:12px}.shot-count img{width:12px;height:18px;vertical-align:middle}.dice-board{position:absolute;left:.5px;top:286px;width:319px;height:186px;background:url('assets/source-ui/T_Diebox_WoodenBox_Base.png') center/100% 100%}.board-top{position:absolute;inset:0;background:url('assets/source-ui/T_Diebox_WoodenBox_Top.png') center/100% 100%;pointer-events:none;z-index:3}.skills{position:absolute;left:13px;top:15px;width:39px;height:150px;display:flex;flex-direction:column;justify-content:space-between;z-index:5}.skill{width:36px;height:47px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#39363d;border:2px solid #d18583;box-shadow:inset 0 0 0 2px #1a2631,0 0 0 2px #502e2c;position:relative}.skill>img{width:29px;height:31px;object-fit:contain;padding:2px}.skill>span{display:block;width:100%;font-size:10px;height:13px;line-height:12px;border-top:2px solid #d18583;color:#ffdab1;background:#292733}.skill.locked:after{content:"锁";position:absolute;inset:3px 2px 14px;display:grid;place-items:center;background:#32333aed;font-size:12px;color:#919399}.dice{position:absolute;inset:0;z-index:4}.die{position:absolute;width:62px;height:62px;top:25px;left:79px;background-repeat:no-repeat;background-size:100% 100%;filter:drop-shadow(2px 3px #142928b0);transition:transform .13s steps(2);transform:rotate(var(--tilt,0deg))}.die.selected{transform:translateY(-4px) rotate(0);outline:2px solid #ffe899;outline-offset:1px;filter:drop-shadow(1px 5px #122720);z-index:2}.die.selected:after{content:"✓";position:absolute;right:-4px;top:-7px;background:#fff0ba;color:#413126;font:10px var(--font);width:11px;height:11px;box-shadow:1px 1px #382d2d}.die .face-symbol{position:absolute;inset:7px;background-repeat:no-repeat;background-size:300% 200%;pointer-events:none}.die .die-label{position:absolute;bottom:3px;left:0;right:0;font-size:7px;color:#fff4cf;text-shadow:1px 1px #111;text-align:center;pointer-events:none}.die-empty{position:absolute;color:#73a995;opacity:.25;width:62px;height:62px;border:1px dashed #497b6c}.selection{position:absolute;left:10px;top:478px;width:300px;height:39px;display:flex;align-items:center;justify-content:space-around}.selection-slot{width:35px;height:35px;background:url('assets/source-ui/Frame_PushLuckSlot.png') center/100% 100%;position:relative}.selection-slot .mini-die{width:31px;height:31px;margin:2px;display:block}.mini-die{display:inline-block;background-size:100% 100%;background-repeat:no-repeat;position:relative;flex:none}.mini-die .face-symbol{position:absolute;inset:3px;background-repeat:no-repeat;background-size:300% 200%}.selection-hint{position:absolute;top:519px;left:9px;right:9px;text-align:center;font-size:9px;color:#decaa5;line-height:13px;height:13px;overflow:hidden;white-space:nowrap}.combo-history{position:absolute;left:0;top:535px;width:320px;height:78px;overflow:auto;scrollbar-width:none;overscroll-behavior:contain}.combo-history::-webkit-scrollbar{display:none}.combo-row{height:36px;display:flex;align-items:center;gap:4px;background:#201d1b66;margin:0 0 4px;padding:3px 14px 3px 10px;justify-content:flex-end}.combo-row .combo-tag{margin-right:auto;display:flex;align-items:center;gap:2px;font-size:10px}.combo-tag img{width:13px;height:23px}.combo-row .mini-die{width:25px;height:25px}.combo-divider{height:14px;width:2px;background:#ccb989;margin:0 1px}.empty-combos{height:64px;display:grid;place-items:center;text-align:center;color:#938472;font-size:9px;line-height:17px}.actions{position:absolute;left:0;right:0;top:627px;height:42px}.action-button{height:42px;background:url('assets/source-ui/Button_Green.png') center/100% 100%;font-family:var(--font);font-size:16px;font-weight:bold;text-shadow:1px 2px #244426;padding-bottom:3px;position:absolute;image-rendering:pixelated}.action-button.push{left:12px;width:142px;background-image:url('assets/source-ui/Button_Blue.png');text-shadow:1px 2px #1d3545}.action-button.strike{left:168px;width:142px}.actions.solo .strike{left:72px;width:176px}.actions.solo .push{display:none}.action-hint{position:absolute;top:674px;left:0;right:0;text-align:center;font-size:8px;color:#c8b896}.toast{position:absolute;left:32px;right:32px;top:289px;z-index:40;background:#242d2ced;border:1px solid #b29763;padding:8px;font-size:10px;line-height:16px;text-align:center;pointer-events:none;opacity:0;transition:opacity .12s}.toast.show{opacity:1}.overlay{position:absolute;inset:0;background:#111b25bd;z-index:30;display:flex;align-items:center;justify-content:center;padding:10px}.panel{width:288px;max-height:648px;overflow:auto;background:#42372f url('assets/source-ui/Bg_WoodFloor.png') repeat;border:5px solid #a77b4d;box-shadow:0 0 0 2px #241c1b,inset 0 0 0 2px #d4ab69,0 10px 20px #0008;padding:13px 12px 12px;position:relative;scrollbar-width:thin;scrollbar-color:#b69162 #352d29}.panel h1,.panel h2{margin:2px 0 10px;font-size:20px;font-weight:normal;text-align:center;color:#f6dda2;text-shadow:2px 2px #211c23}.panel h3{font-size:13px;font-weight:normal;margin:12px 0 7px;color:#e6c582}.panel p{font-size:11px;line-height:1.75;margin:7px 0;color:#d9cab2}.panel .subtitle{text-align:center;font-size:9px;color:#ac9c85;line-height:16px;margin:0 0 10px}.close-panel{position:absolute;right:3px;top:3px;width:18px;height:18px;background:#624237;border:1px solid #b2875a;font-size:15px;line-height:15px}.panel-actions{display:flex;gap:8px;justify-content:center;margin-top:12px;flex-wrap:wrap}.pixel-btn{display:inline-flex;align-items:center;justify-content:center;min-height:31px;min-width:82px;padding:5px 10px 7px;font-size:12px;background:url('assets/source-ui/Button_Green.png') center/100% 100%;text-shadow:1px 1px #283829;color:#f7ffe5}.pixel-btn.blue{background-image:url('assets/source-ui/Button_Blue.png');text-shadow:1px 1px #222d49}.pixel-btn.secondary{background:#4e4540;border:1px solid #b29160;min-height:27px;font-size:10px;color:#e5d6b3}.pixel-btn.danger{background:#803e39;border:1px solid #d29363}.menu-buttons{display:grid;gap:8px;padding:5px 25px}.menu-buttons .pixel-btn{width:100%}.chip{display:inline-flex;align-items:center;gap:3px;background:#211e24aa;border:1px solid #766049;padding:3px 6px;font-size:11px}.chip img{width:11px;height:11px;object-fit:contain}.shop-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.offer-list{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.offer{background:#282e31;border:2px solid #a98250;text-align:center;padding:5px 2px;min-height:141px;display:flex;flex-direction:column;align-items:center;justify-content:space-between}.offer .portrait{width:54px;height:54px}.offer .offer-name{font-size:10px;color:#f2e1b1;line-height:15px;min-height:16px}.offer .offer-size{font-size:8px;color:#b9b6a0;margin:2px 0}.offer .pixel-btn{min-width:60px;min-height:26px;font-size:10px;padding:3px 5px 5px}.offer.empty{opacity:.4;justify-content:center}.shop-deck{margin:12px auto;position:relative;width:228px;height:77px}.shop-deck .deck{top:0;left:0}.shop-controls{display:flex;gap:5px;justify-content:center;flex-wrap:wrap}.shop-controls .pixel-btn{font-size:10px;min-width:103px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:10px}.info-grid>div{background:#2d2c2b;padding:7px;border:1px solid #66563f}.info-grid b{display:block;font-size:17px;color:#ecd180;font-weight:normal;margin-top:3px}.rule-row{display:flex;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid #75624450;font-size:10px;line-height:16px}.rule-row .mini-die{width:26px;height:26px}.rule-row span{flex:1}.rule-row b{font-weight:normal;color:#eee0b9}.data-table{font-size:9px;width:100%;border-collapse:collapse;margin-top:9px}.data-table th,.data-table td{text-align:center;padding:4px 1px;border-bottom:1px solid #6c5745}.data-table th{color:#d0b380;font-weight:normal}.data-table .mini-die{width:17px;height:17px}.panel-note{background:#24272b;color:#b6b49f!important;font-size:9px!important;padding:7px;border-left:2px solid #c9a662}.crew-detail-head{display:flex;align-items:center;gap:10px;justify-content:center}.crew-detail-head .portrait{width:72px;height:72px}.crew-detail-head h2{text-align:left;font-size:18px;margin-bottom:4px}.crew-detail-head p{font-size:9px}.journal{font-size:10px;line-height:1.75;margin:5px 0;padding:0;list-style:none}.journal li{border-bottom:1px solid #a58c6340;padding:5px 0}.upgrade-row{display:flex;align-items:center;gap:6px;border:2px solid #8e6c43;padding:6px;margin-bottom:6px;background:#2d2b2c}.upgrade-row>div{flex:1;font-size:11px}.upgrade-row small{display:block;color:#c9b695;font-size:9px;margin-top:4px}.upgrade-row .pixel-btn{min-width:57px;font-size:10px;padding:3px 6px;min-height:29px}.map-paper{background:#d3bd89;color:#584933;border:3px solid #876340;padding:12px;margin:6px 0}.map-title{font-size:16px;text-align:center;margin-bottom:9px}.route{position:relative;height:120px;background:repeating-linear-gradient(0deg,transparent,transparent 29px,#74674222 30px)}.route-path{position:absolute;inset:5px 22px;border:2px dashed #9b7951;clip-path:polygon(0 0,100% 0,100% 40%,10% 40%,10% 72%,100% 72%,100% 100%,0 100%)}.route-node{position:absolute;width:19px;height:19px;border:2px solid #705844;background:#bca66e;display:grid;place-items:center;font-size:10px;border-radius:50%;z-index:2}.route-node.done{background:#517864;color:#dcebbb}.route-node.current{background:#d85831;color:white;border-color:#713528;box-shadow:0 0 0 2px #e6d69c}.chapter-list{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:12px}.chapter-choice{border:1px solid #947347;background:#3a3531;padding:8px;font-size:11px}.chapter-choice.active{border-color:#ddbc70;background:#535137}.chapter-choice small{display:block;font-size:8px;color:#baa68e;margin-top:4px}.stamp-dice{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin:9px 0}.stamp-choice{height:29px;border:1px solid #907955;font-size:12px;background:#252d2e}.stamp-choice.active{border-color:#f8dd80;background:#776137}.stamp-faces{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0}.stamp-faces button{border:1px solid #8d754a;padding:5px;background:#2b2c2a;font-size:9px;display:flex;align-items:center;gap:5px}.stamp-faces .mini-die{width:25px;height:25px}.stamp-faces button.active{border-color:#f8dd80;background:#655a37}.title-mark{text-align:center;font-size:10px;letter-spacing:5px;color:#bba179;margin-top:2px}.suspended{position:absolute;inset:0;background:#16232beb;display:grid;place-items:center;font-size:20px;z-index:100}.floating-damage{position:absolute;z-index:12;left:215px;top:68px;font-size:24px;color:#ffeb8c;text-shadow:2px 2px #592724;animation:float-damage .9s steps(8) both;white-space:nowrap;pointer-events:none}.floating-damage.taken{left:32px;top:77px;color:#ffad91;font-size:19px;animation-delay:.22s}.projectile{position:absolute;left:99px;top:79px;width:8px;height:8px;background:#ffcd62;box-shadow:-4px 1px #f17836,-8px 2px #b84028;z-index:10;animation:shoot .26s steps(9) both}.hit .enemy{animation:enemy-hit .3s steps(4)}.rolling .die{animation:roll .28s steps(5)}.game.backgrounded *{animation-play-state:paused!important;transition:none!important}.treasure-targets{position:absolute;top:44px;left:180px;right:9px;background:#222b2de0;padding:7px;z-index:6;font-size:10px;display:flex;gap:3px;flex-wrap:wrap;border:1px solid #b99a58}.treasure-targets .mini-die{width:21px;height:21px}.treasure-targets strong{width:100%;font-size:10px;font-weight:normal;color:#f3db92}.select-note{font-size:10px;color:#dac49d;text-align:center;line-height:18px}.reward-coins{font-size:31px;color:#ffda64;display:flex;align-items:center;justify-content:center;gap:7px;margin:18px}.reward-coins img{width:30px;height:30px;object-fit:contain}.hero-banner{display:flex;justify-content:center;gap:5px;margin:8px}.hero-banner .portrait{width:54px;height:54px}.panel input[type=checkbox]{accent-color:#79ad76;width:14px;height:14px;vertical-align:middle}.settings-row{display:flex;justify-content:space-between;align-items:center;margin:9px 0;font-size:12px;padding:7px;border-bottom:1px solid #7b694a}.kbd{border:1px solid #9b845c;padding:1px 3px;font-size:9px;color:#d9c693}
@keyframes shoot{0%{transform:translate(0,0)}50%{transform:translate(69px,-18px)}100%{transform:translate(132px,0)}}@keyframes enemy-hit{20%,60%{transform:translateX(3px);filter:brightness(1.7)}40%,80%{transform:translateX(-2px)}}@keyframes float-damage{0%{opacity:0;transform:translateY(6px)}15%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translateY(-23px)}}@keyframes roll{0%{transform:rotate(-13deg) translateY(-8px)}50%{transform:rotate(11deg) translateY(3px)}100%{transform:rotate(0)}}
.actions .push{left:44px;width:132px}.actions .strike{left:182px;width:132px}.selection{top:470px;height:45px}.selection-hint{top:603px;font-size:8px}.combo-history{top:516px;height:98px;padding-bottom:14px}.die,.mini-die{border:2px solid #0f1b1f;box-shadow:inset 2px 2px #ffffff1c,inset -3px -3px #0003}.die{border-width:3px;border-radius:4px}.mini-die{border-width:1px}.selection-slot .mini-die{border-width:1px}.die .face-symbol{inset:1px}.mini-die .face-symbol{inset:0}.formula .term.ad{color:#1784ea}.formula .term.flux{color:#fdcb45}.formula .term.bd{color:#e71640}.overlay.full-screen{background:none;padding:0;display:block;pointer-events:none}.overlay.full-screen button,.overlay.full-screen .panel,.overlay.full-screen .home-screen,.overlay.full-screen .detail-shade{pointer-events:auto}.shop-screen{position:absolute;inset:0;background:linear-gradient(transparent 0 154px,#3c322e 154px);isolation:isolate}.shop-screen:before{content:"";position:absolute;inset:154px 0 0;background:url('assets/source-ui/Bg_WoodFloor.png') repeat;z-index:-1}.repair-bar{position:absolute;left:36px;top:161px;width:248px;height:42px;display:flex;align-items:center;gap:7px;background:#272b2ceb;border:2px solid #927044;padding:4px 7px}.repair-bar>img{width:12px;object-fit:contain}.repair-bar>div{flex:1}.repair-bar b{font-size:9px;font-weight:normal;display:block;color:#e6d8b6}.repair-bar small{font-size:8px;color:#b8b39a;display:block;margin-top:4px;white-space:nowrap}.repair-bar .repair-button{position:absolute;left:184px;top:6.5px;width:54px;height:25px;min-height:25px;min-width:0;font-size:9px;padding:2px 0 4px}.shop-offer{position:absolute;left:2.5px;width:315px;height:96px;border:3px solid #9c794d;background:#24262a url('assets/source-ui/Tavern_ChoiceBG.png') center/100% 100%;display:flex;align-items:center;padding:9px 7px;gap:6px}.shop-offer .offer-art{width:64px;height:66px;flex:none;background:#222c32;border:1px solid #b99a60;overflow:hidden}.offer-art .portrait{width:64px;height:64px}.offer-copy{align-self:center;width:166px;padding-right:2px}.offer-copy .offer-name{font-size:12px;color:#ffe8af;text-shadow:1px 1px #192326}.offer-rarity{display:block;font-size:8px;color:#b9b8a7;margin:3px 0}.offer-copy p{font-size:8px;line-height:13px;color:#dbd2bd;margin:2px 0;max-height:39px;overflow:auto;scrollbar-width:thin;pointer-events:auto}.shop-offer .buy-button{position:absolute;right:6px;top:34px;width:54px;min-width:0;min-height:30px;padding:5px 1px;gap:3px;font-size:11px}.buy-button img{width:11px;height:11px;object-fit:contain}.shop-offer.sold{justify-content:center;color:#a39074;font-size:16px;opacity:.6}.shop-deck-source{position:absolute;left:15px;top:506px;width:228px;height:77px}.shop-deck-source .deck{left:0;top:0}.sell-zone{position:absolute;left:253px;top:505px;width:60px;height:80px;border:2px dashed #be9d66;background:#261d1d85;font-size:13px;line-height:24px;color:#e5aa87}.sell-zone small{font-size:8px;color:#ba9b84}.shop-next{position:absolute;left:10px;right:10px;top:591px;height:18px;text-align:center;font-size:8px;color:#d7be92}.shop-bottom{position:absolute;left:9px;top:615px;display:flex;gap:6px}.shop-bottom .pixel-btn{width:148px;height:50px;min-width:0;font-size:15px}.shop-stamps{position:absolute;left:72px;top:671px;width:176px;font-size:9px;color:#ead298}.detail-shade{position:absolute;inset:0;background:#0b172dcc;display:flex;align-items:center;justify-content:center;z-index:5}.pause-panel{position:absolute;left:35px;top:222px;width:250px;height:250px;background:#3e3431 url('assets/source-ui/Bg_WoodFloor.png');border:3px solid #a38050;box-shadow:0 0 0 2px #292523}.pause-option{position:absolute;left:42px;width:160px;height:50px;background:url('assets/source-ui/Button_Green.png') center/100% 100%;font-size:17px;text-shadow:1px 1px #25452b;padding-bottom:4px}.sound-option{top:17px}.help-option{top:87px;background-image:url('assets/source-ui/Button_Blue.png')}.exit-option{top:177px;background-image:url('assets/source-ui/Button_Blue.png')}.pause-panel>small{position:absolute;top:152px;left:0;right:0;text-align:center;font-size:8px;color:#baae8f}.home-screen{position:absolute;inset:0;background:#463b32 url('assets/source-ui/Bg_WoodFloor.png') repeat;isolation:isolate}.home-screen:before{content:"";position:absolute;inset:0 0 63px;background:linear-gradient(#142939d9,#35483d66 50%,#2c201bd9);z-index:-1}.back-battle{position:absolute;left:9px;top:11px;z-index:3;font-size:10px;color:#e4d1a3;padding:3px 4px;background:#222931c9;border:1px solid #967848}.home-content{position:absolute;inset:0 0 63px;overflow:hidden}.home-title{position:absolute;top:94px;left:0;right:0;text-align:center;font-size:29px;color:#f3dca1;text-shadow:2px 3px #30252a;letter-spacing:3px}.home-subtitle{position:absolute;top:136px;left:0;right:0;text-align:center;font-size:10px;color:#b9ae8c}.home-nav{position:absolute;top:631px;height:63px;left:0;right:0;background:url('assets/source-ui/Bg_WoodFloorB.png') center/320px auto;border-top:3px solid #8d6c45;display:flex;align-items:flex-end;justify-content:center;gap:20px}.home-nav button{width:70px;height:49px;background:url('assets/source-ui/Button_BottomMainMenu_0.png') center/100% 100%;border:2px solid #9a7a4c;border-bottom:0;font-size:15px;color:#cabb93;text-shadow:1px 1px #242029;padding-bottom:5px}.home-nav button.active{height:58px;color:#ffdf7c;background-color:#726144;filter:brightness(1.15)}.home-map{position:absolute;left:54px;top:213px;width:212px;height:242px}.home-map .map-paper{height:219px;margin:0;border:9px solid transparent;border-image:url('assets/source-ui/Frame_Contract.png') 26 21 21 18 fill stretch;background:none;padding:18px 7px 6px}.home-map .map-title{font-size:17px}.home-map .route{height:154px;margin-top:12px}.home-map>p{font-size:11px;color:#e0c789;text-align:center;margin:10px 0}.map-arrow{position:absolute;top:290.5px;width:31px;height:50px;font-size:38px;color:#d6bd8b;text-shadow:2px 2px #302924;background:#35434288}.map-arrow.left{left:14.5px}.map-arrow.right{left:274.5px}.home-depart{position:absolute;left:86px;top:486px;width:148px;height:50px}.home-depart .pixel-btn{width:148px;height:50px;font-size:19px}.home-progress{position:absolute;top:551px;left:0;right:0;text-align:center;font-size:10px;color:#aa9c7c}.home-help{position:absolute;top:584px;left:80px;width:160px;font-size:9px;color:#d5bd8e}.upgrade-title{position:absolute;top:105px;left:0;right:0;text-align:center;font-size:21px;font-weight:normal;margin:0;color:#e5cea0}.upgrade-balance{position:absolute;top:40px;right:17px;display:flex;align-items:center;gap:5px;font-size:15px}.upgrade-balance img{width:20px;height:20px;object-fit:contain}.upgrade-list{position:absolute;left:0;top:150px;width:320px;height:411px;overflow:auto;padding:0 10px;scrollbar-width:thin;scrollbar-color:#a48756 #282522}.upgrade-row{min-height:68px;border-width:4px;border-image:url('assets/source-ui/Frame_ShipUpgrade.png') 5 fill stretch;position:relative}.upgrade-note{position:absolute;left:20px;right:20px;top:577px;font-size:9px;color:#cbbb9b;text-align:center}.collection-title{position:absolute;top:76px;left:0;right:0;text-align:center;font-size:24px;font-weight:normal;color:#e6d2a6;margin:0}.collection-summary{position:absolute;top:110px;left:0;right:0;text-align:center;font-size:9px;color:#c8b38c}.collection-list{position:absolute;top:150px;left:12px;right:12px;bottom:20px;overflow:auto;display:grid;grid-template-columns:repeat(3,1fr);align-content:start;gap:7px;scrollbar-width:thin}.collection-list>button{background:#283238;border:2px solid #a98954;display:flex;flex-direction:column;align-items:center;padding:5px 2px;gap:3px;min-height:100px}.collection-list .portrait{width:59px;height:59px}.collection-list span:not(.portrait){font-size:10px;color:#ebd4a9}.collection-list small{font-size:8px;color:#ada58c}.drag-ghost{position:absolute!important;z-index:80!important;opacity:.85;pointer-events:none;box-shadow:0 0 0 2px #ffe291}.shop-deck-source .crew-card{touch-action:none}.panel .reward-coins{font-size:22px}.stamp-choice .mini-die{width:25px;height:25px}.panel .map-paper .route-node{max-width:19px}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Draw the close icon without relying on a font glyph. */
.close-panel{font-size:0;line-height:0}.close-panel::before,.close-panel::after{content:"";position:absolute;left:3px;top:7px;width:10px;height:2px;background:currentColor;transform:rotate(45deg);pointer-events:none}.close-panel::after{transform:rotate(-45deg)}
