:root{--brand-accent:#316b8c;--brand-accent-hover:#275a78;--brand-ink:#102126;--brand-paper:#f7faf8;--brand-border:#dce7e4;--brand-button-text:#fff}
.brand-bar{height:76px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:7px clamp(16px,3vw,42px);background:var(--brand-paper);border-bottom:3px solid var(--brand-accent);color:var(--brand-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;position:relative;z-index:30}
.brand-identity{display:inline-flex;align-items:center;gap:13px;min-width:0;color:inherit;text-decoration:none}
.brand-identity img{height:58px;width:72px;object-fit:contain;flex:none}
.brand-identity strong,.brand-identity small{display:block;line-height:1.2}
.brand-identity strong{font-size:18px;letter-spacing:-.03em}
.brand-identity small{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-accent);font-weight:800;margin-top:4px}
.brand-home{border:1px solid var(--brand-border);background:#fff;color:var(--brand-accent);padding:10px 15px;border-radius:999px;text-decoration:none;font-size:13px;font-weight:800;white-space:nowrap}
.brand-home:hover,.brand-home:focus-visible{background:var(--brand-accent);border-color:var(--brand-accent);color:#fff}
#root{height:calc(100dvh - 76px);min-height:440px}
#root>div{height:100%;background:#102b32}
#root [class~="bg-blue-600"]{background-color:var(--brand-accent)!important;color:var(--brand-button-text)!important}
#root [class~="hover:bg-blue-500"]:hover{background-color:var(--brand-accent-hover)!important}
#root [class~="text-blue-300"],#root [class~="text-blue-400"],#root [class~="text-blue-500"],#root [class~="text-blue-600"]{color:#75b9df!important}
#root [class~="bg-blue-500/10"],#root [class~="bg-blue-500/20"],#root [class~="bg-blue-500/30"]{background-color:#316b8c33!important}
#root [class~="border-blue-500"],#root [class~="focus-within:border-blue-500"]:focus-within{border-color:#75b9df!important}
#root [class*="shadow-blue-600"]{--tw-shadow-color:#316b8c55}
@media(max-width:640px){.brand-bar{height:64px;padding:5px 12px}.brand-identity{gap:7px}.brand-identity img{height:50px;width:54px}.brand-identity strong{font-size:15px}.brand-identity small{font-size:9px}.brand-home{font-size:11px;padding:8px 10px}#root{height:calc(100dvh - 64px)}}
.geo-mobile-tab,.geo-mobile-shade,.geo-panel-head{display:none}
@media(max-width:1023px){
  #root .geo-editor{position:fixed;top:172px;bottom:0;left:0;width:min(92vw,430px);height:auto;z-index:1100;transform:translateX(-105%);transition:transform .28s ease;box-shadow:12px 0 36px #0007;overflow:hidden}
  #root .geo-map{width:100%;min-height:0}
  .geo-mobile-shade{display:block;position:fixed;inset:132px 0 0;background:#09181da8;z-index:1090;opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s ease}
  .geo-mobile-tab{display:flex;align-items:center;justify-content:center;position:fixed;top:48%;left:0;width:38px;min-height:144px;padding:13px 8px;z-index:1110;writing-mode:vertical-rl;text-orientation:mixed;background:var(--brand-accent);color:#fff;border:1px solid #ffffff88;border-left:0;border-radius:0 13px 13px 0;box-shadow:0 8px 22px #0007;font:800 12px/1.2 Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:.04em;cursor:pointer}
  .geo-mobile-tab span{transform:rotate(180deg)}
  .geo-panel-head{display:flex;align-items:center;justify-content:space-between;position:fixed;top:132px;left:0;width:min(92vw,430px);height:40px;padding:0 10px 0 16px;box-sizing:border-box;z-index:1101;background:#1e293b;color:#e2e8f0;border-right:1px solid #ffffff22;border-bottom:1px solid #ffffff22;font:700 13px Inter,ui-sans-serif,system-ui,sans-serif;transform:translateX(-105%);visibility:hidden;transition:transform .28s ease,visibility .28s ease}
  .geo-panel-close{width:30px;height:30px;display:grid;place-items:center;border:1px solid #ffffff30;border-radius:8px;background:#ffffff10;color:#e2e8f0;font:400 22px/1 sans-serif;cursor:pointer}
  .geo-panel-close:hover,.geo-panel-close:focus-visible{background:var(--brand-accent);color:#fff}
  .geo-panel-open #root .geo-editor{transform:translateX(0)}
  .geo-panel-open .geo-panel-head{transform:translateX(0);visibility:visible}
  .geo-panel-open .geo-mobile-shade{opacity:1;visibility:visible}
  .geo-panel-open .geo-mobile-tab{display:none}
}
@media(max-width:640px){#root .geo-editor{top:160px}.geo-mobile-shade{inset:120px 0 0}.geo-panel-head{top:120px}}
