.game-shell.theme-harbour{--ink:#eaf1e7;--cream:#173d3a;--muted:#58726b;--mint:#217567;--orange:#b55b43;--blue:#367ca2;--purple:#7a739f;--positive:#257360;--paper:#edf3e9;--paper-deep:#e2ebe0;--sheet:#fffdf4;--line:#d6e1d4;--ui-bg:#edf3e9;--ui-panel:#fffdf4;--ui-topbar:#163d39;--ui-card:#f5f6ec;--ui-radius:16px;--ui-shadow:0 8px 30px #23433814;--ui-font:var(--font-geist-sans), "Helvetica Neue", Arial, sans-serif;--ui-display:var(--font-geist-sans), "Helvetica Neue", Arial, sans-serif;background:var(--ui-bg);isolation:isolate;min-height:100svh;padding:0 26px;font-size:14px;overflow:visible}.game-shell.theme-harbour:after{display:none}.theme-harbour button{cursor:pointer}.theme-harbour button:disabled{cursor:not-allowed}:is(.theme-harbour button:focus-visible,.theme-harbour summary:focus-visible){outline-offset:4px;outline:3px solid #b77b0a}.theme-harbour svg{vertical-align:middle;flex:none}.harbour-header{color:#f4f4dd;background:#173f3b;justify-content:space-between;align-items:center;gap:20px;height:74px;margin:0 -26px;padding:0 27px;display:flex}.harbour-brand{align-items:center;gap:10px;display:flex}.harbour-brand-icon{color:#254d3f;background:#f2c762;border-radius:13px;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 3px #957335}.harbour-brand strong{letter-spacing:-.5px;font-size:19px;font-weight:900;display:block}.harbour-brand small{letter-spacing:1.7px;color:#bacac0;margin-top:3px;font-size:8px;display:block}.voyage-progress{text-align:center}.voyage-progress>span{color:#b6ccc0;letter-spacing:1.7px;font-size:8px;font-weight:600}.voyage-progress>div{align-items:center;gap:7px;margin-top:8px;display:flex}.voyage-progress i{color:#253b31;background:#45665c;border-radius:4px;justify-content:center;align-items:center;width:19px;height:7px;display:flex}.voyage-progress i:nth-child(4n){margin-right:8px}.voyage-progress i.current{background:#f3c365;border-radius:7px;width:29px;height:20px;margin-top:-7px;margin-bottom:-6px}.voyage-progress i.done{background:#c4d8b9}.harbour-header-actions{align-items:center;gap:9px;display:flex}.harbour-header-actions button{color:#f2f1d9;background:#ffffff08;border:1px solid #64817566;border-radius:9px;align-items:center;gap:7px;height:38px;padding:0 10px;font-size:12px;font-weight:650;display:flex}.harbour-header-actions button:hover{background:#ffffff16}.harbour-status{justify-content:space-between;align-items:center;gap:20px;min-height:98px;padding:21px 0;display:flex}.chapter-tag{align-items:center;gap:11px;display:flex}.chapter-tag>svg{color:#b68928}.chapter-tag small,.resource small{letter-spacing:1px;color:#688078;font-size:9px;font-weight:750;display:block}.chapter-tag b{margin-top:4px;font-size:17px;display:block}.chapter-tag b span{color:#a9b8aa;margin:0 4px}.resource{align-items:center;gap:10px;display:flex}.resource>svg{color:#438478}.resource.cash>svg{color:#b58a27}.resource.profit>svg{color:#60937a}.resource strong{letter-spacing:-1px;font-variant-numeric:tabular-nums;margin-top:2px;font-size:26px;line-height:1.15;display:block}.resource strong em{margin-left:2px;font-size:17px;font-style:normal}.status-good,.status-risk{color:#39634c;background:#dbe8d4;border-radius:6px;align-self:flex-end;margin-bottom:3px;padding:4px 7px;font-size:9px;font-weight:650}.status-risk{color:#aa4b21;background:#ffe4cc}.company-health{color:#557369;background:0 0;border:0;align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.harbour-grid{grid-template-columns:minmax(0,1fr) 342px;align-items:start;gap:22px;max-width:1680px;margin:auto;display:grid}.harbour-play{min-width:0}.harbour-world{isolation:isolate;background:#c0ded1;border:1px solid #9dc6b688;border-radius:23px;height:420px;position:relative;overflow:hidden}.world-caption{z-index:2;text-align:right;pointer-events:none;position:absolute;top:22px;right:26px}.world-caption span{letter-spacing:2.6px;color:#416d60;font-size:9px;font-weight:800;display:block}.world-caption b{color:#618b79;margin-top:5px;font-size:10px;font-weight:500;display:block}.game-shell.theme-harbour .city-scene{opacity:1;filter:none;z-index:1;width:85%;height:100%;min-height:0;position:absolute;top:0;left:19%}.game-shell.theme-harbour .round-brief{z-index:3;background:#fffdf2;border-top:5px solid #f1c66a;border-radius:16px;width:218px;padding:20px 19px 16px;position:absolute;top:26px;left:23px;box-shadow:0 5px #80a18b30,0 12px 22px #49786610}.game-shell.theme-harbour .round-brief .eyebrow{color:#a27828;letter-spacing:1.5px;font-size:8px;line-height:1.6;display:block}.game-shell.theme-harbour .round-brief h1{letter-spacing:-.9px;text-transform:none;margin:11px 0 13px;font-size:25px;font-weight:800;line-height:1.03}.game-shell.theme-harbour .round-brief p{color:#596d5c;font-size:12px;line-height:1.75}.game-shell.theme-harbour .event-readout{background:0 0;border:0;border-top:1px solid #e2e5d3;justify-content:space-between;align-items:center;margin-top:14px;padding:10px 0 0;display:flex}.game-shell.theme-harbour .event-readout span{color:#8a947d;letter-spacing:.7px;font-size:8px}.game-shell.theme-harbour .event-readout strong{color:#507260;font-size:10px}.game-shell.theme-harbour .brief-link{color:#58775d;margin-top:12px;font-size:10px}.harbour-location{z-index:3;letter-spacing:1px;color:#46796a;align-items:center;gap:5px;font-size:8px;font-weight:700;display:flex;position:absolute;bottom:72px;left:23px}.harbour-location span{letter-spacing:0;color:#709080;margin-left:5px;font-weight:450}.harbour-channel-pills{z-index:3;grid-template-columns:repeat(4,1fr);gap:8px;display:grid;position:absolute;bottom:16px;left:19px;right:19px}.harbour-channel-pills>div{background:#f6fbefe8;border:1px solid #fffaf0;border-radius:10px;align-items:center;gap:6px;padding:10px 11px;font-size:10px;display:flex;box-shadow:0 3px #305d4910}.harbour-channel-pills strong{font-variant-numeric:tabular-nums;margin-left:auto;font-size:13px}.district-agent>svg{color:#ca745b}.district-bank>svg{color:#3e8d73}.district-broker>svg{color:#8980a5}.district-direct>svg{color:#568fa5}.game-shell.theme-harbour .project-hand{background:0 0;border:none;border-radius:0;margin:20px 0 0;padding:0}.game-shell.theme-harbour .project-hand-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.game-shell.theme-harbour .project-hand-head>span{color:#255247;letter-spacing:1px;align-items:center;gap:6px;font-size:10px;display:flex}.game-shell.theme-harbour .project-hand-head>strong{color:#69806b;margin-left:auto;font-size:10px;font-weight:500}.game-shell.theme-harbour .project-hand-head>small{display:none}.game-shell.theme-harbour .project-hand-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.game-shell.theme-harbour .project-card{text-align:left;background:#fffdf5;border:2px solid #fffdf3;border-bottom:4px solid #d6dfcc;border-radius:16px;grid-template-rows:auto auto auto;grid-template-columns:72px minmax(0,1fr);align-items:start;gap:4px 12px;min-height:182px;padding:14px 12px 12px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;position:relative;box-shadow:0 7px 14px #49614709}.game-shell.theme-harbour .project-card:hover:not(:disabled){border-color:#a6c8ac;transform:translateY(-5px)rotate(-.6deg);box-shadow:0 12px 18px #3e69501a}.game-shell.theme-harbour .project-card.selected{background:#f5fff2;border:2px solid #278574;border-bottom:4px solid #267362;transform:translateY(-4px);box-shadow:0 9px #3c786513}.game-shell.theme-harbour .project-card:disabled{opacity:.48}.project-art{background:color-mix(in srgb, var(--project) 10%, #f7f4df);width:72px;min-height:95px;color:var(--project);border-radius:10px;flex-direction:column;grid-row:1/3;justify-content:center;align-items:center;gap:10px;padding:8px 0;display:flex}.project-art-label{letter-spacing:.8px;font-size:6px;font-weight:850}.project-selection{color:#87a798;position:absolute;top:7px;right:8px}.project-card.selected .project-selection{color:#207c6d}.game-shell.theme-harbour .project-copy{min-width:0;padding:5px 7px 0 0}.game-shell.theme-harbour .project-copy b{color:#224638;white-space:normal;font-size:15px;line-height:1.15;display:block;overflow:visible}.game-shell.theme-harbour .project-copy small{color:#68745f;white-space:normal;margin-top:5px;font-size:11px;line-height:1.5;display:block}.game-shell.theme-harbour .project-price{color:#866b24;letter-spacing:-.6px;flex-wrap:wrap;align-self:end;align-items:center;gap:3px;font-size:18px;font-weight:850;display:flex}.project-price>small{color:#8b947e;letter-spacing:1px;flex-basis:100%;margin-top:0;font-size:6px;font-weight:600;display:block}.game-shell.theme-harbour .project-card>em{color:#617557;grid-column:1/-1;font-size:10px;font-style:normal;line-height:1.6}.game-shell.theme-harbour .project-card>em:first-of-type{border-top:1px solid #e8eadc;margin-top:5px;padding-top:7px}.game-shell.theme-harbour .project-hand-reshuffle{align-items:center;gap:10px;margin:12px 0 0;display:flex}.game-shell.theme-harbour .project-hand-reshuffle button{color:#476852;letter-spacing:.5px;background:0 0;border:0;align-items:center;gap:5px;padding:4px 0;font-size:8px;font-weight:750;display:flex}.game-shell.theme-harbour .project-hand-reshuffle small{color:#84917b;font-size:8px}.commitments{border-top:1px solid #d8e3d2;margin-top:12px;padding-top:11px}.commitments>summary{cursor:pointer;color:#65806c;align-items:center;gap:8px;font-size:10px;list-style:none;display:flex}.commitments>summary strong{font-weight:600}.commitments>summary span{margin-left:auto;font-size:9px}.game-shell.theme-harbour .in-flight-book{background:#fffdf5;border:1px solid #d8e3d2;border-radius:12px;margin-top:12px}.game-shell.theme-harbour .in-flight-head{flex-wrap:wrap;display:flex}.game-shell.theme-harbour .in-flight-head strong{font-size:12px}.game-shell.theme-harbour .in-flight-card{border-radius:10px}.harbour-console{background:#fffdf5;border:1px solid #dde3d0;border-radius:21px;padding:22px 20px 20px;position:sticky;top:16px;box-shadow:0 5px #d6e0cf66}.console-title>span{color:#ac852f;letter-spacing:1.6px;font-size:8px;font-weight:800}.console-title>b{letter-spacing:-.9px;margin:5px 0 7px;font-size:24px;font-weight:850;line-height:1.2;display:block}.console-title>small{color:#6c8065;font-size:12px}.cash-pool{margin:21px 0 12px}.pool-heading{justify-content:space-between;align-items:center;display:flex}.pool-heading>div>small{letter-spacing:.8px;color:#657958;font-size:10px;font-weight:700;display:block}.pool-heading>div>b{letter-spacing:-1.6px;margin-top:7px;font-size:40px;line-height:1;display:block}.pool-heading em{color:#72806c;margin-left:1px;font-size:21px;font-style:normal}.pool-heading .pool-left{color:#98712c;background:#f8edbd;border-radius:12px;grid-template-columns:auto auto;align-items:center;gap:3px 4px;padding:10px;display:grid}.pool-heading .pool-left>b{letter-spacing:-.8px;margin:0;font-size:22px}.pool-heading .pool-left>small{text-align:right;letter-spacing:0;color:#988555;grid-column:1/-1;font-size:8px;font-weight:500}.pool-track{background:#eaeedf;border-radius:6px;gap:2px;height:9px;margin:17px 0 12px;display:flex;overflow:hidden}.pool-track>i{transition:width .18s}.pool-breakdown{flex-wrap:wrap;gap:8px 10px;display:flex}.pool-breakdown span{color:#627756;align-items:center;gap:4px;font-size:10px;display:flex}.pool-breakdown i{border-radius:2px;width:6px;height:6px}.pool-breakdown b{color:#52634d;font-size:10px}.pool-track .bau,.pool-breakdown .bau{background:#3b8a75}.pool-track .project,.pool-breakdown .project{background:#edbd5a}.pool-track .committed,.pool-breakdown .committed{background:#9090b5}.pool-track .fees{background:#d98067}.pool-fees{color:#996247;font-size:10px}.bau-panel{border-bottom:1px solid #e4e8d9;padding-bottom:16px}.bau-panel>summary{color:#527061;cursor:pointer;align-items:center;gap:7px;padding:8px 0 0;font-size:10px;font-weight:550;list-style:none;display:flex}.bau-panel>summary svg:last-child{margin-left:auto}summary::-webkit-details-marker{display:none}details[open]>summary svg:last-child{transform:rotate(180deg)}.bau-inner>p{color:#72816c;font-size:11px;line-height:1.5}.game-shell.theme-harbour .investment-grid{grid-template-columns:1fr;gap:6px}.game-shell.theme-harbour .investment-control{background:#f3f5e9;border:0;border-radius:9px;padding:9px}.game-shell.theme-harbour .investment-code{border:0;border-radius:8px;width:27px;height:27px;font-size:9px}.game-shell.theme-harbour .investment-copy b{font-size:11px}.game-shell.theme-harbour .investment-preview{grid-template-columns:repeat(3,1fr)}.game-shell.theme-harbour .investment-preview span{background:#f1f3e6;border:0;border-radius:6px;padding:8px 3px}.balanced-reset{color:#4c7056;background:0 0;border:0;align-items:center;gap:6px;margin-top:10px;font-size:9px;font-weight:700;display:flex}.game-shell.theme-harbour .strategy-dock{width:auto;height:auto;max-height:none;box-shadow:none;background:0 0;border:0;border-radius:0;margin:18px 0 0;padding:0;position:static;overflow:visible}.game-shell.theme-harbour .dock-heading{border:0;padding:0 0 4px}.game-shell.theme-harbour .dock-heading>span{letter-spacing:.7px;color:#5c7966;align-items:center;gap:5px;font-size:9px;display:flex}.game-shell.theme-harbour .dock-heading>b{display:none}.game-shell.theme-harbour .walkthrough-dock-link{color:#71876f;background:0 0;border:0;margin-top:5px;padding:4px 0;font-size:8px}.walkthrough-dock-link:disabled{opacity:.55;cursor:not-allowed}.game-shell.theme-harbour .strategy-list{gap:7px;margin:11px 0}.game-shell.theme-harbour .strategy-option{background:#f5f6eb;border:1px solid #e4e8d7;border-radius:11px;grid-template-columns:30px minmax(0,1fr);gap:8px;min-height:70px;padding:12px 22px 12px 10px;display:grid}.game-shell.theme-harbour .strategy-option.selected{background:#eaf3df;border:1.5px solid #659473;box-shadow:0 3px #a9bda529}.game-shell.theme-harbour .strategy-option:hover:not(:disabled){background:#edf1e0;transform:translate(-2px)}.game-shell.theme-harbour .strategy-icon{color:#7c9579;width:30px;height:36px;box-shadow:none;background:0 0;border:0;border-radius:0}.game-shell.theme-harbour .strategy-option.selected .strategy-icon{color:#458567}.game-shell.theme-harbour .strategy-text small{display:none}.game-shell.theme-harbour .strategy-text strong{color:#3e5646;font-size:14px;font-weight:750;line-height:1.18}.game-shell.theme-harbour .strategy-text em{color:#6e7c60;margin-top:4px;font-size:11px;line-height:1.5}.game-shell.theme-harbour .strategy-check{color:#9aaa8e;background:0 0;border:0;width:15px;height:15px;right:7px}.game-shell.theme-harbour .strategy-option.selected .strategy-check{color:#fff;background:#639475}.game-shell.theme-harbour .selected-impact{grid-template-columns:repeat(4,1fr)}.game-shell.theme-harbour .selected-impact span{background:#eff4e7;border:0;border-radius:6px;padding:6px 1px;font-size:6px}.game-shell.theme-harbour .selected-impact b{font-size:10px}.game-shell.theme-harbour .claims-lag-pin{color:#8d805b;background:#f7efd8;border:0;border-radius:9px;margin:12px 0 0;padding:9px 10px}.game-shell.theme-harbour .claims-lag-pin>span{color:#998652;font-size:7px}.game-shell.theme-harbour .claims-lag-pin>b{color:#86702e;font-size:11px}.game-shell.theme-harbour .claims-lag-pin p{color:#807044;font-size:10px;line-height:1.5}.game-shell.theme-harbour .project-cash-pin{color:#4d6a55;background:#e7efe4;border:0;border-radius:9px;margin:12px 0 0;padding:9px 10px}.game-shell.theme-harbour .project-cash-pin>span{color:#5d7a62;font-size:7px}.game-shell.theme-harbour .project-cash-pin>b{color:#355840;font-size:11px}.game-shell.theme-harbour .project-cash-pin p{color:#4f6754;font-size:10px;line-height:1.5}.game-shell.theme-harbour .floor-pressure-pin{color:#8a5a4a;background:#f6e6dc;border:0;border-radius:9px;margin:12px 0 0;padding:9px 10px}.game-shell.theme-harbour .floor-pressure-pin>span{color:#9a6a58;font-size:7px}.game-shell.theme-harbour .floor-pressure-pin>b{color:#7a4032;font-size:11px}.game-shell.theme-harbour .floor-pressure-pin p{color:#7d5548;font-size:10px;line-height:1.5}.turn-action>p{text-align:center;color:#718261;margin:15px 0 9px;font-size:10px}.game-shell.theme-harbour .primary-action{color:#463c22;letter-spacing:1px;background:#f0bf57;border:1px solid #e3af48;border-bottom:4px solid #bd8833;border-radius:12px;min-height:59px;font-size:13px;font-weight:850;box-shadow:0 4px #b8873020}.game-shell.theme-harbour .primary-action:hover:not(:disabled){background:#f5cd6d;transform:translateY(-2px)}.game-shell.theme-harbour .primary-action:disabled{opacity:1;color:#9a9f87;box-shadow:none;background:#e4e6d7;border-color:#d6d9c7}.turn-action .primary-action{justify-content:space-between;padding:12px 17px}.turn-action .primary-action>span{text-align:left;font-size:13px}.turn-action .primary-action small{letter-spacing:.7px;opacity:.65;margin-top:6px;font-size:8px;font-weight:650;display:block}.harbour-footer{color:#8b9b84;justify-content:space-between;align-items:center;gap:12px;max-width:1680px;margin:auto;padding:20px 0;display:flex}.harbour-footer>span{align-items:center;gap:6px;font-size:10px;display:flex}.harbour-footer>button{color:#668273;background:0 0;border:0;align-items:center;gap:5px;font-size:10px;display:flex}.harbour-footer>small{font-size:8px}.harbour-ledger{color:#234939;background:#fffdf5;border:1px solid #bdccad;border-radius:20px;width:min(1000px,94vw);max-height:90svh;margin:auto;padding:24px;box-shadow:0 30px 100px #173f3966}.harbour-ledger::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#173d39ad}.ledger-close{color:#678261;letter-spacing:1px;justify-content:space-between;align-items:center;margin-bottom:15px;font-size:10px;display:flex}.ledger-close>span{align-items:center;gap:8px;display:flex}.ledger-close button{background:#ecf1e3;border:0;border-radius:8px;padding:6px}.game-shell.theme-harbour .harbour-ledger .annual-report-panel{width:auto;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;position:static;overflow:visible}.game-shell.theme-harbour .harbour-ledger .scoreboard{width:100%;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#edf2e4;border:1px solid #d8e2cd;border-radius:12px;grid-template-columns:repeat(6,1fr);margin:18px 0;display:grid;position:static}.game-shell.theme-harbour .harbour-ledger .metric{border:0}.game-shell.theme-harbour .harbour-ledger .metric>span{color:#6d8067}.game-shell.theme-harbour .harbour-ledger .metric small{color:#48836c}.game-shell.theme-harbour .harbour-ledger .channel-strip{box-shadow:none;grid-template-columns:1.2fr repeat(4,1fr) 1.2fr;min-height:0;margin:22px 0 0;padding:15px;display:grid;position:static}.game-shell.theme-harbour .harbour-ledger .annual-report-head h2{font-size:28px}.game-shell.theme-harbour .harbour-ledger .report-explanation{font-size:12px}.game-shell.theme-harbour .modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#153b37a8}.game-shell.theme-harbour .modal-backdrop>section{border-radius:20px;box-shadow:0 15px 50px #173f3940}.game-shell.theme-harbour .report-hero h2,.game-shell.theme-harbour .receipt-hero h2{text-transform:none;letter-spacing:-1px;line-height:1.1}.game-shell.theme-harbour .report-hero p{color:#60715c;font-size:13px;line-height:1.7}.game-shell.theme-harbour .modal-backdrop p,.game-shell.theme-harbour .modal-backdrop small{color:#62745a}.game-shell.theme-harbour .final-modal{max-height:92svh;overflow:hidden auto}.game-shell.theme-harbour .board-balance{background:#f4f7ee;border:1px solid #d6e1d4;border-radius:12px}.game-shell.theme-harbour .modal-backdrop .board-balance-head{color:#173d3a}.game-shell.theme-harbour .board-balance .pass{color:#257360}.game-shell.theme-harbour .board-balance .watch{color:#a12e25}.game-shell.theme-harbour .modal-backdrop .board-balance-note{color:#52664f}.game-shell.theme-harbour .last-lesson-pin{background:#e8efdc;border-left-color:#7da277;border-radius:10px}.game-shell.theme-harbour .last-lesson-pin p{color:#5b7156}.game-shell.theme-harbour .funding-shortfall-strip{background:#f8eee4;border-color:#e2b49a;border-radius:12px}.game-shell.theme-harbour .funding-shortfall-mark span,.game-shell.theme-harbour .funding-shortfall-mark b{color:#a12e25}.game-shell.theme-harbour .funding-shortfall-grid{border-color:#e4c4b0}.game-shell.theme-harbour .funding-shortfall-grid>div{border-color:#ead3c4}.game-shell.theme-harbour .funding-shortfall-grid span,.game-shell.theme-harbour .funding-shortfall-grid small{color:#8a6a58}.game-shell.theme-harbour .funding-shortfall-grid strong{color:#173d3a}.game-shell.theme-harbour .funding-shortfall-strip p{color:#7a4a3a}.game-shell.theme-harbour .year-bs-close-strip{background:#eef4e4;border-color:#c5d6b4;border-radius:12px}.game-shell.theme-harbour .year-bs-close-mark span,.game-shell.theme-harbour .year-bs-close-mark b{color:#2f6d52}.game-shell.theme-harbour .year-bs-close-grid{border-color:#d2ddc4}.game-shell.theme-harbour .year-bs-close-grid>div{border-color:#dde6d2}.game-shell.theme-harbour .year-bs-close-grid span,.game-shell.theme-harbour .year-bs-close-grid small{color:#6d8067}.game-shell.theme-harbour .year-bs-close-grid strong{color:#173d3a}.game-shell.theme-harbour .live-treasury-strip{background:#f4eee0;border-color:#d4c4a0;border-radius:12px}.game-shell.theme-harbour .live-treasury-mark span,.game-shell.theme-harbour .live-treasury-mark b{color:#7a6236}.game-shell.theme-harbour .live-treasury-grid{border-color:#ddd0b4}.game-shell.theme-harbour .live-treasury-grid>div{border-color:#e6dcc4}.game-shell.theme-harbour .live-treasury-grid span,.game-shell.theme-harbour .live-treasury-grid small{color:#7a6d52}.game-shell.theme-harbour .live-treasury-grid strong{color:#173d3a}.game-shell.theme-harbour .live-treasury-strip p{color:#6d5a38}.game-shell.theme-harbour .csm-rollforward-strip{background:#f4eee0;border-color:#d6c4a4;border-radius:12px}.game-shell.theme-harbour .csm-rollforward-mark span,.game-shell.theme-harbour .csm-rollforward-mark b{color:#8a6a2f}.game-shell.theme-harbour .csm-rollforward-grid{border-color:#e0d4b8}.game-shell.theme-harbour .csm-rollforward-grid>div{border-color:#e8deca}.game-shell.theme-harbour .csm-rollforward-grid span,.game-shell.theme-harbour .csm-rollforward-grid small{color:#7a6d52}.game-shell.theme-harbour .csm-rollforward-grid strong{color:#173d3a}.game-shell.theme-harbour .csm-rollforward-strip p{color:#6d5a3a}.game-shell.theme-harbour .combined-ratio-strip,.game-shell.theme-harbour .underwriting-result-strip,.game-shell.theme-harbour .claims-variance-strip,.game-shell.theme-harbour .pat-bridge-strip,.game-shell.theme-harbour .event-impact-strip,.game-shell.theme-harbour .nb-economics-strip{background:#f4eee0;border-color:#d6c4a4;border-radius:12px}.game-shell.theme-harbour .combined-ratio-mark span,.game-shell.theme-harbour .combined-ratio-mark b,.game-shell.theme-harbour .underwriting-result-mark span,.game-shell.theme-harbour .underwriting-result-mark b,.game-shell.theme-harbour .claims-variance-mark span,.game-shell.theme-harbour .claims-variance-mark b,.game-shell.theme-harbour .pat-bridge-mark span,.game-shell.theme-harbour .pat-bridge-mark b,.game-shell.theme-harbour .event-impact-mark span,.game-shell.theme-harbour .event-impact-mark b,.game-shell.theme-harbour .nb-economics-mark span,.game-shell.theme-harbour .nb-economics-mark b{color:#8a6a2f}.game-shell.theme-harbour .combined-ratio-grid,.game-shell.theme-harbour .underwriting-result-grid,.game-shell.theme-harbour .claims-variance-grid,.game-shell.theme-harbour .pat-bridge-grid,.game-shell.theme-harbour .event-impact-grid,.game-shell.theme-harbour .nb-economics-grid{border-color:#e0d4b8}.game-shell.theme-harbour .combined-ratio-grid>div,.game-shell.theme-harbour .underwriting-result-grid>div,.game-shell.theme-harbour .claims-variance-grid>div,.game-shell.theme-harbour .pat-bridge-grid>div,.game-shell.theme-harbour .event-impact-grid>div,.game-shell.theme-harbour .nb-economics-grid>div{border-color:#e8deca}.game-shell.theme-harbour .combined-ratio-grid span,.game-shell.theme-harbour .combined-ratio-grid small,.game-shell.theme-harbour .underwriting-result-grid span,.game-shell.theme-harbour .underwriting-result-grid small,.game-shell.theme-harbour .claims-variance-grid span,.game-shell.theme-harbour .claims-variance-grid small,.game-shell.theme-harbour .delayed-uw-landings-grid span,.game-shell.theme-harbour .delayed-uw-landings-grid small,.game-shell.theme-harbour .expense-mix-grid span,.game-shell.theme-harbour .expense-mix-grid small,.game-shell.theme-harbour .pat-bridge-grid span,.game-shell.theme-harbour .pat-bridge-grid small,.game-shell.theme-harbour .event-impact-grid span,.game-shell.theme-harbour .event-impact-grid small,.game-shell.theme-harbour .nb-economics-grid span,.game-shell.theme-harbour .nb-economics-grid small,.game-shell.theme-harbour .solvency-move-grid span,.game-shell.theme-harbour .solvency-move-grid small,.game-shell.theme-harbour .ape-move-grid span,.game-shell.theme-harbour .ape-move-grid small,.game-shell.theme-harbour .nb-move-grid span,.game-shell.theme-harbour .nb-move-grid small,.game-shell.theme-harbour .margin-lift-grid span,.game-shell.theme-harbour .margin-lift-grid small,.game-shell.theme-harbour .margin-lift-hint,.game-shell.theme-harbour .trust-move-grid span,.game-shell.theme-harbour .trust-move-grid small,.game-shell.theme-harbour .trust-move-drivers,.game-shell.theme-harbour .cash-move-grid span,.game-shell.theme-harbour .cash-move-grid small,.game-shell.theme-harbour .cash-move-hint,.game-shell.theme-harbour .equity-move-grid span,.game-shell.theme-harbour .equity-move-grid small,.game-shell.theme-harbour .equity-move-hint,.game-shell.theme-harbour .pat-move-grid span,.game-shell.theme-harbour .pat-move-grid small,.game-shell.theme-harbour .pat-move-hint,.game-shell.theme-harbour .claim-ratio-move-grid span,.game-shell.theme-harbour .claim-ratio-move-grid small,.game-shell.theme-harbour .claim-ratio-move-hint,.game-shell.theme-harbour .csm-move-grid span,.game-shell.theme-harbour .csm-move-grid small,.game-shell.theme-harbour .csm-move-hint,.game-shell.theme-harbour .programme-bau-grid span,.game-shell.theme-harbour .programme-bau-grid small,.game-shell.theme-harbour .investment-outcomes-total span,.game-shell.theme-harbour .investment-outcomes-total small,.game-shell.theme-harbour .investment-outcomes-grid span,.game-shell.theme-harbour .investment-outcomes-grid small,.game-shell.theme-harbour .remedy-payback-grid span,.game-shell.theme-harbour .remedy-payback-grid small,.game-shell.theme-harbour .project-delivery-grid span,.game-shell.theme-harbour .project-delivery-grid small,.game-shell.theme-harbour .channel-mix-grid span,.game-shell.theme-harbour .channel-mix-flag,.game-shell.theme-harbour .product-mix-grid span,.game-shell.theme-harbour .product-mix-hint{color:#7a6d52}.game-shell.theme-harbour .combined-ratio-grid strong,.game-shell.theme-harbour .underwriting-result-grid strong,.game-shell.theme-harbour .claims-variance-grid strong,.game-shell.theme-harbour .delayed-uw-landings-grid strong,.game-shell.theme-harbour .expense-mix-grid strong,.game-shell.theme-harbour .pat-bridge-grid strong,.game-shell.theme-harbour .event-impact-grid strong,.game-shell.theme-harbour .nb-economics-grid strong,.game-shell.theme-harbour .solvency-move-grid strong,.game-shell.theme-harbour .ape-move-grid strong,.game-shell.theme-harbour .nb-move-grid strong,.game-shell.theme-harbour .margin-lift-grid strong,.game-shell.theme-harbour .trust-move-grid strong,.game-shell.theme-harbour .cash-move-grid strong,.game-shell.theme-harbour .equity-move-grid strong,.game-shell.theme-harbour .pat-move-grid strong,.game-shell.theme-harbour .claim-ratio-move-grid strong,.game-shell.theme-harbour .csm-move-grid strong,.game-shell.theme-harbour .programme-bau-grid strong,.game-shell.theme-harbour .investment-outcomes-total strong,.game-shell.theme-harbour .investment-outcomes-grid strong,.game-shell.theme-harbour .remedy-payback-grid strong,.game-shell.theme-harbour .project-delivery-grid strong,.game-shell.theme-harbour .channel-mix-grid strong,.game-shell.theme-harbour .product-mix-grid strong{color:#173d3a}.game-shell.theme-harbour .combined-ratio-strip p,.game-shell.theme-harbour .underwriting-result-strip p,.game-shell.theme-harbour .claims-variance-strip p,.game-shell.theme-harbour .delayed-uw-landings-strip p,.game-shell.theme-harbour .expense-mix-strip p,.game-shell.theme-harbour .pat-bridge-strip p,.game-shell.theme-harbour .event-impact-strip p,.game-shell.theme-harbour .nb-economics-strip p,.game-shell.theme-harbour .solvency-move-strip p,.game-shell.theme-harbour .ape-move-strip p,.game-shell.theme-harbour .nb-move-strip p,.game-shell.theme-harbour .margin-lift-strip p,.game-shell.theme-harbour .trust-move-strip p,.game-shell.theme-harbour .cash-move-strip p,.game-shell.theme-harbour .equity-move-strip p,.game-shell.theme-harbour .pat-move-strip p,.game-shell.theme-harbour .claim-ratio-move-strip p,.game-shell.theme-harbour .csm-move-strip p,.game-shell.theme-harbour .programme-bau-strip p,.game-shell.theme-harbour .investment-outcomes-strip p,.game-shell.theme-harbour .remedy-payback-strip p,.game-shell.theme-harbour .project-delivery-strip p,.game-shell.theme-harbour .channel-mix-strip p,.game-shell.theme-harbour .product-mix-strip p{color:#6d5a3a}.game-shell.theme-harbour .delayed-uw-landings-strip,.game-shell.theme-harbour .expense-mix-strip,.game-shell.theme-harbour .solvency-move-strip,.game-shell.theme-harbour .ape-move-strip,.game-shell.theme-harbour .nb-move-strip,.game-shell.theme-harbour .margin-lift-strip,.game-shell.theme-harbour .trust-move-strip,.game-shell.theme-harbour .cash-move-strip,.game-shell.theme-harbour .equity-move-strip,.game-shell.theme-harbour .pat-move-strip,.game-shell.theme-harbour .claim-ratio-move-strip,.game-shell.theme-harbour .csm-move-strip,.game-shell.theme-harbour .programme-bau-strip,.game-shell.theme-harbour .investment-outcomes-strip,.game-shell.theme-harbour .remedy-payback-strip,.game-shell.theme-harbour .project-delivery-strip,.game-shell.theme-harbour .channel-mix-strip,.game-shell.theme-harbour .product-mix-strip{background:#f4eee0;border-color:#d6c4a4;border-radius:12px}.game-shell.theme-harbour .delayed-uw-landings-mark span,.game-shell.theme-harbour .delayed-uw-landings-mark b,.game-shell.theme-harbour .expense-mix-mark span,.game-shell.theme-harbour .expense-mix-mark b,.game-shell.theme-harbour .solvency-move-mark span,.game-shell.theme-harbour .solvency-move-mark b,.game-shell.theme-harbour .ape-move-mark span,.game-shell.theme-harbour .ape-move-mark b,.game-shell.theme-harbour .nb-move-mark span,.game-shell.theme-harbour .nb-move-mark b,.game-shell.theme-harbour .margin-lift-mark span,.game-shell.theme-harbour .margin-lift-mark b,.game-shell.theme-harbour .trust-move-mark span,.game-shell.theme-harbour .trust-move-mark b,.game-shell.theme-harbour .cash-move-mark span,.game-shell.theme-harbour .cash-move-mark b,.game-shell.theme-harbour .equity-move-mark span,.game-shell.theme-harbour .equity-move-mark b,.game-shell.theme-harbour .pat-move-mark span,.game-shell.theme-harbour .pat-move-mark b,.game-shell.theme-harbour .claim-ratio-move-mark span,.game-shell.theme-harbour .claim-ratio-move-mark b,.game-shell.theme-harbour .csm-move-mark span,.game-shell.theme-harbour .csm-move-mark b,.game-shell.theme-harbour .programme-bau-mark span,.game-shell.theme-harbour .programme-bau-mark b,.game-shell.theme-harbour .investment-outcomes-mark span,.game-shell.theme-harbour .investment-outcomes-mark b,.game-shell.theme-harbour .remedy-payback-mark span,.game-shell.theme-harbour .remedy-payback-mark b,.game-shell.theme-harbour .project-delivery-mark span,.game-shell.theme-harbour .project-delivery-mark b,.game-shell.theme-harbour .channel-mix-mark span,.game-shell.theme-harbour .channel-mix-mark b,.game-shell.theme-harbour .product-mix-mark span,.game-shell.theme-harbour .product-mix-mark b{color:#8a6a2f}.game-shell.theme-harbour .delayed-uw-landings-grid,.game-shell.theme-harbour .expense-mix-grid,.game-shell.theme-harbour .solvency-move-grid,.game-shell.theme-harbour .ape-move-grid,.game-shell.theme-harbour .nb-move-grid,.game-shell.theme-harbour .margin-lift-grid,.game-shell.theme-harbour .trust-move-grid,.game-shell.theme-harbour .cash-move-grid,.game-shell.theme-harbour .equity-move-grid,.game-shell.theme-harbour .pat-move-grid,.game-shell.theme-harbour .claim-ratio-move-grid,.game-shell.theme-harbour .csm-move-grid,.game-shell.theme-harbour .programme-bau-grid,.game-shell.theme-harbour .investment-outcomes-grid,.game-shell.theme-harbour .remedy-payback-grid,.game-shell.theme-harbour .project-delivery-grid,.game-shell.theme-harbour .investment-outcomes-total,.game-shell.theme-harbour .channel-mix-grid,.game-shell.theme-harbour .product-mix-grid{border-color:#e0d4b8}.game-shell.theme-harbour .delayed-uw-landings-grid>div,.game-shell.theme-harbour .expense-mix-grid>div,.game-shell.theme-harbour .solvency-move-grid>div,.game-shell.theme-harbour .ape-move-grid>div,.game-shell.theme-harbour .nb-move-grid>div,.game-shell.theme-harbour .margin-lift-grid>div,.game-shell.theme-harbour .trust-move-grid>div,.game-shell.theme-harbour .cash-move-grid>div,.game-shell.theme-harbour .equity-move-grid>div,.game-shell.theme-harbour .pat-move-grid>div,.game-shell.theme-harbour .claim-ratio-move-grid>div,.game-shell.theme-harbour .csm-move-grid>div,.game-shell.theme-harbour .programme-bau-grid>div,.game-shell.theme-harbour .investment-outcomes-grid>div,.game-shell.theme-harbour .remedy-payback-grid>div,.game-shell.theme-harbour .project-delivery-grid>div,.game-shell.theme-harbour .channel-mix-grid>div,.game-shell.theme-harbour .product-mix-grid>div{border-color:#e8deca}.game-shell.theme-harbour .report-seal{color:#3c7d5a;background:#dce9c8;border-radius:14px}.game-shell.theme-harbour .glossary-screen{border-radius:20px}.game-shell.theme-harbour .term-card,.game-shell.theme-harbour .formula-step{border-radius:12px}.game-shell.theme-harbour .drawer-head h2{letter-spacing:-.6px}@media (min-width:1500px){.harbour-grid{grid-template-columns:minmax(0,1fr) 350px;gap:28px}.harbour-world{height:475px}.game-shell.theme-harbour .round-brief{width:250px;padding:24px}.game-shell.theme-harbour .round-brief h1{font-size:30px}.game-shell.theme-harbour .round-brief p{font-size:13px}.game-shell.theme-harbour .project-card{grid-template-columns:94px minmax(0,1fr);min-height:203px;padding:18px}.project-art{width:94px;min-height:112px}.game-shell.theme-harbour .project-copy b{font-size:16px}.game-shell.theme-harbour .project-copy small{font-size:11px}.game-shell.theme-harbour .strategy-text strong{font-size:14px}.game-shell.theme-harbour .strategy-text em{font-size:11px}}@media (max-width:1100px){.game-shell.theme-harbour{padding:0 16px}.harbour-header{margin:0 -16px;padding:0 18px}.harbour-grid{grid-template-columns:minmax(0,1fr) 286px;gap:15px}.harbour-console{padding:18px 15px}.voyage-progress,.company-health{display:none}.game-shell.theme-harbour .round-brief{width:187px;padding:15px;left:16px}.game-shell.theme-harbour .round-brief h1{font-size:23px}.world-caption b{display:none}.game-shell.theme-harbour .project-hand-grid{gap:8px}.game-shell.theme-harbour .project-card{grid-template-columns:1fr;gap:5px}.project-art{display:none}.game-shell.theme-harbour .project-copy b{font-size:12px}.harbour-channel-pills{gap:4px;left:12px;right:12px}.harbour-channel-pills>div{flex-wrap:wrap;padding:8px 7px}.harbour-channel-pills strong{flex-basis:100%;margin:0 0 0 24px}}@media (max-width:780px){.harbour-header{gap:8px;height:66px}.harbour-brand strong{font-size:15px}.harbour-brand small{letter-spacing:.8px;font-size:6px}.harbour-brand-icon{width:33px;height:36px}.harbour-header-actions{gap:5px}.harbour-header-actions button{gap:0;height:33px;padding:0 7px;font-size:0}.harbour-status{flex-wrap:wrap;gap:16px 10px;padding:15px 0}.chapter-tag{flex-basis:100%}.chapter-tag>div{align-items:center;gap:12px;display:flex}.chapter-tag b{margin:0;font-size:14px}.resource{gap:5px}.resource>svg{width:22px}.resource small{letter-spacing:.4px;font-size:7px}.resource strong{font-size:21px}.status-good,.status-risk{display:none}.harbour-grid{flex-direction:column;gap:20px;display:flex}.harbour-play{width:100%}.harbour-console{width:100%;padding:22px;position:static}.harbour-world{height:540px}.game-shell.theme-harbour .round-brief{width:calc(100% - 30px);margin:15px;padding:15px 17px;position:relative;top:0;left:0}.game-shell.theme-harbour .round-brief h1{margin:7px 0;font-size:23px}.game-shell.theme-harbour .round-brief p{font-size:11px}.game-shell.theme-harbour .round-brief .event-readout{margin-top:7px;padding-top:7px}.game-shell.theme-harbour .round-brief .brief-link{display:none}.game-shell.theme-harbour .city-scene{width:108%;height:340px;top:135px;left:-4%}.world-caption{display:none}.harbour-location{bottom:87px;left:18px}.harbour-channel-pills>div{gap:3px}.harbour-channel-pills>div svg{width:14px}.harbour-channel-pills>div span{font-size:8px}.harbour-channel-pills strong{margin-left:17px;font-size:12px}.game-shell.theme-harbour .project-hand-head{gap:5px}.game-shell.theme-harbour .project-hand-head>strong{font-size:8px}.game-shell.theme-harbour .project-hand-grid{grid-template-columns:1fr}.game-shell.theme-harbour .project-card{grid-template-columns:75px minmax(0,1fr) auto;gap:5px 10px;min-height:0;padding:12px}.project-art{grid-row:1/4;width:75px;min-height:90px;display:flex}.project-art>svg{width:47px}.project-art-label{font-size:6px}.game-shell.theme-harbour .project-copy{grid-column:2;padding:2px 6px 0 0}.game-shell.theme-harbour .project-copy b{font-size:14px}.game-shell.theme-harbour .project-copy small{font-size:10px}.game-shell.theme-harbour .project-price{flex-direction:column;grid-area:1/3/3;align-self:center}.project-price>svg{display:none}.game-shell.theme-harbour .project-card>em{grid-column:2/4;font-size:9px}.game-shell.theme-harbour .project-hand-reshuffle small{font-size:7px}.commitments>summary{flex-wrap:wrap}.commitments>summary span{font-size:9px}.game-shell.theme-harbour .strategy-text strong{font-size:15px}.game-shell.theme-harbour .strategy-text em{font-size:12px}.game-shell.theme-harbour .strategy-option{padding:15px 25px 15px 12px}.game-shell.theme-harbour .strategy-icon{width:32px}.pool-heading>div>small,.pool-breakdown span{font-size:10px}.pool-breakdown b{font-size:11px}.bau-panel>summary{font-size:12px}.game-shell.theme-harbour .claims-lag-pin p,.game-shell.theme-harbour .project-cash-pin p,.game-shell.theme-harbour .floor-pressure-pin p{font-size:10px}.game-shell.theme-harbour .harbour-ledger .scoreboard{grid-template-columns:repeat(3,1fr)}.game-shell.theme-harbour .harbour-ledger .channel-strip{grid-template-columns:repeat(2,1fr)}.harbour-ledger{padding:16px}.game-shell.theme-harbour .harbour-ledger .annual-report-head{display:block}.company-selector{margin-top:10px}.game-shell.theme-harbour .harbour-ledger .report-column-head,.game-shell.theme-harbour .harbour-ledger .statement-table>div{grid-template-columns:minmax(95px,1fr) 80px 80px;gap:7px;padding-left:0;padding-right:0}.game-shell.theme-harbour .harbour-ledger .statement-table span{font-size:11px}.game-shell.theme-harbour .harbour-ledger .statement-table b{font-size:12px}.harbour-footer{flex-wrap:wrap}.harbour-footer>small{flex-basis:100%}}@media (prefers-reduced-motion:reduce){.theme-harbour *,.theme-harbour :before,.theme-harbour :after{transition:none!important;animation:none!important}}.game-shell.theme-harbour dialog.walkthrough-backdrop{color:#234939;background:#153b37b8;border:0;width:100vw;max-width:none;height:100svh;max-height:none;margin:0}.game-shell.theme-harbour .walkthrough-screen{background:#fffdf5;border-color:#bed0ba;box-shadow:0 20px 80px #102e3555}.game-shell.theme-harbour .walkthrough-head p,.game-shell.theme-harbour .walkthrough-step p{color:#536953}.game-shell.theme-harbour .walkthrough-actions{flex-shrink:0}.game-shell.theme-harbour .finance-title{margin:10px 0 20px;font-size:26px}.finance-quarter-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.game-shell.theme-harbour .receipt-modal.capital-reserve-receipt,.game-shell.theme-harbour .receipt-modal.capital-release-receipt{width:min(640px,94vw)}.game-shell.theme-harbour .receipt-modal.quarter-close-receipt{width:min(760px,94vw);max-height:92svh;overflow:hidden auto}.game-shell.theme-harbour .modal-backdrop .board-pack-head{color:#5d7058;border-bottom-color:#d5e0c8}.game-shell.theme-harbour .modal-backdrop .board-pack-head b{color:#2f6d52}.game-shell.theme-harbour .capital-reserve-sheet{margin:16px 0 12px}.game-shell.theme-harbour .finance-card{color:#234939;background:#f5f7ed;border:1px solid #d4dec8;border-radius:14px;min-width:0;margin-bottom:16px;padding:20px}.game-shell.theme-harbour .finance-card h3{letter-spacing:-.3px;margin:0 0 7px;font-size:17px}.game-shell.theme-harbour .finance-card p,.game-shell.theme-harbour .finance-empty{color:#52664f;margin:8px 0;font-size:12px;line-height:1.7}.finance-card dl,.cash-preview dl{grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;margin:18px 0;font-size:12px;display:grid}.finance-card dd,.cash-preview dd{text-align:right;font-variant-numeric:tabular-nums;margin:0;font-weight:700}.finance-card .finance-total{border-top:1px solid #bcccae;padding-top:12px;font-weight:800}.game-shell.theme-harbour .finance-card .finance-check{color:#246843;font-weight:700}.game-shell.theme-harbour .finance-card .finance-warning{color:#a12e25;font-weight:700}.finance-card summary,.result-finance>summary{cursor:pointer;padding:12px 0;font-size:12px;font-weight:700}.result-finance{border-top:1px solid #d4dec8;margin:16px 0}.game-shell.theme-harbour .cash-preview{color:#254d3c;background:#e9efdc;border:1px solid #c7d6b6;border-radius:12px;margin-top:12px;padding:16px}.cash-preview>strong{letter-spacing:.8px;font-size:10px}.cash-preview dl{gap:8px 12px;margin:12px 0;font-size:11px}.cash-preview small{color:#52664f;font-size:10px;line-height:1.6;display:block}@media (max-width:780px){.finance-quarter-grid{grid-template-columns:1fr}.game-shell.theme-harbour .finance-card{padding:15px}.game-shell.theme-harbour .walkthrough-tabs{flex-wrap:wrap}.game-shell.theme-harbour .walkthrough-actions{gap:6px;padding:10px}}
