/* Compact map chrome, preserving all controls and navigation destinations. */
:root{--header:58px;--context:0px;--nav-height:50px;--nav:var(--nav-height);--footer:18px;--safe-bottom:env(safe-area-inset-bottom,0px)}
.header{height:var(--header);display:flex;align-items:center;gap:7px;padding:5px 12px;grid-template-columns:none;grid-template-rows:none}
.brand{min-width:0;max-width:none;gap:8px;flex:0 1 auto}.brand img{width:36px;height:36px;border-radius:9px}.brand strong{font-size:16px;letter-spacing:0}.brand small{display:none}
.toolbar{display:flex;align-items:center;justify-content:flex-start;gap:5px;margin:0;padding:0;grid-row:auto;grid-column:auto}.toolbar .tool{width:40px;height:40px;border-radius:10px;font-size:15px}.tool-separator{display:none}.modeSwitch{margin:0}
.headerRight{display:flex;align-items:center;gap:5px;margin:0;grid-row:auto;grid-column:auto}.headerRight .tool{width:36px;height:40px;border-radius:10px}.headerRight .desktopOnly{display:none}
.toolbar .instructionTool{background:#cf2435;border-color:#cf2435;color:white}.toolbar .instructionTool:hover,.toolbar .instructionTool[aria-pressed=true]{background:#aa192a;border-color:#aa192a}
.mapContext{display:none!important}.viewport{inset:0}.screen{inset:var(--header) 0 calc(var(--nav) + var(--footer) + var(--safe-bottom))}
.bottomnav{height:calc(var(--nav-height) + var(--safe-bottom));padding:0 0 var(--safe-bottom);bottom:0;gap:0;transition:transform .18s ease}
.bottomnav button{padding:4px 2px 3px;gap:3px;min-height:0;font-size:9px;justify-content:center}.bottomnav button .icon{width:20px;height:20px}
.appFooter{bottom:calc(var(--nav) + var(--safe-bottom));height:var(--footer);min-height:0;padding-inline:12px;font-size:9px}
.navHandle{position:fixed;bottom:calc(var(--nav) + var(--footer) + var(--safe-bottom));left:50%;transform:translateX(-50%);width:46px;height:19px;border:1px solid #ddd;border-bottom:0;border-radius:12px 12px 0 0;background:#ffffffef;color:#777;line-height:16px;padding:0;z-index:16;font-size:19px}
body.navCollapsed{--nav:0px}body.navCollapsed .bottomnav{transform:translateY(100%);pointer-events:none}
.nodeSvgText{pointer-events:none}.nodeHitArea{cursor:grab}.nodeTextReader{width:100%;height:45vh;min-height:210px;resize:vertical;line-height:1.65;font-family:MapSans,sans-serif;font-size:16px;white-space:pre-wrap;user-select:text;-webkit-user-select:text;touch-action:auto}
.readerActions{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.readerActions button{min-height:42px}.nodeTextReader:focus{outline:2px solid #919aa5;outline-offset:1px}
.ringRows{display:grid;gap:16px}.ringRow{padding:14px;border:1px solid #e7e7e7;border-radius:11px}.ringRow h4{margin:0 0 10px;font-size:14px;display:flex;align-items:center;gap:8px}.ringRow h4 i{width:17px;height:17px;border:2px solid var(--ring-colour);border-radius:50%;display:inline-block}.ringInputs{display:grid;grid-template-columns:1fr 90px;gap:12px}.ringInputs label{font-size:12px}.ringWidthRow{display:flex;align-items:center;gap:15px;margin-top:10px}.ringWidthRow label{flex:1}.ringWidthRow output{width:52px;text-align:right;font-size:12px}.ringError{font-size:12px;color:#b02434!important;margin:10px 0 0!important}.horizonLabel:hover rect{stroke:none}
@media(min-width:1100px){.header{padding-inline:18px;gap:12px}.brand{gap:10px}.brand img{width:39px;height:39px}.brand strong{font-size:18px}.toolbar{gap:7px}.toolbar .tool{width:42px;height:42px}.headerRight .desktopOnly{display:inline-flex}}
@media(min-width:600px) and (max-width:699px){.header{padding-inline:7px;gap:4px}.brand{gap:5px}.brand img{width:32px;height:32px}.brand strong{font-size:14px}.toolbar{gap:3px}.toolbar .tool{width:37px;height:40px}.headerRight{gap:3px}.headerRight .tool{width:33px;height:40px}}
@media(max-width:599px){:root{--header:82px;--nav-height:48px;--nav:var(--nav-height);--footer:17px}.header{display:grid;grid-template-columns:1fr auto;grid-template-rows:32px 38px;gap:3px;padding:4px 8px 5px;align-content:start}.brand{min-width:0;grid-column:1;grid-row:1;gap:7px}.brand img{width:29px;height:29px;border-radius:7px}.brand strong{font-size:15px}.headerRight{grid-column:2;grid-row:1;gap:4px}.headerRight .tool{width:31px;height:31px;border-radius:8px}.headerRight .icon{width:18px;height:18px}.toolbar{grid-column:1/-1;grid-row:2;gap:5px;padding:0;margin:0;justify-content:flex-start}.toolbar .tool{width:38px;height:38px;min-height:38px;border-radius:9px;font-size:14px}.toolbar .tool .icon{width:20px;height:20px}.toolbar #btn2d{width:42px}.mapHint{font-size:9px;line-height:1.4;bottom:12px}.bottomnav button{font-size:8px;padding-bottom:2px}.bottomnav button .icon{width:19px;height:19px}.appFooter{padding-inline:9px;font-size:8px}.navHandle{height:17px;font-size:17px}.nodeActions button span{font-size:7px}.selectionBar .nodeActions.top button{width:42px;min-width:0}.ringInputs{grid-template-columns:1fr 72px;gap:8px}}
@media print{.navHandle{display:none!important}}
