:root{color:#f1dfac;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;background:#101b35;font-family:ui-monospace,Courier New,monospace}*{box-sizing:border-box}body{margin:0}#app,#viewport{width:100%;height:100dvh}#viewport{place-items:center;display:grid;overflow:hidden}#stage{max-width:100%;position:relative}#game{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;line-height:0}#stage,#app button,#merchant,#overview{touch-action:manipulation}canvas{image-rendering:pixelated;display:block}:focus-visible{outline-offset:2px;outline:2px solid #faf0cf}#game:focus-visible{outline-offset:-2px}button{font:inherit;color:#faf0cf;cursor:pointer;background:#20486c;border:2px solid #dbbd78;min-height:44px;padding:8px 14px;font-size:13px;box-shadow:inset 0 0 0 2px #101b35}button:hover{background:#2c6488}button:disabled{opacity:.6;cursor:default}.toolbar{top:max(6px, env(safe-area-inset-top));left:max(6px, env(safe-area-inset-left));gap:6px;display:flex;position:absolute}.status-row{pointer-events:none;text-shadow:1px 1px #101b35;gap:4px;font-size:11px;display:grid;position:absolute;top:58px;left:8px}#sailing-status,#location{background:#101b35;width:fit-content;padding:2px 4px}#location{color:#dbbd78}#approach{text-align:center;white-space:nowrap;position:absolute;bottom:16%;left:50%;transform:translate(-50%)}#port-panel{text-align:center;width:100%;position:absolute;bottom:7%}#port-panel h2{letter-spacing:3px;text-transform:uppercase;margin:0 0 5px;font-size:clamp(16px,2vw,28px)}#port-panel p{margin:0 0 8px;font-size:12px}#stage:has(#port-panel:not([hidden])) .status-row{display:none}#help{z-index:5;background:#101b35;border:4px double #dbbd78;width:min(540px,100% - 24px);max-height:calc(100dvh - 24px);padding:16px;font-size:14px;line-height:1.5;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}h1{font-size:20px;line-height:1.3}.imprint{color:#dbbd78;font-size:12px}#notice{color:#dbbd78}#notice[role=alert]{z-index:20;background:#101b35;padding:24px;position:fixed;inset:0}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[hidden]{display:none!important}@media (width<=600px){.status-row{gap:2px;font-size:9px}#location{display:none}#port-panel p{margin-bottom:4px;font-size:11px}#port-panel h2{margin-bottom:3px}}@media (width<=600px) and (orientation:portrait){.toolbar{top:auto;bottom:calc(100% + 6px)}.status-row{top:-38px;left:auto;right:8px}#port-panel{padding:16px 8px;top:100%;bottom:auto}#telemetry{clip-path:none;white-space:normal;text-align:center;width:calc(100% - 24px);height:auto;margin:0;font-size:12px;line-height:1.5;position:absolute;top:calc(50dvh + 28.125vw + 12px);left:12px;overflow:visible}#app:has(#port-panel:not([hidden])) #telemetry{visibility:hidden}}#port-locations button{text-shadow:1px 1px #101b35;background:#825544;border-color:#f1dfac;font-weight:700}#port-panel{pointer-events:none;bottom:4%}#depart{pointer-events:auto}#port-resources{max-width:720px;padding:0 12px;line-height:1.6;margin:8px auto 12px!important;font-size:13px!important}.ledger{z-index:6;top:50%;right:max(12px, env(safe-area-inset-right));background:#101b35;border:4px double #dbbd78;width:min(650px,100% - 24px);max-height:calc(100dvh - 24px);padding:14px 18px 0;font-size:14px;line-height:1.4;position:fixed;overflow-y:auto;transform:translateY(-50%)}.ledger h2{color:#faf0cf;margin:6px 0 10px;font-size:22px}.ledger .imprint{text-transform:uppercase;letter-spacing:2px;margin:0}.ledger footer{background:#101b35;border-top:1px solid #825544;padding:10px 0;position:sticky;bottom:0}.resource-strip{color:#faf0cf;border-top:2px solid #825544;border-bottom:2px solid #825544;padding:8px;line-height:1.8}.small-print{color:#dbbd78;font-size:12px}.log-actions{flex-wrap:wrap;gap:10px;display:flex}.file-label{width:100%;padding:10px 0;display:block}.file-label input{max-width:100%;min-height:44px;font:inherit;margin-top:6px;display:block}summary{cursor:pointer;color:#dbbd78;padding:12px 0}#voyage-confirmation{border:2px solid #ce6b4f;margin-bottom:10px;padding:10px}#voyage-confirmation button{margin:4px}#save-message,#trade-message{color:#70b2af;min-height:20px}#trade-message:empty{display:none}@media (width<=900px){.ledger{padding:10px 12px 0}#port-locations button{padding:6px 9px;font-size:12px}}@media (width<=600px) and (orientation:portrait){#port-panel{top:100%;bottom:auto}#port-resources{font-size:12px!important}}@media (height<=500px) and (orientation:landscape){#port-panel h2{font-size:16px}#port-resources{line-height:1.3;margin:3px auto!important;font-size:11px!important}#port-panel{bottom:3%}}#title-screen{z-index:10;background:#07152b;place-items:center;display:grid;position:fixed;inset:0}.title-art{aspect-ratio:3/2;width:min(100vw,150dvh);max-height:100dvh;position:relative}.title-art>img{width:100%;height:100%;image-rendering:pixelated;display:block}.title-actions{text-align:center;color:#faf0cf;text-shadow:2px 2px #101b35,-1px -1px #101b35;position:absolute;bottom:2%;left:18%;right:18%}#title-menu{justify-content:center;gap:2px;display:grid}#title-menu button{box-shadow:none;text-transform:uppercase;letter-spacing:1px;background:#101b35c9;border-color:#0000;padding:4px 18px;font-size:clamp(13px,1.5vw,22px);font-weight:700;position:relative}#title-menu button:focus,#title-menu button:hover{color:#dbbd78;border-color:#dbbd78;outline:none}#title-menu button:before{content:"▶";visibility:hidden;position:absolute;top:50%;left:4px;transform:translateY(-50%)}#title-menu button:focus:before{visibility:visible}#title-menu button:disabled{color:#a5acb2;opacity:.8}#title-message{margin:4px 0;font-size:12px}#title-version{font-size:10px}#captain-choice,#title-confirmation{background:#101b35ed;border:4px double #dbbd78;padding:12px}#captain-choice h2{margin:0 0 10px;font-size:18px}#captain-description{min-height:3em;font-size:13px}.captain-options{flex-wrap:wrap;justify-content:center;gap:5px;display:flex}.captain-options button{flex:1;min-width:0;max-width:170px;padding:3px;position:relative}.captain-options img{object-fit:contain;width:100%;height:clamp(74px,21dvh,210px);image-rendering:pixelated;background:#101b35;display:block}.captain-options span{padding:7px 2px;display:block}.captain-options [aria-pressed=true]{outline-offset:2px;outline:2px solid #dbbd78}.captain-options [aria-pressed=true] span:before{content:"◆ ";color:#dbbd78}#captain-choice{max-height:92dvh;overflow-y:auto}#port-panel{bottom:2%}#port-panel h2{letter-spacing:4px;text-shadow:2px 2px #101b35}#port-resources{margin:4px auto 6px!important}#refit-ship,#emergency-refit{margin:5px 4px 5px 0}@media (height<=500px) and (orientation:landscape){.captain-options img{height:75px}#captain-choice h2{margin-bottom:5px}#port-panel h2{margin-bottom:0}}@media (width<=600px) and (orientation:portrait){.captain-options img{height:115px}#captain-choice{max-height:55dvh}}[data-archetype][aria-pressed=true]{background:#825544;border-color:#faf0cf}#title-confirmation{z-index:1;position:absolute;inset:auto -10% 10px}@media (height<=500px) and (orientation:landscape){.title-actions{bottom:2%;left:12%;right:12%}#title-message{font-size:10px}#title-menu button{min-height:44px}#captain-description{margin:6px 0}#captain-choice{padding:8px}}@media (width<=600px) and (orientation:portrait){.title-art{align-self:start;margin-top:6dvh}.title-actions{padding-top:12px;inset:100% 4% auto}#title-message{margin-top:10px}.toolbar{gap:3px}.toolbar button{padding:6px 9px}}#contacts{background:#101b35ed;border:2px solid #825544;max-width:42%;padding:6px;font-size:11px;position:absolute;bottom:16%;right:8px}#contacts p{margin:3px 0}#contacts button{min-height:36px;padding:4px 8px;font-size:11px}#contact-list{flex-wrap:wrap;gap:3px;display:flex}#contact-list [aria-pressed=true]{background:#825544;border-color:#faf0cf}#encounter{text-align:center;background:#101b35f2;border:4px double #dbbd78;padding:12px;font-size:13px;position:absolute;bottom:5%;left:12%;right:12%}#encounter h2{text-transform:uppercase;font-size:20px}@media (width<=900px){#contacts{top:auto;bottom:16%;right:4px}#contacts button{min-height:44px;font-size:11px}}@media (width<=600px) and (orientation:portrait){#contacts{max-width:none;inset:calc(100% + 72px) 6px auto}#encounter{inset:100% 4px auto}}#overview{z-index:7;background:#101b35;grid-template-rows:auto minmax(0,1fr) auto;place-items:center;gap:6px;padding:8px;display:grid;position:fixed;inset:0}.chart-map-area{grid-row:2;place-items:center;width:100%;height:100%;min-height:0;display:grid;container-type:size}#overview-map{width:min(100cqw, calc(100cqh * var(--chart-ratio,1672 / 941)));height:auto;aspect-ratio:var(--chart-ratio,1672 / 941);image-rendering:pixelated;touch-action:none}.chart-tools{grid-row:1;justify-self:start;gap:5px;display:flex}.chart-caption{text-align:center;background:#101b35ed;grid-row:3;width:100%;height:min(32dvh,200px);padding:6px;font-size:12px;overflow-y:auto}#chart-ports{flex-wrap:wrap;justify-content:center;gap:5px;display:flex}#chart-ports [aria-pressed=true]{background:#825544}#chart-ports [aria-current=location]{border-color:#f1dfac;text-decoration:underline}#chart-art-status:empty{display:none}@media (width<=600px){.chart-tools button,#chart-ports button{padding:5px 8px;font-size:11px}}@media (height<=500px) and (width>=650px){#overview{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) 240px}.chart-tools,.chart-map-area{grid-column:1}.chart-caption{grid-area:1/2/3;height:100%}}.in-battle .status-row{display:none}#battle{pointer-events:none}#battle button{pointer-events:auto}.battle-reading{justify-content:space-between;gap:12px;font-size:12px;display:flex;position:absolute;top:57px;left:8px;right:8px}.battle-reading p{background:#101b35eb;border-left:4px solid #2fe05a;max-width:48%;margin:0;padding:5px 7px}.battle-reading p:last-child{text-align:right;border-color:#ff3b30}.battle-orders{text-align:center;background:#101b35ef;border-top:2px solid #dbbd78;padding:6px;position:absolute;bottom:4px;left:4px;right:4px}.battle-orders p{margin:4px 0;font-size:12px}#battle-range{color:#dbbd78;letter-spacing:1px;font-weight:700}.battle-buttons{flex-wrap:wrap;justify-content:center;gap:5px;display:flex}#battle-fire{background:#825544}#battle-board-hint{color:#a5acb2;font-size:10px}#battle-wind{color:#dbbd78;background:#101b35eb;padding:6px;font-size:11px;position:absolute;top:7px;right:10px}@media (width<=900px){#battle-wind{margin:0;font-size:9px;top:84px}}#battle-result{pointer-events:auto;text-align:center;background:#101b35f5;border:4px double #dbbd78;width:min(520px,90%);max-height:76%;padding:20px;font-size:14px;line-height:1.5;position:absolute;top:45%;left:50%;overflow:auto;transform:translate(-50%,-50%)}#battle-result h2{color:#dbbd78;text-transform:uppercase;font-size:24px}#battle:has(#battle-result:not([hidden])) .battle-orders{display:none}@media (width<=900px){.battle-buttons button{padding:5px 8px;font-size:11px}.battle-reading{font-size:10px}}@media (height<=500px) and (orientation:landscape){.battle-orders{padding:3px}.battle-orders p{margin:2px;font-size:10px}#battle-board-hint{font-size:9px}.battle-reading{top:53px}#battle-result{max-height:80%;padding:10px;font-size:12px;top:55%}#battle-result h2{margin:3px;font-size:18px}#port-panel{bottom:1%}}@media (width<=600px) and (orientation:portrait){.battle-reading{top:4px;left:4px;right:4px}.battle-orders{inset:100% 0 auto}#battle-result{width:96%;max-height:45dvh;padding:12px;top:100%;transform:translate(-50%)}.in-battle~#telemetry{visibility:hidden}#app:has(.in-battle) #telemetry{visibility:hidden}}#port-locations{pointer-events:none;position:absolute;inset:0}#port-locations button{left:var(--hotspot-x);top:var(--hotspot-y);pointer-events:auto;white-space:nowrap;min-height:44px;box-shadow:none;background:#101b35d9;border:2px solid #dbbd7899;padding:5px 9px;font-weight:400;position:absolute;transform:translate(-50%,-50%)}#port-locations button:after{content:"";background:#dbbd78;width:6px;height:6px;position:absolute;bottom:-6px;left:calc(50% - 3px)}#port-locations button:focus-visible,#port-locations button:hover{background:#825544;border-color:#faf0cf}#port-locations small{color:#dbbd78;font-size:10px}#contacts button{min-height:44px}@media (width<=600px) and (orientation:portrait){#port-locations button{padding:3px 5px;font-size:10px}#port-locations small{display:none}}#harbor-loading{z-index:2;text-align:center;color:#dbbd78;background:#101b35;position:absolute;inset:35% 10% auto}[data-harbor-loading=true] #port-locations,[data-harbor-loading=true] #port-panel{visibility:hidden}.market-good{border-bottom:1px solid #825544;grid-template-columns:minmax(120px,1fr) 110px 110px;align-items:center;gap:8px;padding:5px;display:grid}.market-good:has([aria-pressed=true]){outline-offset:-2px;background:#dbbd7810;outline:2px solid #dbbd78}.market-good button{min-height:48px}.good-select{text-align:left;background:0 0;border-color:#0000;align-items:center;gap:12px;display:flex}.good-select small{color:#a5acb2;margin-top:4px;font-size:11px;display:block}.good-icon{shape-rendering:crispedges;flex-shrink:0;width:32px;height:32px}#supply-rows{margin-top:14px}#merchant-trading{max-width:650px;margin:auto}#journal-tabs{border-bottom:2px solid #825544;flex-wrap:wrap;gap:5px;padding-bottom:10px;display:flex}#journal-tabs [aria-pressed=true]{background:#825544;border-color:#dbbd78}#journal-content{border-left:3px solid #dbbd78;min-height:180px;margin:16px 0;padding:4px 16px}#journal-content h3{color:#dbbd78}#journal-content button{margin:4px}.mission-group{margin:16px 0}.mission-group>h3{letter-spacing:1px;margin:10px 0;font-size:12px}.mission-card{overflow-wrap:anywhere;border-bottom:1px solid #825544;padding:8px 0}.mission-card h4{color:#faf0cf;margin:0;font-size:14px;display:inline}.mission-card summary{min-height:44px;padding:4px 0}.mission-meta{color:#dbbd78;margin-top:4px;font-size:12px;display:block}.mission-objective{margin:8px 0}.mission-actions{flex-wrap:wrap;gap:4px;display:flex}#journal-content .mission-actions button{margin:4px 0}.mission-card[data-tracked=true]{background:#dbbd7810;border:2px solid #dbbd78;padding:10px}.mission-group[data-mission-group=delivered],.mission-group[data-mission-group=delivered] h4{color:#a5acb2}#governor-visit{border-left:3px solid #dbbd78;padding-left:16px}@media (width<=600px){.market-good{grid-template-columns:minmax(100px,1fr) 84px 84px;gap:3px;padding:4px 0}.market-good button{padding:6px;font-size:12px}.good-select{gap:7px}.good-icon{width:24px;height:24px}}#merchant{scroll-padding-block:20px 125px}.market-good{scroll-margin-block:5px}@media (height<=500px) and (orientation:landscape){.ledger{padding:8px 10px 0}.ledger h2{margin:3px 0 6px;font-size:16px}.ledger .imprint{font-size:10px}.ledger .resource-strip{margin:5px 0;padding:4px;font-size:11px;line-height:1.3}.ledger .small-print{margin:5px 0;font-size:10px}.ledger footer{padding:4px 0}#trade-message{min-height:14px;margin:4px 0;font-size:11px}.market-good{padding:2px 4px}.market-good button{min-height:44px;padding:4px 8px}#merchant{scroll-padding-block:10px 90px}#journal-content{min-height:0;margin:8px 0;padding:2px 8px;font-size:12px}#journal-content h3{margin:6px 0}#journal-content p{margin:8px 0}#journal-tabs{padding-bottom:6px}#contacts{max-width:36%}#contacts button{padding:4px}}#navigation-help{width:15.8333%;height:31.1111%;min-height:44px;box-shadow:none;background:0 0;border:0;padding:0;position:absolute;top:2.5926%;left:82.5%}#navigation-help:hover{background:#faf0cf08}#sea-resources{background:#101b35ed;flex-wrap:wrap;gap:8px;padding:5px 8px;font-size:12px;display:flex;position:absolute;bottom:8px;left:8px}.resource-chip{white-space:nowrap;align-items:center;gap:6px;min-height:30px;padding:2px 3px 6px;display:inline-flex;position:relative}.resource-chip .good-icon{width:24px;height:24px}.resource-gauge{background:#20486c;height:3px;position:absolute;bottom:1px;left:33px;right:3px}.resource-gauge i{background:#dbbd78;height:100%;display:block}[data-resource=provisions] .resource-gauge i{background:#70b2af}#port-resources,#merchant-resources{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}#merchant-resources{justify-content:flex-start;margin:8px 0;padding:4px 0}.service-heading{flex-shrink:0}#service-vignette{width:220px;height:176px;image-rendering:pixelated;background:#101b35;outline:1px solid #825544;flex-shrink:0;position:relative}#merchant{flex-direction:column;width:min(1100px,100% - 24px);display:flex;top:12px;overflow:hidden;transform:none}#merchant[hidden]{display:none}.service-body{align-items:flex-start;gap:20px;min-height:0;padding:1px;display:flex;overflow:hidden}.service-content{flex:1;align-self:stretch;min-width:0;min-height:0;padding:0 8px 8px 0;scroll-padding-block:10px;overflow-y:auto;container-type:inline-size}#merchant footer{flex-shrink:0;position:static}@media (width>=768px) and (height>=600px){#service-vignette{width:440px;height:352px}}@media (width<=999px) and (height>=600px),(width<=699px){.service-body{flex-direction:column;align-items:center;overflow-y:auto}.service-content{flex:none;width:100%;max-height:none;overflow:visible}}.service-actions{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}#tavern-rumour{color:#faf0cf;border-left:3px solid #dbbd78;padding-left:10px}#tavern-rumour:empty{display:none}.installed-guns{align-items:center;gap:12px;display:flex}.relation-row{background:#20486c;border-left:3px solid #dbbd78;padding:8px}#capture-cue{color:#dbbd78}#battle[data-capture=board] #battle-board,#battle[data-capture=demand] #battle-demand{background:#825544;border:3px solid #faf0cf}#battle[data-capture=board] #capture-cue,#battle[data-capture=demand] #capture-cue{font-weight:700}@media (height<=500px) and (orientation:landscape){#merchant-resources{min-height:40px;margin:4px 0}.service-body{gap:12px}.resource-chip{gap:4px;min-height:26px}.resource-chip .good-icon{width:20px;height:20px}#sea-resources{gap:5px;padding:3px;font-size:11px}.service-actions{margin:6px 0}}@media (width<=600px) and (orientation:portrait){#sea-resources{justify-content:center;inset:calc(100% + 8px) 6px auto}#telemetry{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.service-heading h2{font-size:17px}#merchant-resources{gap:5px;font-size:12px}}#contacts{bottom:8px}@media (height<=500px) and (orientation:landscape){#governor-visit{font-size:12px}#governor-visit p{margin:6px 0}}.purchase-memory{color:#dbbd78;font-size:10px;line-height:1.3;display:block}.purchase-memory[data-tone=gain]{color:#70b2af}.purchase-memory[data-tone=loss]{color:#eea184}#chart-clear-target{min-height:44px;font-size:11px}#port-culture,#merchant-culture{color:#dbbd78;letter-spacing:0;text-transform:none;margin:2px 0 6px;font-size:12px;line-height:18px}.market-good button[data-side]{white-space:nowrap;min-width:100px;padding-inline:10px}@container (width<=390px){.market-good{grid-template-columns:1fr 1fr;gap:6px;padding:6px}.good-select{grid-column:1/-1}.market-good button[data-side]{min-width:0}}#explore-prompt{text-align:center;width:max-content;max-width:94%;position:absolute;bottom:16%;left:50%;transform:translate(-50%)}#explore-site{max-width:100%}#discovery-notice{color:#f1dfac;text-align:center;pointer-events:none;background:#101b35ee;width:max-content;max-width:90%;margin:0;padding:5px 9px;font-size:12px;position:absolute;top:13%;left:50%;transform:translate(-50%)}#treasure-offer{border-top:1px solid #825544;margin-top:12px}[data-view-lead]{margin-top:8px;display:block}#chart-clue{color:#f1dfac;border:2px dashed #825544;padding:6px}#chart-clue-copy{margin:0 0 6px}#port-panel{background:#101b35ed;border:1px solid #825544;width:min(620px,76%);padding:8px 12px;left:50%;transform:translate(-50%)}#port-resources{gap:6px}.market-good{grid-template-columns:minmax(110px,1fr) minmax(158px,1fr) minmax(158px,1fr)}.market-good button[data-side]{width:100%}.purchase-memory{white-space:nowrap;margin-left:6px;font-size:12px;display:inline}@container (width<=520px){.market-good{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.good-select{grid-column:1/-1}.market-good button[data-side]{min-width:0;padding-inline:5px}}#help{z-index:12}#first-mate{z-index:8;background:#101b35;border:4px double #dbbd78;gap:14px;width:min(520px,100% - 24px);max-height:calc(100dvh - 24px);padding:12px;font-size:14px;line-height:1.5;display:flex;position:fixed;bottom:12px;right:12px;overflow:auto}#first-mate img{object-fit:contain;width:144px;height:108px;image-rendering:pixelated;flex-shrink:0}#first-mate h2{margin:0;font-size:18px}#first-mate p{margin:6px 0}#first-mate button{margin:4px 4px 0 0}#first-mate[data-manual=true]{inset:50% auto auto 50%;transform:translate(-50%,-50%)}#first-mate[data-manual=false]{pointer-events:none;width:min(450px,100% - 24px);font-size:12px;inset:110px auto auto 12px}#first-mate[data-manual=false] img{width:96px;height:72px}#first-mate[data-manual=false] button{pointer-events:auto}.status-progress progress{accent-color:#dbbd78;width:100%;height:16px}.status-progress p{margin-bottom:4px}.toolbar{flex-wrap:wrap;max-width:calc(100% - 12px)}#title-menu{grid-template-columns:repeat(2,minmax(0,1fr))}#start-new,#title-continue,#title-resume{grid-column:1/-1}@media (width<=600px) and (orientation:portrait){#port-panel{width:94%;padding:8px}#first-mate{gap:8px;padding:10px}#first-mate[data-manual=false]{top:12px}#contacts{bottom:auto}#first-mate img{width:96px;height:72px}.toolbar button{padding-inline:6px;font-size:12px}.status-row{display:none}}@media (height<=500px) and (orientation:landscape){#port-panel{width:65%;padding:4px 8px}#first-mate[data-manual=false]{max-width:360px;top:66px;left:6px}#title-menu button{font-size:12px}}#journal-content:has(.status-progress) h4{margin:10px 0 2px}#journal-content:has(.status-progress) h4+p{margin:4px 0}#first-mate[data-manual=true]{align-items:center;gap:24px;width:min(780px,100% - 24px);padding:20px}#first-mate[data-manual=true] img{width:288px;height:auto;image-rendering:pixelated}#first-mate[data-manual=true]>div{flex:1;min-width:0}#logbook{background:#07152bbd;border:0;justify-content:flex-end;align-items:center;width:100%;height:100dvh;max-height:none;padding:12px;display:flex;inset:0;overflow:hidden;transform:none}.logbook-panel{background:#101b35;border:4px double #dbbd78;width:min(650px,100%);max-height:calc(100dvh - 24px);padding:14px 18px 0;overflow:auto}#ship-upgrades{gap:12px;display:grid}.ship-upgrade{border-bottom:1px solid #825544;padding-bottom:12px}.ship-upgrade h3{color:#dbbd78;margin:0}@media (width<=600px) and (orientation:portrait){#first-mate[data-manual=true]{flex-direction:column;align-items:center;gap:12px;padding:12px}#first-mate[data-manual=true] img{width:288px;max-width:100%}}@media (height<=500px) and (orientation:landscape){#first-mate[data-manual=true]{gap:16px;padding:12px}#first-mate[data-manual=true] img{width:288px}}.culture-entry{border-top:1px solid #825544;gap:14px;padding:12px 0;display:flex}.culture-entry img{width:110px;height:88px;image-rendering:pixelated;border:2px solid #dbbd78;flex:none}.culture-entry h3,.culture-entry p{margin:0 0 6px}@media (width<=500px){.culture-entry{gap:8px;font-size:12px}.culture-entry img{align-self:flex-start;width:88px;height:auto}}.ending{z-index:20;background:#07152b;position:fixed;inset:0;overflow:auto}.ending-scene{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.ending-frame{width:min(820px,58vw);height:90dvh;image-rendering:pixelated;margin:2dvh 2vw 2dvh auto;position:relative;container-type:inline-size}.ending-paper{pointer-events:none;display:grid;position:absolute;inset:0}.ending-paper>div{background-repeat:no-repeat}.ending-safe{color:#372313;flex-direction:column;gap:8px;font-size:15px;line-height:1.3;display:flex;position:absolute}.ending-reading{scrollbar-color:#825544 #ebd4a2;flex:1;min-height:0;overflow:auto}.ending-reading:focus-visible{outline-offset:1px;outline:2px solid #634322}.ending h1{color:#372313;letter-spacing:2px;margin:0 0 6px;font-size:24px}.ending h2{margin:2px 0 6px;font-size:18px}.ending h3{margin:6px 0 2px;font-size:14px}.ending p{margin:3px 0 8px}.ending footer{flex-wrap:wrap;flex:none;gap:6px;display:flex}.ending footer button{flex:1;min-height:44px;padding:5px 7px;font-size:13px}.ending button:focus-visible{outline-offset:2px;outline:3px solid #372313}#victory-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}#victory-stats p,#defeat-stats p{margin:2px 0;font-size:14px}#defeat-stats{grid-template-columns:1fr 1fr;gap:4px 10px;display:grid}#victory-continue{background:#32675b}#ration-warning{z-index:2;color:#f1dfac;pointer-events:none;background:#101b35ed;border:2px solid #dbbd78;max-width:min(440px,100% - 16px);padding:7px;font-size:13px;position:absolute;top:104px;left:8px}@media (width<=900px){.ending-scene{aspect-ratio:4/3;height:auto;max-height:54dvh;display:block;position:relative}.ending-frame{width:min(760px,100%);height:650px;max-height:80dvh;margin:-4dvh auto 8px}#victory-stats{grid-template-columns:1fr;gap:5px}.ending-paper{pointer-events:none;display:grid;position:absolute;inset:0}.ending-paper>div{background-repeat:no-repeat}.ending-safe{font-size:14px}}@media (height<=500px) and (orientation:landscape){.ending{grid-template-columns:40% 60%;align-items:center;display:grid}.ending-scene{width:100%;height:auto;max-height:100dvh;position:relative}.ending-frame{width:100%;height:96dvh;max-height:none;margin:0}#victory-stats{grid-template-columns:1fr}.ending h1{font-size:20px}}@media (width<=600px) and (orientation:portrait){#ration-warning{font-size:12px;top:4px}.ending-frame{height:calc(104dvh - 75vw);min-height:300px;max-height:none;margin-bottom:0}}.ending{grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr);align-items:center;gap:16px;padding:16px;display:grid}.ending-scene{aspect-ratio:4/3;object-fit:contain;width:100%;height:auto;max-height:calc(100dvh - 32px);position:relative;inset:auto}.ending-frame{background:#ebd4a2;border:6px double #825544;width:100%;height:calc(100dvh - 32px);min-height:280px;max-height:850px;margin:0;padding:22px;box-shadow:inset 0 0 0 3px #dbbd78,4px 4px #071020}.ending-safe{width:100%;height:100%;font-size:15px;position:relative;inset:auto}@media (width<=700px) and (orientation:portrait){.ending{grid-template-rows:auto minmax(300px,1fr);grid-template-columns:minmax(0,1fr);align-items:stretch;gap:8px;padding:8px}.ending-scene{width:100%;max-height:30dvh}.ending-frame{height:100%;min-height:300px;max-height:none;margin:0;padding:14px}.ending-safe{font-size:14px}}#help{width:min(1060px,100% - 24px)}#help-cultures:not([hidden]){grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}#help-cultures>p{grid-column:1/-1}.controls-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.controls-grid section{background:#18243a;border:2px solid #825544;padding:12px}.controls-grid h3{color:#dbbd78;margin:0 0 12px}.controls-grid p{margin:9px 0;line-height:1.8}kbd{text-align:center;min-width:26px;font:inherit;color:#f1dfac;background:#30404c;border:1px solid #dbbd78;border-bottom:3px solid #825544;padding:1px 5px;display:inline-block}@media (width<=720px){#help-cultures:not([hidden]),.controls-grid{grid-template-columns:1fr}}#captain-culture{max-width:100%;min-height:44px;font:inherit;color:#f1dfac;background:#18243a;border:2px solid #dbbd78}#culture-description{font-size:13px;line-height:1.4}.chart-legend{color:#dbbd78;margin:4px 0;font-size:12px}@media (width>=901px) and (height>=650px){#defeat{--ending-width:min(100vw,133.333dvh);padding:0;display:block}#defeat .ending-scene{object-fit:contain;width:100%;height:100%;max-height:none;position:absolute;inset:0}#defeat .ending-frame{box-shadow:none;min-height:0;max-height:none;left:calc((100vw - var(--ending-width))/2 + var(--ending-width)*var(--ending-safe-x));top:calc((100dvh - var(--ending-width)*.75)/2 + var(--ending-width)*.75*var(--ending-safe-y));width:calc(var(--ending-width)*var(--ending-safe-width));height:calc(var(--ending-width)*.75*var(--ending-safe-height));background:0 0;border:0;margin:0;padding:0;position:absolute}#defeat .ending-safe{font-size:14px}#defeat-reason{letter-spacing:2px;margin:0 0 6px;font-size:22px}#defeat-save:empty{display:none}}.culture-bonus{color:#dbbd78}.ending-reading{scrollbar-width:thin;padding-right:6px;overflow-y:scroll}.ending-reading::-webkit-scrollbar{width:9px}.ending-reading::-webkit-scrollbar-track{background:#dbbd78}.ending-reading::-webkit-scrollbar-thumb{background:#825544;border:2px solid #dbbd78}.dice-row{align-items:center;gap:10px;margin:6px 0;display:flex}.dice-name{min-width:5.5em}.die-slot{width:56px;height:56px;display:inline-block}.dice{width:56px;height:56px;image-rendering:pixelated;display:block}.die-slot.rolling{animation:.18s steps(3,end) infinite dice-tumble}.die-slot.settled{animation:.28s steps(4,end) dice-settle}.dice-total{min-width:3em;font-weight:700}@keyframes dice-tumble{0%{transform:translate(0)rotate(0)}33%{transform:translate(var(--drift),-8px) rotate(var(--spin))}66%{transform:translate(calc(var(--drift) * -1),-3px) rotate(calc(var(--spin) * -1))}to{transform:translate(0)rotate(0)}}@keyframes dice-settle{0%{transform:translateY(-10px)}50%{transform:translateY(2px)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.die-slot.rolling,.die-slot.settled{animation:none}}#gambling-table{border-top:2px solid #825544;margin-top:12px}#save-banner{z-index:5;color:#fff0bd;background:#172f29;border:2px solid #dbbd78;margin:.3rem 0;padding:.65rem;font-weight:700;position:sticky;top:0;box-shadow:0 3px #101b35}#save-banner[data-result=error]{color:#fff4dc;background:#641e26;border-color:#efb092}#manual-save-status{color:#fff0bd;font-weight:700}#first-mate-trade{opacity:.9;border-top:1px solid #a68852;padding-top:.6rem;font-size:.9em}#victory{background:#101b35;flex-direction:column;justify-content:center;align-items:center;gap:0;padding:0;display:flex;overflow-y:auto}#victory .ending-scene{object-fit:contain;flex:none;width:min(100%,720px,133.333dvh - 346.667px);height:auto;max-height:none}#victory .ending-frame{width:min(100%,720px);height:auto;min-height:0;max-height:none;box-shadow:none;background:#edcf94;border:0;border-radius:0;flex:none;margin:0;padding:0}#victory .ending-safe{width:auto;height:auto;padding:1rem;display:block;position:static}#victory .ending-reading{min-height:0;max-height:none;padding:0;overflow:visible}#victory h1{margin:0 0 .3rem;font-size:1.5rem}#victory-copy,#victory-save{margin:.3rem 0;font-size:14px}#victory-stats{flex-wrap:wrap;gap:.25rem 1rem;margin:.4rem 0;display:flex}#victory-stats p{margin:0;font-size:.9rem}#victory footer{flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0;padding:.5rem 0;display:flex}#victory footer button{white-space:nowrap;flex:1;min-height:44px}@media (width>=1100px) and (height>=760px){#victory{--victory-width:min(100vw,calc((100dvh - 64px)*1.33333));padding-bottom:64px;overflow:hidden}#victory .ending-scene{width:var(--victory-width);height:calc(var(--victory-width)*.75);max-width:none;max-height:none}#victory .ending-frame{left:calc((100vw - var(--victory-width))/2 + var(--victory-width)*var(--ending-safe-x));top:calc((100dvh - 64px - var(--victory-width)*.75)/2 + var(--victory-width)*.75*var(--ending-safe-y));width:calc(var(--victory-width)*var(--ending-safe-width));height:calc(var(--victory-width)*.75*var(--ending-safe-height));color:#342519;background:0 0;position:absolute}#victory .ending-safe{height:100%;padding:0}#victory h1{margin:0 0 3px;font-size:20px;line-height:1.05}#victory-copy,#victory-stats p{margin:0;font-size:14px;line-height:1.2}#victory-stats{gap:3px 9px;margin:4px 0}#victory-save{margin:3px 0;font-size:clamp(9px,.8vw,11px);line-height:1.15}#victory footer{box-sizing:border-box;background:#101b35;align-items:center;width:100vw;height:64px;padding:10px;position:fixed;bottom:0;left:0}#victory footer button{flex:none;min-width:190px}}@media (height<=499px) and (width>=600px){#victory{justify-content:flex-start}#victory .ending-scene{aspect-ratio:auto;object-fit:contain;width:min(100%,720px);height:calc(100dvh - 170px);min-height:110px}#victory .ending-frame{width:min(100%,720px);height:170px}#victory .ending-safe{padding:8px 16px}#victory h1{margin:0 0 3px;font-size:18px}#victory-copy{margin:2px 0;font-size:14px}#victory-stats{flex-wrap:nowrap;margin:4px 0}#victory-stats p{font-size:14px}#victory-save{margin:3px 0;font-size:12px}#victory footer{padding:3px 0}}#log-actions{flex-wrap:wrap;gap:8px;display:flex}#log-actions button{flex:90px;min-height:44px}#logbook-close{flex-grow:2}#journal-files{border-top:1px solid #825544;margin:10px 0 4px;padding-top:6px}#journal-files summary{cursor:pointer;color:#dbbd78;padding:6px 0}#save-voyage{border-color:#dbbd78}[data-resource=hull] .resource-gauge i{background:#70b2af}[data-resource=hull][data-state="1"] .resource-gauge i{background:#dbbd78}[data-resource=hull][data-state="2"] .resource-gauge i,[data-resource=hull][data-state="3"] .resource-gauge i{background:#ce6b4f}#goal-line{letter-spacing:1px;white-space:nowrap;background:#101b35ed;align-items:center;gap:8px;width:min(300px,100% - 16px);height:16px;padding:0 8px;font-size:10px;display:flex;position:absolute;bottom:6px;left:8px}#goal-line[hidden]{display:none}.goal-track{background:#20486c;flex:1;height:6px}.goal-track i{background:#dbbd78;width:0;height:100%;display:block}#goal-line[data-legend=true] .goal-track i{background:#70b2af}#sea-resources{bottom:30px}#battle-exposure{color:#2fe05a;margin:2px 0;font-weight:700}#battle-exposure[data-exposed=true]{color:#ff3b30}#encounter-flee-cost{color:#dbbd78;margin:6px 0 0}#hunter-reading{color:#dbbd78;margin:4px 0}#hunter-panel{max-width:820px}.hunter-body{align-items:flex-start;gap:16px;display:flex}.hunter-text{flex:1;min-width:0}#hunter-portrait{aspect-ratio:1402/1122;width:320px;height:auto;image-rendering:pixelated;background:#101b35;border:3px double #dbbd78;flex:none}@media (width<=700px){.hunter-body{flex-direction:column}#hunter-portrait{object-fit:cover;object-position:40% 30%;width:100%;max-height:38dvh}}@media (height<=520px){#hunter-portrait{width:200px}}#hunter-panel footer{flex-wrap:wrap;gap:10px;display:flex}#hunter-panel footer button{min-height:44px}#victory-account{z-index:3;color:#372313;background:#edcf94;flex-direction:column;gap:6px;padding:18px max(16px,8vw);display:flex;position:absolute;inset:0;overflow-y:auto}#victory-account[hidden]{display:none}#victory-account h2{letter-spacing:2px;color:#372313;margin:0;font-size:20px}#victory-account h3{margin:8px 0 2px;font-size:15px}#victory-account-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:4px 20px;display:grid}#victory-account .victory-reading{margin:0 0 2px 16px;font-size:14px}#victory-account .account-actions{background:#edcf94;margin-top:auto;padding-top:8px;position:sticky;bottom:0}#victory-account .account-actions button{width:100%;max-width:320px;min-height:44px}#victory-account button:focus-visible{outline-offset:2px;outline:3px solid #372313}
