:root{--ui-wood:#4a2e1b;--ui-wood-hi:#7a4d2b;--ui-leather:#3b2a1f;--ui-leather-dk:#261a12;--ui-parch:#e8d9b5;--ui-parch-dk:#d5c39a;--ui-gold:#c9a227;--ui-gold-hi:#f1d77a;--ui-ink:#2b1d12;--ui-ink-muted:#6b5a44;--ui-accent:#1f5a7a;--ui-red:#a3261e;--ui-green:#3e7a3a;--ui-amber:#d98e2b;--ui-disabled:#8b8272;--map-ocean:#24506e;--map-ocean-deep:#1b3f58;--map-selection:#f2c14e;--route-best:#ffd166;--route-canal:#7fc8f0;--route-cape:#d9534f;--route-arctic:#bfe6f5;--route-safe:#7fbf7f;--tex-wood:none;--tex-leather:none;--tex-parch:none;--frame-image:none;--frame-slice:96;--frame-width:24px;--btn-image:none;--btn-slice:184;--tab-image:none;--tab-slice:184;--font-head:"Cinzel", Georgia, "Times New Roman", serif;--font-body:"Source Serif 4", Georgia, "Times New Roman", serif;--font-fell:"IM Fell English", Georgia, "Times New Roman", serif}#ui,.bl-ui{pointer-events:none;font:14px/1.35 var(--font-body);color:var(--ui-ink);z-index:10;position:absolute;inset:0;overflow:hidden}.bl-ui *{box-sizing:border-box}.bl-ui .num,.bl-ui .money,.bl-ui td.num,.bl-ui .tab-num{font-variant-numeric:tabular-nums}.bl-ui .money.pos{color:var(--ui-green)}.bl-ui .money.neg{color:var(--ui-red)}.bl-ui .amber{color:var(--ui-amber)}.bl-ui .red{color:var(--ui-red)}.bl-ui .green{color:var(--ui-green)}.bl-ui .muted{color:var(--ui-ink-muted)}.bl-ui .fell{font-family:var(--font-fell);font-style:italic}.bl-ui .head{font-family:var(--font-head);letter-spacing:.04em;font-weight:600}.bl-ui .caps{text-transform:uppercase;letter-spacing:.06em}.bl-ui .link{color:var(--ui-accent);cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.bl-ui .link:hover{color:var(--ui-gold)}.bl-ui .hidden{display:none!important}.bl-ui .widget{pointer-events:auto}.bl-ui .scroll{scrollbar-width:thin;scrollbar-color:var(--ui-gold) var(--ui-wood);overflow:auto}.bl-ui .scroll::-webkit-scrollbar{width:6px;height:6px}.bl-ui .scroll::-webkit-scrollbar-track{background:var(--ui-wood)}.bl-ui .scroll::-webkit-scrollbar-thumb{background:var(--ui-gold);border-radius:3px}.bl-ui .wood{background-color:var(--ui-wood);background-image:var(--tex-wood);background-blend-mode:multiply;background-size:512px}.bl-ui .leather{background-color:var(--ui-leather);background-image:var(--tex-leather);background-blend-mode:multiply;background-size:512px}.bl-ui .parch{background-color:var(--ui-parch);background-image:var(--tex-parch);background-blend-mode:multiply;background-size:600px}.bl-ui .frame{border:3px solid var(--ui-gold);background-color:var(--ui-wood);background-image:var(--tex-wood);background-blend-mode:multiply;background-size:512px;border-radius:3px;position:relative;box-shadow:inset 0 0 0 2px #4a2e1b,inset 0 0 0 3px #7a4d2b,0 6px 18px #0000008c}.bl-ui .frame:before{content:"";pointer-events:none;border:1px dashed #f1d77a59;border-radius:2px;position:absolute;inset:4px}.bl-ui .frame:after{content:"";pointer-events:none;background:radial-gradient(circle at 7px 7px, var(--ui-gold-hi) 0 2px, transparent 3px), radial-gradient(circle at calc(100% - 7px) 7px, var(--ui-gold-hi) 0 2px, transparent 3px), radial-gradient(circle at 7px calc(100% - 7px), var(--ui-gold-hi) 0 2px, transparent 3px), radial-gradient(circle at calc(100% - 7px) calc(100% - 7px), var(--ui-gold-hi) 0 2px, transparent 3px);position:absolute;inset:0}.bl-ui.has-frame .frame{border:var(--frame-width) solid transparent;border-image:var(--frame-image) var(--frame-slice) / var(--frame-width) round;border-radius:0;box-shadow:0 6px 18px #0000008c}.bl-ui.has-frame .frame:before,.bl-ui.has-frame .frame:after{display:none}.bl-ui .p-header{height:40px;color:var(--ui-gold-hi);font:600 15px/1 var(--font-head);letter-spacing:.04em;border-bottom:1px solid var(--ui-gold);text-shadow:0 1px #000;align-items:center;gap:8px;padding:0 8px 0 12px;display:flex}.bl-ui .p-header .title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.bl-ui .p-header .crumb{color:var(--ui-parch-dk);cursor:pointer;font-size:12px}.bl-ui .p-header .crumb:hover{color:var(--ui-gold-hi)}.bl-ui .p-header .crumb:after{content:" ▸";color:var(--ui-gold)}.bl-ui .p-body{border-top:1px solid var(--ui-gold);border-bottom:1px solid var(--ui-gold);padding:12px;position:relative;box-shadow:inset 0 2px 8px #00000040}.bl-ui .p-footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-height:44px;padding:6px 10px;display:flex}.bl-ui .p-footer .btn{padding:0 10px;font-size:12px}.bl-ui .section{font:600 12px/1.2 var(--font-head);letter-spacing:.06em;text-transform:uppercase;color:var(--ui-ink);border-bottom:1px solid var(--ui-gold);margin:10px 0 6px;padding-bottom:3px}.bl-ui .section:first-child{margin-top:0}.bl-ui .empty{text-align:center;font:italic 14px var(--font-fell);color:var(--ui-ink);opacity:.6;padding:14px 8px}.bl-ui .close-x{border:1px solid var(--ui-gold);width:24px;height:24px;color:var(--ui-gold-hi);font:700 14px/22px var(--font-head);text-align:center;cursor:pointer;background:#00000040;border-radius:3px}.bl-ui .close-x:hover{background:var(--ui-wood-hi)}.bl-ui .stat{border-bottom:1px dotted #2b1d1226;align-items:center;gap:6px;padding:3px 0;display:flex}.bl-ui .stat .lbl{color:var(--ui-ink-muted);flex:1}.bl-ui .stat .val{font-variant-numeric:tabular-nums;text-align:right}.bl-ui .stat .val .unit{color:var(--ui-ink-muted);white-space:pre;margin-left:4px;font-size:12px}.bl-ui .bar{border:1px solid var(--ui-gold);background:var(--ui-parch-dk);border-radius:2px;height:8px;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #0000004d}.bl-ui .bar>i{background:var(--ui-accent);position:absolute;top:0;bottom:0;left:0}.bl-ui .bar.gold>i{background:var(--ui-gold)}.bl-ui .bar.grey>i{background:var(--ui-disabled)}.bl-ui .bar.green>i{background:var(--ui-green)}.bl-ui .bar.amber>i{background:var(--ui-amber)}.bl-ui .bar.red>i{background:var(--ui-red)}.bl-ui .bar.centered:after{content:"";background:var(--ui-ink);width:1px;position:absolute;top:-1px;bottom:-1px;left:50%}.bl-ui .bar.centered>i.neg{background:var(--ui-red);left:auto;right:50%}.bl-ui .bar.centered>i.pos{background:var(--ui-green);left:50%}.bl-ui .tabstrip{align-items:flex-end;gap:3px;height:32px;padding:2px 8px 0;display:flex;overflow:hidden}.bl-ui .tab{height:30px;line-height:30px;font:600 12px/30px var(--font-head);letter-spacing:.06em;text-transform:uppercase;color:var(--ui-parch-dk);background:var(--ui-wood);box-shadow:inset 0 1px 0 var(--ui-wood-hi);filter:brightness(.8);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #c9a22780;border-bottom:none;border-radius:5px 5px 0 0;padding:0 10px;position:relative}.bl-ui .tab:hover{filter:brightness()}.bl-ui .tab.active{filter:brightness(1.1);color:var(--ui-gold-hi);border-bottom:2px solid var(--ui-gold-hi);margin-bottom:-2px}.bl-ui.has-tab .tab{border:0;border-image:var(--tab-image) 0 var(--tab-slice) 0 var(--tab-slice) fill / 0 20px 0 20px stretch;box-shadow:none;background:0 0;padding:0 22px}.bl-ui.has-tab .dock .tab{background:var(--ui-wood);box-shadow:inset 0 1px 0 var(--ui-wood-hi);border:1px solid #c9a22780;border-bottom:none;padding:0 4px}.bl-ui.has-tab .dock .tab.active{border-bottom:2px solid var(--ui-gold-hi)}.bl-ui .tab .cnt{font:600 10px/14px var(--font-body);color:var(--ui-ink);background:var(--ui-gold);vertical-align:middle;border-radius:7px;margin-left:5px;padding:0 4px}.bl-ui .btn{border:1px solid var(--ui-gold);background:var(--ui-parch-dk);min-height:30px;color:var(--ui-ink);font:600 13px var(--font-head);letter-spacing:.03em;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:3px;justify-content:center;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.bl-ui .btn:hover{filter:brightness(1.08)}.bl-ui .btn:active{filter:brightness(.85);transform:translateY(1px)}.bl-ui .btn:disabled,.bl-ui .btn.disabled{filter:grayscale(.6)opacity(.55);cursor:not-allowed;pointer-events:none}.bl-ui .btn:focus-visible{outline:2px solid var(--ui-gold-hi);outline-offset:1px}.bl-ui .btn .cost{font:13px var(--font-body);font-variant-numeric:tabular-nums;opacity:.9;margin-left:auto}.bl-ui .btn.primary{border:1px solid var(--ui-gold);height:36px;box-shadow:inset 0 1px 0 var(--ui-wood-hi), inset 0 0 0 1px #00000059;color:var(--ui-gold-hi);text-shadow:0 1px #000;background:linear-gradient(#5c3a22,#3d2515)}.bl-ui .btn.primary:hover{filter:brightness(1.12)}.bl-ui.has-btn .btn.primary{box-shadow:none;border:0;border-image:var(--btn-image) 0 var(--btn-slice) 0 var(--btn-slice) fill / 0 18px 0 18px stretch;background:0 0;padding:0 20px}.bl-ui.has-btn .btn.primary.small{border-image-width:0 13px;height:26px;min-height:26px;padding:0 16px}.bl-ui .btn.danger{background:var(--ui-leather-dk);border-color:var(--ui-red);color:#e5a39e}.bl-ui .btn.iconbtn{background:var(--ui-wood);width:28px;height:28px;min-height:28px;color:var(--ui-gold-hi);padding:0}.bl-ui .btn.small{min-height:24px;padding:0 8px;font-size:11px}.bl-ui .btn.wide{width:100%}.bl-ui .btnrow{flex-wrap:wrap;gap:6px;margin:6px 0;display:flex}.bl-ui input[type=text],.bl-ui input[type=number],.bl-ui select,.bl-ui textarea{font:13px var(--font-body);color:var(--ui-ink);background:var(--ui-parch-dk);border:1px solid var(--ui-gold);border-radius:2px;outline:none;padding:4px 6px}.bl-ui input:focus,.bl-ui select:focus{box-shadow:0 0 0 2px #f1d77a80}.bl-ui select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23c9a227' stroke-width='2'/></svg>");background-position:right 8px center;background-repeat:no-repeat;padding-right:26px}.bl-ui select option{background:var(--ui-parch)}.bl-ui input.money-in{font-variant-numeric:tabular-nums;text-align:right}.bl-ui label.check{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.bl-ui input[type=checkbox]{accent-color:var(--ui-accent)}.bl-ui .seg{border:1px solid var(--ui-gold);border-radius:3px;display:inline-flex;overflow:hidden}.bl-ui .seg>button{border:0;border-right:1px solid var(--ui-gold);background:var(--ui-parch-dk);color:var(--ui-ink);font:600 11px var(--font-head);letter-spacing:.04em;cursor:pointer;padding:3px 8px}.bl-ui .seg>button:last-child{border-right:0}.bl-ui .seg>button.on{background:var(--ui-accent);color:var(--ui-parch)}.bl-ui table.ledger{border-collapse:separate;border-spacing:0;width:100%;font:13px var(--font-body)}.bl-ui table.ledger th{z-index:1;background-color:var(--ui-leather);background-image:var(--tex-leather);background-blend-mode:multiply;color:var(--ui-gold-hi);font:600 11px var(--font-head);letter-spacing:.06em;text-transform:uppercase;text-align:left;border-bottom:1px solid var(--ui-gold);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;background-size:512px;padding:6px;position:sticky;top:0}.bl-ui table.ledger th.num{text-align:right}.bl-ui table.ledger th .arrow{color:var(--ui-gold);margin-left:3px;font-size:9px}.bl-ui table.ledger td{white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #2b1d1214;max-width:220px;height:30px;padding:2px 6px;overflow:hidden}.bl-ui table.ledger td.num{text-align:right;font-variant-numeric:tabular-nums}.bl-ui table.ledger tbody tr:nth-child(2n) td{background:#0000000b}.bl-ui table.ledger tbody tr:hover td{background:#1f5a7a1f}.bl-ui table.ledger tbody tr.clickable{cursor:pointer}.bl-ui table.ledger tbody tr.selected td{background:#1f5a7a38}.bl-ui table.ledger tbody tr.selected td:first-child{box-shadow:inset 2px 0 0 var(--ui-accent)}.bl-ui table.ledger td .unit{color:var(--ui-ink-muted);font-size:12px}.bl-ui table.ledger td.total,.bl-ui table.ledger tr.total td{border-top:1px solid var(--ui-gold);font-weight:600}.bl-ui .tablewrap{max-width:100%;overflow:auto}.bl-ui .ico{vertical-align:middle;width:18px;height:18px;color:var(--ui-gold-hi);border:1px solid var(--ui-gold);font:700 10px/1 var(--font-head);background:radial-gradient(circle at 40% 35%,#2c4a66,#16283a);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.bl-ui .ico img{object-fit:contain;width:100%;height:100%;display:block}.bl-ui .ico.has-img{background:0 0;border:0;border-radius:0}.bl-ui .ico.sz24{width:24px;height:24px;font-size:12px}.bl-ui .ico.sz32{width:32px;height:32px;font-size:15px}.bl-ui .ico.sz40{width:40px;height:40px;font-size:18px}.bl-ui .ico.sz48{width:48px;height:48px;font-size:22px}.bl-ui .chip{border:1px solid var(--ui-gold);background:var(--ui-parch-dk);height:18px;color:var(--ui-ink);font:600 10px/16px var(--font-head);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;vertical-align:middle;border-radius:9px;align-items:center;gap:4px;padding:0 6px;display:inline-flex}.bl-ui .chip.gold{background:var(--ui-gold);color:var(--ui-ink)}.bl-ui .chip.red{background:var(--ui-red);color:var(--ui-parch);border-color:var(--ui-red)}.bl-ui .chip.green{background:var(--ui-green);color:var(--ui-parch);border-color:var(--ui-green)}.bl-ui .chip.amber{background:var(--ui-amber);color:var(--ui-ink);border-color:var(--ui-amber)}.bl-ui .chip.accent{background:var(--ui-accent);color:var(--ui-parch);border-color:var(--ui-accent)}.bl-ui .chip.muted{color:var(--ui-ink-muted);border-color:var(--ui-disabled);background:0 0}.bl-ui .chip.leather{background:var(--ui-leather);color:var(--ui-gold-hi)}.bl-ui .chip.skull{background:var(--ui-leather-dk);color:#e5a39e;border-color:var(--ui-red)}.bl-ui .chip.num{text-transform:none;letter-spacing:0;font-variant-numeric:tabular-nums}.bl-ui .card{background:var(--ui-parch-dk);cursor:pointer;border:1px solid #c9a22780;border-radius:3px;margin:6px 0;padding:8px 10px;position:relative}.bl-ui .card:hover{background:var(--ui-parch);box-shadow:inset 3px 0 0 var(--ui-gold)}.bl-ui .card.selected{background:#1f5a7a26}.bl-ui .card.static{cursor:default}.bl-ui .card.static:hover{box-shadow:none;background:var(--ui-parch-dk)}.bl-ui .card .row{align-items:center;gap:8px;display:flex}.bl-ui .card .row+.row{margin-top:4px}.bl-ui .card .grow{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.bl-ui .card .title{font:600 13px var(--font-head);letter-spacing:.02em}.bl-ui .card .sub{color:var(--ui-ink-muted);font-size:12px}.bl-ui .ribbon{background:var(--ui-gold);color:var(--ui-ink);font:600 9px/14px var(--font-head);letter-spacing:.08em;text-transform:uppercase;border-radius:0 0 3px 3px;padding:1px 6px;position:absolute;top:-1px;right:8px}.bl-ui .tooltip{z-index:200;background-color:var(--ui-leather-dk);background-image:var(--tex-leather);background-blend-mode:multiply;border:1px solid var(--ui-gold);max-width:320px;color:var(--ui-parch);font:12px/1.4 var(--font-body);opacity:0;pointer-events:none;background-size:512px;border-radius:3px;padding:8px 10px;transition:opacity .12s;position:absolute;box-shadow:0 4px 12px #00000080}.bl-ui .tooltip.show{opacity:1}.bl-ui .tooltip .tt-title{font:600 12px var(--font-head);letter-spacing:.04em;color:var(--ui-gold-hi);margin-bottom:4px}.bl-ui .tooltip .tt-row{justify-content:space-between;gap:12px;display:flex}.bl-ui .tooltip .tt-row .v{font-variant-numeric:tabular-nums}.bl-ui .tooltip .tt-row .v.pos{color:#8fd08a}.bl-ui .tooltip .tt-row .v.neg{color:#e88b84}.bl-ui .tooltip .tt-hint{font:italic 12px var(--font-fell);color:var(--ui-parch-dk);margin-top:5px}.bl-ui .tooltip .tt-sep{border-top:1px solid #c9a22766;margin:4px 0}.bl-ui .tooltip:after{content:"";border:6px solid #0000;width:0;height:0;position:absolute}.bl-ui .tooltip.below:after{top:-12px;left:var(--caret-x,20px);border-bottom-color:var(--ui-gold)}.bl-ui .tooltip.above:after{bottom:-12px;left:var(--caret-x,20px);border-top-color:var(--ui-gold)}.bl-ui .kv{grid-template-columns:auto 1fr;gap:2px 10px;font-size:13px;display:grid}.bl-ui .kv>b{color:var(--ui-ink-muted);font-weight:400}.bl-ui .kv>span{font-variant-numeric:tabular-nums}.bl-ui .pips{vertical-align:middle;gap:2px;display:inline-flex}.bl-ui .pips i{background:var(--ui-parch-dk);border:1px solid var(--ui-gold);border-radius:50%;width:7px;height:7px}.bl-ui .pips i.on{background:var(--ui-gold)}.bl-ui .hr{border-top:1px solid var(--ui-gold);opacity:.6;margin:8px 0}.bl-ui .flex{align-items:center;gap:8px;display:flex}.bl-ui .flex .grow{flex:1;min-width:0}.bl-ui .grid2{grid-template-columns:1fr 1fr;gap:4px 12px;display:grid}.bl-ui .logo-mono,.bl-start .logo-mono{border:2px solid var(--ui-gold);color:var(--ui-gold-hi);font:700 var(--font-head);text-shadow:0 1px #000;background:radial-gradient(circle at 40% 35%,#2a5a7c,#12293a 70%);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden;box-shadow:inset 0 0 0 1px #00000080,0 1px 3px #00000080}.bl-ui .logo-mono img,.bl-start .logo-mono img{object-fit:cover;width:100%;height:100%}@keyframes bl-blink{0%,to{opacity:1}50%{opacity:.45}}@keyframes bl-slide-left{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:none}}@keyframes bl-slide-down{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}@keyframes bl-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.bl-ui .topbar{border-bottom:2px solid var(--ui-gold);height:56px;box-shadow:inset 0 1px 0 var(--ui-wood-hi), 0 3px 10px #00000080;z-index:30;align-items:center;gap:0;padding:0 10px;display:flex;position:absolute;top:0;left:0;right:0}.bl-ui .topbar .brand{cursor:pointer;align-items:center;gap:10px;min-width:0;padding-right:14px;display:flex}.bl-ui .topbar .brand .names{flex-direction:column;min-width:0;line-height:1.1;display:flex}.bl-ui .topbar .brand .co{font:600 16px var(--font-head);color:var(--ui-gold-hi);letter-spacing:.04em;white-space:nowrap;text-shadow:0 1px #000}.bl-ui .topbar .brand .founder{font:12px var(--font-body);color:var(--ui-parch-dk);opacity:.85}.bl-ui .topbar .cells{flex:1;align-items:stretch;min-width:0;display:flex;overflow:hidden}.bl-ui .topbar .cell{cursor:pointer;white-space:nowrap;border-left:1px solid #c9a22766;flex:0 auto;align-items:center;gap:7px;min-width:0;padding:0 12px;display:flex}.bl-ui .topbar .cell:hover{background:#ffffff0d}.bl-ui .topbar .cell .txt{flex-direction:column;min-width:0;line-height:1.05;display:flex;overflow:hidden}.bl-ui .topbar .cell .v{font:15px var(--font-body);font-variant-numeric:tabular-nums;color:var(--ui-parch);text-overflow:ellipsis;overflow:hidden}.bl-ui .topbar .cell .l{font:600 9px var(--font-head);letter-spacing:.08em;text-transform:uppercase;color:var(--ui-parch-dk);opacity:.8}.bl-ui .topbar .cell .l .short{display:none}.bl-ui .topbar .cell .v.green{color:#8fd08a}.bl-ui .topbar .cell .v.red{color:#e88b84}.bl-ui .topbar .cell .v.flash{animation:1s infinite bl-blink}.bl-ui .topbar .cell .v.gold{color:var(--ui-gold-hi)}.bl-ui .topbar .right{border-left:1px solid #c9a22766;align-items:center;gap:8px;padding-left:12px;display:flex}.bl-ui .topbar .date{border:1px solid var(--ui-gold);background:var(--ui-parch);color:var(--ui-ink);font:600 15px var(--font-head);letter-spacing:.03em;white-space:nowrap;text-align:center;border-radius:3px;min-width:170px;padding:4px 12px}.bl-ui .topbar .date .hh{font:11px var(--font-body);color:var(--ui-ink-muted);margin-left:6px}.bl-ui .topbar.paused .date{background:#d9b8a3;animation:2.4s infinite bl-blink}.bl-ui .topbar .speed{align-items:center;gap:3px;display:flex}.bl-ui .topbar .speed .pause{border:1px solid var(--ui-gold);background:var(--ui-wood);width:28px;height:28px;color:var(--ui-gold-hi);font:700 13px/26px var(--font-head);text-align:center;cursor:pointer;border-radius:3px;margin-right:4px}.bl-ui .topbar .speed .pip{border:1px solid var(--ui-gold);background:var(--ui-parch-dk);cursor:pointer;border-radius:2px;width:14px;height:22px}.bl-ui .topbar .speed .pip.on{background:var(--ui-gold);box-shadow:0 0 6px #f1d77a99}.bl-ui .ribbon-paused{background:var(--ui-gold);color:var(--ui-ink);font:700 11px var(--font-head);letter-spacing:.12em;text-transform:uppercase;z-index:29;border-radius:0 0 4px 4px;padding:3px 16px;position:absolute;top:58px;left:50%;transform:translate(-50%);box-shadow:0 2px 6px #00000080}.bl-ui .alerts{z-index:25;flex-direction:column;gap:4px;display:flex;position:absolute;top:64px;left:12px}.bl-ui .alert-plate{border:1px solid var(--ui-gold);width:40px;height:40px;box-shadow:inset 0 1px 0 var(--ui-wood-hi), 0 2px 6px #00000080;cursor:pointer;border-radius:3px;justify-content:center;align-items:center;animation:.18s ease-out bl-slide-left;display:flex;position:relative}.bl-ui .alert-plate:hover{filter:brightness(1.2)}.bl-ui .alert-plate .badge{background:var(--ui-gold);min-width:16px;height:16px;color:var(--ui-ink);font:700 10px/16px var(--font-body);text-align:center;border-radius:8px;padding:0 4px;position:absolute;top:-5px;right:-5px}.bl-ui .alert-plate.danger{border-color:var(--ui-red)}.bl-ui .dock{z-index:24;flex-direction:column;width:420px;animation:.18s ease-out bl-slide-left;display:flex;position:absolute;top:64px;bottom:12px;left:60px}.bl-ui .dock .p-body{flex:1;min-height:0}.bl-ui .dock .tabstrip{flex-wrap:nowrap;gap:2px;height:32px;padding:2px 4px 0}.bl-ui .dock .tab{letter-spacing:.02em;text-align:center;text-overflow:ellipsis;flex:1 1 0;min-width:0;height:30px;padding:0 4px;font-size:11px;line-height:30px;overflow:hidden}.bl-ui .dock .tab .cnt{margin-left:3px}.bl-ui .dock .p-footer:empty{display:none}.bl-ui .dock .p-footer{flex-wrap:nowrap;gap:4px;padding:6px}.bl-ui .dock .p-footer .btn{text-overflow:ellipsis;min-width:0;padding:0 8px;font-size:11.5px;overflow:hidden}.bl-ui .ship-portrait{border:1px solid var(--ui-gold);background:radial-gradient(ellipse at 50% 50%, #2f6485, var(--map-ocean) 70%);border-radius:3px;flex:none;justify-content:center;align-items:center;width:128px;height:64px;display:inline-flex;overflow:hidden}.bl-ui .ship-portrait img{object-fit:contain;width:56px;height:120px;transform:rotate(-90deg)}.bl-ui .cwin{z-index:36;flex-direction:column;width:620px;height:min(660px,100vh - 80px);animation:.16s ease-out bl-pop;display:flex;position:absolute;top:64px;left:492px}.bl-ui .cwin .cw-plan .stat .lbl{width:24px;color:var(--ui-ink);flex:none}.bl-ui .cwin .cw-plan .stat.now{background:#1f5a7a1f}.bl-ui .cwin .cw-net{font:600 15px var(--font-head)}.bl-ui .cwin .p-header{cursor:move}.bl-ui .cwin .p-body{flex:1;min-height:0}.bl-ui .cwin .cw-head{align-items:flex-start;gap:12px;display:flex}.bl-ui .cwin .cw-head .big{font:600 15px var(--font-head)}.bl-ui .cwin .route-line{font:600 14px var(--font-head);align-items:center;gap:6px;margin:4px 0;display:flex}.bl-ui .cwin .route-line .arr{color:var(--ui-gold)}.bl-ui .req{align-items:center;gap:6px;padding:2px 0;font-size:13px;display:flex}.bl-ui .req .tick{text-align:center;width:16px;font-weight:700}.bl-ui .req .tick.ok{color:var(--ui-green)}.bl-ui .req .tick.no{color:var(--ui-red)}.bl-ui .rc{margin:6px 0}.bl-ui .rc-card{border:1px solid #c9a22780;border-left:6px solid var(--rc-color,var(--route-best));background:var(--ui-parch-dk);cursor:pointer;opacity:.85;border-radius:3px;margin:5px 0;padding:6px 8px 6px 12px;position:relative}.bl-ui .rc-card:hover,.bl-ui .rc-card.chosen{opacity:1;background:var(--ui-parch);box-shadow:0 0 0 1px var(--rc-color)}.bl-ui .rc-card.chosen:after{content:"✓";color:var(--ui-green);font-weight:700;position:absolute;top:6px;right:8px}.bl-ui .rc-card .rc-title{font:600 13px var(--font-head);align-items:center;gap:8px;display:flex}.bl-ui .rc-card .rc-grid{grid-template-columns:repeat(4,1fr);gap:1px 8px;margin-top:3px;font-size:12px;display:grid}.bl-ui .rc-card .rc-grid b{font:600 9px var(--font-head);letter-spacing:.06em;text-transform:uppercase;color:var(--ui-ink-muted);display:block}.bl-ui .rc-card .rc-grid span{font-variant-numeric:tabular-nums}.bl-ui .rc-card .rc-eta{margin-top:3px;font-size:12px}.bl-ui .outliner{border:2px solid var(--ui-gold);background-color:var(--ui-wood);background-image:var(--tex-wood);background-blend-mode:multiply;z-index:22;background-size:512px;border-right:0;border-radius:4px 0 0 4px;flex-direction:column;width:300px;transition:transform .18s ease-out;display:flex;position:absolute;top:64px;bottom:366px;right:0;box-shadow:0 4px 12px #00000080}.bl-ui .outliner.collapsed{transform:translate(272px)}.bl-ui .outliner .ol-tab{writing-mode:vertical-rl;width:26px;color:var(--ui-gold-hi);font:600 11px var(--font-head);letter-spacing:.15em;text-transform:uppercase;cursor:pointer;border-right:1px solid var(--ui-gold);justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0}.bl-ui .outliner .ol-body{flex:1;min-height:0;margin-left:26px;padding:6px}.bl-ui .ol-row{background:var(--ui-parch-dk);cursor:pointer;border:1px solid #c9a22780;border-radius:3px;grid-template-columns:48px 1fr auto;align-items:center;gap:3px 6px;margin-bottom:4px;padding:5px 6px;display:grid}.bl-ui .ol-row:hover{background:var(--ui-parch)}.bl-ui .ol-row .nm{font:600 11px var(--font-head);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bl-ui .ol-row .bar{grid-column:1/-1}.bl-ui .ol-row .eta{color:var(--ui-ink-muted);grid-column:1/-1;justify-content:space-between;font-size:11px;display:flex}.bl-ui .ol-row .thumb{border:1px solid var(--ui-gold);background:var(--map-ocean);border-radius:2px;justify-content:center;align-items:center;width:48px;height:24px;display:inline-flex;overflow:hidden}.bl-ui .ol-row .thumb img{object-fit:contain;width:22px;height:46px;transform:rotate(-90deg)}.bl-ui .ol-row .ico{justify-self:center}.bl-ui .msglog{border:1px solid var(--ui-gold);background-color:#3b2a1fd9;background-image:var(--tex-leather);background-blend-mode:multiply;width:400px;max-height:150px;color:var(--ui-parch);font:12px/1.35 var(--font-body);z-index:21;background-size:512px;border-radius:3px;padding:6px 8px;transition:left .18s ease-out;position:absolute;bottom:12px;left:12px}.bl-ui.dock-open .msglog{left:492px}.bl-ui .msglog .m{cursor:pointer;align-items:baseline;gap:6px;padding:1px 0;display:flex}.bl-ui .msglog .m:hover{color:var(--ui-gold-hi)}.bl-ui .msglog .m .t{color:var(--ui-parch-dk);font-variant-numeric:tabular-nums;opacity:.8;flex:none;font-size:11px}.bl-ui .toasts{z-index:34;flex-direction:column;gap:6px;width:360px;display:flex;position:absolute;top:86px;left:50%;transform:translate(-50%)}.bl-ui .toast{border:1px solid var(--ui-gold);background-color:var(--ui-leather);background-image:var(--tex-leather);background-blend-mode:multiply;color:var(--ui-parch);cursor:pointer;background-size:512px;border-radius:3px;align-items:flex-start;gap:10px;padding:8px 10px;animation:.2s ease-out bl-slide-down;display:flex;box-shadow:0 4px 12px #00000080}.bl-ui .toast .tt{font:600 12px var(--font-head);color:var(--ui-gold-hi);letter-spacing:.04em}.bl-ui .toast .tx{font:12px var(--font-body)}.bl-ui .toast.danger{border-left:4px solid var(--ui-red)}.bl-ui .toast.warning{border-left:4px solid var(--ui-amber)}.bl-ui .toast.success{border-left:4px solid var(--ui-green)}.bl-ui .toast.milestone{border:2px solid var(--ui-gold-hi);box-shadow:0 0 12px #f1d77a80}.bl-ui .toast.persistent{border-color:var(--ui-gold-hi);border-width:2px}.bl-ui .toast .thumb{object-fit:cover;border:1px solid var(--ui-gold);flex:none;width:48px;height:48px}.bl-ui .toast .x{color:var(--ui-parch-dk);margin-left:auto;font-weight:700}.bl-ui .modebar{z-index:23;flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute;bottom:12px;right:12px}.bl-ui .modebar .ov-row{gap:4px;display:flex}.bl-ui .modebar .modes{flex-direction:column;gap:4px;display:flex}.bl-ui .modebar .mbtn{border:1px solid var(--ui-gold);width:40px;height:40px;box-shadow:inset 0 1px 0 var(--ui-wood-hi), 0 2px 6px #00000080;cursor:pointer;filter:brightness(.85);border-radius:3px;justify-content:center;align-items:center;display:flex}.bl-ui .modebar .mbtn .ico{filter:brightness(.75)}.bl-ui .modebar .mbtn:hover{filter:brightness(1.05)}.bl-ui .modebar .mbtn.active{filter:none;border-color:var(--ui-gold-hi);box-shadow:inset 0 0 8px #f1d77a99}.bl-ui .modebar .mbtn.active .ico{filter:none}.bl-ui .modebar .mbtn.small{width:32px;height:32px}.bl-ui .modebar .key{font:700 8px var(--font-head);color:var(--ui-gold);position:absolute;bottom:0;right:2px}.bl-ui .modebar .mbtn{position:relative}.bl-ui .modebar .wrap{align-items:flex-end;gap:8px;display:flex}.bl-ui .legend{border:1px solid var(--ui-gold);border-radius:3px;min-width:170px;max-width:280px;max-height:340px;padding:8px 10px;font-size:12px;box-shadow:0 4px 12px #00000080}.bl-ui .legend .lg-title{font:600 12px var(--font-head);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--ui-gold);margin-bottom:4px;padding-bottom:2px}.bl-ui .legend .lg-row{align-items:center;gap:6px;padding:1px 0;display:flex}.bl-ui .legend .lg-row .sw{border:1px solid var(--ui-ink);border-radius:2px;flex:none;width:14px;height:14px}.bl-ui .legend .lg-row .sw.dot{border-radius:50%}.bl-ui .legend .lg-row .sw.line{border:0;height:3px}.bl-ui .legend .lg-row .lv{font-variant-numeric:tabular-nums;color:var(--ui-ink-muted);margin-left:auto}.bl-ui .legend .lg-chips{flex-wrap:wrap;gap:3px;margin:4px 0;display:flex}.bl-ui .legend .gauge{background:linear-gradient(90deg, var(--ui-red), var(--ui-parch-dk), var(--ui-green));border:1px solid var(--ui-ink);height:6px;margin:4px 0;position:relative}.bl-ui .legend .gauge i{background:var(--ui-ink);width:2px;height:12px;position:absolute;top:-4px}.bl-ui .backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;background:#261a128c;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.bl-ui .modal{flex-direction:column;width:640px;max-height:94vh;display:flex}.bl-ui .modal.pop{animation:.16s ease-out bl-pop}.bl-ui .modal .illu{border:2px solid var(--ui-gold);height:260px;box-shadow:inset 0 0 0 1px var(--ui-leather-dk);background:linear-gradient(160deg,#1b3f58,#24506e 55%,#3e7a95);margin:6px;position:relative;overflow:hidden}.bl-ui .modal .illu img{object-fit:cover;width:100%;height:100%;display:block}.bl-ui .modal .illu .fallback{font:italic 28px var(--font-fell);color:#e8d9b5b3;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.bl-ui .modal .p-body{overflow:auto}.bl-ui .modal .dateline{font:600 11px var(--font-head);letter-spacing:.06em;text-transform:uppercase;color:var(--ui-ink-muted);margin-bottom:6px}.bl-ui .modal .flavour{font:16px/1.45 var(--font-fell);white-space:pre-line}.bl-ui .modal .effects{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.bl-ui .modal .options{flex-direction:column;gap:6px;padding:8px 12px;display:flex}.bl-ui .modal .options .btn{justify-content:flex-start}.bl-ui .modal .options .btn .k{border:1px solid var(--ui-gold);width:18px;height:18px;font:700 10px/16px var(--font-body);text-align:center;border-radius:2px}.bl-ui .modal .options .btn.chosen{box-shadow:0 0 0 2px var(--ui-gold-hi)}.bl-ui .modal .p-footer{color:var(--ui-parch-dk);justify-content:space-between;font-size:12px}.bl-ui .ledger-win{z-index:35;flex-direction:column;width:min(1200px,96vw);height:min(760px,100vh - 80px);margin:auto;animation:.16s ease-out bl-pop;display:flex;position:absolute;inset:0}.bl-ui .ledger-win .p-body{flex-direction:column;flex:1;min-height:0;display:flex}.bl-ui .ledger-win .p-footer:empty{display:none}.bl-ui .ledger-win tr.nonop td{color:var(--ui-ink-muted);font-style:italic}.bl-ui .ledger-win .tabstrip{height:36px}.bl-ui .ledger-win .tab{height:34px;font-size:13px;line-height:34px}.bl-ui .ledger-win .lg-page{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.bl-ui .ledger-win .lg-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.bl-ui .ledger-win .lg-scroll{flex:1;min-height:0}.bl-ui .ledger-win .subtabs{gap:4px;display:flex}.bl-ui .ledger-win .subtabs .btn.on{background:var(--ui-accent);color:var(--ui-parch)}.bl-ui .fin-grid{flex:1;grid-template-columns:1fr 300px;gap:12px;min-height:0;display:grid}.bl-ui .fin-grid canvas{border:1px solid var(--ui-gold);background:var(--ui-parch-dk);width:100%;height:200px;display:block}.bl-ui .bankbox{border:1px solid var(--ui-gold);background:var(--ui-parch-dk);border-radius:3px;padding:8px 10px}.bl-ui .detail{border:1px solid var(--ui-gold);background:var(--ui-parch-dk);border-radius:3px;padding:8px 10px;font-size:13px}.bl-ui .search{z-index:45;width:420px;padding:8px;position:absolute;top:70px;left:50%;transform:translate(-50%)}.bl-ui .search input{width:100%;padding:6px 8px;font-size:15px}.bl-ui .search .results{max-height:300px;margin-top:6px}.bl-ui .search .res{cursor:pointer;color:var(--ui-parch);align-items:center;gap:8px;padding:4px 8px;display:flex}.bl-ui .search .res .rn{flex:1}.bl-ui .search .res.active,.bl-ui .search .res:hover{background:#1f5a7a80}.bl-ui .search .res .sub{color:var(--ui-parch-dk);font-size:11px}.bl-start{z-index:100;font:14px var(--font-body);color:var(--ui-ink);background:radial-gradient(at 30% 30%,#2f6485 0%,#24506e 40%,#1b3f58 75%,#0f1e2c 100%) 50%/cover;position:absolute;inset:0;overflow:auto}.bl-start .veil{background:linear-gradient(90deg,#0f1e2cbf,#0f1e2c40 55%,#0000);position:absolute;inset:0}.bl-start .content{max-width:900px;padding:48px 56px;position:relative}.bl-start .brand{align-items:center;gap:18px;margin-bottom:4px;display:flex}.bl-start h1{font:700 44px var(--font-head);color:var(--ui-gold-hi);letter-spacing:.08em;text-shadow:0 2px 6px #000;margin:0}.bl-start .tag{font:italic 18px var(--font-fell);color:var(--ui-parch);text-shadow:0 1px 3px #000;margin:0 0 28px}.bl-start .books{flex-wrap:wrap;gap:16px;display:flex}.bl-start .book{cursor:pointer;flex-direction:column;width:260px;padding:0;display:flex}.bl-start .book .bk-head{font:600 15px var(--font-head);color:var(--ui-gold-hi);letter-spacing:.04em;text-shadow:0 1px #000;padding:10px 12px}.bl-start .book .bk-body{flex:1;padding:10px 12px;font-size:13px}.bl-start .book .bk-body p{font:italic 13px/1.4 var(--font-fell);margin:0 0 8px}.bl-start .book.selected{outline:3px solid var(--ui-gold-hi);box-shadow:0 0 18px #f1d77a80}.bl-start .form{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:24px;display:flex}.bl-start .form label{font:600 11px var(--font-head);letter-spacing:.06em;text-transform:uppercase;color:var(--ui-parch);text-shadow:0 1px 2px #000;flex-direction:column;gap:4px;display:flex}.bl-start .form input{width:240px;font:15px var(--font-body);border:1px solid var(--ui-gold);background:var(--ui-parch);color:var(--ui-ink);padding:6px 8px}.bl-start .form .btn.primary{height:40px;padding:0 24px;font-size:15px}.bl-start .foot{font:italic 12px var(--font-fell);color:var(--ui-parch-dk);opacity:.7;position:absolute;bottom:14px;left:56px}.bl-ui .backdrop.gameover{z-index:60}.bl-ui .backdrop.gameover .illu{height:220px}@media (width<=1600px){.bl-ui .topbar .cell .l .long{display:none}.bl-ui .topbar .cell .l .short{display:inline}.bl-ui .topbar .cell{gap:6px;padding:0 9px}}@media (width<=1280px){.bl-ui .outliner{width:260px}.bl-ui .outliner.collapsed{transform:translate(232px)}.bl-ui .cwin{width:560px;left:492px}:root{--frame-width:18px}.bl-ui .topbar .cell .l{display:none}.bl-ui .topbar .cell{padding:0 8px}.bl-ui .topbar .brand{padding-right:8px}.bl-ui .topbar .date{min-width:150px;padding:4px 8px;font-size:13px}}@media (width<=1100px){.bl-ui .cwin{width:calc(100vw - 504px);min-width:420px}.bl-ui .topbar .cell .v{font-size:13px}.bl-ui .topbar .cell{gap:4px;padding:0 6px}.bl-ui .topbar .brand .names,.bl-ui .topbar .brand .founder{display:none}.bl-ui .topbar .date{min-width:128px;font-size:12px}.bl-ui .topbar .date .hh{display:none}.bl-ui .topbar .right{gap:6px;padding-left:8px}}@media (width<=900px){.bl-ui .topbar .brand .names,.bl-ui .topbar .cell .ico{display:none}.bl-ui .topbar .speed .pip{width:10px}.bl-ui .outliner{width:220px}.bl-ui .outliner.collapsed{transform:translate(192px)}.bl-ui .msglog{width:300px}.bl-ui.dock-open .msglog{display:none;top:64px;bottom:auto;left:12px}}
