:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;font-kerning:normal;--field-black:#030704;--field-black-raised:#071008;--field:#0a130b;--panel:#0d180e;--panel-high:#132216;--panel-raised:#182b1b;--panel-pressed:#223822;--grid:#2b3e24;--grid-strong:#6b833d;--border:#4b6132;--phosphor:#b7f34d;--phosphor-dim:#93c640;--text-bright:#e1e5bd;--text:#bec49e;--muted:#7d8660;--ally:#2979ff;--warning:#f2a63a;--danger:#ff795c;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--space-xxs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--cut-sm:4px;--cut:8px;--instant:90ms;--standard:.16s;background:var(--field-black);color:var(--text-bright);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}body{background:var(--field-black);min-height:100dvh;color:var(--text-bright);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:1rem;line-height:1.5;overflow:auto}.app-shell{min-height:100dvh}button,input,select,textarea{font:inherit}button,select{cursor:pointer}button:disabled,select:disabled,input:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--phosphor);outline-offset:2px}.skip-link{z-index:1000;background:var(--phosphor);color:var(--field-black);padding:.75rem 1rem;font-weight:700;position:fixed;inset-block-start:.5rem;inset-inline-start:.5rem;translate:0 -180%}.skip-link:focus{translate:0}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.hud-icon{-webkit-mask-image:var(--icon-url);-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);background:currentColor;flex:none;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.button-primary,.button-secondary,.button-danger{justify-content:center;align-items:center;gap:var(--space-xs);border:1px solid var(--phosphor);min-height:48px;clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));letter-spacing:.035em;transition:transform var(--instant), background-color var(--standard), border-color var(--standard);padding:.75rem 1rem;font-size:.875rem;font-weight:700;display:inline-flex}.button-primary{background:var(--phosphor);color:var(--field-black)}.button-secondary{background:var(--panel-high);color:var(--phosphor)}.button-danger{border-color:var(--danger);background:var(--danger);color:var(--field-black)}.button-primary:active,.button-secondary:active,.button-danger:active,.hud-button:active,.room-row:active,.wide-action:active,.action-grid button:active{transform:scale(.97)}.cut-panel{border:1px solid var(--border);background:var(--panel);clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut))}.eyebrow,.step-label{color:var(--phosphor);letter-spacing:.12em;margin:0;font-size:.75rem;font-weight:700}.boot-screen,.fatal-screen{place-content:center;justify-items:center;gap:var(--space-md);min-height:100dvh;padding:max(1.5rem, var(--safe-top)) max(1.5rem, var(--safe-right)) max(1.5rem, var(--safe-bottom)) max(1.5rem, var(--safe-left));background:radial-gradient(circle at 50% 45%, var(--panel-high), var(--field-black) 58%);text-align:center;display:grid}.boot-screen img{width:72px;height:72px}.boot-screen p,.fatal-screen p{color:var(--text);margin:0}.entry-screen{min-height:100dvh;max-height:100dvh;padding:max(1.5rem, calc(var(--safe-top) + 1rem)) max(1rem, calc(var(--safe-right) + 1rem)) max(1rem, calc(var(--safe-bottom) + 1rem)) max(1rem, calc(var(--safe-left) + 1rem));background:linear-gradient(135deg, transparent 0 48%, #2b3e2433 49% 50%, transparent 51%) 0 0 / 64px 64px, radial-gradient(circle at 72% 18%, #132216 0, var(--field-black) 42%);overflow:auto}.entry-screen:before{content:"";inset:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);pointer-events:none;clip-path:polygon(24px 0,100% 0,100% calc(100% - 24px),calc(100% - 24px) 100%,0 100%,0 24px);border:1px solid #4b613273;position:fixed}.entry-brand{align-items:center;gap:var(--space-md);max-width:1100px;margin:0 auto var(--space-xl);display:flex}.entry-brand img{border:1px solid var(--border);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);flex:none}.entry-brand h1{color:var(--text-bright);margin:0;font-size:2rem;line-height:1.18}.entry-brand p:last-child{max-width:55ch;color:var(--text);margin:.25rem 0 0}.entry-choice-layout{gap:var(--space-xl);max-width:1100px;margin:0 auto;display:grid}.entry-primary-panel,.entry-form-panel{padding:clamp(1.25rem,4vw,2.5rem)}.entry-primary-panel h2,.entry-form-panel h2,.section-heading h2{text-wrap:balance;margin:.5rem 0;font-size:1.4375rem;font-weight:600;line-height:1.26}.entry-primary-panel>p:not(.step-label),.entry-form-panel>p:not(.step-label){max-width:62ch;color:var(--text);margin:0}.entry-actions{gap:var(--space-sm);margin-top:var(--space-lg);display:grid}.saved-rooms{align-self:start}.section-heading{margin-bottom:var(--space-sm)}.room-list{gap:var(--space-xs);display:grid}.room-row{align-items:center;gap:var(--space-sm);border:1px solid var(--border);background:var(--panel);min-height:64px;color:var(--text-bright);text-align:left;clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));transition:transform var(--instant), border-color var(--standard), background-color var(--standard);grid-template-columns:48px minmax(0,1fr) auto;padding:.5rem .75rem;display:grid}.room-row>span:nth-child(2){min-width:0}.room-row strong,.room-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.room-row small{color:var(--muted);margin-top:.125rem;font-size:.75rem}.room-icon{background:var(--panel-high);width:48px;height:48px;color:var(--phosphor);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);place-items:center;display:grid}.entry-form-panel{width:min(100%,660px);margin:0 auto}.back-button{min-height:48px;color:var(--text);background:0 0;border:0;margin:-.75rem 0 .5rem -.75rem;padding:.5rem .75rem}.entry-form{gap:var(--space-md);margin-top:var(--space-lg);display:grid}.entry-form label{gap:var(--space-xs);color:var(--text);font-size:.875rem;font-weight:600;display:grid}.entry-form input,.entry-form select,.chat-compose input{border:1px solid var(--border);background:var(--panel-high);width:100%;min-height:48px;color:var(--text-bright);clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));border-radius:0;padding:0 .75rem;font-size:1rem}.form-error{align-items:center;gap:var(--space-xs);color:var(--danger);margin:0;display:flex}.room-package-checking{color:var(--text);margin:0;font-size:.8125rem}.room-package-preview{gap:var(--space-sm);border:1px solid var(--phosphor-dim);clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);background:#b7f34d0e;grid-template-columns:44px minmax(0,1fr);padding:.75rem;display:grid}.room-package-preview>.hud-icon{color:var(--phosphor);align-self:start;margin-top:2px}.room-package-preview-title{min-width:0}.room-package-preview-title strong,.room-package-preview-title small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.room-package-preview-title strong{color:var(--text-bright);font-size:1rem}.room-package-preview-title small,.room-package-units{color:var(--text);margin-top:.15rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem}.room-package-preview dl{background:var(--grid);grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid}.room-package-preview dl>div{background:var(--panel-high);grid-template-columns:minmax(0,1fr) auto;gap:.45rem;padding:.45rem .55rem;display:grid}.room-package-preview dt{color:var(--muted);font-size:.6875rem}.room-package-preview dd{color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;overflow:hidden}.room-package-units{overflow-wrap:anywhere;grid-column:1/-1}.entry-footer{gap:var(--space-md);max-width:1100px;margin:var(--space-xl) auto 0;color:var(--muted);letter-spacing:.08em;flex-wrap:wrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;display:flex}.field-screen{isolation:isolate;background:var(--field-black);width:100%;height:100dvh;position:relative;overflow:hidden}.field-underlay{position:absolute;inset:0}.viewport{z-index:0;background:var(--field-black);touch-action:none;position:absolute;inset:0;overflow:hidden}.radar-disc{z-index:0;isolation:isolate;touch-action:none;background:#081008;border-radius:50%;width:min(100vw,100dvh);height:min(100vw,100dvh);position:absolute;inset:50% auto auto 50%;overflow:hidden;transform:translate(-50%,-50%)}.radar-mode .radar-disc:after{content:"";z-index:5;pointer-events:none;border:2px solid #b7f34d5c;border-radius:50%;position:absolute;inset:1px;box-shadow:inset 0 0 32px #b7f34d14}.radar-svg{z-index:2;width:100%;height:100%;position:absolute;inset:0}.radar-map-backdrop{z-index:0;visibility:hidden;pointer-events:none;background:#081008;position:absolute;inset:0;overflow:hidden}.radar-map-backdrop.is-visible{visibility:visible}.radar-map-rotator,.radar-raster-canvas,.radar-leaflet-map{width:100%;height:100%;position:absolute;inset:0}.radar-map-rotator{z-index:0;transform-origin:50%;transform:scale(1.41421)rotate(0)}.radar-raster-canvas{z-index:0;pointer-events:none;background:#081008}.radar-leaflet-map{z-index:1;background:0 0}.radar-map-attribution{color:var(--text-muted);background:#030704b8;padding:.125rem .25rem;font-size:.5625rem;line-height:1;position:absolute;inset:auto .35rem .3rem auto}.map-mode .radar-disc{clip-path:none;border-radius:0;width:100%;height:100%;inset:0;transform:none}.map-mode .radar-svg{object-fit:cover;width:100%;height:100%}.radar-svg.is-tool-active{cursor:crosshair;touch-action:none}.range-geometry{fill:none;stroke:var(--phosphor-dim);stroke-width:1.4px}.range-geometry>circle,.range-geometry>line:not(.north-pointer){opacity:.62}.range-geometry circle:nth-child(2n){stroke-dasharray:7 7;opacity:.65}.range-geometry text{fill:var(--phosphor);stroke:none;font:700 1.125rem/1 ui-monospace,monospace}.range-geometry .bearing-tick{stroke:var(--phosphor);stroke-linecap:square;vector-effect:non-scaling-stroke}.range-geometry .bearing-tick.is-major{stroke-width:2.2px;opacity:.58}.range-geometry .bearing-tick.is-medium{stroke-width:1.4px;opacity:.34}.range-geometry .bearing-tick.is-minor{stroke-width:.8px;opacity:.16}.range-geometry .bearing-degree-labels text{fill:var(--phosphor);stroke:var(--field-black);stroke-width:5px;paint-order:stroke;font-variant-numeric:tabular-nums;font:700 1.65rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.range-geometry .radar-cardinal-icon{opacity:.96;pointer-events:none}.range-geometry .north-pointer{stroke:var(--phosphor);stroke-width:5px;opacity:.52}.range-geometry .north-pointer-tip{fill:var(--phosphor);stroke:none;opacity:.7}.own-position .accuracy-ring{fill:#b7f34d14;stroke:#b7f34d80;stroke-width:2px}.own-position path{fill:var(--phosphor);stroke:var(--field-black);stroke-width:4px}.own-position .own-role-badge{fill:var(--field-black);stroke:var(--phosphor);stroke-width:3px}.own-position .own-course{fill:var(--phosphor)}.radar-participant circle{fill:#2979ff2e;stroke:var(--ally);stroke-width:4px}.radar-participant path{fill:var(--ally)}.radar-participant .participant-course,.own-position .own-course{stroke:var(--field-black);stroke-width:3px;paint-order:stroke}.participant-role-icon{pointer-events:none}.radar-participant text,.radar-marker text{fill:var(--text-bright);stroke:var(--field-black);stroke-width:3px;paint-order:stroke;font:600 1rem/1 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.radar-participant.is-out{opacity:.55}.radar-participant.is-out circle{stroke-dasharray:6 5}.radar-participant.is-sos circle{fill:#ff795c33;stroke:var(--danger)}.radar-marker circle{fill:var(--panel-high);stroke:var(--warning);stroke-width:3px}.radar-marker image,.imported-map-layer{pointer-events:none}.imported-map-line,.imported-map-polygon{vector-effect:non-scaling-stroke;stroke:color-mix(in srgb, var(--phosphor) 82%, white);stroke-width:3px;stroke-linejoin:round;stroke-linecap:round}.imported-map-line{fill:none}.imported-map-polygon{fill:color-mix(in srgb, var(--phosphor) 12%, transparent)}.imported-map-point circle{fill:var(--field-black);stroke:var(--phosphor);stroke-width:3px}.imported-map-point text{fill:var(--text-bright);stroke:var(--field-black);stroke-width:3px;paint-order:stroke;font:700 1rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.frontline-layer polygon,.frontline-layer polyline{vector-effect:non-scaling-stroke;stroke:var(--ally);stroke-width:4px;stroke-linejoin:round;stroke-linecap:round}.frontline-layer polygon{fill:#2979ff1f}.frontline-layer polyline{fill:none;stroke:var(--danger)}.shared-map-shape polygon,.shared-map-shape polyline{vector-effect:non-scaling-stroke;stroke:var(--warning);stroke-width:4px;stroke-linejoin:round;stroke-linecap:round}.shared-map-shape polyline{fill:none}.shared-map-shape polygon{fill:#b7f34d14;stroke:var(--phosphor)}.shared-map-shape.is-mission-geofence polygon{fill:#f2a63a14;stroke:var(--warning);stroke-dasharray:10 6}.map-draft-layer{pointer-events:none}.map-draft-layer polyline,.map-draft-layer polygon{stroke:var(--warning);stroke-width:4px;stroke-dasharray:10 6;vector-effect:non-scaling-stroke}.map-draft-layer polyline{fill:none}.map-draft-layer polygon{fill:#f2a63a14}.map-draft-layer circle{fill:var(--field-black);stroke:var(--warning);stroke-width:3px}.map-draft-layer text{fill:var(--warning);font:700 .75rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.map-source-badge{z-index:9;inset:calc(max(.5rem, var(--safe-top)) + 96px) auto auto max(.5rem, var(--safe-left));border:1px solid var(--phosphor-dim);background:color-mix(in srgb, var(--field-black) 90%, transparent);max-width:min(36rem,100% - 8rem);color:var(--text-muted);padding:.45rem .65rem;font-size:.8125rem;line-height:1.25;display:grid;position:absolute}.map-source-badge span{overflow-wrap:anywhere;min-width:0}.map-source-badge strong{color:var(--phosphor);letter-spacing:.08em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.map-source-badge.is-warning{border-color:var(--warning)}.map-source-badge.is-warning strong{color:var(--warning)}.map-source-badge.is-danger{border-color:var(--danger)}.map-source-badge.is-danger strong{color:var(--danger)}.full-map-viewport,.leaflet-map,.kmz-only-map{width:100%;height:100%;position:absolute;inset:0}.field-screen.is-kmz-only,.kmz-only-map{background:#000}.kmz-only-close{z-index:40;top:max(.75rem, var(--safe-top));right:max(.75rem, var(--safe-right));border:1px solid var(--border-strong);background:var(--panel-raised);width:56px;height:56px;color:var(--text-bright);clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);place-items:center;padding:0;display:grid;position:absolute}.map-kmz-only-action,.map-share-action{text-align:left;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:.625rem;width:100%;display:grid}.map-kmz-only-action span,.map-share-action span{gap:.125rem;display:grid}.map-kmz-only-action small,.map-share-action small{color:var(--text-muted)}.menu-inline-status{border-left:2px solid var(--phosphor-dim);color:var(--text);background:#b7f34d0f;margin:0;padding:.55rem .65rem;font-size:.75rem;line-height:1.35}.leaflet-map{z-index:0;background:#081008;font-family:inherit}.leaflet-map.is-placement-active,.leaflet-map.is-tool-active,.leaflet-map.is-placement-active .leaflet-interactive,.leaflet-map.is-tool-active .leaflet-interactive{cursor:crosshair}.leaflet-map .leaflet-tile{filter:saturate(.72)brightness(.72)contrast(1.08)}.leaflet-map .leaflet-control-zoom,.leaflet-map .leaflet-control-scale-line,.leaflet-map .leaflet-control-attribution{border:1px solid var(--border);background:color-mix(in srgb, var(--field-black) 90%, transparent);color:var(--text);box-shadow:none;border-radius:0}.leaflet-map .leaflet-control-zoom a{border:0;border-bottom:1px solid var(--border);width:48px;height:48px;color:var(--phosphor);background:0 0;font-size:1.5rem;line-height:48px}.leaflet-map .leaflet-control-zoom a:last-child{border-bottom:0}.leaflet-map .leaflet-control-attribution a{color:var(--phosphor)}.teamcompass-leaflet-icon{background:0 0;border:0}.teamcompass-leaflet-icon>span{border:2px solid var(--marker-color);background:color-mix(in srgb, var(--field-black) 84%, var(--marker-color));width:44px;height:44px;box-shadow:0 0 0 3px #030704b3, 0 0 14px color-mix(in srgb, var(--marker-color) 48%, transparent);border-radius:50%;place-items:center;display:grid}.teamcompass-leaflet-icon img{object-fit:contain;width:30px;height:30px}.teamcompass-participant-icon{background:0 0;border:0}.map-participant-shell{width:56px;height:56px;display:block;position:relative}.map-participant-badge{z-index:1;border:3px solid var(--ally);background:color-mix(in srgb, var(--field-black) 84%, var(--ally));border-radius:50%;place-items:center;width:40px;height:40px;display:grid;position:absolute;inset:8px;box-shadow:0 0 0 3px #030704b8}.map-participant-badge img{object-fit:contain;width:28px;height:28px}.map-participant-course{z-index:0;background:var(--ally);clip-path:polygon(50% 0,100% 100%,50% 72%,0 100%);width:16px;height:22px;filter:drop-shadow(0 0 2px var(--field-black));transform:rotate(var(--participant-course,0deg));transform-origin:8px 35px;position:absolute;inset:-7px auto auto 20px}.map-participant-shell.is-own .map-participant-badge{border-color:var(--phosphor)}.map-participant-shell.is-own .map-participant-course{background:var(--phosphor)}.map-participant-shell.is-out{opacity:.58}.map-participant-shell.is-out .map-participant-badge{border-style:dashed}.leaflet-tooltip{border:1px solid var(--border);background:var(--panel-raised);color:var(--text-bright);box-shadow:none;border-radius:0}.leaflet-tooltip:before{display:none}.map-point-number{color:var(--warning);background:0 0;border:0;font-weight:800}.field-status-bar{z-index:20;inset:max(.5rem, var(--safe-top)) max(.5rem, var(--safe-right)) auto max(.5rem, var(--safe-left));align-items:start;gap:var(--space-xs);pointer-events:none;grid-template-columns:56px auto 1fr;display:grid;position:absolute}.field-status-bar button,.field-status-bar .status-cluster{pointer-events:auto}.session-menu-button,.icon-only-button{border:1px solid var(--border);background:var(--panel);width:48px;height:48px;color:var(--phosphor);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);place-items:center;padding:0;display:grid}.compass-readout{align-items:baseline;gap:var(--space-xs);border:1px solid var(--border);background:var(--panel);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);min-height:48px;padding:.5rem .75rem;display:flex}.compass-readout span{color:var(--muted);letter-spacing:.08em;font-size:.75rem;font-weight:700}.compass-readout strong{color:var(--phosphor);font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.25rem}.status-cluster{justify-content:flex-end;gap:var(--space-xxs);flex-wrap:wrap;min-width:0;display:flex}.status-chip{border:1px solid var(--border);background:var(--panel);min-height:32px;color:var(--text);clip-path:polygon(var(--cut-sm) 0, 100% 0, 100% calc(100% - var(--cut-sm)), calc(100% - var(--cut-sm)) 100%, 0 100%, 0 var(--cut-sm));letter-spacing:.045em;white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:.35rem;padding:.25rem .5rem;font-size:.75rem;font-weight:700;display:inline-flex}.status-chip.is-action{cursor:pointer;min-width:48px;min-height:48px}.tone-ok{color:var(--phosphor)}.tone-warning{color:var(--warning)}.tone-danger{color:var(--danger)}.tone-info{color:var(--ally)}.hud-rail{z-index:30;inset:auto auto max(.5rem, var(--safe-bottom)) 50%;justify-content:center;gap:var(--space-xs);pointer-events:none;flex-wrap:nowrap;width:max-content;display:flex;position:absolute;translate:-50%}.hud-rail.radar-actions,.hud-rail.map-actions{max-width:none}.hud-rail>*{pointer-events:auto}.hud-button{border:1px solid var(--border);background:var(--panel-high);width:56px;min-width:48px;height:56px;min-height:48px;color:var(--phosphor);clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));transition:transform var(--instant), background-color var(--standard), border-color var(--standard), color var(--standard);flex:none;place-items:center;padding:0;display:grid;position:relative;overflow:hidden}.hud-button.is-selected{border-color:var(--phosphor);background:var(--panel-pressed);color:var(--text-bright)}.hud-button.has-label{grid-template-rows:24px auto;align-content:center;gap:2px;padding:4px 3px}.hud-button.has-label>span:not(.hud-icon,.visually-hidden){color:currentColor;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:.625rem;font-weight:700;line-height:1.05;display:block;overflow:hidden}.combat-actions{z-index:30;inset:auto max(.5rem, var(--safe-right)) max(.5rem, var(--safe-bottom)) max(.5rem, var(--safe-left));pointer-events:none;justify-content:space-between;display:flex;position:absolute}.combat-actions>*{pointer-events:auto}.hud-button.is-danger,.sos-hold{border-color:var(--danger);color:var(--danger)}.sos-hold:after{content:"";transform-origin:0;background:var(--danger);height:4px;position:absolute;inset:auto 0 0;scale:0 1}.sos-hold.is-holding{background:#ff795c38}.sos-hold.is-holding:after{animation:1.2s linear forwards sos-progress}@keyframes sos-progress{to{scale:1}}.range-control{z-index:10;inset:auto auto calc(max(.5rem, var(--safe-bottom)) + 64px) max(.5rem, var(--safe-left));border:1px solid var(--border);background:var(--panel);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);grid-template-columns:48px auto 48px;align-items:center;display:grid;position:absolute}.range-control button{width:48px;height:48px;color:var(--phosphor);background:0 0;border:0;place-items:center;padding:0;display:grid}.range-control output{min-width:70px;color:var(--text-bright);font-variant-numeric:tabular-nums;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem}.radar-north-lock{z-index:12;inset:calc(max(.5rem, var(--safe-top)) + 62px) max(.5rem, var(--safe-right)) auto auto;border:1px solid var(--border);background:var(--panel-raised);width:56px;height:56px;color:var(--text-bright);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);place-items:center;padding:4px;display:grid;position:absolute}.radar-north-lock.is-selected{border-color:var(--phosphor);color:var(--phosphor)}.radar-north-lock-needle{transform-origin:50%;place-items:center;width:30px;height:30px;transition:transform .12s linear;display:grid}.radar-north-lock small{letter-spacing:.08em;margin-top:-5px;font-size:.5rem;font-weight:800}.map-tool-status{z-index:18;inset:auto auto calc(max(.5rem, var(--safe-bottom)) + 72px) 50%;align-items:center;gap:var(--space-xs);width:min(34rem, calc(100vw - 1rem - var(--safe-left) - var(--safe-right)));border:1px solid var(--warning);background:var(--panel-raised);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);grid-template-columns:minmax(0,1fr) auto auto;min-height:56px;padding:.25rem .5rem .25rem .75rem;display:grid;position:absolute;translate:-50%}.map-tool-status.is-radius{grid-template-columns:minmax(0,1fr) auto auto auto}.map-radius-controls{border:1px solid var(--border);background:var(--panel-high);grid-template-columns:42px auto 42px;align-items:center;display:grid}.map-radius-controls button{width:42px;min-width:42px;min-height:42px;color:var(--phosphor);padding:0;font-size:1.2rem}.map-radius-controls output{min-width:68px;color:var(--text-bright);font-variant-numeric:tabular-nums;text-align:center;padding-inline:.35rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem}.map-radius-label{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:700;border:1px solid var(--phosphor-dim)!important;background:var(--field-black)!important;color:var(--phosphor)!important;box-shadow:none!important}.navigation-card{z-index:24;inset:auto auto calc(max(.5rem, var(--safe-bottom)) + 64px) 50%;width:min(420px, calc(100vw - 1rem - var(--safe-left) - var(--safe-right)));align-items:center;gap:var(--space-sm);border:1px solid var(--ally);background:var(--panel-raised);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);grid-template-columns:76px minmax(0,1fr);padding:.65rem;display:grid;position:absolute;translate:-50%}.navigation-compass{border:1px solid var(--border);width:72px;height:72px;color:var(--muted);border-radius:50%;place-items:center;font-size:1.65rem;display:grid}.navigation-compass.is-active{border-color:var(--ally);color:var(--ally)}.navigation-compass span{transform-origin:50%;display:block}.navigation-copy{gap:.15rem;min-width:0;display:grid}.navigation-copy strong,.navigation-copy small,.navigation-copy b,.navigation-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.navigation-copy small,.navigation-copy span{color:var(--muted);font-size:.75rem}.navigation-copy b{color:var(--ally);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.navigation-copy .navigation-waiting{color:var(--warning)}.navigation-copy button{min-height:48px;color:var(--text);background:0 0;border:0;justify-self:start;padding:0 .75rem;font-weight:700}.has-open-panel .navigation-card{visibility:hidden;pointer-events:none}.readiness-summary{gap:var(--space-sm);padding-top:var(--space-sm);display:grid}.readiness-summary-heading{align-items:center;gap:var(--space-sm);grid-template-columns:auto minmax(0,1fr);display:grid}.readiness-summary-heading>span:last-child,.readiness-problem>span{min-width:0}.readiness-summary-heading strong,.readiness-summary-heading small,.readiness-problem strong,.readiness-problem small{display:block}.readiness-summary-heading small,.readiness-problem small{color:var(--muted);font-size:.78rem}.readiness-level{letter-spacing:.08em;border:1px solid;place-items:center;min-width:78px;min-height:40px;padding:.25rem .55rem;font:800 .72rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:grid}.readiness-primary{background:#f2a63a0f;border:1px solid;padding:.7rem}.readiness-primary p,.readiness-item p{color:var(--text);margin:.25rem 0 0;font-size:.8rem}.readiness-primary button,.readiness-details-toggle,.readiness-problem button{min-height:48px;color:var(--phosphor);background:0 0;border:0;padding:0 .75rem;font-weight:700}.readiness-details-toggle{width:100%;margin-top:var(--space-xs);text-align:start}.readiness-checklist{gap:var(--space-xs);display:grid}.readiness-checklist h3{color:var(--text-bright);margin:0;font-size:.9rem}.readiness-item{border:1px solid var(--grid);background:#ffffff06;padding:.55rem .65rem}.readiness-item.is-ok{border-color:var(--phosphor-dim)}.readiness-item.is-warning{border-color:var(--warning)}.readiness-item header{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.readiness-item header span{color:var(--muted);text-align:end;font-size:.75rem;font-weight:700}.readiness-problem{align-items:center;gap:var(--space-sm);border:1px solid;grid-template-columns:minmax(0,1fr) auto;min-height:56px;padding:.45rem .65rem;display:grid}.map-tool-status span,.map-tool-status strong,.map-tool-status small{min-width:0;display:block}.map-tool-status strong{color:var(--warning);letter-spacing:.04em;font-size:.75rem}.map-tool-status small{color:var(--text);font-variant-numeric:tabular-nums;font-size:.75rem}.map-tool-status button{min-width:48px;min-height:48px;color:var(--phosphor);background:0 0;border:0;justify-content:center;align-items:center;gap:.3rem;padding-inline:.625rem;font-size:.875rem;font-weight:600;display:inline-flex}.map-selection-card{z-index:19;inset:auto max(.75rem, var(--safe-right)) calc(max(.75rem, var(--safe-bottom)) + 80px) max(.75rem, var(--safe-left));align-items:center;gap:var(--space-sm);border:1px solid var(--phosphor-dim);background:color-mix(in srgb, var(--panel-raised) 96%, transparent);clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);grid-template-columns:auto minmax(0,1fr) auto auto;min-height:64px;padding:.5rem .75rem;display:grid;position:absolute}.map-placement-card{z-index:24;inset:auto max(.75rem, var(--safe-right)) max(.75rem, var(--safe-bottom)) max(.75rem, var(--safe-left));width:min(32rem, calc(100vw - 1.5rem - var(--safe-left) - var(--safe-right)));gap:var(--space-sm);border:1px solid var(--warning);background:color-mix(in srgb, var(--panel-raised) 97%, transparent);clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);justify-self:center;max-height:min(54dvh,31rem);margin-inline:auto;padding:.75rem;display:grid;position:absolute;overflow:auto}.map-placement-card.is-tactical{grid-template-columns:minmax(0,1fr) auto;align-items:center}.placement-summary{align-items:center;gap:var(--space-sm);grid-template-columns:auto minmax(0,1fr);min-width:0;display:grid}.placement-icon{border:1px solid var(--warning);background:var(--panel-high);place-items:center;width:46px;height:46px;display:grid}.placement-preview-actions{justify-content:flex-end;gap:var(--space-xs);display:flex}.map-placement-card.is-tactical .placement-preview-actions .button-primary{display:none}.placement-preview-editor{gap:var(--space-sm);padding-block:var(--space-xs);border-block:1px solid var(--grid);display:grid}.placement-preview-editor label,.placement-preview-editor label>span{gap:.375rem;display:grid}.placement-color-strip{gap:var(--space-xs);border:0;margin:0;padding:0;display:flex}.placement-color-strip legend{width:100%;color:var(--text);margin-bottom:.375rem;font-size:.8125rem}.placement-color-strip button{border:1px solid var(--border);background:0 0;place-items:center;width:48px;height:48px;padding:0;display:grid}.placement-color-strip button.is-selected{border-color:var(--phosphor)}.placement-color-strip button span{border:1px solid #ffffff73;border-radius:50%;width:24px;height:24px}.map-selection-card span,.map-selection-card strong,.map-selection-card small,.map-placement-card span,.map-placement-card strong,.map-placement-card small{min-width:0;display:block}.map-selection-card small,.map-placement-card small{color:var(--text);font-variant-numeric:tabular-nums;margin-top:.125rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem}.map-selection-card>button,.placement-preview-actions>button{min-width:96px;min-height:48px}.danger-text-button{color:var(--danger);background:0 0;border:0;justify-content:center;align-items:center;gap:.35rem;font-weight:700;display:inline-flex}.map-selection-card>.map-selection-clear{width:48px;min-width:48px;padding:0}.marker-selection-card{grid-template-columns:auto minmax(0,1fr) auto auto auto}.map-selection-action{min-height:48px;color:var(--phosphor);background:0 0;border:0;justify-content:center;align-items:center;gap:.35rem;font-weight:700;display:inline-flex}.map-marker-rename{align-items:center;gap:var(--space-xs);border-top:1px solid var(--grid);grid-column:1/-1;grid-template-columns:24px minmax(0,1fr) auto;padding-top:.35rem;display:grid}.map-marker-rename label{min-width:0}.map-marker-rename input{border:1px solid var(--border);background:var(--panel-high);width:100%;min-height:44px;color:var(--text-bright);padding:0 .65rem}.map-marker-rename button{border:1px solid var(--phosphor-dim);background:var(--panel-high);min-height:44px;color:var(--phosphor);justify-content:center;align-items:center;gap:.35rem;padding-inline:.65rem;font-weight:700;display:inline-flex}.map-marker-appearance{align-items:end;gap:var(--space-sm);grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;display:grid}.map-marker-type-select{min-width:0;color:var(--text);gap:.25rem;font-size:.6875rem;display:grid}.map-marker-type-select select{border:1px solid var(--border);background:var(--panel-high);width:100%;min-height:44px;color:var(--text-bright);padding-inline:.55rem}.map-marker-color-strip{border:0;gap:.3rem;margin:0;padding:0;display:flex}.map-marker-color-strip legend{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.map-marker-color-strip button{border:1px solid var(--border);background:var(--panel-high);place-items:center;width:44px;height:44px;padding:0;display:grid}.map-marker-color-strip button.is-selected{border-color:var(--phosphor)}.map-marker-color-strip button span{border:1px solid #ffffff73;border-radius:50%;width:22px;height:22px}.map-selection-error{color:var(--danger);grid-column:1/-1;margin:0;font-size:.75rem}.viewport-empty{color:var(--muted);text-align:center;position:absolute;inset:50% auto auto 50%;translate:-50% -50%}.viewport-empty p{color:var(--warning);letter-spacing:.1em;margin:0;font-size:.875rem;font-weight:700}.viewport-empty span{font-size:1rem}.location-callout{z-index:22;inset:auto max(.75rem, var(--safe-right)) calc(max(.75rem, var(--safe-bottom)) + 136px) max(.75rem, var(--safe-left));align-items:center;gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--warning);background:var(--panel-raised);color:var(--warning);clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));grid-template-columns:auto 1fr;display:grid;position:absolute}.location-callout h2{color:var(--text-bright);margin:0;font-size:1.0625rem;line-height:1.35}.location-callout p{max-width:62ch;color:var(--text);margin:.25rem 0 0;font-size:.875rem}.location-callout .button-primary{grid-column:1/-1;width:100%}.hud-panel{z-index:40;inset:auto max(.5rem, var(--safe-right)) max(.5rem, var(--safe-bottom)) max(.5rem, var(--safe-left));max-height:min(68dvh,620px);padding:var(--space-md);position:absolute;overflow:auto}.has-open-panel .hud-rail,.has-open-panel .combat-actions,.has-open-panel .range-control,.has-open-panel .radar-north-lock,.has-open-panel .map-tool-status,.has-open-panel .location-callout,.has-object-placement .hud-rail,.has-object-placement .combat-actions,.has-object-placement .range-control,.has-object-placement .radar-north-lock,.has-object-placement .map-tool-status,.has-object-placement .location-callout{visibility:hidden;pointer-events:none}.panel-header{z-index:2;justify-content:space-between;align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--grid);background:var(--panel);margin:-1rem -1rem 0;padding:1rem;display:flex;position:sticky;top:-1rem}.panel-header h2{margin:0;font-size:1.0625rem;line-height:1.35}.panel-header .icon-only-button{width:48px;height:48px}.panel-lead,.panel-note,.empty-copy{margin:var(--space-md) 0;color:var(--text)}.panel-note,.empty-copy{font-size:.875rem}.placement-progress{color:var(--phosphor);letter-spacing:.04em;margin:0;font-size:.75rem;font-weight:700}.quick-marker-grid{gap:var(--space-xs);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.quick-marker-option{border:1px solid var(--border);background:var(--panel-high);min-width:0;min-height:76px;color:var(--text-bright);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:6px 4px;display:flex}.quick-marker-option>span:last-child{text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:.75rem;font-weight:700;line-height:1.1;overflow:hidden}.quick-marker-glyph{width:38px;height:38px;color:var(--text);background:#00000057;border:1px solid;border-radius:50%;place-items:center;display:grid}.quick-marker-option.marker-enemy{border-color:var(--danger);color:var(--danger)}.quick-marker-option.marker-ally,.quick-marker-option.marker-help,.quick-marker-option.marker-defense{border-color:var(--ally);color:var(--ally)}.quick-marker-option.marker-attention,.quick-marker-option.marker-attack{color:var(--text)}.quick-marker-sos{justify-content:center;align-items:center;gap:var(--space-sm);width:100%;min-height:58px;margin-top:var(--space-xs);border:1px solid var(--danger);color:var(--danger);background:#ff795c14;display:flex;position:relative;overflow:hidden}.quick-marker-sos:after{content:"";transform-origin:0;background:var(--danger);height:4px;position:absolute;inset:auto 0 0;scale:0 1}.quick-marker-sos.is-holding:after{animation:.9s linear forwards marker-hold-progress}@keyframes marker-hold-progress{to{scale:1}}.action-grid{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.action-grid button{align-items:center;gap:var(--space-xs);border:1px solid var(--border);background:var(--panel-high);min-height:72px;color:var(--phosphor);text-align:left;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);grid-template-columns:40px 1fr;padding:.75rem;display:grid}.action-grid button span:last-child{color:var(--text-bright);font-size:.875rem;font-weight:600}.action-grid button small{color:var(--muted);grid-column:2;font-size:.6875rem}.object-catalog{gap:var(--space-md);display:grid}.object-catalog-section h3{margin:0 0 var(--space-xs);color:var(--text);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem}.object-action-grid{gap:var(--space-xs);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.object-action-grid button{border:1px solid var(--border);background:var(--panel-high);min-width:0;min-height:88px;color:var(--phosphor);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:.5rem .25rem;display:flex}.object-action-grid button span:last-child{width:100%;min-height:2.2em;color:var(--text-bright);text-align:center;text-wrap:balance;place-items:center;font-size:.75rem;font-weight:650;line-height:1.1;display:grid;overflow:hidden}.object-action-grid button.is-selected{border-color:var(--phosphor);background:color-mix(in srgb, var(--phosphor) 12%, var(--panel-high))}.object-config{gap:var(--space-sm);margin-top:var(--space-md);padding:var(--space-sm);border:1px solid var(--grid);background:var(--panel-high);display:grid}.object-selected-summary{align-items:center;gap:var(--space-sm);grid-template-columns:auto minmax(0,1fr);display:grid}.object-selected-summary>span:last-child,.object-selected-summary strong,.object-selected-summary small{min-width:0;display:block}.object-selected-summary small{color:var(--muted);margin-top:2px;font-size:.75rem}.object-selected-icon{border:1px solid var(--phosphor-dim);background:var(--panel);place-items:center;width:52px;height:52px;display:grid}.object-label-field,.object-config>label,.object-config>label span{gap:.375rem;display:grid}.object-colors{gap:var(--space-xs);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.object-colors legend{width:100%;color:var(--text);margin-bottom:.375rem;font-size:.8125rem}.object-colors button{border:1px solid var(--border);min-height:48px;color:var(--text);background:0 0;align-items:center;gap:.4rem;padding:.45rem .65rem;display:flex}.object-colors button.is-selected{border-color:var(--phosphor);color:var(--text-bright)}.object-colors button span{border:1px solid #ffffff80;border-radius:50%;width:18px;height:18px}.object-place-button{width:100%}.map-import-control{min-height:56px;margin-top:var(--space-md);border:1px dashed var(--phosphor-dim);color:var(--phosphor);cursor:pointer;text-align:center;place-items:center;padding:.75rem;display:grid}.map-import-control:focus-within{outline:3px solid var(--focus);outline-offset:2px}.map-import-control input{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.chat-panel-status{min-height:32px;padding-top:var(--space-sm);color:var(--text);align-items:center;gap:.45rem;font-size:.8125rem;display:flex}.connection-dot{background:currentColor;border-radius:50%;flex:none;width:9px;height:9px;box-shadow:0 0 8px}.mini-chat-summary{min-height:78px;margin-top:var(--space-xs);border:1px solid var(--grid);background:#ffffff06;gap:.2rem;padding:.6rem .75rem;display:grid}.mini-chat-heading{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.mini-chat-heading button,.chat-delivery-notice button,.chat-message-delivery button{min-width:48px;min-height:48px;color:var(--phosphor);background:0 0;border:0;font-weight:700}.mini-chat-summary small{color:var(--muted)}.mini-chat-summary p{overflow-wrap:anywhere;margin:0}.chat-list{gap:var(--space-xs);max-height:42dvh;padding:var(--space-sm) 0;scroll-behavior:smooth;display:grid;overflow:auto}.chat-message{border:1px solid var(--grid);background:#ffffff06;max-width:92%;padding:.55rem .65rem}.chat-message.is-own{border-color:var(--border);background:#b7f34d0f;margin-inline-start:auto}.chat-message.has-delivery-problem{border-color:var(--warning)}.chat-message header{justify-content:space-between;gap:var(--space-sm);color:var(--phosphor);font-size:.75rem;display:flex}.chat-message time{color:var(--muted)}.chat-message p{margin:.25rem 0 0}.chat-message p,.object-list p,.participant-row>span,.node-connect-heading>span{overflow-wrap:anywhere;min-width:0}.chat-message-delivery,.chat-delivery-notice{justify-content:space-between;align-items:center;gap:var(--space-xs);min-height:48px;color:var(--warning);margin-top:.35rem;font-size:.75rem;font-weight:700;display:flex}.chat-delivery-notice{margin-top:var(--space-xs);background:#f2a63a12;border:1px solid;padding-inline-start:.65rem}.chat-delivery-notice.tone-danger{color:var(--danger)}.chat-delivery-notice.tone-ok{color:var(--phosphor)}.chat-quick-strip{margin-top:var(--space-sm);grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;display:grid}.chat-quick-strip button{border:1px solid var(--border);background:var(--panel-high);min-height:48px;color:var(--text-bright);padding:.35rem .4rem;font-size:.75rem;font-weight:700}.chat-compose{align-items:stretch;gap:var(--space-xs);padding-top:var(--space-sm);border-top:1px solid var(--grid);grid-template-columns:1fr 48px;display:grid}.chat-compose textarea{resize:none;min-height:56px;max-height:72px}.chat-compose button{border:1px solid var(--phosphor);background:var(--phosphor);width:48px;height:48px;color:var(--field-black);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);place-items:center;padding:0;display:grid}.chat-composer-row{align-items:end;gap:var(--space-xs);grid-template-columns:auto minmax(0,1fr);display:grid}.chat-composer-row>.chat-compose{min-width:0}.chat-commander-orders{padding-top:var(--space-sm);border-top:1px solid var(--grid);position:relative}.chat-orders-button{border:1px solid var(--border);background:var(--panel-high);min-width:76px;min-height:48px;color:var(--text-bright);padding-inline:.55rem;font-weight:700}.chat-orders-menu{z-index:8;border:1px solid var(--border);background:var(--panel-solid);gap:2px;min-width:180px;padding:4px;display:grid;position:absolute;bottom:calc(100% + 6px);left:0;box-shadow:0 10px 32px #00000073}.chat-orders-menu button{min-height:48px;color:var(--text-bright);text-align:left;background:0 0;border:0;padding:.45rem .65rem;font-weight:700}.chat-orders-menu button.is-danger{color:var(--danger)}.team-compact-sheet,.team-full-roster,.team-roster-list{gap:var(--space-xs);display:grid}.team-compact-sheet,.team-full-roster{padding-top:var(--space-sm)}.team-compact-heading{justify-content:space-between;align-items:center;gap:var(--space-sm);min-height:48px;color:var(--text);font-weight:700;display:flex}.team-compact-heading button,.team-search-field button{min-width:48px;min-height:48px;color:var(--phosphor);background:0 0;border:0;font-weight:700}.team-participant-row{border:1px solid var(--grid);background:#ffffff06;gap:.45rem;padding:.55rem;display:grid}.team-participant-row.freshness-stale{border-color:var(--warning)}.team-participant-row.freshness-offline{opacity:.7}.team-participant-row.is-out{border-style:dashed}.team-participant-summary{grid-template-columns:34px 24px minmax(0,1fr) auto;align-items:center;gap:.4rem;display:grid}.team-participant-summary>span{min-width:0}.team-participant-summary strong,.team-participant-summary small{text-overflow:ellipsis;display:block;overflow:hidden}.team-participant-summary small{color:var(--muted);white-space:nowrap;font-size:.72rem}.team-position-line{color:var(--text)!important}.team-favorite-button{width:48px;height:48px;color:var(--muted);background:0 0;border:1px solid #0000;place-items:center;padding:0;font-size:1.4rem;display:grid}.team-favorite-button.is-selected{border-color:var(--warning);color:var(--warning)}.team-participant-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;display:grid}.team-participant-actions button{border:1px solid var(--border);background:var(--panel-high);min-height:48px;color:var(--text-bright);justify-content:center;align-items:center;gap:.25rem;padding:.35rem;font-size:.75rem;font-weight:700;display:flex}.team-participant-actions button:disabled{color:var(--muted)}.team-search-field{align-items:center;gap:var(--space-xs);grid-template-columns:minmax(0,1fr) auto;display:grid;position:relative}.team-search-field>.hud-icon{z-index:1;color:var(--muted);pointer-events:none;position:absolute;left:.8rem}.team-search-field input{min-height:48px;padding-left:2.65rem}.team-search-field button{place-items:center;width:48px;height:48px;padding:0;display:grid}.navigate-mode-switcher{gap:var(--space-xs);padding-top:var(--space-sm);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.navigate-mode-switcher button{border:1px solid var(--border);background:var(--panel-high);min-height:48px;color:var(--text-bright);padding:.4rem .35rem;font-size:.75rem;font-weight:700}.navigate-mode-switcher button.is-selected{border-color:var(--phosphor);color:var(--phosphor);background:#b7f34d1a}.navigate-search-field{align-items:center;gap:var(--space-xs);margin-top:var(--space-sm);grid-template-columns:minmax(0,1fr) auto;display:grid;position:relative}.navigate-search-field>.hud-icon{z-index:1;color:var(--muted);pointer-events:none;position:absolute;left:.8rem}.navigate-search-field input{min-height:48px;padding-left:2.65rem}.navigate-search-field button{place-items:center;width:48px;height:48px;padding:0;display:grid}.navigate-target-list{gap:var(--space-xs);padding-top:var(--space-sm);display:grid}.navigate-target-list>button{align-items:center;gap:var(--space-sm);border:1px solid var(--border);background:var(--panel-high);min-height:56px;color:var(--text-bright);text-align:left;grid-template-columns:34px minmax(0,1fr);padding:.5rem .65rem;display:grid}.navigate-target-list strong,.navigate-target-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.navigate-target-list small{color:var(--text);margin-top:.15rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem}.navigate-coordinate-form{gap:var(--space-sm);padding-top:var(--space-sm);display:grid}.navigate-coordinate-form>div{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.navigate-coordinate-form label{color:var(--text);gap:.3rem;font-size:.75rem;display:grid}.navigate-coordinate-form input{min-height:48px}.participant-list,.tool-list,.object-list{gap:var(--space-xs);padding-top:var(--space-md);display:grid}.participant-row{align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--grid);grid-template-columns:40px 1fr auto;min-height:56px;padding:.5rem 0;display:grid}.participant-row strong,.participant-row small{display:block}.participant-row small{color:var(--muted);font-size:.75rem}.life-dot{border:2px solid;border-radius:50%;width:10px;height:10px}.life-dot.is-alive{color:var(--phosphor);background:var(--phosphor)}.life-dot.is-out{color:var(--danger);background:0 0}.object-list h3{margin:var(--space-sm) 0 0;font-size:.875rem}.object-list p{border-bottom:1px solid var(--grid);justify-content:space-between;margin:0;padding:.5rem 0;display:flex}.object-list p span{color:var(--muted);font-size:.75rem}.install-menu-glyph{place-items:center;width:40px;height:40px;font-size:2rem;line-height:1;display:grid}.tool-list button,.wide-action{align-items:center;gap:var(--space-sm);border:1px solid var(--border);background:var(--panel-high);min-height:64px;color:var(--phosphor);text-align:left;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);grid-template-columns:40px 1fr;padding:.5rem .75rem;display:grid}.node-connect{gap:var(--space-sm);margin:var(--space-md) 0;padding:var(--space-md) 0;border-block:1px solid var(--grid);display:grid}.node-connect-heading{align-items:center;gap:var(--space-sm);color:var(--phosphor);grid-template-columns:40px 1fr;display:grid}.node-connect-heading strong,.node-connect-heading small{display:block}.node-connect-heading small{color:var(--text);font-size:.75rem}.node-connect label{gap:var(--space-xs);color:var(--text);font-size:.875rem;font-weight:600;display:grid}.node-connect input{border:1px solid var(--border);background:var(--panel-high);min-height:48px;color:var(--text-bright);clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));letter-spacing:.12em;text-transform:uppercase;border-radius:0;padding:0 .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.125rem}.node-warning{align-items:flex-start;gap:var(--space-xs);color:var(--warning);margin:0;font-size:.875rem;display:flex}.tool-list strong,.tool-list small,.wide-action strong,.wide-action small{display:block}.tool-list strong,.wide-action strong{color:var(--text-bright)}.tool-list small,.wide-action small{color:var(--text);font-size:.75rem}.tool-section-switcher{gap:var(--space-xs);margin-top:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tool-section-switcher button,.coordination-order-grid button,.coordination-task-grid button,.active-task-card button{border:1px solid var(--border);background:var(--panel-high);min-height:48px;color:var(--text-bright);font-weight:700}.tool-section-switcher button.is-selected{border-color:var(--phosphor);color:var(--phosphor);background:#b7f34d1f}.coordination-panel,.coordination-section,.active-task-grid{gap:var(--space-sm);display:grid}.coordination-panel{padding-top:var(--space-sm)}.coordination-section h3{margin:var(--space-xs) 0 0;color:var(--text-bright);font-size:.875rem}.coordination-order-grid,.coordination-task-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.coordination-order-grid button,.coordination-task-grid button{overflow-wrap:anywhere;min-width:0;padding:.35rem .25rem;font-size:.72rem}.coordination-order-grid button.is-danger,.active-task-card button.is-danger{border-color:var(--danger);color:var(--danger)}.active-task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.active-task-card{border:1px solid var(--grid);background:#ffffff06;gap:5px;min-width:0;padding:.55rem;display:grid}.active-task-card>strong{color:var(--phosphor);font-size:.75rem}.active-task-card.priority-high>strong{color:var(--warning)}.active-task-card.priority-critical>strong{color:var(--danger)}.active-task-card p{color:var(--text-bright);overflow-wrap:anywhere;margin:0;font-size:.8rem}.active-task-card>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.active-task-card button{min-width:0;padding:.3rem .15rem;font-size:.68rem}.journal-summary,.journal-list,.journal-list article{gap:var(--space-xs);display:grid}.journal-summary{margin-top:var(--space-sm);padding-bottom:var(--space-sm);border-bottom:1px solid var(--grid)}.journal-summary>strong{color:var(--text-bright)}.journal-summary>span{color:var(--text);font-size:.8rem}.journal-list{max-height:min(58vh,540px);overflow-y:auto}.journal-list article{border-bottom:1px solid var(--grid);padding:.55rem 0}.journal-list article strong{color:var(--text-bright);overflow-wrap:anywhere}.journal-list article small{color:var(--muted)}.journal-list article.is-important strong{color:var(--danger)}.layer-list{gap:var(--space-sm);margin:var(--space-md) 0;border:0;padding:0;display:grid}.layer-list label{align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--grid);min-height:48px;display:flex}.layer-list input{width:22px;height:22px;accent-color:var(--phosphor)}.session-facts{margin:var(--space-md) 0}.session-facts div{gap:var(--space-sm);border-bottom:1px solid var(--grid);grid-template-columns:minmax(90px,.35fr) 1fr;padding:.5rem 0;display:grid}.session-facts dt{color:var(--muted)}.session-facts dd{color:var(--text-bright);text-align:right;overflow-wrap:anywhere;margin:0}.session-facts dd,.chat-message time{font-variant-numeric:tabular-nums}.wide-action{width:100%;margin-top:var(--space-xs)}.danger-action{border-color:var(--danger);color:var(--danger)}.toast{z-index:80;inset:auto max(.75rem, var(--safe-right)) calc(max(.75rem, var(--safe-bottom)) + 136px) max(.75rem, var(--safe-left));justify-content:space-between;align-items:center;gap:var(--space-sm);border:1px solid var(--border);background:var(--panel-raised);min-height:48px;color:var(--text-bright);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);padding:.625rem .75rem;display:flex;position:absolute}.toast.tone-success{border-color:var(--phosphor)}.toast.tone-warning{border-color:var(--warning)}.toast.tone-danger{border-color:var(--danger)}.toast button{width:48px;height:48px;color:var(--text);background:0 0;border:0;font-size:1.5rem}.confirm-dialog{width:min(100% - 2rem,480px);padding:var(--space-lg);border:1px solid var(--border);background:var(--panel-raised);color:var(--text-bright);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);border-radius:0}.confirm-dialog::backdrop{background:#000000b8}.confirm-dialog h2{margin:0;font-size:1.4375rem}.confirm-dialog p{color:var(--text)}.dialog-actions{justify-content:flex-end;gap:var(--space-xs);margin-top:var(--space-lg);display:flex}.install-banner,.update-banner{z-index:200;inset:auto max(.75rem, var(--safe-right)) max(.75rem, var(--safe-bottom)) max(.75rem, var(--safe-left));border:1px solid var(--phosphor);background:var(--panel-raised);min-height:48px;color:var(--text-bright);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);position:fixed}.install-banner{align-items:center;gap:var(--space-xs);grid-template-columns:minmax(0,1fr) auto auto;padding:.5rem .75rem;display:grid}.install-banner span,.install-banner strong,.install-banner small{min-width:0;display:block}.install-banner strong{color:var(--phosphor)}.install-banner small{color:var(--text);margin-top:.125rem;font-size:.8125rem}.install-banner>button{min-width:48px;min-height:48px}.install-banner .install-dismiss{color:var(--phosphor);background:0 0;border:0;font-size:1.25rem}.app-shell:not(.has-field-session):has(.install-banner) .entry-screen{min-height:calc(100dvh - 96px);max-height:calc(100dvh - 96px)}.update-banner{align-items:center;gap:var(--space-xs);grid-template-columns:1fr auto auto;padding:.5rem .75rem;display:grid}.update-banner button{min-width:48px;min-height:48px;color:var(--phosphor);background:0 0;border:0}.has-field-session .install-banner,.has-field-session .update-banner{display:none}.has-open-panel .toast{inset-block-start:calc(max(.75rem, var(--safe-top)) + 164px);inset-block-end:auto}@media (min-width:760px){.entry-choice-layout{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:start}.entry-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.location-callout{grid-template-columns:auto 1fr auto;width:min(620px,100vw - 190px);inset:50% auto auto 50%;translate:-50% -50%}.location-callout .button-primary{grid-column:auto;width:auto}}@media (orientation:landscape){.field-status-bar{grid-template-columns:auto minmax(0,1fr);inset-inline-start:max(5.5rem, calc(var(--safe-left) + .5rem));inset-inline-end:max(5.5rem, calc(var(--safe-right) + .5rem))}.is-radar .field-status-bar{grid-template-columns:auto minmax(0,1fr);inset-inline-start:max(5.5rem, calc(var(--safe-left) + .5rem));inset-inline-end:max(4.75rem, calc(var(--safe-right) + .5rem))}.is-radar .field-status-bar .status-cluster{justify-content:flex-end;gap:.25rem;position:fixed;inset-block-start:max(.5rem, var(--safe-top));inset-inline-start:calc(50% + 50dvh + .75rem);inset-inline-end:max(4.75rem, calc(var(--safe-right) + .5rem))}.is-radar .field-status-bar .status-chip{justify-content:center;width:32px;min-width:32px;padding-inline:0}.is-radar .field-status-bar .status-chip>span:last-child{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.field-status-bar .session-menu-button{position:fixed;inset-block-start:50%;inset-inline-start:max(.5rem, var(--safe-left));translate:0 -50%}.field-status-bar .status-cluster{flex-wrap:nowrap;overflow:hidden}.range-control{inset:calc(50% + 2.25rem) auto auto max(.5rem, var(--safe-left))}}@media (orientation:landscape) and (min-height:480px){.hud-rail{inset:50% max(.5rem, var(--safe-right)) auto auto;flex-flow:column;width:56px;max-width:none;translate:0 -188px}.hud-button{width:56px;height:56px}.combat-actions{inset:50% max(.5rem, var(--safe-right)) auto auto;gap:var(--space-xs);flex-flow:column;width:56px;display:flex;translate:0 68px}.hud-panel{width:min(390px,100vw - 190px);inset:calc(max(.75rem, var(--safe-top)) + 64px) calc(max(.75rem, var(--safe-right)) + 80px) max(.75rem, var(--safe-bottom)) auto;max-height:calc(100dvh - max(1.5rem, var(--safe-top)) - max(1.5rem, var(--safe-bottom)) - 64px)}.location-callout{width:min(620px,100vw - 190px)}.toast{width:min(480px,100vw - 190px);inset:auto auto max(.75rem, var(--safe-bottom)) 50%;translate:-50%}}@media (orientation:landscape) and (max-height:479px){.hud-panel{inset:max(4rem, var(--safe-top)) max(11rem, var(--safe-right)) max(.5rem, var(--safe-bottom)) max(11rem, var(--safe-left));max-height:none}.hud-rail{inset:50% max(.5rem, var(--safe-right)) auto auto;gap:var(--space-xs);grid-template-rows:repeat(2,56px);grid-template-columns:repeat(2,56px);width:120px;max-width:none;display:grid;translate:0 -50%}.combat-actions{inset:50% calc(max(.5rem, var(--safe-right)) + 128px) auto auto;gap:var(--space-xs);grid-template-rows:repeat(2,56px);grid-template-columns:56px;width:56px;display:grid;translate:0 -50%}.is-radar .location-callout,.is-radar .toast{width:min(32rem,100vw - 25rem);inset:50% auto auto 50%;translate:-50% -50%}}@media (max-width:359px){.quick-marker-grid,.object-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.field-status-bar{grid-template-columns:48px auto 1fr}.status-chip.tone-neutral>span:last-child,.status-chip.tone-ok>span:last-child{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.status-chip.tone-neutral,.status-chip.tone-ok{justify-content:center;width:32px;padding:0}.status-chip.tone-warning,.status-chip.tone-danger{letter-spacing:0;max-width:8.5rem;font-size:.6875rem}.hud-rail{gap:.25rem}.hud-button{width:52px;height:56px}.map-tool-status.is-radius{grid-template-columns:minmax(0,1fr) auto auto}.map-tool-status.is-radius .map-radius-controls{grid-area:2/1/auto/-1;justify-self:stretch}.map-tool-status.is-radius .map-radius-controls output{min-width:0}.marker-selection-card{grid-template-columns:40px minmax(0,1fr) 48px}.marker-selection-card>.map-selection-action,.marker-selection-card>.danger-text-button{min-width:0;padding-inline:.35rem}.marker-selection-card>.map-selection-action{grid-area:2/1/auto/2}.marker-selection-card>.danger-text-button{grid-area:2/2/auto/3}.marker-selection-card>.map-selection-clear{grid-area:1/3/auto/4}.marker-selection-card>.map-marker-rename,.marker-selection-card>.map-marker-appearance,.marker-selection-card>.map-selection-error{grid-column:1/-1}.map-marker-appearance{grid-template-columns:1fr}}.entry-form label>small{color:var(--text);font-size:.875rem;font-weight:400;line-height:1.5}.entry-primary-panel>p:not(.step-label),.entry-form-panel>p:not(.step-label),.panel-lead,.panel-note,.location-callout p{text-wrap:pretty}@media (hover:hover) and (pointer:fine){.button-primary:hover,.button-secondary:hover,.room-row:hover,.hud-button:hover,.action-grid button:hover,.wide-action:hover,.tool-list button:hover{border-color:var(--phosphor)}.room-row:hover,.action-grid button:hover,.wide-action:hover,.tool-list button:hover{background:var(--panel-raised)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:more){:root{--border:#b7f34d}.cut-panel,.hud-button,.status-chip{border-width:2px}}
